1 |
- {"version":3,"file":"files-reference-files.js?v=8bb2aba5bba3c86fef9d","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/node_modules/@mapbox/hast-util-table-cell-style/index.js","webpack:///nextcloud/node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-is/convert.js","webpack:///nextcloud/node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-visit-parents/index.js","webpack:///nextcloud/node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-visit/index.js","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/Components/NcRichText.js","webpack:///nextcloud/apps/files/src/views/ReferenceFileWidget.vue","webpack:///nextcloud/apps/files/src/views/ReferenceFileWidget.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/files/src/views/ReferenceFileWidget.vue?dd2e","webpack://nextcloud/./apps/files/src/views/ReferenceFileWidget.vue?1c02","webpack://nextcloud/./apps/files/src/views/ReferenceFileWidget.vue?6acb","webpack://nextcloud/./apps/files/src/views/FileReferencePickerElement.vue?50c6","webpack:///nextcloud/apps/files/src/views/FileReferencePickerElement.vue","webpack:///nextcloud/apps/files/src/views/FileReferencePickerElement.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/files/src/views/FileReferencePickerElement.vue?bb79","webpack://nextcloud/./apps/files/src/views/FileReferencePickerElement.vue?71ed","webpack:///nextcloud/apps/files/src/reference-files.js","webpack:///nextcloud/apps/files/src/views/FileReferencePickerElement.vue?vue&type=style&index=0&id=2dd87592&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/files/src/views/ReferenceFileWidget.vue?vue&type=style&index=0&id=3f729da0&prod&lang=scss&scoped=true&","webpack:///nextcloud/node_modules/extend/index.js","webpack:///nextcloud/node_modules/inline-style-parser/index.js","webpack:///nextcloud/node_modules/style-to-object/index.js","webpack:///nextcloud/node_modules/unified/node_modules/is-buffer/index.js","webpack:///nextcloud/node_modules/vfile/node_modules/is-buffer/index.js","webpack:///nextcloud/node_modules/vue-material-design-icons/LinkVariant.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/LinkVariant.vue?vue&type=script&lang=js&","webpack://nextcloud/./node_modules/vue-material-design-icons/LinkVariant.vue?7418","webpack:///nextcloud/node_modules/vue-material-design-icons/LinkVariant.vue?vue&type=template&id=3834522c&","webpack://nextcloud/./node_modules/vue-material-design-icons/Magnify.vue?0775","webpack:///nextcloud/node_modules/mdast-util-definitions/lib/index.js","webpack:///nextcloud/node_modules/micromark-util-character/lib/unicode-punctuation-regex.js","webpack:///nextcloud/node_modules/micromark-util-character/index.js","webpack:///nextcloud/node_modules/property-information/lib/util/schema.js","webpack:///nextcloud/node_modules/property-information/lib/util/merge.js","webpack:///nextcloud/node_modules/property-information/lib/normalize.js","webpack:///nextcloud/node_modules/property-information/lib/util/info.js","webpack:///nextcloud/node_modules/property-information/lib/util/types.js","webpack:///nextcloud/node_modules/property-information/lib/util/defined-info.js","webpack:///nextcloud/node_modules/property-information/lib/util/create.js","webpack:///nextcloud/node_modules/property-information/lib/xlink.js","webpack:///nextcloud/node_modules/property-information/lib/xml.js","webpack:///nextcloud/node_modules/property-information/lib/util/case-sensitive-transform.js","webpack:///nextcloud/node_modules/property-information/lib/util/case-insensitive-transform.js","webpack:///nextcloud/node_modules/property-information/lib/xmlns.js","webpack:///nextcloud/node_modules/property-information/lib/aria.js","webpack:///nextcloud/node_modules/property-information/lib/html.js","webpack:///nextcloud/node_modules/property-information/lib/svg.js","webpack:///nextcloud/node_modules/property-information/index.js","webpack:///nextcloud/node_modules/property-information/lib/find.js","webpack:///nextcloud/node_modules/property-information/lib/hast-to-react.js","webpack:///nextcloud/node_modules/style-to-object/index.mjs","webpack:///nextcloud/node_modules/web-namespaces/index.js","webpack:///nextcloud/node_modules/hast-to-hyperscript/lib/index.js","webpack:///nextcloud/node_modules/comma-separated-tokens/index.js","webpack:///nextcloud/node_modules/rehype-react/lib/index.js","webpack:///nextcloud/node_modules/hast-util-whitespace/index.js","webpack:///nextcloud/node_modules/remark-breaks/index.js","webpack:///nextcloud/node_modules/is-absolute-url/index.js","webpack:///nextcloud/node_modules/remark-external-links/index.js","webpack:///nextcloud/node_modules/mdast-util-to-string/lib/index.js","webpack:///nextcloud/node_modules/micromark-util-chunked/index.js","webpack:///nextcloud/node_modules/micromark-util-combine-extensions/index.js","webpack:///nextcloud/node_modules/micromark-factory-space/index.js","webpack:///nextcloud/node_modules/micromark/lib/initialize/content.js","webpack:///nextcloud/node_modules/micromark/lib/initialize/document.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/blank-line.js","webpack:///nextcloud/node_modules/micromark-util-subtokenize/index.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/content.js","webpack:///nextcloud/node_modules/micromark/lib/initialize/flow.js","webpack:///nextcloud/node_modules/micromark/lib/initialize/text.js","webpack:///nextcloud/node_modules/micromark-util-resolve-all/index.js","webpack:///nextcloud/node_modules/micromark/lib/create-tokenizer.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/thematic-break.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/list.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/block-quote.js","webpack:///nextcloud/node_modules/micromark-factory-destination/index.js","webpack:///nextcloud/node_modules/micromark-factory-label/index.js","webpack:///nextcloud/node_modules/micromark-factory-title/index.js","webpack:///nextcloud/node_modules/micromark-factory-whitespace/index.js","webpack:///nextcloud/node_modules/micromark-util-normalize-identifier/index.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/definition.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/code-indented.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/heading-atx.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/setext-underline.js","webpack:///nextcloud/node_modules/micromark-util-html-tag-name/index.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/html-flow.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/code-fenced.js","webpack:///nextcloud/node_modules/decode-named-character-reference/index.dom.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/character-reference.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/character-escape.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/line-ending.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/label-end.js","webpack:///nextcloud/node_modules/micromark-util-classify-character/index.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/attention.js","webpack:///nextcloud/node_modules/micromark/lib/constructs.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/label-start-image.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/autolink.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/html-text.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/label-start-link.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/hard-break-escape.js","webpack:///nextcloud/node_modules/micromark-core-commonmark/lib/code-text.js","webpack:///nextcloud/node_modules/micromark/lib/preprocess.js","webpack:///nextcloud/node_modules/micromark-util-decode-numeric-character-reference/index.js","webpack:///nextcloud/node_modules/micromark-util-decode-string/index.js","webpack:///nextcloud/node_modules/mdast-util-from-markdown/lib/index.js","webpack:///nextcloud/node_modules/micromark/lib/postprocess.js","webpack:///nextcloud/node_modules/micromark/lib/parse.js","webpack:///nextcloud/node_modules/remark-parse/index.js","webpack:///nextcloud/node_modules/remark-parse/lib/index.js","webpack:///nextcloud/node_modules/micromark-util-sanitize-uri/index.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/footnote-reference.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/revert.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/list-item.js","webpack:///nextcloud/node_modules/unist-util-position/lib/index.js","webpack:///nextcloud/node_modules/trim-lines/index.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/index.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/blockquote.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/break.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/code.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/delete.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/emphasis.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/footnote.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/heading.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/html.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/image-reference.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/image.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/inline-code.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/link-reference.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/link.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/list.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/paragraph.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/root.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/strong.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/table.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/table-cell.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/table-row.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/text.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/handlers/thematic-break.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/state.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/index.js","webpack:///nextcloud/node_modules/unist-util-generated/lib/index.js","webpack:///nextcloud/node_modules/mdast-util-to-hast/lib/footer.js","webpack:///nextcloud/node_modules/remark-rehype/lib/index.js","webpack:///nextcloud/node_modules/space-separated-tokens/index.js","webpack:///nextcloud/node_modules/bail/index.js","webpack:///nextcloud/node_modules/unified/node_modules/is-plain-obj/index.js","webpack:///nextcloud/node_modules/vfile-message/lib/index.js","webpack:///nextcloud/node_modules/vfile/lib/minpath.browser.js","webpack:///nextcloud/node_modules/vfile/lib/minproc.browser.js","webpack:///nextcloud/node_modules/vfile/lib/minurl.shared.js","webpack:///nextcloud/node_modules/vfile/lib/index.js","webpack:///nextcloud/node_modules/vfile/lib/minurl.browser.js","webpack:///nextcloud/node_modules/unified/lib/index.js","webpack:///nextcloud/node_modules/trough/index.js","webpack:///nextcloud/node_modules/unist-builder/lib/index.js","webpack:///nextcloud/node_modules/unist-util-stringify-position/lib/index.js","webpack:///nextcloud/node_modules/unist-util-is/lib/index.js","webpack:///nextcloud/node_modules/unist-util-visit-parents/lib/index.js","webpack:///nextcloud/node_modules/unist-util-visit/lib/index.js","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","'use strict';\n\nvar visit = require('unist-util-visit');\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar hastCssPropertyMap = {\n align: 'text-align',\n valign: 'vertical-align',\n height: 'height',\n width: 'width',\n};\n\nmodule.exports = function tableCellStyle(node) {\n visit(node, 'element', visitor);\n return node;\n};\n\nfunction visitor(node) {\n if (node.tagName !== 'tr' && node.tagName !== 'td' && node.tagName !== 'th') {\n return;\n }\n\n var hastName;\n var cssName;\n for (hastName in hastCssPropertyMap) {\n if (\n !hasOwnProperty.call(hastCssPropertyMap, hastName) ||\n node.properties[hastName] === undefined\n ) {\n continue;\n }\n cssName = hastCssPropertyMap[hastName];\n appendStyle(node, cssName, node.properties[hastName]);\n delete node.properties[hastName];\n }\n}\n\nfunction appendStyle(node, property, value) {\n var prevStyle = (node.properties.style || '').trim();\n if (prevStyle && !/;\\s*/.test(prevStyle)) {\n prevStyle += ';';\n }\n if (prevStyle) {\n prevStyle += ' ';\n }\n var nextStyle = prevStyle + property + ': ' + value + ';';\n node.properties.style = nextStyle;\n}\n","'use strict'\n\nmodule.exports = convert\n\nfunction convert(test) {\n if (typeof test === 'string') {\n return typeFactory(test)\n }\n\n if (test === null || test === undefined) {\n return ok\n }\n\n if (typeof test === 'object') {\n return ('length' in test ? anyFactory : matchesFactory)(test)\n }\n\n if (typeof test === 'function') {\n return test\n }\n\n throw new Error('Expected function, string, or object as test')\n}\n\nfunction convertAll(tests) {\n var results = []\n var length = tests.length\n var index = -1\n\n while (++index < length) {\n results[index] = convert(tests[index])\n }\n\n return results\n}\n\n// Utility assert each property in `test` is represented in `node`, and each\n// values are strictly equal.\nfunction matchesFactory(test) {\n return matches\n\n function matches(node) {\n var key\n\n for (key in test) {\n if (node[key] !== test[key]) {\n return false\n }\n }\n\n return true\n }\n}\n\nfunction anyFactory(tests) {\n var checks = convertAll(tests)\n var length = checks.length\n\n return matches\n\n function matches() {\n var index = -1\n\n while (++index < length) {\n if (checks[index].apply(this, arguments)) {\n return true\n }\n }\n\n return false\n }\n}\n\n// Utility to convert a string into a function which checks a given node’s type\n// for said string.\nfunction typeFactory(test) {\n return type\n\n function type(node) {\n return Boolean(node && node.type === test)\n }\n}\n\n// Utility to return true.\nfunction ok() {\n return true\n}\n","'use strict'\n\nmodule.exports = visitParents\n\nvar convert = require('unist-util-is/convert')\n\nvar CONTINUE = true\nvar SKIP = 'skip'\nvar EXIT = false\n\nvisitParents.CONTINUE = CONTINUE\nvisitParents.SKIP = SKIP\nvisitParents.EXIT = EXIT\n\nfunction visitParents(tree, test, visitor, reverse) {\n var is\n\n if (typeof test === 'function' && typeof visitor !== 'function') {\n reverse = visitor\n visitor = test\n test = null\n }\n\n is = convert(test)\n\n one(tree, null, [])\n\n // Visit a single node.\n function one(node, index, parents) {\n var result = []\n var subresult\n\n if (!test || is(node, index, parents[parents.length - 1] || null)) {\n result = toResult(visitor(node, parents))\n\n if (result[0] === EXIT) {\n return result\n }\n }\n\n if (node.children && result[0] !== SKIP) {\n subresult = toResult(all(node.children, parents.concat(node)))\n return subresult[0] === EXIT ? subresult : result\n }\n\n return result\n }\n\n // Visit children in `parent`.\n function all(children, parents) {\n var min = -1\n var step = reverse ? -1 : 1\n var index = (reverse ? children.length : min) + step\n var result\n\n while (index > min && index < children.length) {\n result = one(children[index], index, parents)\n\n if (result[0] === EXIT) {\n return result\n }\n\n index = typeof result[1] === 'number' ? result[1] : index + step\n }\n }\n}\n\nfunction toResult(value) {\n if (value !== null && typeof value === 'object' && 'length' in value) {\n return value\n }\n\n if (typeof value === 'number') {\n return [CONTINUE, value]\n }\n\n return [value]\n}\n","'use strict'\n\nmodule.exports = visit\n\nvar visitParents = require('unist-util-visit-parents')\n\nvar CONTINUE = visitParents.CONTINUE\nvar SKIP = visitParents.SKIP\nvar EXIT = visitParents.EXIT\n\nvisit.CONTINUE = CONTINUE\nvisit.SKIP = SKIP\nvisit.EXIT = EXIT\n\nfunction visit(tree, test, visitor, reverse) {\n if (typeof test === 'function' && typeof visitor !== 'function') {\n reverse = visitor\n visitor = test\n test = null\n }\n\n visitParents(tree, test, overload, reverse)\n\n function overload(node, parents) {\n var parent = parents[parents.length - 1]\n var index = parent ? parent.children.indexOf(node) : null\n return visitor(node, index, parent)\n }\n}\n","/*! For license information please see NcRichText.js.LICENSE.txt */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"NextcloudVue\",[],e):\"object\"==typeof exports?exports.NextcloudVue=e():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Components/NcRichText\"]=e())}(self,(()=>(()=>{var t={9456:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>c});var i=n(9104),r=n(1205),o=n(5512),a=n.n(o),s=n(6915),l=n.n(s);const c={name:\"NcInputField\",components:{NcButton:i.default,AlertCircle:a(),Check:l()},inheritAttrs:!1,props:{value:{type:String,required:!0},type:{type:String,default:\"text\",validator:function(t){return[\"text\",\"password\",\"email\",\"tel\",\"url\",\"search\",\"number\"].includes(t)}},label:{type:String,default:void 0},labelOutside:{type:Boolean,default:!1},labelVisible:{type:Boolean,default:!1},placeholder:{type:String,default:void 0},showTrailingButton:{type:Boolean,default:!1},trailingButtonLabel:{type:String,default:\"\"},success:{type:Boolean,default:!1},error:{type:Boolean,default:!1},helperText:{type:String,default:\"\"},disabled:{type:Boolean,default:!1},inputClass:{type:[Object,String],default:\"\"}},emits:[\"update:value\",\"trailing-button-click\"],computed:{computedId:function(){return this.$attrs.id&&\"\"!==this.$attrs.id?this.$attrs.id:this.inputName},inputName:function(){return\"input\"+(0,r.Z)()},hasLeadingIcon:function(){return this.$slots.default},hasTrailingIcon:function(){return this.success},hasPlaceholder:function(){return\"\"!==this.placeholder&&void 0!==this.placeholder},computedPlaceholder:function(){return this.labelVisible?this.hasPlaceholder?this.placeholder:\"\":this.hasPlaceholder?this.placeholder:this.label},isValidLabel:function(){var t=this.label||this.labelOutside;return t||console.warn(\"You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.\"),t}},methods:{handleInput:function(t){this.$emit(\"update:value\",t.target.value)},handleTrailingButtonClick:function(t){this.$emit(\"trailing-button-click\",t)}}}},1039:(t,e,n)=>{\"use strict\";n.d(e,{s:()=>i,x:()=>r});var i=function(){var t=this,e=t._self._c;return e(\"div\",{staticClass:\"input-field\"},[!t.labelOutside&&t.isValidLabel?e(\"label\",{staticClass:\"input-field__label\",class:{\"input-field__label--hidden\":!t.labelVisible},attrs:{for:t.computedId}},[t._v(\"\\n\\t\\t\"+t._s(t.label)+\"\\n\\t\")]):t._e(),t._v(\" \"),e(\"div\",{staticClass:\"input-field__main-wrapper\"},[e(\"input\",t._g(t._b({ref:\"input\",staticClass:\"input-field__input\",class:[t.inputClass,{\"input-field__input--trailing-icon\":t.showTrailingButton||t.hasTrailingIcon,\"input-field__input--leading-icon\":t.hasLeadingIcon,\"input-field__input--success\":t.success,\"input-field__input--error\":t.error}],attrs:{id:t.computedId,type:t.type,disabled:t.disabled,placeholder:t.computedPlaceholder,\"aria-describedby\":t.helperText.length>0?\"\".concat(t.inputName,\"-helper-text\"):\"\",\"aria-live\":\"polite\"},domProps:{value:t.value},on:{input:t.handleInput}},\"input\",t.$attrs,!1),t.$listeners)),t._v(\" \"),e(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasLeadingIcon,expression:\"hasLeadingIcon\"}],staticClass:\"input-field__icon input-field__icon--leading\"},[t._t(\"default\")],2),t._v(\" \"),t.showTrailingButton?e(\"NcButton\",{staticClass:\"input-field__clear-button\",attrs:{type:\"tertiary-no-background\",\"aria-label\":t.trailingButtonLabel,disabled:t.disabled},on:{click:t.handleTrailingButtonClick},scopedSlots:t._u([{key:\"icon\",fn:function(){return[t._t(\"trailing-button-icon\")]},proxy:!0}],null,!0)}):t.success||t.error?e(\"div\",{staticClass:\"input-field__icon input-field__icon--trailing\"},[t.success?e(\"Check\",{attrs:{size:18}}):t.error?e(\"AlertCircle\",{attrs:{size:18}}):t._e()],1):t._e()],1),t._v(\" \"),t.helperText.length>0?e(\"p\",{staticClass:\"input-field__helper-text-message\",class:{\"input-field__helper-text-message--error\":t.error,\"input-field__helper-text-message--success\":t.success},attrs:{id:\"\".concat(t.inputName,\"-helper-text\")}},[t.success?e(\"Check\",{staticClass:\"input-field__helper-text-message__icon\",attrs:{size:18}}):t.error?e(\"AlertCircle\",{staticClass:\"input-field__helper-text-message__icon\",attrs:{size:18}}):t._e(),t._v(\"\\n\\t\\t\"+t._s(t.helperText)+\"\\n\\t\")],1):t._e()])},r=[]},4891:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>$});var i=n(9104),r=n(5825),o=n(1205),a=n(932),s=n(2734),l=n.n(s),c=n(1441),u=n.n(c);function d(t){return d=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},d(t)}function p(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function A(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?p(Object(n),!0).forEach((function(e){m(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):p(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function m(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!==d(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var i=n.call(t,e||\"default\");if(\"object\"!==d(i))return i;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"===d(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function h(t){return function(t){if(Array.isArray(t))return f(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(!t)return;if(\"string\"==typeof t)return f(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===n&&t.constructor&&(n=t.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(t);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(t,e)}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function f(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var v=\".focusable\";const g={name:\"NcActions\",components:{NcButton:i.default,DotsHorizontal:u(),NcPopover:r.default},props:{open:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceTitle:{type:Boolean,default:!1},menuTitle:{type:String,default:null},primary:{type:Boolean,default:!1},type:{type:String,validator:function(t){return-1!==[\"primary\",\"secondary\",\"tertiary\",\"tertiary-no-background\",\"tertiary-on-primary\",\"error\",\"warning\",\"success\"].indexOf(t)},default:null},defaultIcon:{type:String,default:\"\"},ariaLabel:{type:String,default:(0,a.t)(\"Actions\")},ariaHidden:{type:Boolean,default:null},placement:{type:String,default:\"bottom\"},boundariesElement:{type:Element,default:function(){return document.querySelector(\"body\")}},container:{type:[String,Object,Element,Boolean],default:\"body\"},disabled:{type:Boolean,default:!1},inline:{type:Number,default:0}},emits:[\"update:open\",\"open\",\"update:open\",\"close\",\"focus\",\"blur\"],data:function(){return{opened:this.open,focusIndex:0,randomId:\"menu-\".concat((0,o.Z)())}},computed:{triggerBtnType:function(){return this.type||(this.primary?\"primary\":this.menuTitle?\"secondary\":\"tertiary\")}},watch:{open:function(t){t!==this.opened&&(this.opened=t)}},methods:{isValidSingleAction:function(t){var e,n,i,r,o,a=null!==(e=null==t||null===(n=t.componentOptions)||void 0===n||null===(i=n.Ctor)||void 0===i||null===(r=i.extendOptions)||void 0===r?void 0:r.name)&&void 0!==e?e:null==t||null===(o=t.componentOptions)||void 0===o?void 0:o.tag;return[\"NcActionButton\",\"NcActionLink\",\"NcActionRouter\"].includes(a)},openMenu:function(t){this.opened||(this.opened=!0,this.$emit(\"update:open\",!0),this.$emit(\"open\"))},closeMenu:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.opened&&(this.opened=!1,this.$refs.popover.clearFocusTrap({returnFocus:t}),this.$emit(\"update:open\",!1),this.$emit(\"close\"),this.opened=!1,this.focusIndex=0,this.$refs.menuButton.$el.focus())},onOpen:function(t){var e=this;this.$nextTick((function(){e.focusFirstAction(t)}))},onMouseFocusAction:function(t){if(document.activeElement!==t.target){var e=t.target.closest(\"li\");if(e){var n=e.querySelector(v);if(n){var i=h(this.$refs.menu.querySelectorAll(v)).indexOf(n);i>-1&&(this.focusIndex=i,this.focusAction())}}}},onKeydown:function(t){(38===t.keyCode||9===t.keyCode&&t.shiftKey)&&this.focusPreviousAction(t),(40===t.keyCode||9===t.keyCode&&!t.shiftKey)&&this.focusNextAction(t),33===t.keyCode&&this.focusFirstAction(t),34===t.keyCode&&this.focusLastAction(t),27===t.keyCode&&(this.closeMenu(),t.preventDefault())},removeCurrentActive:function(){var t=this.$refs.menu.querySelector(\"li.active\");t&&t.classList.remove(\"active\")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(v)[this.focusIndex];if(t){this.removeCurrentActive();var e=t.closest(\"li.action\");t.focus(),e&&e.classList.add(\"active\")}},focusPreviousAction:function(t){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction:function(t){if(this.opened){var e=this.$refs.menu.querySelectorAll(v).length-1;this.focusIndex===e?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=0,this.focusAction())},focusLastAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=this.$refs.menu.querySelectorAll(v).length-1,this.focusAction())},preventIfEvent:function(t){t&&(t.preventDefault(),t.stopPropagation())},onFocus:function(t){this.$emit(\"focus\",t)},onBlur:function(t){this.$emit(\"blur\",t)}},render:function(t){var e=this,n=(this.$slots.default||[]).filter((function(t){var e,n,i,r;return(null==t||null===(e=t.componentOptions)||void 0===e?void 0:e.tag)||(null==t||null===(n=t.componentOptions)||void 0===n||null===(i=n.Ctor)||void 0===i||null===(r=i.extendOptions)||void 0===r?void 0:r.name)})),i=n.filter(this.isValidSingleAction);if(this.forceMenu&&i.length>0&&this.inline>0&&(l().util.warn(\"Specifying forceMenu will ignore any inline actions rendering.\"),i=[]),0!==n.length){var r=function(n){var i,r,o,a,s,l,c,u,d,p,m,h,f,v,g,C,b,y,w,x,k,_,S=(null==n||null===(i=n.data)||void 0===i||null===(r=i.scopedSlots)||void 0===r||null===(o=r.icon())||void 0===o?void 0:o[0])||t(\"span\",{class:[\"icon\",null==n||null===(a=n.componentOptions)||void 0===a||null===(s=a.propsData)||void 0===s?void 0:s.icon]}),B=null==n||null===(l=n.componentOptions)||void 0===l||null===(c=l.listeners)||void 0===c?void 0:c.click,j=null==n||null===(u=n.componentOptions)||void 0===u||null===(d=u.children)||void 0===d||null===(p=d[0])||void 0===p||null===(m=p.text)||void 0===m||null===(h=m.trim)||void 0===h?void 0:h.call(m),E=(null==n||null===(f=n.componentOptions)||void 0===f||null===(v=f.propsData)||void 0===v?void 0:v.ariaLabel)||j,N=e.forceTitle?j:\"\",P=null==n||null===(g=n.componentOptions)||void 0===g||null===(C=g.propsData)||void 0===C?void 0:C.title;return e.forceTitle||P||(P=j),t(\"NcButton\",{class:[\"action-item action-item--single\",null==n||null===(b=n.data)||void 0===b?void 0:b.staticClass,null==n||null===(y=n.data)||void 0===y?void 0:y.class],attrs:{\"aria-label\":E,title:P},ref:null==n||null===(w=n.data)||void 0===w?void 0:w.ref,props:A({type:e.type||(N?\"secondary\":\"tertiary\"),disabled:e.disabled||(null==n||null===(x=n.componentOptions)||void 0===x||null===(k=x.propsData)||void 0===k?void 0:k.disabled),ariaHidden:e.ariaHidden},null==n||null===(_=n.componentOptions)||void 0===_?void 0:_.propsData),on:A({focus:e.onFocus,blur:e.onBlur},!!B&&{click:function(t){B&&B(t)}})},[t(\"template\",{slot:\"icon\"},[S]),N])},o=function(n){var i,r,o=(null===(i=e.$slots.icon)||void 0===i?void 0:i[0])||(e.defaultIcon?t(\"span\",{class:[\"icon\",e.defaultIcon]}):t(\"DotsHorizontal\",{props:{size:20}}));return t(\"NcPopover\",{ref:\"popover\",props:{delay:0,handleResize:!0,shown:e.opened,placement:e.placement,boundary:e.boundariesElement,container:e.container,popoverBaseClass:\"action-item__popper\",setReturnFocus:null===(r=e.$refs.menuButton)||void 0===r?void 0:r.$el},attrs:{delay:0,handleResize:!0,shown:e.opened,placement:e.placement,boundary:e.boundariesElement,container:e.container,popoverBaseClass:\"action-item__popper\"},on:{show:e.openMenu,\"after-show\":e.onOpen,hide:e.closeMenu}},[t(\"NcButton\",{class:\"action-item__menutoggle\",props:{type:e.triggerBtnType,disabled:e.disabled,ariaHidden:e.ariaHidden},slot:\"trigger\",ref:\"menuButton\",attrs:{\"aria-haspopup\":\"menu\",\"aria-label\":e.ariaLabel,\"aria-controls\":e.opened?e.randomId:null,\"aria-expanded\":e.opened.toString()},on:{focus:e.onFocus,blur:e.onBlur}},[t(\"template\",{slot:\"icon\"},[o]),e.menuTitle]),t(\"div\",{class:{open:e.opened},attrs:{tabindex:\"-1\"},on:{keydown:e.onKeydown,mousemove:e.onMouseFocusAction},ref:\"menu\"},[t(\"ul\",{attrs:{id:e.randomId,tabindex:\"-1\",role:\"menu\"}},[n])])])};if(1===n.length&&1===i.length&&!this.forceMenu)return r(i[0]);if(i.length>0&&this.inline>0){var a=i.slice(0,this.inline),s=n.filter((function(t){return!a.includes(t)}));return t(\"div\",{class:[\"action-items\",\"action-item--\".concat(this.triggerBtnType)]},[].concat(h(a.map(r)),[s.length>0?t(\"div\",{class:[\"action-item\",{\"action-item--open\":this.opened}]},[o(s)]):null]))}return t(\"div\",{class:[\"action-item action-item--default-popover\",\"action-item--\".concat(this.triggerBtnType),{\"action-item--open\":this.opened}]},[o(n)])}}};var C=n(3379),b=n.n(C),y=n(7795),w=n.n(y),x=n(569),k=n.n(x),_=n(3565),S=n.n(_),B=n(9216),j=n.n(B),E=n(4589),N=n.n(E),P=n(9286),z={};z.styleTagTransform=N(),z.setAttributes=S(),z.insert=k().bind(null,\"head\"),z.domAPI=w(),z.insertStyleElement=j();b()(P.Z,z);P.Z&&P.Z.locals&&P.Z.locals;var O=n(2377),D={};D.styleTagTransform=N(),D.setAttributes=S(),D.insert=k().bind(null,\"head\"),D.domAPI=w(),D.insertStyleElement=j();b()(O.Z,D);O.Z&&O.Z.locals&&O.Z.locals;var T=n(1900),I=n(5727),L=n.n(I),G=(0,T.Z)(g,undefined,undefined,!1,null,\"3e2a42f5\",null);\"function\"==typeof L()&&L()(G);const $=G.exports},8091:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>Z});var i=n(5825),r=n(306),o=n(5378),a=n(7993),s=n(3351),l=n(932),c=n(768),u=n.n(c),d=n(1441),p=n.n(d),A=n(3607),m=n(542),h=n(7672),f=n(4262),v=n(4055);function g(t){return g=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},g(t)}function C(){C=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},r=\"function\"==typeof Symbol?Symbol:{},o=r.iterator||\"@@iterator\",a=r.asyncIterator||\"@@asyncIterator\",s=r.toStringTag||\"@@toStringTag\";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},\"\")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var o=e&&e.prototype instanceof p?e:p,a=Object.create(o.prototype),s=new B(r||[]);return i(a,\"_invoke\",{value:x(t,n,s)}),a}function u(t,e,n){try{return{type:\"normal\",arg:t.call(e,n)}}catch(t){return{type:\"throw\",arg:t}}}t.wrap=c;var d={};function p(){}function A(){}function m(){}var h={};l(h,o,(function(){return this}));var f=Object.getPrototypeOf,v=f&&f(f(j([])));v&&v!==e&&n.call(v,o)&&(h=v);var b=m.prototype=p.prototype=Object.create(h);function y(t){[\"next\",\"throw\",\"return\"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function r(i,o,a,s){var l=u(t[i],t,o);if(\"throw\"!==l.type){var c=l.arg,d=c.value;return d&&\"object\"==g(d)&&n.call(d,\"__await\")?e.resolve(d.__await).then((function(t){r(\"next\",t,a,s)}),(function(t){r(\"throw\",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return r(\"throw\",t,a,s)}))}s(l.arg)}var o;i(this,\"_invoke\",{value:function(t,n){function i(){return new e((function(e,i){r(t,n,e,i)}))}return o=o?o.then(i,i):i()}})}function x(t,e,n){var i=\"suspendedStart\";return function(r,o){if(\"executing\"===i)throw new Error(\"Generator is already running\");if(\"completed\"===i){if(\"throw\"===r)throw o;return E()}for(n.method=r,n.arg=o;;){var a=n.delegate;if(a){var s=k(a,n);if(s){if(s===d)continue;return s}}if(\"next\"===n.method)n.sent=n._sent=n.arg;else if(\"throw\"===n.method){if(\"suspendedStart\"===i)throw i=\"completed\",n.arg;n.dispatchException(n.arg)}else\"return\"===n.method&&n.abrupt(\"return\",n.arg);i=\"executing\";var l=u(t,e,n);if(\"normal\"===l.type){if(i=n.done?\"completed\":\"suspendedYield\",l.arg===d)continue;return{value:l.arg,done:n.done}}\"throw\"===l.type&&(i=\"completed\",n.method=\"throw\",n.arg=l.arg)}}}function k(t,e){var n=e.method,i=t.iterator[n];if(void 0===i)return e.delegate=null,\"throw\"===n&&t.iterator.return&&(e.method=\"return\",e.arg=void 0,k(t,e),\"throw\"===e.method)||\"return\"!==n&&(e.method=\"throw\",e.arg=new TypeError(\"The iterator does not provide a '\"+n+\"' method\")),d;var r=u(i,t.iterator,e.arg);if(\"throw\"===r.type)return e.method=\"throw\",e.arg=r.arg,e.delegate=null,d;var o=r.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,\"return\"!==e.method&&(e.method=\"next\",e.arg=void 0),e.delegate=null,d):o:(e.method=\"throw\",e.arg=new TypeError(\"iterator result is not an object\"),e.delegate=null,d)}function _(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function S(t){var e=t.completion||{};e.type=\"normal\",delete e.arg,t.completion=e}function B(t){this.tryEntries=[{tryLoc:\"root\"}],t.forEach(_,this),this.reset(!0)}function j(t){if(t){var e=t[o];if(e)return e.call(t);if(\"function\"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,r=function e(){for(;++i<t.length;)if(n.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:E}}function E(){return{value:void 0,done:!0}}return A.prototype=m,i(b,\"constructor\",{value:m,configurable:!0}),i(m,\"constructor\",{value:A,configurable:!0}),A.displayName=l(m,s,\"GeneratorFunction\"),t.isGeneratorFunction=function(t){var e=\"function\"==typeof t&&t.constructor;return!!e&&(e===A||\"GeneratorFunction\"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,m):(t.__proto__=m,l(t,s,\"GeneratorFunction\")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},y(w.prototype),l(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,n,i,r,o){void 0===o&&(o=Promise);var a=new w(c(e,n,i,r),o);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(b),l(b,s,\"Generator\"),l(b,o,(function(){return this})),l(b,\"toString\",(function(){return\"[object Generator]\"})),t.keys=function(t){var e=Object(t),n=[];for(var i in e)n.push(i);return n.reverse(),function t(){for(;n.length;){var i=n.pop();if(i in e)return t.value=i,t.done=!1,t}return t.done=!0,t}},t.values=j,B.prototype={constructor:B,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method=\"next\",this.arg=void 0,this.tryEntries.forEach(S),!t)for(var e in this)\"t\"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if(\"throw\"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function i(n,i){return a.type=\"throw\",a.arg=t,e.next=n,i&&(e.method=\"next\",e.arg=void 0),!!i}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],a=o.completion;if(\"root\"===o.tryLoc)return i(\"end\");if(o.tryLoc<=this.prev){var s=n.call(o,\"catchLoc\"),l=n.call(o,\"finallyLoc\");if(s&&l){if(this.prev<o.catchLoc)return i(o.catchLoc,!0);if(this.prev<o.finallyLoc)return i(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return i(o.catchLoc,!0)}else{if(!l)throw new Error(\"try statement without catch or finally\");if(this.prev<o.finallyLoc)return i(o.finallyLoc)}}}},abrupt:function(t,e){for(var i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i];if(r.tryLoc<=this.prev&&n.call(r,\"finallyLoc\")&&this.prev<r.finallyLoc){var o=r;break}}o&&(\"break\"===t||\"continue\"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method=\"next\",this.next=o.finallyLoc,d):this.complete(a)},complete:function(t,e){if(\"throw\"===t.type)throw t.arg;return\"break\"===t.type||\"continue\"===t.type?this.next=t.arg:\"return\"===t.type?(this.rval=this.arg=t.arg,this.method=\"return\",this.next=\"end\"):\"normal\"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),S(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var i=n.completion;if(\"throw\"===i.type){var r=i.arg;S(n)}return r}}throw new Error(\"illegal catch attempt\")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},\"next\"===this.method&&(this.arg=void 0),d}},t}function b(t,e,n,i,r,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(i,r)}function y(t){return function(){var e=this,n=arguments;return new Promise((function(i,r){var o=t.apply(e,n);function a(t){b(o,i,r,a,s,\"next\",t)}function s(t){b(o,i,r,a,s,\"throw\",t)}a(void 0)}))}}var w=(0,h.getBuilder)(\"nextcloud\").persist().build();function x(t){var e=w.getItem(\"user-has-avatar.\"+t);return\"string\"==typeof e?Boolean(e):null}function k(t,e){t&&w.setItem(\"user-has-avatar.\"+t,e)}const _={name:\"NcAvatar\",directives:{ClickOutside:v.vOnClickOutside},components:{DotsHorizontal:p(),NcLoadingIcon:o.default,NcPopover:i.default,NcPopoverMenu:r.default},mixins:[s.iQ],props:{url:{type:String,default:void 0},iconClass:{type:String,default:void 0},user:{type:String,default:void 0},showUserStatus:{type:Boolean,default:!0},showUserStatusCompact:{type:Boolean,default:!0},preloadedUserStatus:{type:Object,default:void 0},isGuest:{type:Boolean,default:!1},displayName:{type:String,default:void 0},size:{type:Number,default:32},allowPlaceholder:{type:Boolean,default:!0},disableTooltip:{type:Boolean,default:!1},disableMenu:{type:Boolean,default:!1},tooltipMessage:{type:String,default:null},isNoUser:{type:Boolean,default:!1},menuPosition:{type:String,default:\"center\"},menuContainer:{type:[String,Object,Element,Boolean],default:\"body\"}},data:function(){return{avatarUrlLoaded:null,avatarSrcSetLoaded:null,userDoesNotExist:!1,isAvatarLoaded:!1,isMenuLoaded:!1,contactsMenuLoading:!1,contactsMenuActions:[],contactsMenuOpenState:!1}},computed:{avatarAriaLabel:function(){var t,e;if(this.hasMenu)return this.hasStatus&&this.showUserStatus&&this.showUserStatusCompact?(0,l.t)(\"Avatar of {displayName}, {status}\",{displayName:null!==(e=this.displayName)&&void 0!==e?e:this.user,status:this.userStatus.status}):(0,l.t)(\"Avatar of {displayName}\",{displayName:null!==(t=this.displayName)&&void 0!==t?t:this.user})},canDisplayUserStatus:function(){return this.showUserStatus&&this.hasStatus&&[\"online\",\"away\",\"dnd\"].includes(this.userStatus.status)},showUserStatusIconOnAvatar:function(){return this.showUserStatus&&this.showUserStatusCompact&&this.hasStatus&&\"dnd\"!==this.userStatus.status&&this.userStatus.icon},getUserIdentifier:function(){return this.isDisplayNameDefined?this.displayName:this.isUserDefined?this.user:\"\"},isUserDefined:function(){return void 0!==this.user},isDisplayNameDefined:function(){return void 0!==this.displayName},isUrlDefined:function(){return void 0!==this.url},hasMenu:function(){var t;return!this.disableMenu&&(this.isMenuLoaded?this.menu.length>0:!(this.user===(null===(t=(0,A.getCurrentUser)())||void 0===t?void 0:t.uid)||this.userDoesNotExist||this.url))},shouldShowPlaceholder:function(){return this.allowPlaceholder&&this.userDoesNotExist},avatarStyle:function(){return{\"--size\":this.size+\"px\",lineHeight:this.size+\"px\",fontSize:Math.round(.45*this.size)+\"px\"}},initialsWrapperStyle:function(){var t=(0,a.default)(this.getUserIdentifier),e=t.r,n=t.g,i=t.b;return{backgroundColor:\"rgba(\".concat(e,\", \").concat(n,\", \").concat(i,\", 0.1)\")}},initialsStyle:function(){var t=(0,a.default)(this.getUserIdentifier),e=t.r,n=t.g,i=t.b;return{color:\"rgb(\".concat(e,\", \").concat(n,\", \").concat(i,\")\")}},tooltip:function(){return!this.disableTooltip&&(this.tooltipMessage?this.tooltipMessage:this.displayName)},initials:function(){var t;if(this.shouldShowPlaceholder){var e=this.getUserIdentifier,n=e.indexOf(\" \");\"\"===e?t=\"?\":(t=String.fromCodePoint(e.codePointAt(0)),-1!==n&&(t=t.concat(String.fromCodePoint(e.codePointAt(n+1)))))}return t.toUpperCase()},menu:function(){var t,e,n,i=this.contactsMenuActions.map((function(t){return{href:t.hyperlink,icon:t.icon,longtext:t.title}}));return this.showUserStatus&&(this.userStatus.icon||this.userStatus.message)?[{href:\"#\",icon:\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><text x='0' y='14' font-size='14'>\".concat((t=this.userStatus.icon,e=document.createTextNode(t),n=document.createElement(\"p\"),n.appendChild(e),n.innerHTML),\"</text></svg>\"),text:\"\".concat(this.userStatus.message)}].concat(i):i}},watch:{url:function(){this.userDoesNotExist=!1,this.loadAvatarUrl()},user:function(){this.userDoesNotExist=!1,this.isMenuLoaded=!1,this.loadAvatarUrl()}},mounted:function(){this.loadAvatarUrl(),(0,m.subscribe)(\"settings:avatar:updated\",this.loadAvatarUrl),(0,m.subscribe)(\"settings:display-name:updated\",this.loadAvatarUrl),this.showUserStatus&&this.user&&!this.isNoUser&&(this.preloadedUserStatus?(this.userStatus.status=this.preloadedUserStatus.status||\"\",this.userStatus.message=this.preloadedUserStatus.message||\"\",this.userStatus.icon=this.preloadedUserStatus.icon||\"\",this.hasStatus=null!==this.preloadedUserStatus.status):this.fetchUserStatus(this.user),(0,m.subscribe)(\"user_status:status.updated\",this.handleUserStatusUpdated))},beforeDestroy:function(){(0,m.unsubscribe)(\"settings:avatar:updated\",this.loadAvatarUrl),(0,m.unsubscribe)(\"settings:display-name:updated\",this.loadAvatarUrl),this.showUserStatus&&this.user&&!this.isNoUser&&(0,m.unsubscribe)(\"user_status:status.updated\",this.handleUserStatusUpdated)},methods:{handlePopoverAfterShow:function(){var t=this.$refs.popoverMenu.$el.getElementsByTagName(\"a\");t.length&&t[0].focus()},handlePopoverAfterHide:function(){this.$refs.main.focus()},handleUserStatusUpdated:function(t){this.user===t.userId&&(this.userStatus={status:t.status,icon:t.icon,message:t.message})},toggleMenu:function(){var t=this;return y(C().mark((function e(){return C().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.hasMenu){e.next=2;break}return e.abrupt(\"return\");case 2:if(t.contactsMenuOpenState){e.next=5;break}return e.next=5,t.fetchContactsMenu();case 5:t.contactsMenuOpenState=!t.contactsMenuOpenState;case 6:case\"end\":return e.stop()}}),e)})))()},closeMenu:function(){this.contactsMenuOpenState=!1},fetchContactsMenu:function(){var t=this;return y(C().mark((function e(){var n,i,r;return C().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.contactsMenuLoading=!0,e.prev=1,n=encodeURIComponent(t.user),e.next=5,u().post((0,f.generateUrl)(\"contactsmenu/findOne\"),\"shareType=0&shareWith=\".concat(n));case 5:i=e.sent,r=i.data,t.contactsMenuActions=r.topAction?[r.topAction].concat(r.actions):r.actions,e.next=13;break;case 10:e.prev=10,e.t0=e.catch(1),t.contactsMenuOpenState=!1;case 13:t.contactsMenuLoading=!1,t.isMenuLoaded=!0;case 15:case\"end\":return e.stop()}}),e,null,[[1,10]])})))()},loadAvatarUrl:function(){if(this.isAvatarLoaded=!1,!this.isUrlDefined&&(!this.isUserDefined||this.isNoUser))return this.isAvatarLoaded=!0,void(this.userDoesNotExist=!0);if(this.isUrlDefined)this.updateImageIfValid(this.url);else if(this.size<=64){var t=this.avatarUrlGenerator(this.user,64),e=[t+\" 1x\",this.avatarUrlGenerator(this.user,512)+\" 8x\"].join(\", \");this.updateImageIfValid(t,e)}else{var n=this.avatarUrlGenerator(this.user,512);this.updateImageIfValid(n)}},avatarUrlGenerator:function(t,e){var n,i=\"invert(100%)\"===window.getComputedStyle(document.body).getPropertyValue(\"--background-invert-if-dark\"),r=\"/avatar/{user}/{size}\"+(i?\"/dark\":\"\");this.isGuest&&(r=\"/avatar/guest/{user}/{size}\"+(i?\"/dark\":\"\"));var o=(0,f.generateUrl)(r,{user:t,size:e});return t===(null===(n=(0,A.getCurrentUser)())||void 0===n?void 0:n.uid)&&\"undefined\"!=typeof oc_userconfig&&(o+=\"?v=\"+oc_userconfig.avatar.version),o},updateImageIfValid:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=x(this.user);if(this.isUserDefined&&\"boolean\"==typeof i)return this.isAvatarLoaded=!0,this.avatarUrlLoaded=t,n&&(this.avatarSrcSetLoaded=n),void(!1===i&&(this.userDoesNotExist=!0));var r=new Image;r.onload=function(){e.avatarUrlLoaded=t,n&&(e.avatarSrcSetLoaded=n),e.isAvatarLoaded=!0,k(e.user,!0)},r.onerror=function(){console.debug(\"Invalid avatar url\",t),e.avatarUrlLoaded=null,e.avatarSrcSetLoaded=null,e.userDoesNotExist=!0,e.isAvatarLoaded=!1,k(e.user,!1)},n&&(r.srcset=n),r.src=t}}};var S=n(3379),B=n.n(S),j=n(7795),E=n.n(j),N=n(569),P=n.n(N),z=n(3565),O=n.n(z),D=n(9216),T=n.n(D),I=n(4589),L=n.n(I),G=n(2242),$={};$.styleTagTransform=L(),$.setAttributes=O(),$.insert=P().bind(null,\"head\"),$.domAPI=E(),$.insertStyleElement=T();B()(G.Z,$);G.Z&&G.Z.locals&&G.Z.locals;var M=n(1900),F=n(3051),U=n.n(F),R=(0,M.Z)(_,(function(){var t=this,e=t._self._c;return e(\"div\",t._g({directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:t.closeMenu,expression:\"closeMenu\"}],ref:\"main\",staticClass:\"avatardiv popovermenu-wrapper\",class:{\"avatardiv--unknown\":t.userDoesNotExist,\"avatardiv--with-menu\":t.hasMenu},style:t.avatarStyle,attrs:{title:t.tooltip,tabindex:t.hasMenu?\"0\":void 0,\"aria-label\":t.avatarAriaLabel,role:t.hasMenu?\"button\":void 0},on:{keydown:function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"enter\",13,e.key,\"Enter\")?null:t.toggleMenu.apply(null,arguments)}}},t.hasMenu?{click:t.toggleMenu}:{}),[t._t(\"icon\",(function(){return[t.iconClass?e(\"div\",{staticClass:\"avatar-class-icon\",class:t.iconClass}):t.isAvatarLoaded&&!t.userDoesNotExist?e(\"img\",{attrs:{src:t.avatarUrlLoaded,srcset:t.avatarSrcSetLoaded,alt:\"\"}}):t._e()]})),t._v(\" \"),t.hasMenu?e(\"NcPopover\",{attrs:{placement:\"auto\",container:t.menuContainer,shown:t.contactsMenuOpenState},on:{\"after-show\":t.handlePopoverAfterShow,\"after-hide\":t.handlePopoverAfterHide},scopedSlots:t._u([{key:\"trigger\",fn:function(){return[t.contactsMenuLoading?e(\"NcLoadingIcon\"):e(\"DotsHorizontal\",{staticClass:\"icon-more\",attrs:{size:20}})]},proxy:!0}],null,!1,2037777893)},[e(\"NcPopoverMenu\",{ref:\"popoverMenu\",attrs:{menu:t.menu}})],1):t._e(),t._v(\" \"),t.showUserStatusIconOnAvatar?e(\"div\",{staticClass:\"avatardiv__user-status avatardiv__user-status--icon\"},[t._v(\"\\n\\t\\t\"+t._s(t.userStatus.icon)+\"\\n\\t\")]):t.canDisplayUserStatus?e(\"div\",{staticClass:\"avatardiv__user-status\",class:\"avatardiv__user-status--\"+t.userStatus.status}):t._e(),t._v(\" \"),!t.userDoesNotExist||t.iconClass||t.$slots.icon?t._e():e(\"div\",{staticClass:\"avatardiv__initials-wrapper\",style:t.initialsWrapperStyle},[e(\"div\",{staticClass:\"unknown\",style:t.initialsStyle},[t._v(\"\\n\\t\\t\\t\"+t._s(t.initials)+\"\\n\\t\\t\")])])],2)}),[],!1,null,\"f73be20c\",null);\"function\"==typeof U()&&U()(R);const Z=R.exports},9104:(t,e,n)=>{\"use strict\";function i(t){return i=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},i(t)}function r(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function o(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?r(Object(n),!0).forEach((function(e){a(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function a(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!==i(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!==i(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"===i(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}n.d(e,{default:()=>S});const s={name:\"NcButton\",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:function(t){return-1!==[\"primary\",\"secondary\",\"tertiary\",\"tertiary-no-background\",\"tertiary-on-primary\",\"error\",\"warning\",\"success\"].indexOf(t)},default:\"secondary\"},nativeType:{type:String,validator:function(t){return-1!==[\"submit\",\"reset\",\"button\"].indexOf(t)},default:\"button\"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render:function(t){var e,n,i,r,s,l=this,c=null===(e=this.$slots.default)||void 0===e||null===(n=e[0])||void 0===n||null===(i=n.text)||void 0===i||null===(r=i.trim)||void 0===r?void 0:r.call(i),u=!!c,d=null===(s=this.$slots)||void 0===s?void 0:s.icon;c||this.ariaLabel||console.warn(\"You need to fill either the text or the ariaLabel props in the button component.\",{text:c,ariaLabel:this.ariaLabel},this);var p=function(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=n.navigate,r=n.isActive,s=n.isExactActive;return t(l.to||!l.href?\"button\":\"a\",{class:[\"button-vue\",(e={\"button-vue--icon-only\":d&&!u,\"button-vue--text-only\":u&&!d,\"button-vue--icon-and-text\":d&&u},a(e,\"button-vue--vue-\".concat(l.type),l.type),a(e,\"button-vue--wide\",l.wide),a(e,\"active\",r),a(e,\"router-link-exact-active\",s),e)],attrs:o({\"aria-label\":l.ariaLabel,disabled:l.disabled,type:l.href?null:l.nativeType,role:l.href?\"button\":null,href:!l.to&&l.href?l.href:null},l.$attrs),on:o(o({},l.$listeners),{},{click:function(t){var e,n;null===(e=l.$listeners)||void 0===e||null===(n=e.click)||void 0===n||n.call(e,t),null==i||i(t)}})},[t(\"span\",{class:\"button-vue__wrapper\"},[d?t(\"span\",{class:\"button-vue__icon\",attrs:{\"aria-hidden\":l.ariaHidden}},[l.$slots.icon]):null,u?t(\"span\",{class:\"button-vue__text\"},[c]):null])])};return this.to?t(\"router-link\",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:p}}):p()}};var l=n(3379),c=n.n(l),u=n(7795),d=n.n(u),p=n(569),A=n.n(p),m=n(3565),h=n.n(m),f=n(9216),v=n.n(f),g=n(4589),C=n.n(g),b=n(1898),y={};y.styleTagTransform=C(),y.setAttributes=h(),y.insert=A().bind(null,\"head\"),y.domAPI=d(),y.insertStyleElement=v();c()(b.Z,y);b.Z&&b.Z.locals&&b.Z.locals;var w=n(1900),x=n(2102),k=n.n(x),_=(0,w.Z)(s,undefined,undefined,!1,null,\"2e49be1e\",null);\"function\"==typeof k()&&k()(_);const S=_.exports},4378:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>b});var i=n(281),r=n(1336);const o={name:\"NcEllipsisedOption\",components:{NcHighlight:i.default},props:{name:{type:String,default:\"\"},search:{type:String,default:\"\"}},computed:{needsTruncate:function(){return this.name&&this.name.length>=10},split:function(){return this.name.length-Math.min(Math.floor(this.name.length/2),10)},part1:function(){return this.needsTruncate?this.name.slice(0,this.split):this.name},part2:function(){return this.needsTruncate?this.name.slice(this.split):\"\"},highlight1:function(){return this.search?(0,r.Z)(this.name,this.search):[]},highlight2:function(){var t=this;return this.highlight1.map((function(e){return{start:e.start-t.split,end:e.end-t.split}}))}}};var a=n(3379),s=n.n(a),l=n(7795),c=n.n(l),u=n(569),d=n.n(u),p=n(3565),A=n.n(p),m=n(9216),h=n.n(m),f=n(4589),v=n.n(f),g=n(436),C={};C.styleTagTransform=v(),C.setAttributes=A(),C.insert=d().bind(null,\"head\"),C.domAPI=c(),C.insertStyleElement=h();s()(g.Z,C);g.Z&&g.Z.locals&&g.Z.locals;const b=(0,n(1900).Z)(o,(function(){var t=this,e=t._self._c;return e(\"span\",{staticClass:\"name-parts\",attrs:{title:t.name}},[e(\"NcHighlight\",{staticClass:\"name-parts__first\",attrs:{text:t.part1,search:t.search,highlight:t.highlight1}}),t._v(\" \"),t.part2?e(\"NcHighlight\",{staticClass:\"name-parts__last\",attrs:{text:t.part2,search:t.search,highlight:t.highlight2}}):t._e()],1)}),[],!1,null,\"3daafbe0\",null).exports},3335:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>w});const i={name:\"NcEmptyContent\",props:{title:{type:String,default:\"\"},description:{type:String,default:\"\"}},computed:{hasTitle:function(){return\"\"!==this.title},hasDescription:function(){return\"\"!==this.description}}};var r=n(3379),o=n.n(r),a=n(7795),s=n.n(a),l=n(569),c=n.n(l),u=n(3565),d=n.n(u),p=n(9216),A=n.n(p),m=n(4589),h=n.n(m),f=n(3300),v={};v.styleTagTransform=h(),v.setAttributes=d(),v.insert=c().bind(null,\"head\"),v.domAPI=s(),v.insertStyleElement=A();o()(f.Z,v);f.Z&&f.Z.locals&&f.Z.locals;var g=n(1900),C=n(9258),b=n.n(C),y=(0,g.Z)(i,(function(){var t=this,e=t._self._c;return e(\"div\",{staticClass:\"empty-content\",attrs:{role:\"note\"}},[t.$slots.icon?e(\"div\",{staticClass:\"empty-content__icon\",attrs:{\"aria-hidden\":\"true\"}},[t._t(\"icon\")],2):t._e(),t._v(\" \"),t._t(\"title\",(function(){return[t.hasTitle?e(\"h2\",{staticClass:\"empty-content__title\"},[t._v(\"\\n\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\")]):t._e()]})),t._v(\" \"),t.hasDescription?e(\"p\",[t._v(\"\\n\\t\\t\"+t._s(t.description)+\"\\n\\t\")]):t._e(),t._v(\" \"),t.$slots.action?e(\"div\",{staticClass:\"empty-content__action\"},[t._t(\"action\")],2):t._e()],2)}),[],!1,null,\"04d732c3\",null);\"function\"==typeof b()&&b()(y);const w=y.exports},281:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>A});var i=n(1336);function r(t){return r=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},r(t)}function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function a(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?o(Object(n),!0).forEach((function(e){s(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function s(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!==r(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var i=n.call(t,e||\"default\");if(\"object\"!==r(i))return i;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"===r(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}const l={name:\"NcHighlight\",props:{text:{type:String,default:\"\"},search:{type:String,default:\"\"},highlight:{type:Array,default:function(){return[]}}},computed:{ranges:function(){var t=this,e=[];return this.search||0!==this.highlight.length?(e=this.highlight.length>0?this.highlight:(0,i.Z)(this.text,this.search),e.forEach((function(t,n){t.end<t.start&&(e[n]={start:t.end,end:t.start})})),e=e.reduce((function(e,n){return n.start<t.text.length&&n.end>0&&e.push({start:n.start<0?0:n.start,end:n.end>t.text.length?t.text.length:n.end}),e}),[]),e.sort((function(t,e){return t.start-e.start})),e=e.reduce((function(t,e){if(t.length){var n=t.length-1;t[n].end>=e.start?t[n]={start:t[n].start,end:Math.max(t[n].end,e.end)}:t.push(e)}else t.push(e);return t}),[]),e):e},chunks:function(){if(0===this.ranges.length)return[{start:0,end:this.text.length,highlight:!1,text:this.text}];for(var t=[],e=0,n=0;e<this.text.length;){var i=this.ranges[n];i.start!==e?(t.push({start:e,end:i.start,highlight:!1,text:this.text.slice(e,i.start)}),e=i.start):(t.push(a(a({},i),{},{highlight:!0,text:this.text.slice(i.start,i.end)})),n++,e=i.end,n>=this.ranges.length&&e<this.text.length&&(t.push({start:e,end:this.text.length,highlight:!1,text:this.text.slice(e)}),e=this.text.length))}return t}},render:function(t){return this.ranges.length?t(\"span\",{},this.chunks.map((function(e){return e.highlight?t(\"strong\",{},e.text):e.text}))):t(\"span\",{},this.text)}};var c=n(1900),u=n(6274),d=n.n(u),p=(0,c.Z)(l,undefined,undefined,!1,null,null,null);\"function\"==typeof d()&&d()(p);const A=p.exports},6388:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>B});const i=require(\"@skjnldsv/sanitize-svg\");function r(t){return r=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},r(t)}function o(){o=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},a=\"function\"==typeof Symbol?Symbol:{},s=a.iterator||\"@@iterator\",l=a.asyncIterator||\"@@asyncIterator\",c=a.toStringTag||\"@@toStringTag\";function u(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},\"\")}catch(t){u=function(t,e,n){return t[e]=n}}function d(t,e,n,r){var o=e&&e.prototype instanceof m?e:m,a=Object.create(o.prototype),s=new B(r||[]);return i(a,\"_invoke\",{value:x(t,n,s)}),a}function p(t,e,n){try{return{type:\"normal\",arg:t.call(e,n)}}catch(t){return{type:\"throw\",arg:t}}}t.wrap=d;var A={};function m(){}function h(){}function f(){}var v={};u(v,s,(function(){return this}));var g=Object.getPrototypeOf,C=g&&g(g(j([])));C&&C!==e&&n.call(C,s)&&(v=C);var b=f.prototype=m.prototype=Object.create(v);function y(t){[\"next\",\"throw\",\"return\"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(i,a,s,l){var c=p(t[i],t,a);if(\"throw\"!==c.type){var u=c.arg,d=u.value;return d&&\"object\"==r(d)&&n.call(d,\"__await\")?e.resolve(d.__await).then((function(t){o(\"next\",t,s,l)}),(function(t){o(\"throw\",t,s,l)})):e.resolve(d).then((function(t){u.value=t,s(u)}),(function(t){return o(\"throw\",t,s,l)}))}l(c.arg)}var a;i(this,\"_invoke\",{value:function(t,n){function i(){return new e((function(e,i){o(t,n,e,i)}))}return a=a?a.then(i,i):i()}})}function x(t,e,n){var i=\"suspendedStart\";return function(r,o){if(\"executing\"===i)throw new Error(\"Generator is already running\");if(\"completed\"===i){if(\"throw\"===r)throw o;return E()}for(n.method=r,n.arg=o;;){var a=n.delegate;if(a){var s=k(a,n);if(s){if(s===A)continue;return s}}if(\"next\"===n.method)n.sent=n._sent=n.arg;else if(\"throw\"===n.method){if(\"suspendedStart\"===i)throw i=\"completed\",n.arg;n.dispatchException(n.arg)}else\"return\"===n.method&&n.abrupt(\"return\",n.arg);i=\"executing\";var l=p(t,e,n);if(\"normal\"===l.type){if(i=n.done?\"completed\":\"suspendedYield\",l.arg===A)continue;return{value:l.arg,done:n.done}}\"throw\"===l.type&&(i=\"completed\",n.method=\"throw\",n.arg=l.arg)}}}function k(t,e){var n=e.method,i=t.iterator[n];if(void 0===i)return e.delegate=null,\"throw\"===n&&t.iterator.return&&(e.method=\"return\",e.arg=void 0,k(t,e),\"throw\"===e.method)||\"return\"!==n&&(e.method=\"throw\",e.arg=new TypeError(\"The iterator does not provide a '\"+n+\"' method\")),A;var r=p(i,t.iterator,e.arg);if(\"throw\"===r.type)return e.method=\"throw\",e.arg=r.arg,e.delegate=null,A;var o=r.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,\"return\"!==e.method&&(e.method=\"next\",e.arg=void 0),e.delegate=null,A):o:(e.method=\"throw\",e.arg=new TypeError(\"iterator result is not an object\"),e.delegate=null,A)}function _(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function S(t){var e=t.completion||{};e.type=\"normal\",delete e.arg,t.completion=e}function B(t){this.tryEntries=[{tryLoc:\"root\"}],t.forEach(_,this),this.reset(!0)}function j(t){if(t){var e=t[s];if(e)return e.call(t);if(\"function\"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,r=function e(){for(;++i<t.length;)if(n.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:E}}function E(){return{value:void 0,done:!0}}return h.prototype=f,i(b,\"constructor\",{value:f,configurable:!0}),i(f,\"constructor\",{value:h,configurable:!0}),h.displayName=u(f,c,\"GeneratorFunction\"),t.isGeneratorFunction=function(t){var e=\"function\"==typeof t&&t.constructor;return!!e&&(e===h||\"GeneratorFunction\"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,u(t,c,\"GeneratorFunction\")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},y(w.prototype),u(w.prototype,l,(function(){return this})),t.AsyncIterator=w,t.async=function(e,n,i,r,o){void 0===o&&(o=Promise);var a=new w(d(e,n,i,r),o);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(b),u(b,c,\"Generator\"),u(b,s,(function(){return this})),u(b,\"toString\",(function(){return\"[object Generator]\"})),t.keys=function(t){var e=Object(t),n=[];for(var i in e)n.push(i);return n.reverse(),function t(){for(;n.length;){var i=n.pop();if(i in e)return t.value=i,t.done=!1,t}return t.done=!0,t}},t.values=j,B.prototype={constructor:B,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method=\"next\",this.arg=void 0,this.tryEntries.forEach(S),!t)for(var e in this)\"t\"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if(\"throw\"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function i(n,i){return a.type=\"throw\",a.arg=t,e.next=n,i&&(e.method=\"next\",e.arg=void 0),!!i}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],a=o.completion;if(\"root\"===o.tryLoc)return i(\"end\");if(o.tryLoc<=this.prev){var s=n.call(o,\"catchLoc\"),l=n.call(o,\"finallyLoc\");if(s&&l){if(this.prev<o.catchLoc)return i(o.catchLoc,!0);if(this.prev<o.finallyLoc)return i(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return i(o.catchLoc,!0)}else{if(!l)throw new Error(\"try statement without catch or finally\");if(this.prev<o.finallyLoc)return i(o.finallyLoc)}}}},abrupt:function(t,e){for(var i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i];if(r.tryLoc<=this.prev&&n.call(r,\"finallyLoc\")&&this.prev<r.finallyLoc){var o=r;break}}o&&(\"break\"===t||\"continue\"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method=\"next\",this.next=o.finallyLoc,A):this.complete(a)},complete:function(t,e){if(\"throw\"===t.type)throw t.arg;return\"break\"===t.type||\"continue\"===t.type?this.next=t.arg:\"return\"===t.type?(this.rval=this.arg=t.arg,this.method=\"return\",this.next=\"end\"):\"normal\"===t.type&&e&&(this.next=e),A},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),S(n),A}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var i=n.completion;if(\"throw\"===i.type){var r=i.arg;S(n)}return r}}throw new Error(\"illegal catch attempt\")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},\"next\"===this.method&&(this.arg=void 0),A}},t}function a(t,e,n,i,r,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(i,r)}function s(t){return function(){var e=this,n=arguments;return new Promise((function(i,r){var o=t.apply(e,n);function s(t){a(o,i,r,s,l,\"next\",t)}function l(t){a(o,i,r,s,l,\"throw\",t)}s(void 0)}))}}const l={name:\"NcIconSvgWrapper\",props:{svg:{type:String,default:\"\"},title:{type:String,default:\"\"}},data:function(){return{cleanSvg:\"\"}},beforeMount:function(){var t=this;return s(o().mark((function e(){return o().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.sanitizeSVG();case 2:case\"end\":return e.stop()}}),e)})))()},methods:{sanitizeSVG:function(){var t=this;return s(o().mark((function e(){return o().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.svg){e.next=2;break}return e.abrupt(\"return\");case 2:return e.next=4,(0,i.sanitizeSVG)(t.svg);case 4:t.cleanSvg=e.sent;case 5:case\"end\":return e.stop()}}),e)})))()}}};var c=n(3379),u=n.n(c),d=n(7795),p=n.n(d),A=n(569),m=n.n(A),h=n(3565),f=n.n(h),v=n(9216),g=n.n(v),C=n(4589),b=n.n(C),y=n(5635),w={};w.styleTagTransform=b(),w.setAttributes=f(),w.insert=m().bind(null,\"head\"),w.domAPI=p(),w.insertStyleElement=g();u()(y.Z,w);y.Z&&y.Z.locals&&y.Z.locals;var x=n(1900),k=n(1287),_=n.n(k),S=(0,x.Z)(l,(function(){var t=this;return(0,t._self._c)(\"span\",{staticClass:\"icon-vue\",attrs:{role:\"img\",\"aria-hidden\":!t.title,\"aria-label\":t.title},domProps:{innerHTML:t._s(t.cleanSvg)}})}),[],!1,null,\"5bf5fa74\",null);\"function\"==typeof _()&&_()(S);const B=S.exports},6750:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>B});var i=n(8091),r=n(281),o=n(6388),a=n(3351);const s={name:\"NcListItemIcon\",components:{NcAvatar:i.default,NcHighlight:r.default,NcIconSvgWrapper:o.default},mixins:[a.iQ],props:{title:{type:String,required:!0},subtitle:{type:String,default:\"\"},icon:{type:String,default:\"\"},iconSvg:{type:String,default:\"\"},iconTitle:{type:String,default:\"\"},search:{type:String,default:\"\"},avatarSize:{type:Number,default:32},noMargin:{type:Boolean,default:!1},displayName:{type:String,default:null},isNoUser:{type:Boolean,default:!1},id:{type:String,default:null}},data:function(){return{margin:8}},computed:{hasIcon:function(){return\"\"!==this.icon},hasIconSvg:function(){return\"\"!==this.iconSvg},isValidSubtitle:function(){var t,e;return\"\"!==(null===(t=this.subtitle)||void 0===t||null===(e=t.trim)||void 0===e?void 0:e.call(t))},isSizeBigEnough:function(){return this.avatarSize>=32},cssVars:function(){var t=this.noMargin?0:this.margin;return{\"--height\":this.avatarSize+2*t+\"px\",\"--margin\":this.margin+\"px\"}}},beforeMount:function(){this.isNoUser||this.subtitle||this.fetchUserStatus(this.user)}},l=s;var c=n(3379),u=n.n(c),d=n(7795),p=n.n(d),A=n(569),m=n.n(A),h=n(3565),f=n.n(h),v=n(9216),g=n.n(v),C=n(4589),b=n.n(C),y=n(808),w={};w.styleTagTransform=b(),w.setAttributes=f(),w.insert=m().bind(null,\"head\"),w.domAPI=p(),w.insertStyleElement=g();u()(y.Z,w);y.Z&&y.Z.locals&&y.Z.locals;var x=n(1900),k=n(8488),_=n.n(k),S=(0,x.Z)(l,(function(){var t=this,e=t._self._c;return e(\"span\",t._g({staticClass:\"option\",style:t.cssVars,attrs:{id:t.id}},t.$listeners),[e(\"NcAvatar\",t._b({staticClass:\"option__avatar\",attrs:{\"disable-menu\":!0,\"disable-tooltip\":!0,\"display-name\":t.displayName||t.title,\"is-no-user\":t.isNoUser,size:t.avatarSize}},\"NcAvatar\",t.$attrs,!1)),t._v(\" \"),e(\"div\",{staticClass:\"option__details\"},[e(\"NcHighlight\",{staticClass:\"option__lineone\",attrs:{text:t.title,search:t.search}}),t._v(\" \"),t.isValidSubtitle&&t.isSizeBigEnough?e(\"NcHighlight\",{staticClass:\"option__linetwo\",attrs:{text:t.subtitle,search:t.search}}):t.hasStatus?e(\"span\",[e(\"span\",[t._v(t._s(t.userStatus.icon))]),t._v(\" \"),e(\"span\",[t._v(t._s(t.userStatus.message))])]):t._e()],1),t._v(\" \"),t._t(\"default\",(function(){return[t.hasIconSvg?e(\"NcIconSvgWrapper\",{staticClass:\"option__icon\",attrs:{svg:t.iconSvg,title:t.iconTitle}}):t.hasIcon?e(\"span\",{staticClass:\"icon option__icon\",class:t.icon,attrs:{\"aria-label\":t.iconTitle}}):t._e()]}))],2)}),[],!1,null,\"4f3daf70\",null);\"function\"==typeof _()&&_()(S);const B=S.exports},5378:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>w});const i={name:\"NcLoadingIcon\",props:{size:{type:Number,default:20},appearance:{type:String,validator:function(t){return[\"auto\",\"light\",\"dark\"].includes(t)},default:\"auto\"},title:{type:String,default:\"\"}},computed:{colors:function(){var t=[\"#777\",\"#CCC\"];return\"light\"===this.appearance?t:\"dark\"===this.appearance?t.reverse():[\"var(--color-loading-light)\",\"var(--color-loading-dark)\"]}}};var r=n(3379),o=n.n(r),a=n(7795),s=n.n(a),l=n(569),c=n.n(l),u=n(3565),d=n.n(u),p=n(9216),A=n.n(p),m=n(4589),h=n.n(m),f=n(5030),v={};v.styleTagTransform=h(),v.setAttributes=d(),v.insert=c().bind(null,\"head\"),v.domAPI=s(),v.insertStyleElement=A();o()(f.Z,v);f.Z&&f.Z.locals&&f.Z.locals;var g=n(1900),C=n(9280),b=n.n(C),y=(0,g.Z)(i,(function(){var t=this,e=t._self._c;return e(\"span\",{staticClass:\"material-design-icon loading-icon\",attrs:{\"aria-label\":t.title,role:\"img\"}},[e(\"svg\",{attrs:{width:t.size,height:t.size,viewBox:\"0 0 24 24\"}},[e(\"path\",{attrs:{fill:t.colors[0],d:\"M12,4V2A10,10 0 1,0 22,12H20A8,8 0 1,1 12,4Z\"}}),t._v(\" \"),e(\"path\",{attrs:{fill:t.colors[1],d:\"M12,4V2A10,10 0 0,1 22,12H20A8,8 0 0,0 12,4Z\"}},[t.title?e(\"title\",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,\"c4a9cada\",null);\"function\"==typeof b()&&b()(y);const w=y.exports},1373:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>K});var i=n(7645),r=n(1206),o=n(932),a=n(1205),s=n(3648),l=n(4891),c=n(9104);function u(t,e){var n,i,r,o=e;this.start=function(){r=!0,i=new Date,n=setTimeout(t,o)},this.pause=function(){r=!1,clearTimeout(n),o-=new Date-i},this.clear=function(){r=!1,clearTimeout(n),o=0},this.getTimeLeft=function(){return r&&(this.pause(),this.start()),o},this.getStateRunning=function(){return r},this.start()}var d=n(336);const p=require(\"vue-material-design-icons/ChevronLeft.vue\");var A=n.n(p),m=n(9044),h=n.n(m),f=n(8618),v=n.n(f);const g=require(\"vue-material-design-icons/Pause.vue\");var C=n.n(g);const b=require(\"vue-material-design-icons/Play.vue\");var y=n.n(b),w=n(4505),x=n(2640),k=n.n(x);function _(t){return _=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},_(t)}function S(){S=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},r=\"function\"==typeof Symbol?Symbol:{},o=r.iterator||\"@@iterator\",a=r.asyncIterator||\"@@asyncIterator\",s=r.toStringTag||\"@@toStringTag\";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},\"\")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var o=e&&e.prototype instanceof p?e:p,a=Object.create(o.prototype),s=new B(r||[]);return i(a,\"_invoke\",{value:y(t,n,s)}),a}function u(t,e,n){try{return{type:\"normal\",arg:t.call(e,n)}}catch(t){return{type:\"throw\",arg:t}}}t.wrap=c;var d={};function p(){}function A(){}function m(){}var h={};l(h,o,(function(){return this}));var f=Object.getPrototypeOf,v=f&&f(f(j([])));v&&v!==e&&n.call(v,o)&&(h=v);var g=m.prototype=p.prototype=Object.create(h);function C(t){[\"next\",\"throw\",\"return\"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function r(i,o,a,s){var l=u(t[i],t,o);if(\"throw\"!==l.type){var c=l.arg,d=c.value;return d&&\"object\"==_(d)&&n.call(d,\"__await\")?e.resolve(d.__await).then((function(t){r(\"next\",t,a,s)}),(function(t){r(\"throw\",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return r(\"throw\",t,a,s)}))}s(l.arg)}var o;i(this,\"_invoke\",{value:function(t,n){function i(){return new e((function(e,i){r(t,n,e,i)}))}return o=o?o.then(i,i):i()}})}function y(t,e,n){var i=\"suspendedStart\";return function(r,o){if(\"executing\"===i)throw new Error(\"Generator is already running\");if(\"completed\"===i){if(\"throw\"===r)throw o;return E()}for(n.method=r,n.arg=o;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if(\"next\"===n.method)n.sent=n._sent=n.arg;else if(\"throw\"===n.method){if(\"suspendedStart\"===i)throw i=\"completed\",n.arg;n.dispatchException(n.arg)}else\"return\"===n.method&&n.abrupt(\"return\",n.arg);i=\"executing\";var l=u(t,e,n);if(\"normal\"===l.type){if(i=n.done?\"completed\":\"suspendedYield\",l.arg===d)continue;return{value:l.arg,done:n.done}}\"throw\"===l.type&&(i=\"completed\",n.method=\"throw\",n.arg=l.arg)}}}function w(t,e){var n=e.method,i=t.iterator[n];if(void 0===i)return e.delegate=null,\"throw\"===n&&t.iterator.return&&(e.method=\"return\",e.arg=void 0,w(t,e),\"throw\"===e.method)||\"return\"!==n&&(e.method=\"throw\",e.arg=new TypeError(\"The iterator does not provide a '\"+n+\"' method\")),d;var r=u(i,t.iterator,e.arg);if(\"throw\"===r.type)return e.method=\"throw\",e.arg=r.arg,e.delegate=null,d;var o=r.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,\"return\"!==e.method&&(e.method=\"next\",e.arg=void 0),e.delegate=null,d):o:(e.method=\"throw\",e.arg=new TypeError(\"iterator result is not an object\"),e.delegate=null,d)}function x(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type=\"normal\",delete e.arg,t.completion=e}function B(t){this.tryEntries=[{tryLoc:\"root\"}],t.forEach(x,this),this.reset(!0)}function j(t){if(t){var e=t[o];if(e)return e.call(t);if(\"function\"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,r=function e(){for(;++i<t.length;)if(n.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:E}}function E(){return{value:void 0,done:!0}}return A.prototype=m,i(g,\"constructor\",{value:m,configurable:!0}),i(m,\"constructor\",{value:A,configurable:!0}),A.displayName=l(m,s,\"GeneratorFunction\"),t.isGeneratorFunction=function(t){var e=\"function\"==typeof t&&t.constructor;return!!e&&(e===A||\"GeneratorFunction\"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,m):(t.__proto__=m,l(t,s,\"GeneratorFunction\")),t.prototype=Object.create(g),t},t.awrap=function(t){return{__await:t}},C(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,i,r,o){void 0===o&&(o=Promise);var a=new b(c(e,n,i,r),o);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},C(g),l(g,s,\"Generator\"),l(g,o,(function(){return this})),l(g,\"toString\",(function(){return\"[object Generator]\"})),t.keys=function(t){var e=Object(t),n=[];for(var i in e)n.push(i);return n.reverse(),function t(){for(;n.length;){var i=n.pop();if(i in e)return t.value=i,t.done=!1,t}return t.done=!0,t}},t.values=j,B.prototype={constructor:B,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method=\"next\",this.arg=void 0,this.tryEntries.forEach(k),!t)for(var e in this)\"t\"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if(\"throw\"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function i(n,i){return a.type=\"throw\",a.arg=t,e.next=n,i&&(e.method=\"next\",e.arg=void 0),!!i}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],a=o.completion;if(\"root\"===o.tryLoc)return i(\"end\");if(o.tryLoc<=this.prev){var s=n.call(o,\"catchLoc\"),l=n.call(o,\"finallyLoc\");if(s&&l){if(this.prev<o.catchLoc)return i(o.catchLoc,!0);if(this.prev<o.finallyLoc)return i(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return i(o.catchLoc,!0)}else{if(!l)throw new Error(\"try statement without catch or finally\");if(this.prev<o.finallyLoc)return i(o.finallyLoc)}}}},abrupt:function(t,e){for(var i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i];if(r.tryLoc<=this.prev&&n.call(r,\"finallyLoc\")&&this.prev<r.finallyLoc){var o=r;break}}o&&(\"break\"===t||\"continue\"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method=\"next\",this.next=o.finallyLoc,d):this.complete(a)},complete:function(t,e){if(\"throw\"===t.type)throw t.arg;return\"break\"===t.type||\"continue\"===t.type?this.next=t.arg:\"return\"===t.type?(this.rval=this.arg=t.arg,this.method=\"return\",this.next=\"end\"):\"normal\"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),k(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var i=n.completion;if(\"throw\"===i.type){var r=i.arg;k(n)}return r}}throw new Error(\"illegal catch attempt\")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},\"next\"===this.method&&(this.arg=void 0),d}},t}function B(t,e,n,i,r,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(i,r)}function j(t){return function(t){if(Array.isArray(t))return E(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(!t)return;if(\"string\"==typeof t)return E(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===n&&t.constructor&&(n=t.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(t);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return E(t,e)}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function E(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}const N={name:\"NcModal\",components:{NcActions:l.default,ChevronLeft:A(),ChevronRight:h(),Close:v(),Pause:C(),Play:y(),NcButton:c.default},directives:{tooltip:d.default},mixins:[s.Z],props:{title:{type:String,default:\"\"},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},slideshowDelay:{type:Number,default:5e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:\"normal\",validator:function(t){return[\"small\",\"normal\",\"large\",\"full\"].includes(t)}},canClose:{type:Boolean,default:!0},dark:{type:Boolean,default:!1},container:{type:[String,null],default:\"body\"},closeButtonContained:{type:Boolean,default:!0},additionalTrapElements:{type:Array,default:function(){return[]}},inlineActions:{type:Number,default:0},show:{type:Boolean,default:void 0}},emits:[\"previous\",\"next\",\"close\",\"update:show\"],data:function(){return{mc:null,playing:!1,slideshowTimeout:null,iconSize:24,focusTrap:null,randId:(0,a.Z)(),internalShow:!0}},computed:{showModal:function(){return void 0===this.show?this.internalShow:this.show},modalTransitionName:function(){return\"modal-\".concat(this.outTransition?\"out\":\"in\")},playPauseTitle:function(){return this.playing?(0,o.t)(\"Pause slideshow\"):(0,o.t)(\"Start slideshow\")},cssVariables:function(){return{\"--slideshow-duration\":this.slideshowDelay+\"ms\",\"--icon-size\":this.iconSize+\"px\"}},closeButtonAriaLabel:function(){return(0,o.t)(\"Close modal\")},prevButtonAriaLabel:function(){return(0,o.t)(\"Previous\")},nextButtonAriaLabel:function(){return(0,o.t)(\"Next\")}},watch:{slideshowPaused:function(t){this.slideshowTimeout&&(t?this.slideshowTimeout.pause():this.slideshowTimeout.start())},additionalTrapElements:function(t){if(this.focusTrap){var e=this.$refs.mask;this.focusTrap.updateContainerElements([e].concat(j(t)))}}},beforeMount:function(){window.addEventListener(\"keydown\",this.handleKeydown)},beforeDestroy:function(){window.removeEventListener(\"keydown\",this.handleKeydown),this.mc.off(\"swipeleft swiperight\"),this.mc.destroy()},mounted:function(){var t=this;(this.useFocusTrap(),this.mc=new(k())(this.$refs.mask),this.mc.on(\"swipeleft swiperight\",(function(e){t.handleSwipe(e)})),this.container)&&(\"body\"===this.container?document.body.insertBefore(this.$el,document.body.lastChild):document.querySelector(this.container).appendChild(this.$el))},destroyed:function(){this.clearFocusTrap(),this.$el.remove()},methods:{previous:function(t){this.hasPrevious&&(t&&this.resetSlideshow(),this.$emit(\"previous\",t))},next:function(t){this.hasNext&&(t&&this.resetSlideshow(),this.$emit(\"next\",t))},close:function(t){var e=this;this.canClose&&(this.internalShow=!1,this.$emit(\"update:show\",!1),setTimeout((function(){e.$emit(\"close\",t)}),300))},handleKeydown:function(t){switch(t.keyCode){case 37:this.previous(t);break;case 39:this.next(t);break;case 27:this.close(t)}},handleSwipe:function(t){this.enableSwipe&&(\"swipeleft\"===t.type?this.next(t):\"swiperight\"===t.type&&this.previous(t))},togglePlayPause:function(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow:function(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick((function(){this.togglePlayPause()}))},handleSlideshow:function(){var t=this;this.playing=!0,this.hasNext?this.slideshowTimeout=new u((function(){t.next(),t.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()},useFocusTrap:function(){var t,e=this;return(t=S().mark((function t(){var n;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.showModal&&!e.focusTrap){t.next=2;break}return t.abrupt(\"return\");case 2:return n=e.$refs.mask,t.next=5,e.$nextTick();case 5:e.focusTrap=(0,w.createFocusTrap)(n,{allowOutsideClick:!0,trapStack:(0,r.L)()}),e.focusTrap.activate();case 7:case\"end\":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(i,r){var o=t.apply(e,n);function a(t){B(o,i,r,a,s,\"next\",t)}function s(t){B(o,i,r,a,s,\"throw\",t)}a(void 0)}))})()},clearFocusTrap:function(){var t;this.focusTrap&&(null===(t=this.focusTrap)||void 0===t||t.deactivate(),this.focusTrap=null)}}};var P=n(3379),z=n.n(P),O=n(7795),D=n.n(O),T=n(569),I=n.n(T),L=n(3565),G=n.n(L),$=n(9216),M=n.n($),F=n(4589),U=n.n(F),R=n(4167),Z={};Z.styleTagTransform=U(),Z.setAttributes=G(),Z.insert=I().bind(null,\"head\"),Z.domAPI=D(),Z.insertStyleElement=M();z()(R.Z,Z);R.Z&&R.Z.locals&&R.Z.locals;var q=n(1900),W=n(9989),Y=n.n(W),V=(0,q.Z)(N,(function(){var t=this,e=t._self._c;return e(\"transition\",{attrs:{name:\"fade\",appear:\"\"},on:{\"after-enter\":t.useFocusTrap,\"before-leave\":t.clearFocusTrap}},[e(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showModal,expression:\"showModal\"}],ref:\"mask\",staticClass:\"modal-mask\",class:{\"modal-mask--dark\":t.dark},style:t.cssVariables,attrs:{role:\"dialog\",\"aria-modal\":\"true\",\"aria-labelledby\":\"modal-title-\"+t.randId,\"aria-describedby\":\"modal-description-\"+t.randId}},[e(\"transition\",{attrs:{name:\"fade-visibility\",appear:\"\"}},[e(\"div\",{staticClass:\"modal-header\"},[\"\"!==t.title.trim()?e(\"h2\",{staticClass:\"modal-title\",attrs:{id:\"modal-title-\"+t.randId}},[t._v(\"\\n\\t\\t\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\\t\\t\")]):t._e(),t._v(\" \"),e(\"div\",{staticClass:\"icons-menu\"},[t.hasNext&&t.enableSlideshow?e(\"button\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:t.playPauseTitle,expression:\"playPauseTitle\",modifiers:{auto:!0}}],staticClass:\"play-pause-icons\",class:{\"play-pause-icons--paused\":t.slideshowPaused},attrs:{type:\"button\"},on:{click:t.togglePlayPause}},[t.playing?e(\"Pause\",{staticClass:\"play-pause-icons__pause\",attrs:{size:t.iconSize}}):e(\"Play\",{staticClass:\"play-pause-icons__play\",attrs:{size:t.iconSize}}),t._v(\" \"),e(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.playPauseTitle)+\"\\n\\t\\t\\t\\t\\t\\t\")]),t._v(\" \"),t.playing?e(\"svg\",{staticClass:\"progress-ring\",attrs:{height:\"50\",width:\"50\"}},[e(\"circle\",{staticClass:\"progress-ring__circle\",attrs:{stroke:\"white\",\"stroke-width\":\"2\",fill:\"transparent\",r:\"15\",cx:\"25\",cy:\"25\"}})]):t._e()],1):t._e(),t._v(\" \"),e(\"NcActions\",{staticClass:\"header-actions\",attrs:{inline:t.inlineActions}},[t._t(\"actions\")],2),t._v(\" \"),t.canClose&&!t.closeButtonContained?e(\"NcButton\",{staticClass:\"header-close\",attrs:{\"aria-label\":t.closeButtonAriaLabel,type:\"tertiary\"},on:{click:t.close},scopedSlots:t._u([{key:\"icon\",fn:function(){return[e(\"Close\",{attrs:{size:t.iconSize}})]},proxy:!0}],null,!1,1841713362)}):t._e()],1)])]),t._v(\" \"),e(\"transition\",{attrs:{name:t.modalTransitionName,appear:\"\"}},[e(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showModal,expression:\"showModal\"}],staticClass:\"modal-wrapper\",class:[\"modal-wrapper--\".concat(t.size),t.spreadNavigation?\"modal-wrapper--spread-navigation\":\"\"],on:{mousedown:function(e){return e.target!==e.currentTarget?null:t.close.apply(null,arguments)}}},[e(\"transition\",{attrs:{name:\"fade-visibility\",appear:\"\"}},[e(\"NcButton\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasPrevious,expression:\"hasPrevious\"}],staticClass:\"prev\",class:{invisible:!t.hasPrevious},attrs:{type:\"tertiary-no-background\",\"aria-label\":t.prevButtonAriaLabel},on:{click:t.previous},scopedSlots:t._u([{key:\"icon\",fn:function(){return[e(\"ChevronLeft\",{attrs:{size:40}})]},proxy:!0}])})],1),t._v(\" \"),e(\"div\",{staticClass:\"modal-container\",attrs:{id:\"modal-description-\"+t.randId}},[t._t(\"default\"),t._v(\" \"),t.canClose&&t.closeButtonContained?e(\"NcButton\",{staticClass:\"modal-container__close\",attrs:{type:\"tertiary\",\"aria-label\":t.closeButtonAriaLabel},on:{click:t.close},scopedSlots:t._u([{key:\"icon\",fn:function(){return[e(\"Close\",{attrs:{size:20}})]},proxy:!0}],null,!1,2121748766)}):t._e()],2),t._v(\" \"),e(\"transition\",{attrs:{name:\"fade-visibility\",appear:\"\"}},[e(\"NcButton\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasNext,expression:\"hasNext\"}],staticClass:\"next\",class:{invisible:!t.hasNext},attrs:{type:\"tertiary-no-background\",\"aria-label\":t.nextButtonAriaLabel},on:{click:t.next},scopedSlots:t._u([{key:\"icon\",fn:function(){return[e(\"ChevronRight\",{attrs:{size:40}})]},proxy:!0}])})],1)],1)])],1)])}),[],!1,null,\"1350db4f\",null);\"function\"==typeof Y()&&Y()(V);const H=V.exports;(0,i.Z)(H);const K=H},2917:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>z});var i=n(3379),r=n.n(i),o=n(7795),a=n.n(o),s=n(569),l=n.n(s),c=n(3565),u=n.n(c),d=n(9216),p=n.n(d),A=n(4589),m=n.n(A),h=n(636),f={};f.styleTagTransform=m(),f.setAttributes=u(),f.insert=l().bind(null,\"head\"),f.domAPI=a(),f.insertStyleElement=p();r()(h.Z,f);h.Z&&h.Z.locals&&h.Z.locals;var v=n(4378),g=n(6750),C=n(5378),b=n(336),y=n(3648);const w=require(\"vue-multiselect\");var x=n.n(w);function k(t){return k=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},k(t)}const _={name:\"NcMultiselect\",components:{NcEllipsisedOption:v.default,NcListItemIcon:g.default,NcLoadingIcon:C.default,VueMultiselect:x()},directives:{tooltip:b.default},mixins:[y.Z],inheritAttrs:!1,props:{value:{default:function(){return[]}},closeOnSelect:{type:Boolean,default:void 0},multiple:{type:Boolean,default:!1},limit:{type:Number,default:99999},label:{type:String,default:\"\"},trackBy:{type:String,default:\"\"},options:{type:Array,required:!0},userSelect:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},autoLimit:{type:Boolean,default:!0},tagWidth:{type:Number,default:150,validator:function(t){return t>0}}},emits:[\"change\",\"update:value\"],data:function(){return{elWidth:0,ariaExpanded:!1}},computed:{maxOptions:function(){if(this.autoLimit&&this.elWidth>0&&0!==this.tagWidth){var t=Math.floor(this.elWidth/this.tagWidth);return t>0?t:1}return this.limit?this.limit:9999},limitString:function(){return\"+\".concat(this.value.length-this.maxOptions)},localValue:{get:function(){return this.trackBy&&this.options&&\"object\"!==k(this.value)&&this.options[this.value]?this.options[this.value]:this.value},set:function(t){this.$emit(\"update:value\",t),this.$emit(\"change\",t)}},willCloseOnSelect:function(){return void 0===this.closeOnSelect?!this.multiple:this.closeOnSelect}},watch:{value:function(){this.updateWidth()}},mounted:function(){this.updateWidth(),window.addEventListener(\"resize\",this.updateWidth)},beforeDestroy:function(){window.removeEventListener(\"resize\",this.updateWidth)},methods:{getOptionLabel:function(t){var e;return String(null===(e=this.$refs.VueMultiselect)||void 0===e?void 0:e.getOptionLabel(t))},formatLimitTitle:function(t){var e=this;if(Array.isArray(t)&&t.length>0){var n=t;return\"object\"===k(t[0])&&(n=t.map((function(t){return t[e.label]}))),n.slice(this.maxOptions).join(\", \")}return\"\"},updateWidth:function(){this.$el&&this.$el.querySelector(\".multiselect__tags-wrap\")&&(this.elWidth=this.$el.querySelector(\".multiselect__tags-wrap\").offsetWidth-10)}}},S=_;var B=n(1900),j=n(6049),E=n.n(j),N=(0,B.Z)(S,(function(){var t=this,e=t._self._c;return e(\"VueMultiselect\",t._g(t._b({ref:\"VueMultiselect\",class:[t.multiple?\"multiselect--multiple\":\"multiselect--single\"],attrs:{options:t.options,limit:t.maxOptions,loading:t.loading,\"aria-expanded\":t.ariaExpanded.toString(),\"close-on-select\":t.willCloseOnSelect,multiple:t.multiple,label:t.label,\"track-by\":t.trackBy,\"tag-placeholder\":\"create\"},on:{close:function(e){t.ariaExpanded=!1},open:function(e){t.ariaExpanded=!0}},scopedSlots:t._u([{key:\"option\",fn:function(n){return[t.userSelect&&!t.$scopedSlots.option?e(\"NcListItemIcon\",t._b({attrs:{title:n.option[t.label],search:n.search}},\"NcListItemIcon\",n.option,!1)):t.$scopedSlots.option?t._t(\"option\",null,null,n):e(\"NcEllipsisedOption\",{attrs:{name:t.getOptionLabel(n.option),search:n.search}})]}},t.multiple?{key:\"limit\",fn:function(){return[e(\"span\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:t.formatLimitTitle(t.value),expression:\"formatLimitTitle(value)\",modifiers:{auto:!0}}],staticClass:\"multiselect__limit\"},[t._v(\"\\n\\t\\t\\t\"+t._s(t.limitString)+\"\\n\\t\\t\")])]},proxy:!0}:null,t._l(t.$scopedSlots,(function(e,n){return{key:n,fn:function(e){return[t._t(n,null,null,e)]}}})),{key:\"noResult\",fn:function(){return[t._t(\"noResult\",(function(){return[e(\"span\",[t._v(t._s(t.t(\"No results\")))])]}))]},proxy:!0},{key:\"loading\",fn:function(){return[t.loading?e(\"NcLoadingIcon\"):t._e()]},proxy:!0}],null,!0),model:{value:t.localValue,callback:function(e){t.localValue=e},expression:\"localValue\"}},\"VueMultiselect\",t.$attrs,!1),t.$listeners))}),[],!1,null,null,null);\"function\"==typeof E()&&E()(N);const P=N.exports;(0,n(7645).Z)(P);const z=P},5825:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>E});var i=n(9454),r=n(4505),o=n(1206);function a(t){return a=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},a(t)}function s(){s=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},r=\"function\"==typeof Symbol?Symbol:{},o=r.iterator||\"@@iterator\",l=r.asyncIterator||\"@@asyncIterator\",c=r.toStringTag||\"@@toStringTag\";function u(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},\"\")}catch(t){u=function(t,e,n){return t[e]=n}}function d(t,e,n,r){var o=e&&e.prototype instanceof m?e:m,a=Object.create(o.prototype),s=new B(r||[]);return i(a,\"_invoke\",{value:x(t,n,s)}),a}function p(t,e,n){try{return{type:\"normal\",arg:t.call(e,n)}}catch(t){return{type:\"throw\",arg:t}}}t.wrap=d;var A={};function m(){}function h(){}function f(){}var v={};u(v,o,(function(){return this}));var g=Object.getPrototypeOf,C=g&&g(g(j([])));C&&C!==e&&n.call(C,o)&&(v=C);var b=f.prototype=m.prototype=Object.create(v);function y(t){[\"next\",\"throw\",\"return\"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function r(i,o,s,l){var c=p(t[i],t,o);if(\"throw\"!==c.type){var u=c.arg,d=u.value;return d&&\"object\"==a(d)&&n.call(d,\"__await\")?e.resolve(d.__await).then((function(t){r(\"next\",t,s,l)}),(function(t){r(\"throw\",t,s,l)})):e.resolve(d).then((function(t){u.value=t,s(u)}),(function(t){return r(\"throw\",t,s,l)}))}l(c.arg)}var o;i(this,\"_invoke\",{value:function(t,n){function i(){return new e((function(e,i){r(t,n,e,i)}))}return o=o?o.then(i,i):i()}})}function x(t,e,n){var i=\"suspendedStart\";return function(r,o){if(\"executing\"===i)throw new Error(\"Generator is already running\");if(\"completed\"===i){if(\"throw\"===r)throw o;return E()}for(n.method=r,n.arg=o;;){var a=n.delegate;if(a){var s=k(a,n);if(s){if(s===A)continue;return s}}if(\"next\"===n.method)n.sent=n._sent=n.arg;else if(\"throw\"===n.method){if(\"suspendedStart\"===i)throw i=\"completed\",n.arg;n.dispatchException(n.arg)}else\"return\"===n.method&&n.abrupt(\"return\",n.arg);i=\"executing\";var l=p(t,e,n);if(\"normal\"===l.type){if(i=n.done?\"completed\":\"suspendedYield\",l.arg===A)continue;return{value:l.arg,done:n.done}}\"throw\"===l.type&&(i=\"completed\",n.method=\"throw\",n.arg=l.arg)}}}function k(t,e){var n=e.method,i=t.iterator[n];if(void 0===i)return e.delegate=null,\"throw\"===n&&t.iterator.return&&(e.method=\"return\",e.arg=void 0,k(t,e),\"throw\"===e.method)||\"return\"!==n&&(e.method=\"throw\",e.arg=new TypeError(\"The iterator does not provide a '\"+n+\"' method\")),A;var r=p(i,t.iterator,e.arg);if(\"throw\"===r.type)return e.method=\"throw\",e.arg=r.arg,e.delegate=null,A;var o=r.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,\"return\"!==e.method&&(e.method=\"next\",e.arg=void 0),e.delegate=null,A):o:(e.method=\"throw\",e.arg=new TypeError(\"iterator result is not an object\"),e.delegate=null,A)}function _(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function S(t){var e=t.completion||{};e.type=\"normal\",delete e.arg,t.completion=e}function B(t){this.tryEntries=[{tryLoc:\"root\"}],t.forEach(_,this),this.reset(!0)}function j(t){if(t){var e=t[o];if(e)return e.call(t);if(\"function\"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,r=function e(){for(;++i<t.length;)if(n.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:E}}function E(){return{value:void 0,done:!0}}return h.prototype=f,i(b,\"constructor\",{value:f,configurable:!0}),i(f,\"constructor\",{value:h,configurable:!0}),h.displayName=u(f,c,\"GeneratorFunction\"),t.isGeneratorFunction=function(t){var e=\"function\"==typeof t&&t.constructor;return!!e&&(e===h||\"GeneratorFunction\"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,u(t,c,\"GeneratorFunction\")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},y(w.prototype),u(w.prototype,l,(function(){return this})),t.AsyncIterator=w,t.async=function(e,n,i,r,o){void 0===o&&(o=Promise);var a=new w(d(e,n,i,r),o);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(b),u(b,c,\"Generator\"),u(b,o,(function(){return this})),u(b,\"toString\",(function(){return\"[object Generator]\"})),t.keys=function(t){var e=Object(t),n=[];for(var i in e)n.push(i);return n.reverse(),function t(){for(;n.length;){var i=n.pop();if(i in e)return t.value=i,t.done=!1,t}return t.done=!0,t}},t.values=j,B.prototype={constructor:B,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method=\"next\",this.arg=void 0,this.tryEntries.forEach(S),!t)for(var e in this)\"t\"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if(\"throw\"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function i(n,i){return a.type=\"throw\",a.arg=t,e.next=n,i&&(e.method=\"next\",e.arg=void 0),!!i}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],a=o.completion;if(\"root\"===o.tryLoc)return i(\"end\");if(o.tryLoc<=this.prev){var s=n.call(o,\"catchLoc\"),l=n.call(o,\"finallyLoc\");if(s&&l){if(this.prev<o.catchLoc)return i(o.catchLoc,!0);if(this.prev<o.finallyLoc)return i(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return i(o.catchLoc,!0)}else{if(!l)throw new Error(\"try statement without catch or finally\");if(this.prev<o.finallyLoc)return i(o.finallyLoc)}}}},abrupt:function(t,e){for(var i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i];if(r.tryLoc<=this.prev&&n.call(r,\"finallyLoc\")&&this.prev<r.finallyLoc){var o=r;break}}o&&(\"break\"===t||\"continue\"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method=\"next\",this.next=o.finallyLoc,A):this.complete(a)},complete:function(t,e){if(\"throw\"===t.type)throw t.arg;return\"break\"===t.type||\"continue\"===t.type?this.next=t.arg:\"return\"===t.type?(this.rval=this.arg=t.arg,this.method=\"return\",this.next=\"end\"):\"normal\"===t.type&&e&&(this.next=e),A},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),S(n),A}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var i=n.completion;if(\"throw\"===i.type){var r=i.arg;S(n)}return r}}throw new Error(\"illegal catch attempt\")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},\"next\"===this.method&&(this.arg=void 0),A}},t}function l(t,e,n,i,r,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(i,r)}const c={name:\"NcPopover\",components:{Dropdown:i.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:\"\"},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:[\"after-show\",\"after-hide\"],beforeDestroy:function(){this.clearFocusTrap()},methods:{useFocusTrap:function(){var t,e=this;return(t=s().mark((function t(){var n,i,a;return s().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.$nextTick();case 2:if(e.focusTrap){t.next=4;break}return t.abrupt(\"return\");case 4:if(a=null===(n=e.$refs.popover)||void 0===n||null===(i=n.$refs.popperContent)||void 0===i?void 0:i.$el){t.next=7;break}return t.abrupt(\"return\");case 7:e.$focusTrap=(0,r.createFocusTrap)(a,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:e.setReturnFocus,trapStack:(0,o.L)()}),e.$focusTrap.activate();case 9:case\"end\":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(i,r){var o=t.apply(e,n);function a(t){l(o,i,r,a,s,\"next\",t)}function s(t){l(o,i,r,a,s,\"throw\",t)}a(void 0)}))})()},clearFocusTrap:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var e;null===(e=this.$focusTrap)||void 0===e||e.deactivate(t),this.$focusTrap=null}catch(t){console.warn(t)}},afterShow:function(){var t=this;this.$nextTick((function(){t.$emit(\"after-show\"),t.useFocusTrap()}))},afterHide:function(){this.$emit(\"after-hide\"),this.clearFocusTrap()}}},u=c;var d=n(3379),p=n.n(d),A=n(7795),m=n.n(A),h=n(569),f=n.n(h),v=n(3565),g=n.n(v),C=n(9216),b=n.n(C),y=n(4589),w=n.n(y),x=n(4401),k={};k.styleTagTransform=w(),k.setAttributes=g(),k.insert=f().bind(null,\"head\"),k.domAPI=m(),k.insertStyleElement=b();p()(x.Z,k);x.Z&&x.Z.locals&&x.Z.locals;var _=n(1900),S=n(2405),B=n.n(S),j=(0,_.Z)(u,(function(){var t=this;return(0,t._self._c)(\"Dropdown\",t._g(t._b({ref:\"popover\",attrs:{distance:10,\"arrow-padding\":10,\"no-auto-focus\":!0,\"popper-class\":t.popoverBaseClass},on:{\"apply-show\":t.afterShow,\"apply-hide\":t.afterHide},scopedSlots:t._u([{key:\"popper\",fn:function(){return[t._t(\"default\")]},proxy:!0}],null,!0)},\"Dropdown\",t.$attrs,!1),t.$listeners),[t._t(\"trigger\")],2)}),[],!1,null,null,null);\"function\"==typeof B()&&B()(j);const E=j.exports},306:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>B});const i={name:\"NcPopoverMenuItem\",props:{item:{type:Object,required:!0,default:function(){return{key:\"nextcloud-link\",href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}},validator:function(t){return!t.input||-1!==[\"text\",\"checkbox\"].indexOf(t.input)}}},computed:{key:function(){return this.item.key?this.item.key:Math.round(16*Math.random()*1e6).toString(16)},iconIsUrl:function(){try{return new URL(this.item.icon),!0}catch(t){return!1}}},methods:{action:function(t){this.item.action&&this.item.action(t)}}};var r=n(3379),o=n.n(r),a=n(7795),s=n.n(a),l=n(569),c=n.n(l),u=n(3565),d=n.n(u),p=n(9216),A=n.n(p),m=n(4589),h=n.n(m),f=n(8369),v={};v.styleTagTransform=h(),v.setAttributes=d(),v.insert=c().bind(null,\"head\"),v.domAPI=s(),v.insertStyleElement=A();o()(f.Z,v);f.Z&&f.Z.locals&&f.Z.locals;var g=n(408),C={};C.styleTagTransform=h(),C.setAttributes=d(),C.insert=c().bind(null,\"head\"),C.domAPI=s(),C.insertStyleElement=A();o()(g.Z,C);g.Z&&g.Z.locals&&g.Z.locals;var b=n(1900);const y={name:\"NcPopoverMenu\",components:{NcPopoverMenuItem:(0,b.Z)(i,(function(){var t=this,e=t._self._c;return e(\"li\",{staticClass:\"popover__menuitem\"},[t.item.href?e(\"a\",{staticClass:\"focusable\",attrs:{href:t.item.href?t.item.href:\"#\",target:t.item.target?t.item.target:\"\",download:t.item.download,rel:\"nofollow noreferrer noopener\"},on:{click:t.action}},[t.iconIsUrl?e(\"img\",{attrs:{src:t.item.icon}}):e(\"span\",{class:t.item.icon}),t._v(\" \"),t.item.text&&t.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),t._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\\t\")])]):t.item.text?e(\"span\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\")]):t.item.longtext?e(\"p\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\")]):t._e()]):t.item.input?e(\"span\",{staticClass:\"menuitem\",class:{active:t.item.active}},[\"checkbox\"!==t.item.input?e(\"span\",{class:t.item.icon}):t._e(),t._v(\" \"),\"text\"===t.item.input?e(\"form\",{class:t.item.input,on:{submit:function(e){return e.preventDefault(),t.item.action.apply(null,arguments)}}},[e(\"input\",{attrs:{type:t.item.input,placeholder:t.item.text,required:\"\"},domProps:{value:t.item.value}}),t._v(\" \"),e(\"input\",{staticClass:\"icon-confirm\",attrs:{type:\"submit\",value:\"\"}})]):[\"checkbox\"===t.item.input?e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.item.model,expression:\"item.model\"}],class:t.item.input,attrs:{id:t.key,type:\"checkbox\"},domProps:{checked:Array.isArray(t.item.model)?t._i(t.item.model,null)>-1:t.item.model},on:{change:[function(e){var n=t.item.model,i=e.target,r=!!i.checked;if(Array.isArray(n)){var o=t._i(n,null);i.checked?o<0&&t.$set(t.item,\"model\",n.concat([null])):o>-1&&t.$set(t.item,\"model\",n.slice(0,o).concat(n.slice(o+1)))}else t.$set(t.item,\"model\",r)},t.item.action]}}):\"radio\"===t.item.input?e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.item.model,expression:\"item.model\"}],class:t.item.input,attrs:{id:t.key,type:\"radio\"},domProps:{checked:t._q(t.item.model,null)},on:{change:[function(e){return t.$set(t.item,\"model\",null)},t.item.action]}}):e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.item.model,expression:\"item.model\"}],class:t.item.input,attrs:{id:t.key,type:t.item.input},domProps:{value:t.item.model},on:{change:t.item.action,input:function(e){e.target.composing||t.$set(t.item,\"model\",e.target.value)}}}),t._v(\" \"),e(\"label\",{attrs:{for:t.key},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.item.action.apply(null,arguments)}}},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\\t\")])]],2):t.item.action?e(\"button\",{staticClass:\"menuitem focusable\",class:{active:t.item.active},attrs:{disabled:t.item.disabled,type:\"button\"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.item.action.apply(null,arguments)}}},[e(\"span\",{class:t.item.icon}),t._v(\" \"),t.item.text&&t.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),t._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\\t\")])]):t.item.text?e(\"span\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\")]):t.item.longtext?e(\"p\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\")]):t._e()]):e(\"span\",{staticClass:\"menuitem\",class:{active:t.item.active}},[e(\"span\",{class:t.item.icon}),t._v(\" \"),t.item.text&&t.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),t._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\\t\")])]):t.item.text?e(\"span\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\")]):t.item.longtext?e(\"p\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\")]):t._e()])])}),[],!1,null,\"127b0c62\",null).exports},props:{menu:{type:Array,default:function(){return[{href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}]},required:!0}}};var w=n(2),x={};x.styleTagTransform=h(),x.setAttributes=d(),x.insert=c().bind(null,\"head\"),x.domAPI=s(),x.insertStyleElement=A();o()(w.Z,x);w.Z&&w.Z.locals&&w.Z.locals;var k=n(1174),_=n.n(k),S=(0,b.Z)(y,(function(){var t=this,e=t._self._c;return e(\"ul\",{staticClass:\"popover__menu\"},t._l(t.menu,(function(t,n){return e(\"NcPopoverMenuItem\",{key:n,attrs:{item:t}})})),1)}),[],!1,null,\"31ffd2d4\",null);\"function\"==typeof _()&&_()(S);const B=S.exports},4941:(t,e,n)=>{\"use strict\";function i(t){return i=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},i(t)}function r(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function o(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?r(Object(n),!0).forEach((function(e){a(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function a(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!==i(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!==i(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"===i(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}n.d(e,{default:()=>k});var s=n(9563),l=n(8618),c=n.n(l),u=n(3875),d=n.n(u);const p=require(\"vue-material-design-icons/UndoVariant.vue\");var A=n.n(p),m=n(932);function h(t){return h=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},h(t)}function f(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function v(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?f(Object(n),!0).forEach((function(e){g(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):f(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function g(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!==h(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var i=n.call(t,e||\"default\");if(\"object\"!==h(i))return i;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"===h(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}const C={name:\"NcTextField\",components:{NcInputField:s.Z,Close:c(),ArrowRight:d(),Undo:A()},inheritAttrs:!1,props:v(v({},s.Z.props),{},{trailingButtonIcon:{type:String,default:\"close\",validator:function(t){return[\"close\",\"arrowRight\",\"undo\"].includes(t)}}}),emits:[\"update:value\"],computed:{clearTextLabel:function(){return this.trailingButtonLabel||(0,m.t)(\"Clear text\")}},methods:{handleInput:function(t){this.$emit(\"update:value\",t.target.value)}}};var b=n(1900),y=n(5439),w=n.n(y),x=(0,b.Z)(C,(function(){var t=this,e=t._self._c;return e(\"NcInputField\",t._g(t._b({ref:\"inputField\",attrs:{\"trailing-button-label\":t.clearTextLabel},on:{input:t.handleInput},scopedSlots:t._u([\"search\"!==t.type?{key:\"trailing-button-icon\",fn:function(){return[\"close\"===t.trailingButtonIcon?e(\"Close\",{attrs:{size:20}}):\"arrowRight\"===t.trailingButtonIcon?e(\"ArrowRight\",{attrs:{size:20}}):\"undo\"===t.trailingButtonIcon?e(\"Undo\",{attrs:{size:20}}):t._e()]},proxy:!0}:null],null,!0)},\"NcInputField\",o(o({},t.$attrs),t.$props),!1),t.$listeners),[t._t(\"default\")],2)}),[],!1,null,null,null);\"function\"==typeof w()&&w()(x);const k=x.exports},336:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>g});var i=n(9454),r=n(3379),o=n.n(r),a=n(7795),s=n.n(a),l=n(569),c=n.n(l),u=n(3565),d=n.n(u),p=n(9216),A=n.n(p),m=n(4589),h=n.n(m),f=n(8384),v={};v.styleTagTransform=h(),v.setAttributes=d(),v.insert=c().bind(null,\"head\"),v.domAPI=s(),v.insertStyleElement=A();o()(f.Z,v);f.Z&&f.Z.locals&&f.Z.locals;i.options.themes.tooltip.html=!1,i.options.themes.tooltip.delay={show:500,hide:200},i.options.themes.tooltip.distance=10,i.options.themes.tooltip[\"arrow-padding\"]=3;const g=i.VTooltip},7993:(t,e,n)=>{\"use strict\";n.d(e,{default:()=>a});var i=n(6609);const r=require(\"md5\");var o=n.n(r);const a=function(t){var e=t.toLowerCase();null===e.match(/^([0-9a-f]{4}-?){8}$/)&&(e=o()(e)),e=e.replace(/[^0-9a-f]/g,\"\");return(0,i.Z)(6)[function(t,e){for(var n=0,i=[],r=0;r<t.length;r++)i.push(parseInt(t.charAt(r),16)%16);for(var o in i)n+=i[o];return parseInt(parseInt(n,10)%e,10)}(e,18)]}},932:(t,e,n)=>{\"use strict\";n.d(e,{n:()=>a,t:()=>s});var i=n(7931),r=(0,i.getGettextBuilder)().detectLocale();[{locale:\"ar\",translations:{\"{tag} (invisible)\":\"{tag} (غير مرئي)\",\"{tag} (restricted)\":\"{tag} (مقيد)\",Actions:\"الإجراءات\",Activities:\"النشاطات\",\"Animals & Nature\":\"الحيوانات والطبيعة\",\"Anything shared with the same group of people will show up here\":\"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا\",\"Avatar of {displayName}\":\"صورة {displayName} الرمزية\",\"Avatar of {displayName}, {status}\":\"صورة {displayName} الرمزية، {status}\",\"Cancel changes\":\"إلغاء التغييرات\",\"Change title\":\"تغيير العنوان\",Choose:\"إختيار\",\"Clear text\":\"مسح النص\",Close:\"أغلق\",\"Close modal\":\"قفل الشرط\",\"Close navigation\":\"إغلاق المتصفح\",\"Close sidebar\":\"قفل الشريط الجانبي\",\"Confirm changes\":\"تأكيد التغييرات\",Custom:\"مخصص\",\"Edit item\":\"تعديل عنصر\",\"Error getting related resources\":\"خطأ في تحصيل مصادر ذات صلة\",\"External documentation for {title}\":\"الوثائق الخارجية لـ{title}\",Favorite:\"مفضلة\",Flags:\"الأعلام\",\"Food & Drink\":\"الطعام والشراب\",\"Frequently used\":\"كثيرا ما تستخدم\",Global:\"عالمي\",\"Go back to the list\":\"العودة إلى القائمة\",\"Hide password\":\"إخفاء كلمة السر\",\"Message limit of {count} characters reached\":\"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف\",\"More items …\":\"عناصر أخرى ...\",Next:\"التالي\",\"No emoji found\":\"لم يتم العثور على أي رمز تعبيري\",\"No results\":\"ليس هناك أية نتيجة\",Objects:\"الأشياء\",Open:\"فتح\",'Open link to \"{resourceTitle}\"':'فتح رابط إلى \"{resourceTitle}\"',\"Open navigation\":\"فتح المتصفح\",\"Password is secure\":\"كلمة السر مُؤمّنة\",\"Pause slideshow\":\"إيقاف العرض مؤقتًا\",\"People & Body\":\"الناس والجسم\",\"Pick an emoji\":\"اختر رمزًا تعبيريًا\",\"Please select a time zone:\":\"الرجاء تحديد المنطقة الزمنية:\",Previous:\"السابق\",\"Related resources\":\"مصادر ذات صلة\",Search:\"بحث\",\"Search results\":\"نتائج البحث\",\"Select a tag\":\"اختر علامة\",Settings:\"الإعدادات\",\"Settings navigation\":\"إعدادات المتصفح\",\"Show password\":\"أعرض كلمة السر\",\"Smileys & Emotion\":\"الوجوه و الرموز التعبيرية\",\"Start slideshow\":\"بدء العرض\",Submit:\"إرسال\",Symbols:\"الرموز\",\"Travel & Places\":\"السفر والأماكن\",\"Type to search time zone\":\"اكتب للبحث عن منطقة زمنية\",\"Unable to search the group\":\"تعذر البحث في المجموعة\",\"Undo changes\":\"التراجع عن التغييرات\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ...\"}},{locale:\"br\",translations:{\"{tag} (invisible)\":\"{tag} (diwelus)\",\"{tag} (restricted)\":\"{tag} (bevennet)\",Actions:\"Oberioù\",Activities:\"Oberiantizoù\",\"Animals & Nature\":\"Loened & Natur\",Choose:\"Dibab\",Close:\"Serriñ\",Custom:\"Personelañ\",Flags:\"Bannieloù\",\"Food & Drink\":\"Boued & Evajoù\",\"Frequently used\":\"Implijet alies\",Next:\"Da heul\",\"No emoji found\":\"Emoji ebet kavet\",\"No results\":\"Disoc'h ebet\",Objects:\"Traoù\",\"Pause slideshow\":\"Arsav an diaporama\",\"People & Body\":\"Tud & Korf\",\"Pick an emoji\":\"Choaz un emoji\",Previous:\"A-raok\",Search:\"Klask\",\"Search results\":\"Disoc'hoù an enklask\",\"Select a tag\":\"Choaz ur c'hlav\",Settings:\"Arventennoù\",\"Smileys & Emotion\":\"Smileyioù & Fromoù\",\"Start slideshow\":\"Kregiñ an diaporama\",Symbols:\"Arouezioù\",\"Travel & Places\":\"Beaj & Lec'hioù\",\"Unable to search the group\":\"Dibosupl eo klask ar strollad\"}},{locale:\"ca\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restringit)\",Actions:\"Accions\",Activities:\"Activitats\",\"Animals & Nature\":\"Animals i natura\",\"Anything shared with the same group of people will show up here\":\"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancel·la els canvis\",\"Change title\":\"Canviar títol\",Choose:\"Tria\",\"Clear text\":\"Netejar text\",Close:\"Tanca\",\"Close modal\":\"Tancar el mode\",\"Close navigation\":\"Tanca la navegació\",\"Close sidebar\":\"Tancar la barra lateral\",\"Confirm changes\":\"Confirmeu els canvis\",Custom:\"Personalitzat\",\"Edit item\":\"Edita l'element\",\"Error getting related resources\":\"Error obtenint els recursos relacionats\",\"Error parsing svg\":\"Error en l'anàlisi del svg\",\"External documentation for {title}\":\"Documentació externa per a {title}\",Favorite:\"Preferit\",Flags:\"Marques\",\"Food & Drink\":\"Menjar i begudes\",\"Frequently used\":\"Utilitzats recentment\",Global:\"Global\",\"Go back to the list\":\"Torna a la llista\",\"Hide password\":\"Amagar contrasenya\",\"Message limit of {count} characters reached\":\"S'ha arribat al límit de {count} caràcters per missatge\",\"More items …\":\"Més artícles...\",Next:\"Següent\",\"No emoji found\":\"No s'ha trobat cap emoji\",\"No results\":\"Sense resultats\",Objects:\"Objectes\",Open:\"Obrir\",'Open link to \"{resourceTitle}\"':'Obrir enllaç a \"{resourceTitle}\"',\"Open navigation\":\"Obre la navegació\",\"Password is secure\":\"Contrasenya segura<br>\",\"Pause slideshow\":\"Atura la presentació\",\"People & Body\":\"Persones i cos\",\"Pick an emoji\":\"Trieu un emoji\",\"Please select a time zone:\":\"Seleccioneu una zona horària:\",Previous:\"Anterior\",\"Related resources\":\"Recursos relacionats\",Search:\"Cerca\",\"Search results\":\"Resultats de cerca\",\"Select a tag\":\"Seleccioneu una etiqueta\",Settings:\"Paràmetres\",\"Settings navigation\":\"Navegació d'opcions\",\"Show password\":\"Mostrar contrasenya\",\"Smileys & Emotion\":\"Cares i emocions\",\"Start slideshow\":\"Inicia la presentació\",Submit:\"Envia\",Symbols:\"Símbols\",\"Travel & Places\":\"Viatges i llocs\",\"Type to search time zone\":\"Escriviu per cercar la zona horària\",\"Unable to search the group\":\"No es pot cercar el grup\",\"Undo changes\":\"Desfés els canvis\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Escriu missatge, fes servir \"@\" per esmentar algú, fes servir \":\" per autocompletar emojis...'}},{locale:\"cs_CZ\",translations:{\"{tag} (invisible)\":\"{tag} (neviditelné)\",\"{tag} (restricted)\":\"{tag} (omezené)\",Actions:\"Akce\",Activities:\"Aktivity\",\"Animals & Nature\":\"Zvířata a příroda\",\"Anything shared with the same group of people will show up here\":\"Cokoli nasdíleného stejné skupině lidí se zobrazí zde\",\"Avatar of {displayName}\":\"Zástupný obrázek uživatele {displayName}\",\"Avatar of {displayName}, {status}\":\"Zástupný obrázek uživatele {displayName}, {status}\",\"Cancel changes\":\"Zrušit změny\",\"Change title\":\"Změnit nadpis\",Choose:\"Zvolit\",\"Clear text\":\"Čitelný text\",Close:\"Zavřít\",\"Close modal\":\"Zavřít dialogové okno\",\"Close navigation\":\"Zavřít navigaci\",\"Close sidebar\":\"Zavřít postranní panel\",\"Confirm changes\":\"Potvrdit změny\",Custom:\"Uživatelsky určené\",\"Edit item\":\"Upravit položku\",\"Error getting related resources\":\"Chyba při získávání souvisejících prostředků\",\"Error parsing svg\":\"Chyba při zpracovávání svg\",\"External documentation for {title}\":\"Externí dokumentace k {title}\",Favorite:\"Oblíbené\",Flags:\"Příznaky\",\"Food & Drink\":\"Jídlo a pití\",\"Frequently used\":\"Často používané\",Global:\"Globální\",\"Go back to the list\":\"Jít zpět na seznam\",\"Hide password\":\"Skrýt heslo\",\"Message limit of {count} characters reached\":\"Dosaženo limitu počtu ({count}) znaků zprávy\",\"More items …\":\"Další položky…\",Next:\"Následující\",\"No emoji found\":\"Nenalezeno žádné emoji\",\"No results\":\"Nic nenalezeno\",Objects:\"Objekty\",Open:\"Otevřít\",'Open link to \"{resourceTitle}\"':\"Otevřít odkaz na „{resourceTitle}“\",\"Open navigation\":\"Otevřít navigaci\",\"Password is secure\":\"Heslo je bezpečné\",\"Pause slideshow\":\"Pozastavit prezentaci\",\"People & Body\":\"Lidé a tělo\",\"Pick an emoji\":\"Vybrat emoji\",\"Please select a time zone:\":\"Vyberte časovou zónu:\",Previous:\"Předchozí\",\"Related resources\":\"Související prostředky\",Search:\"Hledat\",\"Search results\":\"Výsledky hledání\",\"Select a tag\":\"Vybrat štítek\",Settings:\"Nastavení\",\"Settings navigation\":\"Pohyb po nastavení\",\"Show password\":\"Zobrazit heslo\",\"Smileys & Emotion\":\"Úsměvy a emoce\",\"Start slideshow\":\"Spustit prezentaci\",Submit:\"Odeslat\",Symbols:\"Symboly\",\"Travel & Places\":\"Cestování a místa\",\"Type to search time zone\":\"Psaním vyhledejte časovou zónu\",\"Unable to search the group\":\"Nedaří se hledat skupinu\",\"Undo changes\":\"Vzít změny zpět\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':\"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…\"}},{locale:\"da\",translations:{\"{tag} (invisible)\":\"{tag} (usynlig)\",\"{tag} (restricted)\":\"{tag} (begrænset)\",Actions:\"Handlinger\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Dyr & Natur\",\"Anything shared with the same group of people will show up here\":\"Alt der deles med samme gruppe af personer vil vises her\",\"Avatar of {displayName}\":\"Avatar af {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar af {displayName}, {status}\",\"Cancel changes\":\"Annuller ændringer\",\"Change title\":\"Ret titel\",Choose:\"Vælg\",\"Clear text\":\"Ryd tekst\",Close:\"Luk\",\"Close modal\":\"Luk vindue\",\"Close navigation\":\"Luk navigation\",\"Close sidebar\":\"Luk sidepanel\",\"Confirm changes\":\"Bekræft ændringer\",Custom:\"Brugerdefineret\",\"Edit item\":\"Rediger emne\",\"Error getting related resources\":\"Kunne ikke hente tilknyttede data\",\"Error parsing svg\":\"Fejl ved analysering af svg\",\"External documentation for {title}\":\"Ekstern dokumentation for {title}\",Favorite:\"Favorit\",Flags:\"Flag\",\"Food & Drink\":\"Mad & Drikke\",\"Frequently used\":\"Ofte brugt\",Global:\"Global\",\"Go back to the list\":\"Tilbage til listen\",\"Hide password\":\"Skjul kodeord\",\"Message limit of {count} characters reached\":\"Begrænsning på {count} tegn er nået\",\"More items …\":\"Mere ...\",Next:\"Videre\",\"No emoji found\":\"Ingen emoji fundet\",\"No results\":\"Ingen resultater\",Objects:\"Objekter\",Open:\"Åbn\",'Open link to \"{resourceTitle}\"':'Åbn link til \"{resourceTitle}\"',\"Open navigation\":\"Åbn navigation\",\"Password is secure\":\"Kodeordet er sikkert\",\"Pause slideshow\":\"Suspender fremvisning\",\"People & Body\":\"Mennesker & Menneskekroppen\",\"Pick an emoji\":\"Vælg en emoji\",\"Please select a time zone:\":\"Vælg venligst en tidszone:\",Previous:\"Forrige\",\"Related resources\":\"Relaterede emner\",Search:\"Søg\",\"Search results\":\"Søgeresultater\",\"Select a tag\":\"Vælg et mærke\",Settings:\"Indstillinger\",\"Settings navigation\":\"Naviger i indstillinger\",\"Show password\":\"Vis kodeord\",\"Smileys & Emotion\":\"Smileys & Emotion\",\"Start slideshow\":\"Start fremvisning\",Submit:\"Send\",Symbols:\"Symboler\",\"Travel & Places\":\"Rejser & Rejsemål\",\"Type to search time zone\":\"Indtast for at søge efter tidszone\",\"Unable to search the group\":\"Kan ikke søge på denne gruppe\",\"Undo changes\":\"Fortryd ændringer\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Skriv besked, brug \"@\" for at nævne nogen, brug \":\" til emoji-autofuldførelse ...'}},{locale:\"de\",translations:{\"{tag} (invisible)\":\"{tag} (unsichtbar)\",\"{tag} (restricted)\":\"{tag} (eingeschränkt)\",Actions:\"Aktionen\",Activities:\"Aktivitäten\",\"Animals & Nature\":\"Tiere & Natur\",\"Anything shared with the same group of people will show up here\":\"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt\",\"Avatar of {displayName}\":\"Avatar von {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar von {displayName}, {status}\",\"Cancel changes\":\"Änderungen verwerfen\",\"Change title\":\"Titel ändern\",Choose:\"Auswählen\",\"Clear text\":\"Klartext\",Close:\"Schließen\",\"Close modal\":\"Modal schließen\",\"Close navigation\":\"Navigation schließen\",\"Close sidebar\":\"Seitenleiste schließen\",\"Confirm changes\":\"Änderungen bestätigen\",Custom:\"Benutzerdefiniert\",\"Edit item\":\"Objekt bearbeiten\",\"Error getting related resources\":\"Fehler beim Abrufen verwandter Ressourcen\",\"Error parsing svg\":\"Fehler beim Einlesen der SVG\",\"External documentation for {title}\":\"Externe Dokumentation für {title}\",Favorite:\"Favorit\",Flags:\"Flaggen\",\"Food & Drink\":\"Essen & Trinken\",\"Frequently used\":\"Häufig verwendet\",Global:\"Global\",\"Go back to the list\":\"Zurück zur Liste\",\"Hide password\":\"Passwort verbergen\",\"Message limit of {count} characters reached\":\"Nachrichtenlimit von {count} Zeichen erreicht\",\"More items …\":\"Weitere Elemente …\",Next:\"Weiter\",\"No emoji found\":\"Kein Emoji gefunden\",\"No results\":\"Keine Ergebnisse\",Objects:\"Gegenstände\",Open:\"Öffnen\",'Open link to \"{resourceTitle}\"':'Link zu \"{resourceTitle}\" öffnen',\"Open navigation\":\"Navigation öffnen\",\"Password is secure\":\"Passwort ist sicher\",\"Pause slideshow\":\"Diashow pausieren\",\"People & Body\":\"Menschen & Körper\",\"Pick an emoji\":\"Ein Emoji auswählen\",\"Please select a time zone:\":\"Bitte wählen Sie eine Zeitzone:\",Previous:\"Vorherige\",\"Related resources\":\"Verwandte Ressourcen\",Search:\"Suche\",\"Search results\":\"Suchergebnisse\",\"Select a tag\":\"Schlagwort auswählen\",Settings:\"Einstellungen\",\"Settings navigation\":\"Einstellungen für die Navigation\",\"Show password\":\"Passwort anzeigen\",\"Smileys & Emotion\":\"Smileys & Emotionen\",\"Start slideshow\":\"Diashow starten\",Submit:\"Einreichen\",Symbols:\"Symbole\",\"Travel & Places\":\"Reisen & Orte\",\"Type to search time zone\":\"Tippen, um Zeitzone zu suchen\",\"Unable to search the group\":\"Die Gruppe konnte nicht durchsucht werden\",\"Undo changes\":\"Änderungen rückgängig machen\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Nachricht schreiben, \"@\" um jemanden zu erwähnen, \":\" für die automatische Vervollständigung von Emojis …'}},{locale:\"de_DE\",translations:{\"{tag} (invisible)\":\"{tag} (unsichtbar)\",\"{tag} (restricted)\":\"{tag} (eingeschränkt)\",Actions:\"Aktionen\",Activities:\"Aktivitäten\",\"Animals & Nature\":\"Tiere & Natur\",\"Anything shared with the same group of people will show up here\":\"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt\",\"Avatar of {displayName}\":\"Avatar von {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar von {displayName}, {status}\",\"Cancel changes\":\"Änderungen verwerfen\",\"Change title\":\"Titel ändern\",Choose:\"Auswählen\",\"Clear text\":\"Klartext\",Close:\"Schließen\",\"Close modal\":\"Modal schließen\",\"Close navigation\":\"Navigation schließen\",\"Close sidebar\":\"Seitenleiste schließen\",\"Confirm changes\":\"Änderungen bestätigen\",Custom:\"Benutzerdefiniert\",\"Edit item\":\"Objekt bearbeiten\",\"Error getting related resources\":\"Fehler beim Abrufen verwandter Ressourcen\",\"Error parsing svg\":\"Fehler beim Einlesen der SVG\",\"External documentation for {title}\":\"Externe Dokumentation für {title}\",Favorite:\"Favorit\",Flags:\"Flaggen\",\"Food & Drink\":\"Essen & Trinken\",\"Frequently used\":\"Häufig verwendet\",Global:\"Global\",\"Go back to the list\":\"Zurück zur Liste\",\"Hide password\":\"Passwort verbergen\",\"Message limit of {count} characters reached\":\"Nachrichtenlimit von {count} Zeichen erreicht\",\"More items …\":\"Weitere Elemente …\",Next:\"Weiter\",\"No emoji found\":\"Kein Emoji gefunden\",\"No results\":\"Keine Ergebnisse\",Objects:\"Objekte\",Open:\"Öffnen\",'Open link to \"{resourceTitle}\"':'Link zu \"{resourceTitle}\" öffnen',\"Open navigation\":\"Navigation öffnen\",\"Password is secure\":\"Passwort ist sicher\",\"Pause slideshow\":\"Diashow pausieren\",\"People & Body\":\"Menschen & Körper\",\"Pick an emoji\":\"Ein Emoji auswählen\",\"Please select a time zone:\":\"Bitte eine Zeitzone auswählen:\",Previous:\"Vorherige\",\"Related resources\":\"Verwandte Ressourcen\",Search:\"Suche\",\"Search results\":\"Suchergebnisse\",\"Select a tag\":\"Schlagwort auswählen\",Settings:\"Einstellungen\",\"Settings navigation\":\"Einstellungen für die Navigation\",\"Show password\":\"Passwort anzeigen\",\"Smileys & Emotion\":\"Smileys & Emotionen\",\"Start slideshow\":\"Diashow starten\",Submit:\"Einreichen\",Symbols:\"Symbole\",\"Travel & Places\":\"Reisen & Orte\",\"Type to search time zone\":\"Tippen, um eine Zeitzone zu suchen\",\"Unable to search the group\":\"Die Gruppe kann nicht durchsucht werden\",\"Undo changes\":\"Änderungen rückgängig machen\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Nachricht schreiben, \"@\" um jemanden zu erwähnen, \":\" für die automatische Vervollständigung von Emojis …'}},{locale:\"el\",translations:{\"{tag} (invisible)\":\"{tag} (αόρατο)\",\"{tag} (restricted)\":\"{tag} (περιορισμένο)\",Actions:\"Ενέργειες\",Activities:\"Δραστηριότητες\",\"Animals & Nature\":\"Ζώα & Φύση\",\"Anything shared with the same group of people will show up here\":\"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ\",\"Avatar of {displayName}\":\"Άβαταρ του {displayName}\",\"Avatar of {displayName}, {status}\":\"Άβαταρ του {displayName}, {status}\",\"Cancel changes\":\"Ακύρωση αλλαγών\",\"Change title\":\"Αλλαγή τίτλου\",Choose:\"Επιλογή\",\"Clear text\":\"Εκκαθάριση κειμένου\",Close:\"Κλείσιμο\",\"Close modal\":\"Βοηθητικό κλείσιμο\",\"Close navigation\":\"Κλείσιμο πλοήγησης\",\"Close sidebar\":\"Κλείσιμο πλευρικής μπάρας\",\"Confirm changes\":\"Επιβεβαίωση αλλαγών\",Custom:\"Προσαρμογή\",\"Edit item\":\"Επεξεργασία\",\"Error getting related resources\":\"Σφάλμα λήψης σχετικών πόρων\",\"Error parsing svg\":\"Σφάλμα ανάλυσης svg\",\"External documentation for {title}\":\"Εξωτερική τεκμηρίωση για {title}\",Favorite:\"Αγαπημένα\",Flags:\"Σημαίες\",\"Food & Drink\":\"Φαγητό & Ποτό\",\"Frequently used\":\"Συχνά χρησιμοποιούμενο\",Global:\"Καθολικό\",\"Go back to the list\":\"Επιστροφή στην αρχική λίστα \",\"Hide password\":\"Απόκρυψη κωδικού πρόσβασης\",\"Message limit of {count} characters reached\":\"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος\",\"More items …\":\"Περισσότερα στοιχεία …\",Next:\"Επόμενο\",\"No emoji found\":\"Δεν βρέθηκε emoji\",\"No results\":\"Κανένα αποτέλεσμα\",Objects:\"Αντικείμενα\",Open:\"Άνοιγμα\",'Open link to \"{resourceTitle}\"':'Άνοιγμα συνδέσμου στο \"{resourceTitle}\"',\"Open navigation\":\"Άνοιγμα πλοήγησης\",\"Password is secure\":\"Ο κωδικός πρόσβασης είναι ασφαλής\",\"Pause slideshow\":\"Παύση προβολής διαφανειών\",\"People & Body\":\"Άνθρωποι & Σώμα\",\"Pick an emoji\":\"Επιλέξτε ένα emoji\",\"Please select a time zone:\":\"Παρακαλούμε επιλέξτε μια ζώνη ώρας:\",Previous:\"Προηγούμενο\",\"Related resources\":\"Σχετικοί πόροι\",Search:\"Αναζήτηση\",\"Search results\":\"Αποτελέσματα αναζήτησης\",\"Select a tag\":\"Επιλογή ετικέτας\",Settings:\"Ρυθμίσεις\",\"Settings navigation\":\"Πλοήγηση ρυθμίσεων\",\"Show password\":\"Εμφάνιση κωδικού πρόσβασης\",\"Smileys & Emotion\":\"Φατσούλες & Συναίσθημα\",\"Start slideshow\":\"Έναρξη προβολής διαφανειών\",Submit:\"Υποβολή\",Symbols:\"Σύμβολα\",\"Travel & Places\":\"Ταξίδια & Τοποθεσίες\",\"Type to search time zone\":\"Πληκτρολογήστε για αναζήτηση ζώνης ώρας\",\"Unable to search the group\":\"Δεν είναι δυνατή η αναζήτηση της ομάδας\",\"Undo changes\":\"Αναίρεση Αλλαγών\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε \"@\" για να αναφέρετε κάποιον, χρησιμοποιείστε \":\" για αυτόματη συμπλήρωση emoji …'}},{locale:\"en_GB\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restricted)\",Actions:\"Actions\",Activities:\"Activities\",\"Animals & Nature\":\"Animals & Nature\",\"Anything shared with the same group of people will show up here\":\"Anything shared with the same group of people will show up here\",\"Avatar of {displayName}\":\"Avatar of {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar of {displayName}, {status}\",\"Cancel changes\":\"Cancel changes\",\"Change title\":\"Change title\",Choose:\"Choose\",\"Clear text\":\"Clear text\",Close:\"Close\",\"Close modal\":\"Close modal\",\"Close navigation\":\"Close navigation\",\"Close sidebar\":\"Close sidebar\",\"Confirm changes\":\"Confirm changes\",Custom:\"Custom\",\"Edit item\":\"Edit item\",\"Error getting related resources\":\"Error getting related resources\",\"Error parsing svg\":\"Error parsing svg\",\"External documentation for {title}\":\"External documentation for {title}\",Favorite:\"Favourite\",Flags:\"Flags\",\"Food & Drink\":\"Food & Drink\",\"Frequently used\":\"Frequently used\",Global:\"Global\",\"Go back to the list\":\"Go back to the list\",\"Hide password\":\"Hide password\",\"Message limit of {count} characters reached\":\"Message limit of {count} characters reached\",\"More items …\":\"More items …\",Next:\"Next\",\"No emoji found\":\"No emoji found\",\"No results\":\"No results\",Objects:\"Objects\",Open:\"Open\",'Open link to \"{resourceTitle}\"':'Open link to \"{resourceTitle}\"',\"Open navigation\":\"Open navigation\",\"Password is secure\":\"Password is secure\",\"Pause slideshow\":\"Pause slideshow\",\"People & Body\":\"People & Body\",\"Pick an emoji\":\"Pick an emoji\",\"Please select a time zone:\":\"Please select a time zone:\",Previous:\"Previous\",\"Related resources\":\"Related resources\",Search:\"Search\",\"Search results\":\"Search results\",\"Select a tag\":\"Select a tag\",Settings:\"Settings\",\"Settings navigation\":\"Settings navigation\",\"Show password\":\"Show password\",\"Smileys & Emotion\":\"Smileys & Emotion\",\"Start slideshow\":\"Start slideshow\",Submit:\"Submit\",Symbols:\"Symbols\",\"Travel & Places\":\"Travel & Places\",\"Type to search time zone\":\"Type to search time zone\",\"Unable to search the group\":\"Unable to search the group\",\"Undo changes\":\"Undo changes\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …'}},{locale:\"eo\",translations:{\"{tag} (invisible)\":\"{tag} (kaŝita)\",\"{tag} (restricted)\":\"{tag} (limigita)\",Actions:\"Agoj\",Activities:\"Aktiveco\",\"Animals & Nature\":\"Bestoj & Naturo\",Choose:\"Elektu\",Close:\"Fermu\",Custom:\"Propra\",Flags:\"Flagoj\",\"Food & Drink\":\"Manĝaĵo & Trinkaĵo\",\"Frequently used\":\"Ofte uzataj\",\"Message limit of {count} characters reached\":\"La limo je {count} da literoj atingita\",Next:\"Sekva\",\"No emoji found\":\"La emoĝio forestas\",\"No results\":\"La rezulto forestas\",Objects:\"Objektoj\",\"Pause slideshow\":\"Payzi bildprezenton\",\"People & Body\":\"Homoj & Korpo\",\"Pick an emoji\":\"Elekti emoĝion \",Previous:\"Antaŭa\",Search:\"Serĉi\",\"Search results\":\"Serĉrezultoj\",\"Select a tag\":\"Elektu etikedon\",Settings:\"Agordo\",\"Settings navigation\":\"Agorda navigado\",\"Smileys & Emotion\":\"Ridoj kaj Emocioj\",\"Start slideshow\":\"Komenci bildprezenton\",Symbols:\"Signoj\",\"Travel & Places\":\"Vojaĵoj & Lokoj\",\"Unable to search the group\":\"Ne eblas serĉi en la grupo\",\"Write message, @ to mention someone …\":\"Mesaĝi, uzu @ por mencii iun ...\"}},{locale:\"es\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restringido)\",Actions:\"Acciones\",Activities:\"Actividades\",\"Animals & Nature\":\"Animales y naturaleza\",\"Anything shared with the same group of people will show up here\":\"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancelar cambios\",\"Change title\":\"Cambiar título\",Choose:\"Elegir\",\"Clear text\":\"Limpiar texto\",Close:\"Cerrar\",\"Close modal\":\"Cerrar modal\",\"Close navigation\":\"Cerrar navegación\",\"Close sidebar\":\"Cerrar barra lateral\",\"Confirm changes\":\"Confirmar cambios\",Custom:\"Personalizado\",\"Edit item\":\"Editar elemento\",\"Error getting related resources\":\"Se encontró un error al obtener los recursos relacionados\",\"Error parsing svg\":\"Error procesando svg\",\"External documentation for {title}\":\"Documentacion externa de {title}\",Favorite:\"Favorito\",Flags:\"Banderas\",\"Food & Drink\":\"Comida y bebida\",\"Frequently used\":\"Usado con frecuenca\",Global:\"Global\",\"Go back to the list\":\"Volver a la lista\",\"Hide password\":\"Ocultar contraseña\",\"Message limit of {count} characters reached\":\"El mensaje ha alcanzado el límite de {count} caracteres\",\"More items …\":\"Más ítems...\",Next:\"Siguiente\",\"No emoji found\":\"No hay ningún emoji\",\"No results\":\" Ningún resultado\",Objects:\"Objetos\",Open:\"Abrir\",'Open link to \"{resourceTitle}\"':'Abrir enlace a \"{resourceTitle}\"',\"Open navigation\":\"Abrir navegación\",\"Password is secure\":\"La contraseña es segura\",\"Pause slideshow\":\"Pausar la presentación \",\"People & Body\":\"Personas y cuerpos\",\"Pick an emoji\":\"Elegir un emoji\",\"Please select a time zone:\":\"Por favor elige un huso de horario:\",Previous:\"Anterior\",\"Related resources\":\"Recursos relacionados\",Search:\"Buscar\",\"Search results\":\"Resultados de la búsqueda\",\"Select a tag\":\"Seleccione una etiqueta\",Settings:\"Ajustes\",\"Settings navigation\":\"Navegación por ajustes\",\"Show password\":\"Mostrar contraseña\",\"Smileys & Emotion\":\"Smileys y emoticonos\",\"Start slideshow\":\"Iniciar la presentación\",Submit:\"Enviar\",Symbols:\"Símbolos\",\"Travel & Places\":\"Viajes y lugares\",\"Type to search time zone\":\"Escribe para buscar un huso de horario\",\"Unable to search the group\":\"No es posible buscar en el grupo\",\"Undo changes\":\"Deshacer cambios\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Escribir mensaje, utilice \"@\" para mencionar a alguien, utilice \":\" para autocompletado de emojis ...'}},{locale:\"eu\",translations:{\"{tag} (invisible)\":\"{tag} (ikusezina)\",\"{tag} (restricted)\":\"{tag} (mugatua)\",Actions:\"Ekintzak\",Activities:\"Jarduerak\",\"Animals & Nature\":\"Animaliak eta Natura\",\"Anything shared with the same group of people will show up here\":\"Pertsona-talde berarekin partekatutako edozer agertuko da hemen\",\"Avatar of {displayName}\":\"{displayName}-(e)n irudia\",\"Avatar of {displayName}, {status}\":\"{displayName} -(e)n irudia, {status}\",\"Cancel changes\":\"Ezeztatu aldaketak\",\"Change title\":\"Aldatu titulua\",Choose:\"Aukeratu\",\"Clear text\":\"Garbitu testua\",Close:\"Itxi\",\"Close modal\":\"Itxi modala\",\"Close navigation\":\"Itxi nabigazioa\",\"Close sidebar\":\"Itxi albo-barra\",\"Confirm changes\":\"Baieztatu aldaketak\",Custom:\"Pertsonalizatua\",\"Edit item\":\"Editatu elementua\",\"Error getting related resources\":\"Errorea erlazionatutako baliabideak lortzerakoan\",\"Error parsing svg\":\"Errore bat gertatu da svg-a analizatzean\",\"External documentation for {title}\":\"Kanpoko dokumentazioa {title}(r)entzat\",Favorite:\"Gogokoa\",Flags:\"Banderak\",\"Food & Drink\":\"Janaria eta edariak\",\"Frequently used\":\"Askotan erabilia\",Global:\"Globala\",\"Go back to the list\":\"Bueltatu zerrendara\",\"Hide password\":\"Ezkutatu pasahitza\",\"Message limit of {count} characters reached\":\"Mezuaren {count} karaketere-limitera heldu zara\",\"More items …\":\"Elementu gehiago …\",Next:\"Hurrengoa\",\"No emoji found\":\"Ez da emojirik aurkitu\",\"No results\":\"Emaitzarik ez\",Objects:\"Objektuak\",Open:\"Ireki\",'Open link to \"{resourceTitle}\"':'Ireki esteka: \"{resourceTitle}\"',\"Open navigation\":\"Ireki nabigazioa\",\"Password is secure\":\"Pasahitza segurua da\",\"Pause slideshow\":\"Pausatu diaporama\",\"People & Body\":\"Jendea eta gorputza\",\"Pick an emoji\":\"Hautatu emoji bat\",\"Please select a time zone:\":\"Mesedez hautatu ordu-zona bat:\",Previous:\"Aurrekoa\",\"Related resources\":\"Erlazionatutako baliabideak\",Search:\"Bilatu\",\"Search results\":\"Bilaketa emaitzak\",\"Select a tag\":\"Hautatu etiketa bat\",Settings:\"Ezarpenak\",\"Settings navigation\":\"Nabigazio ezarpenak\",\"Show password\":\"Erakutsi pasahitza\",\"Smileys & Emotion\":\"Smileyak eta emozioa\",\"Start slideshow\":\"Hasi diaporama\",Submit:\"Bidali\",Symbols:\"Sinboloak\",\"Travel & Places\":\"Bidaiak eta lekuak\",\"Type to search time zone\":\"Idatzi ordu-zona bat bilatzeko\",\"Unable to search the group\":\"Ezin izan da taldea bilatu\",\"Undo changes\":\"Aldaketak desegin\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Idatzi mezua, erabili \"@\" norbait aipatzeko, erabili \":\" emojiak automatikoki osatzeko...'}},{locale:\"fi_FI\",translations:{\"{tag} (invisible)\":\"{tag} (näkymätön)\",\"{tag} (restricted)\":\"{tag} (rajoitettu)\",Actions:\"Toiminnot\",Activities:\"Aktiviteetit\",\"Animals & Nature\":\"Eläimet & luonto\",\"Avatar of {displayName}\":\"Käyttäjän {displayName} avatar\",\"Avatar of {displayName}, {status}\":\"Käyttäjän {displayName} avatar, {status}\",\"Cancel changes\":\"Peruuta muutokset\",Choose:\"Valitse\",Close:\"Sulje\",\"Close navigation\":\"Sulje navigaatio\",\"Confirm changes\":\"Vahvista muutokset\",Custom:\"Mukautettu\",\"Edit item\":\"Muokkaa kohdetta\",\"External documentation for {title}\":\"Ulkoinen dokumentaatio kohteelle {title}\",Flags:\"Liput\",\"Food & Drink\":\"Ruoka & juoma\",\"Frequently used\":\"Usein käytetyt\",Global:\"Yleinen\",\"Go back to the list\":\"Siirry takaisin listaan\",\"Message limit of {count} characters reached\":\"Viestin merkken enimmäisimäärä {count} täynnä \",Next:\"Seuraava\",\"No emoji found\":\"Emojia ei löytynyt\",\"No results\":\"Ei tuloksia\",Objects:\"Esineet & asiat\",\"Open navigation\":\"Avaa navigaatio\",\"Pause slideshow\":\"Keskeytä diaesitys\",\"People & Body\":\"Ihmiset & keho\",\"Pick an emoji\":\"Valitse emoji\",\"Please select a time zone:\":\"Valitse aikavyöhyke:\",Previous:\"Edellinen\",Search:\"Etsi\",\"Search results\":\"Hakutulokset\",\"Select a tag\":\"Valitse tagi\",Settings:\"Asetukset\",\"Settings navigation\":\"Asetusnavigaatio\",\"Smileys & Emotion\":\"Hymiöt & tunteet\",\"Start slideshow\":\"Aloita diaesitys\",Submit:\"Lähetä\",Symbols:\"Symbolit\",\"Travel & Places\":\"Matkustus & kohteet\",\"Type to search time zone\":\"Kirjoita etsiäksesi aikavyöhyke\",\"Unable to search the group\":\"Ryhmää ei voi hakea\",\"Undo changes\":\"Kumoa muutokset\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…\"}},{locale:\"fr\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restreint)\",Actions:\"Actions\",Activities:\"Activités\",\"Animals & Nature\":\"Animaux & Nature\",\"Anything shared with the same group of people will show up here\":\"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Annuler les modifications\",\"Change title\":\"Modifier le titre\",Choose:\"Choisir\",\"Clear text\":\"Effacer le texte\",Close:\"Fermer\",\"Close modal\":\"Fermer la fenêtre\",\"Close navigation\":\"Fermer la navigation\",\"Close sidebar\":\"Fermer la barre latérale\",\"Confirm changes\":\"Confirmer les modifications\",Custom:\"Personnalisé\",\"Edit item\":\"Éditer l'élément\",\"Error getting related resources\":\"Erreur à la récupération des ressources liées\",\"Error parsing svg\":\"Erreur d'analyse SVG\",\"External documentation for {title}\":\"Documentation externe pour {title}\",Favorite:\"Favori\",Flags:\"Drapeaux\",\"Food & Drink\":\"Nourriture & Boissons\",\"Frequently used\":\"Utilisés fréquemment\",Global:\"Global\",\"Go back to the list\":\"Retourner à la liste\",\"Hide password\":\"Cacher le mot de passe\",\"Message limit of {count} characters reached\":\"Limite de messages de {count} caractères atteinte\",\"More items …\":\"Plus d'éléments...\",Next:\"Suivant\",\"No emoji found\":\"Pas d’émoji trouvé\",\"No results\":\"Aucun résultat\",Objects:\"Objets\",Open:\"Ouvrir\",'Open link to \"{resourceTitle}\"':'Ouvrir le lien vers \"{resourceTitle}\"',\"Open navigation\":\"Ouvrir la navigation\",\"Password is secure\":\"Le mot de passe est sécurisé\",\"Pause slideshow\":\"Mettre le diaporama en pause\",\"People & Body\":\"Personnes & Corps\",\"Pick an emoji\":\"Choisissez un émoji\",\"Please select a time zone:\":\"Sélectionnez un fuseau horaire : \",Previous:\"Précédent\",\"Related resources\":\"Ressources liées\",Search:\"Chercher\",\"Search results\":\"Résultats de recherche\",\"Select a tag\":\"Sélectionnez une balise\",Settings:\"Paramètres\",\"Settings navigation\":\"Navigation dans les paramètres\",\"Show password\":\"Afficher le mot de passe\",\"Smileys & Emotion\":\"Smileys & Émotions\",\"Start slideshow\":\"Démarrer le diaporama\",Submit:\"Valider\",Symbols:\"Symboles\",\"Travel & Places\":\"Voyage & Lieux\",\"Type to search time zone\":\"Saisissez les premiers lettres pour rechercher un fuseau horaire\",\"Unable to search the group\":\"Impossible de chercher le groupe\",\"Undo changes\":\"Annuler les changements\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Écrire un message, utiliser \"@\" pour mentionner une personne, \":\" pour l\\'autocomplétion des émojis...'}},{locale:\"gl\",translations:{\"{tag} (invisible)\":\"{tag} (invisíbel)\",\"{tag} (restricted)\":\"{tag} (restrinxido)\",Actions:\"Accións\",Activities:\"Actividades\",\"Animals & Nature\":\"Animais e natureza\",\"Cancel changes\":\"Cancelar os cambios\",Choose:\"Escoller\",Close:\"Pechar\",\"Confirm changes\":\"Confirma os cambios\",Custom:\"Personalizado\",\"External documentation for {title}\":\"Documentación externa para {title}\",Flags:\"Bandeiras\",\"Food & Drink\":\"Comida e bebida\",\"Frequently used\":\"Usado con frecuencia\",\"Message limit of {count} characters reached\":\"Acadouse o límite de {count} caracteres por mensaxe\",Next:\"Seguinte\",\"No emoji found\":\"Non se atopou ningún «emoji»\",\"No results\":\"Sen resultados\",Objects:\"Obxectos\",\"Pause slideshow\":\"Pausar o diaporama\",\"People & Body\":\"Persoas e corpo\",\"Pick an emoji\":\"Escolla un «emoji»\",Previous:\"Anterir\",Search:\"Buscar\",\"Search results\":\"Resultados da busca\",\"Select a tag\":\"Seleccione unha etiqueta\",Settings:\"Axustes\",\"Settings navigation\":\"Navegación polos axustes\",\"Smileys & Emotion\":\"Sorrisos e emocións\",\"Start slideshow\":\"Iniciar o diaporama\",Submit:\"Enviar\",Symbols:\"Símbolos\",\"Travel & Places\":\"Viaxes e lugares\",\"Unable to search the group\":\"Non foi posíbel buscar o grupo\",\"Write message, @ to mention someone …\":\"Escriba a mensaxe, @ para mencionar a alguén…\"}},{locale:\"he\",translations:{\"{tag} (invisible)\":\"{tag} (נסתר)\",\"{tag} (restricted)\":\"{tag} (מוגבל)\",Actions:\"פעולות\",Activities:\"פעילויות\",\"Animals & Nature\":\"חיות וטבע\",Choose:\"בחירה\",Close:\"סגירה\",Custom:\"בהתאמה אישית\",Flags:\"דגלים\",\"Food & Drink\":\"מזון ומשקאות\",\"Frequently used\":\"בשימוש תדיר\",Next:\"הבא\",\"No emoji found\":\"לא נמצא אמוג׳י\",\"No results\":\"אין תוצאות\",Objects:\"חפצים\",\"Pause slideshow\":\"השהיית מצגת\",\"People & Body\":\"אנשים וגוף\",\"Pick an emoji\":\"נא לבחור אמוג׳י\",Previous:\"הקודם\",Search:\"חיפוש\",\"Search results\":\"תוצאות חיפוש\",\"Select a tag\":\"בחירת תגית\",Settings:\"הגדרות\",\"Smileys & Emotion\":\"חייכנים ורגשונים\",\"Start slideshow\":\"התחלת המצגת\",Symbols:\"סמלים\",\"Travel & Places\":\"טיולים ומקומות\",\"Unable to search the group\":\"לא ניתן לחפש בקבוצה\"}},{locale:\"hu_HU\",translations:{\"{tag} (invisible)\":\"{tag} (láthatatlan)\",\"{tag} (restricted)\":\"{tag} (korlátozott)\",Actions:\"Műveletek\",Activities:\"Tevékenységek\",\"Animals & Nature\":\"Állatok és természet\",\"Anything shared with the same group of people will show up here\":\"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni\",\"Avatar of {displayName}\":\"{displayName} profilképe\",\"Avatar of {displayName}, {status}\":\"{displayName} profilképe, {status}\",\"Cancel changes\":\"Változtatások elvetése\",\"Change title\":\"Cím megváltoztatása\",Choose:\"Válassszon\",\"Clear text\":\"Szöveg törlése\",Close:\"Bezárás\",\"Close modal\":\"Ablak bezárása\",\"Close navigation\":\"Navigáció bezárása\",\"Close sidebar\":\"Oldalsáv bezárása\",\"Confirm changes\":\"Változtatások megerősítése\",Custom:\"Egyéni\",\"Edit item\":\"Elem szerkesztése\",\"Error getting related resources\":\"Hiba a kapcsolódó erőforrások lekérésekor\",\"Error parsing svg\":\"Hiba az SVG feldolgozásakor\",\"External documentation for {title}\":\"Külső dokumentáció ehhez: {title}\",Favorite:\"Kedvenc\",Flags:\"Zászlók\",\"Food & Drink\":\"Étel és ital\",\"Frequently used\":\"Gyakran használt\",Global:\"Globális\",\"Go back to the list\":\"Ugrás vissza a listához\",\"Hide password\":\"Jelszó elrejtése\",\"Message limit of {count} characters reached\":\"{count} karakteres üzenetkorlát elérve\",\"More items …\":\"További elemek...\",Next:\"Következő\",\"No emoji found\":\"Nem található emodzsi\",\"No results\":\"Nincs találat\",Objects:\"Tárgyak\",Open:\"Megnyitás\",'Open link to \"{resourceTitle}\"':\"A(z) „{resourceTitle}” hivatkozásának megnyitása\",\"Open navigation\":\"Navigáció megnyitása\",\"Password is secure\":\"A jelszó biztonságos\",\"Pause slideshow\":\"Diavetítés szüneteltetése\",\"People & Body\":\"Emberek és test\",\"Pick an emoji\":\"Válasszon egy emodzsit\",\"Please select a time zone:\":\"Válasszon időzónát:\",Previous:\"Előző\",\"Related resources\":\"Kapcsolódó erőforrások\",Search:\"Keresés\",\"Search results\":\"Találatok\",\"Select a tag\":\"Válasszon címkét\",Settings:\"Beállítások\",\"Settings navigation\":\"Navigáció a beállításokban\",\"Show password\":\"Jelszó megjelenítése\",\"Smileys & Emotion\":\"Mosolyok és érzelmek\",\"Start slideshow\":\"Diavetítés indítása\",Submit:\"Beküldés\",Symbols:\"Szimbólumok\",\"Travel & Places\":\"Utazás és helyek\",\"Type to search time zone\":\"Gépeljen az időzóna kereséséhez\",\"Unable to search the group\":\"A csoport nem kereshető\",\"Undo changes\":\"Változtatások visszavonása\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':\"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…\"}},{locale:\"is\",translations:{\"{tag} (invisible)\":\"{tag} (ósýnilegt)\",\"{tag} (restricted)\":\"{tag} (takmarkað)\",Actions:\"Aðgerðir\",Activities:\"Aðgerðir\",\"Animals & Nature\":\"Dýr og náttúra\",Choose:\"Velja\",Close:\"Loka\",Custom:\"Sérsniðið\",Flags:\"Flögg\",\"Food & Drink\":\"Matur og drykkur\",\"Frequently used\":\"Oftast notað\",Next:\"Næsta\",\"No emoji found\":\"Ekkert tjáningartákn fannst\",\"No results\":\"Engar niðurstöður\",Objects:\"Hlutir\",\"Pause slideshow\":\"Gera hlé á skyggnusýningu\",\"People & Body\":\"Fólk og líkami\",\"Pick an emoji\":\"Veldu tjáningartákn\",Previous:\"Fyrri\",Search:\"Leita\",\"Search results\":\"Leitarniðurstöður\",\"Select a tag\":\"Veldu merki\",Settings:\"Stillingar\",\"Smileys & Emotion\":\"Broskallar og tilfinningar\",\"Start slideshow\":\"Byrja skyggnusýningu\",Symbols:\"Tákn\",\"Travel & Places\":\"Staðir og ferðalög\",\"Unable to search the group\":\"Get ekki leitað í hópnum\"}},{locale:\"it\",translations:{\"{tag} (invisible)\":\"{tag} (invisibile)\",\"{tag} (restricted)\":\"{tag} (limitato)\",Actions:\"Azioni\",Activities:\"Attività\",\"Animals & Nature\":\"Animali e natura\",\"Anything shared with the same group of people will show up here\":\"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui\",\"Avatar of {displayName}\":\"Avatar di {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar di {displayName}, {status}\",\"Cancel changes\":\"Annulla modifiche\",\"Change title\":\"Modifica il titolo\",Choose:\"Scegli\",\"Clear text\":\"Cancella il testo\",Close:\"Chiudi\",\"Close modal\":\"Chiudi il messaggio modale\",\"Close navigation\":\"Chiudi la navigazione\",\"Close sidebar\":\"Chiudi la barra laterale\",\"Confirm changes\":\"Conferma modifiche\",Custom:\"Personalizzato\",\"Edit item\":\"Modifica l'elemento\",\"Error getting related resources\":\"Errore nell'ottenere risorse correlate\",\"Error parsing svg\":\"Errore nell'analizzare l'svg\",\"External documentation for {title}\":\"Documentazione esterna per {title}\",Favorite:\"Preferito\",Flags:\"Bandiere\",\"Food & Drink\":\"Cibo e bevande\",\"Frequently used\":\"Usati di frequente\",Global:\"Globale\",\"Go back to the list\":\"Torna all'elenco\",\"Hide password\":\"Nascondi la password\",\"Message limit of {count} characters reached\":\"Limite dei messaggi di {count} caratteri raggiunto\",\"More items …\":\"Più elementi ...\",Next:\"Successivo\",\"No emoji found\":\"Nessun emoji trovato\",\"No results\":\"Nessun risultato\",Objects:\"Oggetti\",Open:\"Apri\",'Open link to \"{resourceTitle}\"':'Apri il link a \"{resourceTitle}\"',\"Open navigation\":\"Apri la navigazione\",\"Password is secure\":\"La password è sicura\",\"Pause slideshow\":\"Presentazione in pausa\",\"People & Body\":\"Persone e corpo\",\"Pick an emoji\":\"Scegli un emoji\",\"Please select a time zone:\":\"Si prega di selezionare un fuso orario:\",Previous:\"Precedente\",\"Related resources\":\"Risorse correlate\",Search:\"Cerca\",\"Search results\":\"Risultati di ricerca\",\"Select a tag\":\"Seleziona un'etichetta\",Settings:\"Impostazioni\",\"Settings navigation\":\"Navigazione delle impostazioni\",\"Show password\":\"Mostra la password\",\"Smileys & Emotion\":\"Faccine ed emozioni\",\"Start slideshow\":\"Avvia presentazione\",Submit:\"Invia\",Symbols:\"Simboli\",\"Travel & Places\":\"Viaggi e luoghi\",\"Type to search time zone\":\"Digita per cercare un fuso orario\",\"Unable to search the group\":\"Impossibile cercare il gruppo\",\"Undo changes\":\"Cancella i cambiamenti\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Scrivi un messaggio, \"@\" per menzionare qualcuno, \":\" per il completamento automatico delle emoji ...'}},{locale:\"ja_JP\",translations:{\"{tag} (invisible)\":\"{タグ} (不可視)\",\"{tag} (restricted)\":\"{タグ} (制限付)\",Actions:\"操作\",Activities:\"アクティビティ\",\"Animals & Nature\":\"動物と自然\",\"Anything shared with the same group of people will show up here\":\"同じグループで共有しているものは、全てここに表示されます\",\"Avatar of {displayName}\":\"{displayName} のアバター\",\"Avatar of {displayName}, {status}\":\"{displayName}, {status} のアバター\",\"Cancel changes\":\"変更をキャンセル\",\"Change title\":\"タイトルを変更\",Choose:\"選択\",\"Clear text\":\"テキストをクリア\",Close:\"閉じる\",\"Close modal\":\"モーダルを閉じる\",\"Close navigation\":\"ナビゲーションを閉じる\",\"Close sidebar\":\"サイドバーを閉じる\",\"Confirm changes\":\"変更を承認\",Custom:\"カスタム\",\"Edit item\":\"編集\",\"Error getting related resources\":\"関連リソースの取得エラー\",\"Error parsing svg\":\"svgの解析エラー\",\"External documentation for {title}\":\"{title} のための添付文書\",Favorite:\"お気に入り\",Flags:\"国旗\",\"Food & Drink\":\"食べ物と飲み物\",\"Frequently used\":\"よく使うもの\",Global:\"全体\",\"Go back to the list\":\"リストに戻る\",\"Hide password\":\"パスワードを非表示\",\"Message limit of {count} characters reached\":\"{count} 文字のメッセージ上限に達しています\",\"More items …\":\"他のアイテム\",Next:\"次\",\"No emoji found\":\"絵文字が見つかりません\",\"No results\":\"なし\",Objects:\"物\",Open:\"開く\",'Open link to \"{resourceTitle}\"':'\"{resourceTitle}\"のリンクを開く',\"Open navigation\":\"ナビゲーションを開く\",\"Password is secure\":\"パスワードは保護されています\",\"Pause slideshow\":\"スライドショーを一時停止\",\"People & Body\":\"様々な人と体の部位\",\"Pick an emoji\":\"絵文字を選択\",\"Please select a time zone:\":\"タイムゾーンを選んで下さい:\",Previous:\"前\",\"Related resources\":\"関連リソース\",Search:\"検索\",\"Search results\":\"検索結果\",\"Select a tag\":\"タグを選択\",Settings:\"設定\",\"Settings navigation\":\"ナビゲーション設定\",\"Show password\":\"パスワードを表示\",\"Smileys & Emotion\":\"感情表現\",\"Start slideshow\":\"スライドショーを開始\",Submit:\"提出\",Symbols:\"記号\",\"Travel & Places\":\"旅行と場所\",\"Type to search time zone\":\"タイムゾーン検索のため入力してください\",\"Unable to search the group\":\"グループを検索できません\",\"Undo changes\":\"変更を取り消し\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'メッセージを記入、\"@\"でメンション、\":\"で絵文字の自動補完 ...'}},{locale:\"lt_LT\",translations:{\"{tag} (invisible)\":\"{tag} (nematoma)\",\"{tag} (restricted)\":\"{tag} (apribota)\",Actions:\"Veiksmai\",Activities:\"Veiklos\",\"Animals & Nature\":\"Gyvūnai ir gamta\",Choose:\"Pasirinkti\",Close:\"Užverti\",Custom:\"Tinkinti\",\"External documentation for {title}\":\"Išorinė {title} dokumentacija\",Flags:\"Vėliavos\",\"Food & Drink\":\"Maistas ir gėrimai\",\"Frequently used\":\"Dažniausiai naudoti\",\"Message limit of {count} characters reached\":\"Pasiekta {count} simbolių žinutės riba\",Next:\"Kitas\",\"No emoji found\":\"Nerasta jaustukų\",\"No results\":\"Nėra rezultatų\",Objects:\"Objektai\",\"Pause slideshow\":\"Pristabdyti skaidrių rodymą\",\"People & Body\":\"Žmonės ir kūnas\",\"Pick an emoji\":\"Pasirinkti jaustuką\",Previous:\"Ankstesnis\",Search:\"Ieškoti\",\"Search results\":\"Paieškos rezultatai\",\"Select a tag\":\"Pasirinkti žymę\",Settings:\"Nustatymai\",\"Settings navigation\":\"Naršymas nustatymuose\",\"Smileys & Emotion\":\"Šypsenos ir emocijos\",\"Start slideshow\":\"Pradėti skaidrių rodymą\",Submit:\"Pateikti\",Symbols:\"Simboliai\",\"Travel & Places\":\"Kelionės ir vietos\",\"Unable to search the group\":\"Nepavyko atlikti paiešką grupėje\",\"Write message, @ to mention someone …\":\"Rašykite žinutę, naudokite @ norėdami kažką paminėti…\"}},{locale:\"lv\",translations:{\"{tag} (invisible)\":\"{tag} (neredzams)\",\"{tag} (restricted)\":\"{tag} (ierobežots)\",Choose:\"Izvēlēties\",Close:\"Aizvērt\",Next:\"Nākamais\",\"No results\":\"Nav rezultātu\",\"Pause slideshow\":\"Pauzēt slaidrādi\",Previous:\"Iepriekšējais\",\"Select a tag\":\"Izvēlēties birku\",Settings:\"Iestatījumi\",\"Start slideshow\":\"Sākt slaidrādi\"}},{locale:\"mk\",translations:{\"{tag} (invisible)\":\"{tag} (невидливо)\",\"{tag} (restricted)\":\"{tag} (ограничено)\",Actions:\"Акции\",Activities:\"Активности\",\"Animals & Nature\":\"Животни & Природа\",\"Avatar of {displayName}\":\"Аватар на {displayName}\",\"Avatar of {displayName}, {status}\":\"Аватар на {displayName}, {status}\",\"Cancel changes\":\"Откажи ги промените\",\"Change title\":\"Промени наслов\",Choose:\"Избери\",Close:\"Затвори\",\"Close modal\":\"Затвори модал\",\"Close navigation\":\"Затвори навигација\",\"Confirm changes\":\"Потврди ги промените\",Custom:\"Прилагодени\",\"Edit item\":\"Уреди\",\"External documentation for {title}\":\"Надворешна документација за {title}\",Favorite:\"Фаворити\",Flags:\"Знамиња\",\"Food & Drink\":\"Храна & Пијалоци\",\"Frequently used\":\"Најчесто користени\",Global:\"Глобално\",\"Go back to the list\":\"Врати се на листата\",items:\"ставки\",\"Message limit of {count} characters reached\":\"Ограничувањето на должината на пораката од {count} карактери е надминато\",\"More {dashboardItemType} …\":\"Повеќе {dashboardItemType} …\",Next:\"Следно\",\"No emoji found\":\"Не се пронајдени емотикони\",\"No results\":\"Нема резултати\",Objects:\"Објекти\",Open:\"Отвори\",\"Open navigation\":\"Отвори навигација\",\"Pause slideshow\":\"Пузирај слајдшоу\",\"People & Body\":\"Луѓе & Тело\",\"Pick an emoji\":\"Избери емотикон\",\"Please select a time zone:\":\"Изберете временска зона:\",Previous:\"Предходно\",Search:\"Барај\",\"Search results\":\"Резултати од барувањето\",\"Select a tag\":\"Избери ознака\",Settings:\"Параметри\",\"Settings navigation\":\"Параметри за навигација\",\"Smileys & Emotion\":\"Смешковци & Емотикони\",\"Start slideshow\":\"Стартувај слајдшоу\",Submit:\"Испрати\",Symbols:\"Симболи\",\"Travel & Places\":\"Патувања & Места\",\"Type to search time zone\":\"Напишете за да пребарате временска зона\",\"Unable to search the group\":\"Неможе да се принајде групата\",\"Undo changes\":\"Врати ги промените\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ...\"}},{locale:\"my\",translations:{\"{tag} (invisible)\":\"{tag} (ကွယ်ဝှက်ထား)\",\"{tag} (restricted)\":\"{tag} (ကန့်သတ်)\",Actions:\"လုပ်ဆောင်ချက်များ\",Activities:\"ပြုလုပ်ဆောင်တာများ\",\"Animals & Nature\":\"တိရစ္ဆာန်များနှင့် သဘာဝ\",\"Avatar of {displayName}\":\"{displayName} ၏ ကိုယ်ပွား\",\"Cancel changes\":\"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်\",Choose:\"ရွေးချယ်ရန်\",Close:\"ပိတ်ရန်\",\"Confirm changes\":\"ပြောင်းလဲမှုများ အတည်ပြုရန်\",Custom:\"အလိုကျချိန်ညှိမှု\",\"External documentation for {title}\":\"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း\",Flags:\"အလံများ\",\"Food & Drink\":\"အစားအသောက်\",\"Frequently used\":\"မကြာခဏအသုံးပြုသော\",Global:\"ကမ္ဘာလုံးဆိုင်ရာ\",\"Message limit of {count} characters reached\":\"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ\",Next:\"နောက်သို့ဆက်ရန်\",\"No emoji found\":\"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ\",\"No results\":\"ရလဒ်မရှိပါ\",Objects:\"အရာဝတ္ထုများ\",\"Pause slideshow\":\"စလိုက်ရှိုး ခေတ္တရပ်ရန်\",\"People & Body\":\"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်\",\"Pick an emoji\":\"အီမိုဂျီရွေးရန်\",\"Please select a time zone:\":\"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ\",Previous:\"ယခင်\",Search:\"ရှာဖွေရန်\",\"Search results\":\"ရှာဖွေမှု ရလဒ်များ\",\"Select a tag\":\"tag ရွေးချယ်ရန်\",Settings:\"ချိန်ညှိချက်များ\",\"Settings navigation\":\"ချိန်ညှိချက်အညွှန်း\",\"Smileys & Emotion\":\"စမိုင်လီများနှင့် အီမိုရှင်း\",\"Start slideshow\":\"စလိုက်ရှိုးအား စတင်ရန်\",Submit:\"တင်သွင်းရန်\",Symbols:\"သင်္ကေတများ\",\"Travel & Places\":\"ခရီးသွားလာခြင်းနှင့် နေရာများ\",\"Type to search time zone\":\"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ\",\"Unable to search the group\":\"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ\",\"Write message, @ to mention someone …\":\"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်...\"}},{locale:\"nb_NO\",translations:{\"{tag} (invisible)\":\"{tag} (usynlig)\",\"{tag} (restricted)\":\"{tag} (beskyttet)\",Actions:\"Handlinger\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Dyr og natur\",\"Anything shared with the same group of people will show up here\":\"Alt som er delt med den samme gruppen vil vises her\",\"Avatar of {displayName}\":\"Avataren til {displayName}\",\"Avatar of {displayName}, {status}\":\"{displayName}'s avatar, {status}\",\"Cancel changes\":\"Avbryt endringer\",\"Change title\":\"Endre tittel\",Choose:\"Velg\",\"Clear text\":\"Fjern tekst\",Close:\"Lukk\",\"Close modal\":\"Lukk modal\",\"Close navigation\":\"Lukk navigasjon\",\"Close sidebar\":\"Lukk sidepanel\",\"Confirm changes\":\"Bekreft endringer\",Custom:\"Tilpasset\",\"Edit item\":\"Rediger\",\"Error getting related resources\":\"Feil ved henting av relaterte ressurser\",\"Error parsing svg\":\"Feil ved parsing av svg\",\"External documentation for {title}\":\"Ekstern dokumentasjon for {title}\",Favorite:\"Favoritt\",Flags:\"Flagg\",\"Food & Drink\":\"Mat og drikke\",\"Frequently used\":\"Ofte brukt\",Global:\"Global\",\"Go back to the list\":\"Gå tilbake til listen\",\"Hide password\":\"Skjul passord\",\"Message limit of {count} characters reached\":\"Karakter begrensing {count} nådd i melding\",\"More items …\":\"Flere gjenstander...\",Next:\"Neste\",\"No emoji found\":\"Fant ingen emoji\",\"No results\":\"Ingen resultater\",Objects:\"Objekter\",Open:\"Åpne\",'Open link to \"{resourceTitle}\"':'Åpne link til \"{resourceTitle}\"',\"Open navigation\":\"Åpne navigasjon\",\"Password is secure\":\"Passordet er sikkert\",\"Pause slideshow\":\"Pause lysbildefremvisning\",\"People & Body\":\"Mennesker og kropp\",\"Pick an emoji\":\"Velg en emoji\",\"Please select a time zone:\":\"Vennligst velg tidssone\",Previous:\"Forrige\",\"Related resources\":\"Relaterte ressurser\",Search:\"Søk\",\"Search results\":\"Søkeresultater\",\"Select a tag\":\"Velg en merkelapp\",Settings:\"Innstillinger\",\"Settings navigation\":\"Navigasjonsinstillinger\",\"Show password\":\"Vis passord\",\"Smileys & Emotion\":\"Smilefjes og følelser\",\"Start slideshow\":\"Start lysbildefremvisning\",Submit:\"Send\",Symbols:\"Symboler\",\"Travel & Places\":\"Reise og steder\",\"Type to search time zone\":\"Tast for å søke etter tidssone\",\"Unable to search the group\":\"Kunne ikke søke i gruppen\",\"Undo changes\":\"Tilbakestill endringer\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Skriv melding, bruk \"@\" for å nevne noen, bruk \":\" for autofullføring av emoji...'}},{locale:\"nl\",translations:{\"{tag} (invisible)\":\"{tag} (onzichtbaar)\",\"{tag} (restricted)\":\"{tag} (beperkt)\",Actions:\"Acties\",Activities:\"Activiteiten\",\"Animals & Nature\":\"Dieren & Natuur\",\"Avatar of {displayName}\":\"Avatar van {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar van {displayName}, {status}\",\"Cancel changes\":\"Wijzigingen annuleren\",Choose:\"Kies\",Close:\"Sluiten\",\"Close navigation\":\"Navigatie sluiten\",\"Confirm changes\":\"Wijzigingen bevestigen\",Custom:\"Aangepast\",\"Edit item\":\"Item bewerken\",\"External documentation for {title}\":\"Externe documentatie voor {title}\",Flags:\"Vlaggen\",\"Food & Drink\":\"Eten & Drinken\",\"Frequently used\":\"Vaak gebruikt\",Global:\"Globaal\",\"Go back to the list\":\"Ga terug naar de lijst\",\"Message limit of {count} characters reached\":\"Berichtlimiet van {count} karakters bereikt\",Next:\"Volgende\",\"No emoji found\":\"Geen emoji gevonden\",\"No results\":\"Geen resultaten\",Objects:\"Objecten\",\"Open navigation\":\"Navigatie openen\",\"Pause slideshow\":\"Pauzeer diavoorstelling\",\"People & Body\":\"Mensen & Lichaam\",\"Pick an emoji\":\"Kies een emoji\",\"Please select a time zone:\":\"Selecteer een tijdzone:\",Previous:\"Vorige\",Search:\"Zoeken\",\"Search results\":\"Zoekresultaten\",\"Select a tag\":\"Selecteer een label\",Settings:\"Instellingen\",\"Settings navigation\":\"Instellingen navigatie\",\"Smileys & Emotion\":\"Smileys & Emotie\",\"Start slideshow\":\"Start diavoorstelling\",Submit:\"Verwerken\",Symbols:\"Symbolen\",\"Travel & Places\":\"Reizen & Plaatsen\",\"Type to search time zone\":\"Type om de tijdzone te zoeken\",\"Unable to search the group\":\"Kan niet in de groep zoeken\",\"Undo changes\":\"Wijzigingen ongedaan maken\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ...\"}},{locale:\"oc\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (limit)\",Actions:\"Accions\",Choose:\"Causir\",Close:\"Tampar\",Next:\"Seguent\",\"No results\":\"Cap de resultat\",\"Pause slideshow\":\"Metre en pausa lo diaporama\",Previous:\"Precedent\",\"Select a tag\":\"Seleccionar una etiqueta\",Settings:\"Paramètres\",\"Start slideshow\":\"Lançar lo diaporama\"}},{locale:\"pl\",translations:{\"{tag} (invisible)\":\"{tag} (niewidoczna)\",\"{tag} (restricted)\":\"{tag} (ograniczona)\",Actions:\"Działania\",Activities:\"Aktywność\",\"Animals & Nature\":\"Zwierzęta i natura\",\"Anything shared with the same group of people will show up here\":\"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób\",\"Avatar of {displayName}\":\"Awatar {displayName}\",\"Avatar of {displayName}, {status}\":\"Awatar {displayName}, {status}\",\"Cancel changes\":\"Anuluj zmiany\",\"Change title\":\"Zmień tytuł\",Choose:\"Wybierz\",\"Clear text\":\"Wyczyść tekst\",Close:\"Zamknij\",\"Close modal\":\"Zamknij modal\",\"Close navigation\":\"Zamknij nawigację\",\"Close sidebar\":\"Zamknij pasek boczny\",\"Confirm changes\":\"Potwierdź zmiany\",Custom:\"Zwyczajne\",\"Edit item\":\"Edytuj element\",\"Error getting related resources\":\"Błąd podczas pobierania powiązanych zasobów\",\"Error parsing svg\":\"Błąd podczas analizowania svg\",\"External documentation for {title}\":\"Dokumentacja zewnętrzna dla {title}\",Favorite:\"Ulubiony\",Flags:\"Flagi\",\"Food & Drink\":\"Jedzenie i picie\",\"Frequently used\":\"Często używane\",Global:\"Globalnie\",\"Go back to the list\":\"Powrót do listy\",\"Hide password\":\"Ukryj hasło\",\"Message limit of {count} characters reached\":\"Przekroczono limit wiadomości wynoszący {count} znaków\",\"More items …\":\"Więcej pozycji…\",Next:\"Następny\",\"No emoji found\":\"Nie znaleziono emoji\",\"No results\":\"Brak wyników\",Objects:\"Obiekty\",Open:\"Otwórz\",'Open link to \"{resourceTitle}\"':'Otwórz link do \"{resourceTitle}\"',\"Open navigation\":\"Otwórz nawigację\",\"Password is secure\":\"Hasło jest bezpieczne\",\"Pause slideshow\":\"Wstrzymaj pokaz slajdów\",\"People & Body\":\"Ludzie i ciało\",\"Pick an emoji\":\"Wybierz emoji\",\"Please select a time zone:\":\"Wybierz strefę czasową:\",Previous:\"Poprzedni\",\"Related resources\":\"Powiązane zasoby\",Search:\"Szukaj\",\"Search results\":\"Wyniki wyszukiwania\",\"Select a tag\":\"Wybierz etykietę\",Settings:\"Ustawienia\",\"Settings navigation\":\"Ustawienia nawigacji\",\"Show password\":\"Pokaż hasło\",\"Smileys & Emotion\":\"Buźki i emotikony\",\"Start slideshow\":\"Rozpocznij pokaz slajdów\",Submit:\"Wyślij\",Symbols:\"Symbole\",\"Travel & Places\":\"Podróże i miejsca\",\"Type to search time zone\":\"Wpisz, aby wyszukać strefę czasową\",\"Unable to search the group\":\"Nie można przeszukać grupy\",\"Undo changes\":\"Cofnij zmiany\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Napisz wiadomość, \"@\" aby o kimś wspomnieć, \":\" dla autouzupełniania emoji…'}},{locale:\"pt_BR\",translations:{\"{tag} (invisible)\":\"{tag} (invisível)\",\"{tag} (restricted)\":\"{tag} (restrito) \",Actions:\"Ações\",Activities:\"Atividades\",\"Animals & Nature\":\"Animais & Natureza\",\"Anything shared with the same group of people will show up here\":\"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancelar alterações\",\"Change title\":\"Alterar título\",Choose:\"Escolher\",\"Clear text\":\"Limpar texto\",Close:\"Fechar\",\"Close modal\":\"Fechar modal\",\"Close navigation\":\"Fechar navegação\",\"Close sidebar\":\"Fechar barra lateral\",\"Confirm changes\":\"Confirmar alterações\",Custom:\"Personalizado\",\"Edit item\":\"Editar item\",\"Error getting related resources\":\"Erro ao obter recursos relacionados\",\"Error parsing svg\":\"Erro ao analisar svg\",\"External documentation for {title}\":\"Documentação externa para {title}\",Favorite:\"Favorito\",Flags:\"Bandeiras\",\"Food & Drink\":\"Comida & Bebida\",\"Frequently used\":\"Mais usados\",Global:\"Global\",\"Go back to the list\":\"Volte para a lista\",\"Hide password\":\"Ocultar a senha\",\"Message limit of {count} characters reached\":\"Limite de mensagem de {count} caracteres atingido\",\"More items …\":\"Mais itens …\",Next:\"Próximo\",\"No emoji found\":\"Nenhum emoji encontrado\",\"No results\":\"Sem resultados\",Objects:\"Objetos\",Open:\"Aberto\",'Open link to \"{resourceTitle}\"':'Abrir link para \"{resourceTitle}\"',\"Open navigation\":\"Abrir navegação\",\"Password is secure\":\"A senha é segura\",\"Pause slideshow\":\"Pausar apresentação de slides\",\"People & Body\":\"Pessoas & Corpo\",\"Pick an emoji\":\"Escolha um emoji\",\"Please select a time zone:\":\"Selecione um fuso horário: \",Previous:\"Anterior\",\"Related resources\":\"Recursos relacionados\",Search:\"Pesquisar\",\"Search results\":\"Resultados da pesquisa\",\"Select a tag\":\"Selecionar uma tag\",Settings:\"Configurações\",\"Settings navigation\":\"Navegação de configurações\",\"Show password\":\"Mostrar senha\",\"Smileys & Emotion\":\"Smiles & Emoções\",\"Start slideshow\":\"Iniciar apresentação de slides\",Submit:\"Enviar\",Symbols:\"Símbolo\",\"Travel & Places\":\"Viagem & Lugares\",\"Type to search time zone\":\"Digite para pesquisar o fuso horário \",\"Unable to search the group\":\"Não foi possível pesquisar o grupo\",\"Undo changes\":\"Desfazer modificações\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Escreva mensagens, use \"@\" para mencionar algum, use \":\" for autocompletar emoji …'}},{locale:\"pt_PT\",translations:{\"{tag} (invisible)\":\"{tag} (invisivel)\",\"{tag} (restricted)\":\"{tag} (restrito)\",Actions:\"Ações\",Choose:\"Escolher\",Close:\"Fechar\",Next:\"Seguinte\",\"No results\":\"Sem resultados\",\"Pause slideshow\":\"Pausar diaporama\",Previous:\"Anterior\",\"Select a tag\":\"Selecionar uma etiqueta\",Settings:\"Definições\",\"Start slideshow\":\"Iniciar diaporama\",\"Unable to search the group\":\"Não é possível pesquisar o grupo\"}},{locale:\"ro\",translations:{\"{tag} (invisible)\":\"{tag} (invizibil)\",\"{tag} (restricted)\":\"{tag} (restricționat)\",Actions:\"Acțiuni\",Activities:\"Activități\",\"Animals & Nature\":\"Animale și natură\",\"Anything shared with the same group of people will show up here\":\"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici\",\"Avatar of {displayName}\":\"Avatarul lui {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatarul lui {displayName}, {status}\",\"Cancel changes\":\"Anulează modificările\",\"Change title\":\"Modificați titlul\",Choose:\"Alegeți\",\"Clear text\":\"Șterge textul\",Close:\"Închideți\",\"Close modal\":\"Închideți modulul\",\"Close navigation\":\"Închideți navigarea\",\"Close sidebar\":\"Închide bara laterală\",\"Confirm changes\":\"Confirmați modificările\",Custom:\"Personalizat\",\"Edit item\":\"Editați elementul\",\"Error getting related resources\":\" Eroare la returnarea resurselor legate\",\"Error parsing svg\":\"Eroare de analizare a svg\",\"External documentation for {title}\":\"Documentație externă pentru {title}\",Favorite:\"Favorit\",Flags:\"Marcaje\",\"Food & Drink\":\"Alimente și băuturi\",\"Frequently used\":\"Utilizate frecvent\",Global:\"Global\",\"Go back to the list\":\"Întoarceți-vă la listă\",\"Hide password\":\"Ascunde parola\",\"Message limit of {count} characters reached\":\"Limita mesajului de {count} caractere a fost atinsă\",\"More items …\":\"Mai multe articole ...\",Next:\"Următorul\",\"No emoji found\":\"Nu s-a găsit niciun emoji\",\"No results\":\"Nu există rezultate\",Objects:\"Obiecte\",Open:\"Deschideți\",'Open link to \"{resourceTitle}\"':'Deschide legătura la \"{resourceTitle}\"',\"Open navigation\":\"Deschideți navigația\",\"Password is secure\":\"Parola este sigură\",\"Pause slideshow\":\"Pauză prezentare de diapozitive\",\"People & Body\":\"Oameni și corp\",\"Pick an emoji\":\"Alege un emoji\",\"Please select a time zone:\":\"Vă rugăm să selectați un fus orar:\",Previous:\"Anterior\",\"Related resources\":\"Resurse legate\",Search:\"Căutare\",\"Search results\":\"Rezultatele căutării\",\"Select a tag\":\"Selectați o etichetă\",Settings:\"Setări\",\"Settings navigation\":\"Navigare setări\",\"Show password\":\"Arată parola\",\"Smileys & Emotion\":\"Zâmbete și emoții\",\"Start slideshow\":\"Începeți prezentarea de diapozitive\",Submit:\"Trimiteți\",Symbols:\"Simboluri\",\"Travel & Places\":\"Călătorii și locuri\",\"Type to search time zone\":\"Tastați pentru a căuta fusul orar\",\"Unable to search the group\":\"Imposibilitatea de a căuta în grup\",\"Undo changes\":\"Anularea modificărilor\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Scrie un mesaj, folosește \"@\" pentru a menționa pe cineva, folosește \":\" pentru autocompletarea cu emoji ...'}},{locale:\"ru\",translations:{\"{tag} (invisible)\":\"{tag} (невидимое)\",\"{tag} (restricted)\":\"{tag} (ограниченное)\",Actions:\"Действия \",Activities:\"События\",\"Animals & Nature\":\"Животные и природа \",\"Avatar of {displayName}\":\"Аватар {displayName}\",\"Avatar of {displayName}, {status}\":\"Фотография {displayName}, {status}\",\"Cancel changes\":\"Отменить изменения\",Choose:\"Выберите\",Close:\"Закрыть\",\"Close modal\":\"Закрыть модальное окно\",\"Close navigation\":\"Закрыть навигацию\",\"Confirm changes\":\"Подтвердить изменения\",Custom:\"Пользовательское\",\"Edit item\":\"Изменить элемент\",\"External documentation for {title}\":\"Внешняя документация для {title}\",Flags:\"Флаги\",\"Food & Drink\":\"Еда, напиток\",\"Frequently used\":\"Часто используемый\",Global:\"Глобальный\",\"Go back to the list\":\"Вернуться к списку\",items:\"элементов\",\"Message limit of {count} characters reached\":\"Достигнуто ограничение на количество символов в {count}\",\"More {dashboardItemType} …\":\"Больше {dashboardItemType} …\",Next:\"Следующее\",\"No emoji found\":\"Эмодзи не найдено\",\"No results\":\"Результаты отсуствуют\",Objects:\"Объекты\",Open:\"Открыть\",\"Open navigation\":\"Открыть навигацию\",\"Pause slideshow\":\"Приостановить показ слйдов\",\"People & Body\":\"Люди и тело\",\"Pick an emoji\":\"Выберите эмодзи\",\"Please select a time zone:\":\"Пожалуйста, выберите часовой пояс:\",Previous:\"Предыдущее\",Search:\"Поиск\",\"Search results\":\"Результаты поиска\",\"Select a tag\":\"Выберите метку\",Settings:\"Параметры\",\"Settings navigation\":\"Навигация по настройкам\",\"Smileys & Emotion\":\"Смайлики и эмоции\",\"Start slideshow\":\"Начать показ слайдов\",Submit:\"Утвердить\",Symbols:\"Символы\",\"Travel & Places\":\"Путешествия и места\",\"Type to search time zone\":\"Введите для поиска часового пояса\",\"Unable to search the group\":\"Невозможно найти группу\",\"Undo changes\":\"Отменить изменения\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …\"}},{locale:\"sk_SK\",translations:{\"{tag} (invisible)\":\"{tag} (neviditeľný)\",\"{tag} (restricted)\":\"{tag} (obmedzený)\",Actions:\"Akcie\",Activities:\"Aktivity\",\"Animals & Nature\":\"Zvieratá a príroda\",\"Avatar of {displayName}\":\"Avatar {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar {displayName}, {status}\",\"Cancel changes\":\"Zrušiť zmeny\",Choose:\"Vybrať\",Close:\"Zatvoriť\",\"Close navigation\":\"Zavrieť navigáciu\",\"Confirm changes\":\"Potvrdiť zmeny\",Custom:\"Zvyk\",\"Edit item\":\"Upraviť položku\",\"External documentation for {title}\":\"Externá dokumentácia pre {title}\",Flags:\"Vlajky\",\"Food & Drink\":\"Jedlo a nápoje\",\"Frequently used\":\"Často používané\",Global:\"Globálne\",\"Go back to the list\":\"Naspäť na zoznam\",\"Message limit of {count} characters reached\":\"Limit správy na {count} znakov dosiahnutý\",Next:\"Ďalší\",\"No emoji found\":\"Nenašli sa žiadne emodži\",\"No results\":\"Žiadne výsledky\",Objects:\"Objekty\",\"Open navigation\":\"Otvoriť navigáciu\",\"Pause slideshow\":\"Pozastaviť prezentáciu\",\"People & Body\":\"Ľudia a telo\",\"Pick an emoji\":\"Vyberte si emodži\",\"Please select a time zone:\":\"Prosím vyberte časovú zónu:\",Previous:\"Predchádzajúci\",Search:\"Hľadať\",\"Search results\":\"Výsledky vyhľadávania\",\"Select a tag\":\"Vybrať štítok\",Settings:\"Nastavenia\",\"Settings navigation\":\"Navigácia v nastaveniach\",\"Smileys & Emotion\":\"Smajlíky a emócie\",\"Start slideshow\":\"Začať prezentáciu\",Submit:\"Odoslať\",Symbols:\"Symboly\",\"Travel & Places\":\"Cestovanie a miesta\",\"Type to search time zone\":\"Začníte písať pre vyhľadávanie časovej zóny\",\"Unable to search the group\":\"Skupinu sa nepodarilo nájsť\",\"Undo changes\":\"Vrátiť zmeny\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…\"}},{locale:\"sl\",translations:{\"{tag} (invisible)\":\"{tag} (nevidno)\",\"{tag} (restricted)\":\"{tag} (omejeno)\",Actions:\"Dejanja\",Activities:\"Dejavnosti\",\"Animals & Nature\":\"Živali in Narava\",\"Avatar of {displayName}\":\"Podoba {displayName}\",\"Avatar of {displayName}, {status}\":\"Prikazna slika {displayName}, {status}\",\"Cancel changes\":\"Prekliči spremembe\",\"Change title\":\"Spremeni naziv\",Choose:\"Izbor\",\"Clear text\":\"Počisti besedilo\",Close:\"Zapri\",\"Close modal\":\"Zapri pojavno okno\",\"Close navigation\":\"Zapri krmarjenje\",\"Close sidebar\":\"Zapri stransko vrstico\",\"Confirm changes\":\"Potrdi spremembe\",Custom:\"Po meri\",\"Edit item\":\"Uredi predmet\",\"Error getting related resources\":\"Napaka pridobivanja povezanih virov\",\"External documentation for {title}\":\"Zunanja dokumentacija za {title}\",Favorite:\"Priljubljeno\",Flags:\"Zastavice\",\"Food & Drink\":\"Hrana in Pijača\",\"Frequently used\":\"Pogostost uporabe\",Global:\"Splošno\",\"Go back to the list\":\"Vrni se na seznam\",\"Hide password\":\"Skrij geslo\",\"Message limit of {count} characters reached\":\"Dosežena omejitev {count} znakov na sporočilo.\",\"More items …\":\"Več predmetov ...\",Next:\"Naslednji\",\"No emoji found\":\"Ni najdenih izraznih ikon\",\"No results\":\"Ni zadetkov\",Objects:\"Predmeti\",Open:\"Odpri\",'Open link to \"{resourceTitle}\"':\"Odpri povezavo do »{resourceTitle}«\",\"Open navigation\":\"Odpri krmarjenje\",\"Password is secure\":\"Geslo je varno\",\"Pause slideshow\":\"Ustavi predstavitev\",\"People & Body\":\"Ljudje in Telo\",\"Pick a date\":\"Izbor datuma\",\"Pick a date and a time\":\"Izbor datuma in časa\",\"Pick a month\":\"Izbor meseca\",\"Pick a time\":\"Izbor časa\",\"Pick a week\":\"Izbor tedna\",\"Pick a year\":\"Izbor leta\",\"Pick an emoji\":\"Izbor izrazne ikone\",\"Please select a time zone:\":\"Izbor časovnega pasu:\",Previous:\"Predhodni\",\"Related resources\":\"Povezani viri\",Search:\"Iskanje\",\"Search results\":\"Zadetki iskanja\",\"Select a tag\":\"Izbor oznake\",Settings:\"Nastavitve\",\"Settings navigation\":\"Krmarjenje nastavitev\",\"Show password\":\"Pokaži geslo\",\"Smileys & Emotion\":\"Izrazne ikone\",\"Start slideshow\":\"Začni predstavitev\",Submit:\"Pošlji\",Symbols:\"Simboli\",\"Travel & Places\":\"Potovanja in Kraji\",\"Type to search time zone\":\"Vpišite niz za iskanje časovnega pasu\",\"Unable to search the group\":\"Ni mogoče iskati po skupini\",\"Undo changes\":\"Razveljavi spremembe\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …\"}},{locale:\"sr\",translations:{\"{tag} (invisible)\":\"{tag} (nevidljivo)\",\"{tag} (restricted)\":\"{tag} (ograničeno)\",Actions:\"Radnje\",Activities:\"Aktivnosti\",\"Animals & Nature\":\"Životinje i Priroda\",\"Avatar of {displayName}\":\"Avatar za {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar za {displayName}, {status}\",\"Cancel changes\":\"Otkaži izmene\",\"Change title\":\"Izmeni naziv\",Choose:\"Изаберите\",Close:\"Затвори\",\"Close modal\":\"Zatvori modal\",\"Close navigation\":\"Zatvori navigaciju\",\"Close sidebar\":\"Zatvori bočnu traku\",\"Confirm changes\":\"Potvrdite promene\",Custom:\"Po meri\",\"Edit item\":\"Uredi stavku\",\"External documentation for {title}\":\"Eksterna dokumentacija za {title}\",Favorite:\"Omiljeni\",Flags:\"Zastave\",\"Food & Drink\":\"Hrana i Piće\",\"Frequently used\":\"Često korišćeno\",Global:\"Globalno\",\"Go back to the list\":\"Natrag na listu\",items:\"stavke\",\"Message limit of {count} characters reached\":\"Dostignuto je ograničenje za poruke od {count} znakova\",\"More {dashboardItemType} …\":\"Više {dashboardItemType} …\",Next:\"Следеће\",\"No emoji found\":\"Nije pronađen nijedan emodži\",\"No results\":\"Нема резултата\",Objects:\"Objekti\",Open:\"Otvori\",\"Open navigation\":\"Otvori navigaciju\",\"Pause slideshow\":\"Паузирај слајд шоу\",\"People & Body\":\"Ljudi i Telo\",\"Pick an emoji\":\"Izaberi emodži\",\"Please select a time zone:\":\"Molimo izaberite vremensku zonu:\",Previous:\"Претходно\",Search:\"Pretraži\",\"Search results\":\"Rezultati pretrage\",\"Select a tag\":\"Изаберите ознаку\",Settings:\"Поставке\",\"Settings navigation\":\"Navigacija u podešavanjima\",\"Smileys & Emotion\":\"Smajli i Emocije\",\"Start slideshow\":\"Покрени слајд шоу\",Submit:\"Prihvati\",Symbols:\"Simboli\",\"Travel & Places\":\"Putovanja i Mesta\",\"Type to search time zone\":\"Ukucaj da pretražiš vremenske zone\",\"Unable to search the group\":\"Nije moguće pretražiti grupu\",\"Undo changes\":\"Poništi promene\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…\"}},{locale:\"sv\",translations:{\"{tag} (invisible)\":\"{tag} (osynlig)\",\"{tag} (restricted)\":\"{tag} (begränsad)\",Actions:\"Åtgärder\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Djur & Natur\",\"Anything shared with the same group of people will show up here\":\"Något som delats med samma grupp av personer kommer att visas här\",\"Avatar of {displayName}\":\"{displayName}s avatar\",\"Avatar of {displayName}, {status}\":\"{displayName}s avatar, {status}\",\"Cancel changes\":\"Avbryt ändringar\",\"Change title\":\"Ändra titel\",Choose:\"Välj\",\"Clear text\":\"Ta bort text\",Close:\"Stäng\",\"Close modal\":\"Stäng modal\",\"Close navigation\":\"Stäng navigering\",\"Close sidebar\":\"Stäng sidopanel\",\"Confirm changes\":\"Bekräfta ändringar\",Custom:\"Anpassad\",\"Edit item\":\"Ändra\",\"Error getting related resources\":\"Problem att hämta relaterade resurser\",\"Error parsing svg\":\"Fel vid inläsning av svg\",\"External documentation for {title}\":\"Extern dokumentation för {title}\",Favorite:\"Favorit\",Flags:\"Flaggor\",\"Food & Drink\":\"Mat & Dryck\",\"Frequently used\":\"Används ofta\",Global:\"Global\",\"Go back to the list\":\"Gå tillbaka till listan\",\"Hide password\":\"Göm lössenordet\",\"Message limit of {count} characters reached\":\"Meddelandegräns {count} tecken används\",\"More items …\":\"Fler objekt\",Next:\"Nästa\",\"No emoji found\":\"Hittade inga emojis\",\"No results\":\"Inga resultat\",Objects:\"Objekt\",Open:\"Öppna\",'Open link to \"{resourceTitle}\"':'Öppna länk till \"{resourceTitle}\"',\"Open navigation\":\"Öppna navigering\",\"Password is secure\":\"Lössenordet är säkert\",\"Pause slideshow\":\"Pausa bildspelet\",\"People & Body\":\"Kropp & Själ\",\"Pick an emoji\":\"Välj en emoji\",\"Please select a time zone:\":\"Välj tidszon:\",Previous:\"Föregående\",\"Related resources\":\"Relaterade resurser\",Search:\"Sök\",\"Search results\":\"Sökresultat\",\"Select a tag\":\"Välj en tag\",Settings:\"Inställningar\",\"Settings navigation\":\"Inställningsmeny\",\"Show password\":\"Visa lössenordet\",\"Smileys & Emotion\":\"Selfies & Känslor\",\"Start slideshow\":\"Starta bildspelet\",Submit:\"Skicka\",Symbols:\"Symboler\",\"Travel & Places\":\"Resor & Sevärdigheter\",\"Type to search time zone\":\"Skriv för att välja tidszon\",\"Unable to search the group\":\"Kunde inte söka i gruppen\",\"Undo changes\":\"Ångra ändringar\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Skriv meddelande, använd \"@\" för att nämna någon, använd \":\" för automatiska emojiförslag ...'}},{locale:\"tr\",translations:{\"{tag} (invisible)\":\"{tag} (görünmez)\",\"{tag} (restricted)\":\"{tag} (kısıtlı)\",Actions:\"İşlemler\",Activities:\"Etkinlikler\",\"Animals & Nature\":\"Hayvanlar ve Doğa\",\"Anything shared with the same group of people will show up here\":\"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir\",\"Avatar of {displayName}\":\"{displayName} avatarı\",\"Avatar of {displayName}, {status}\":\"{displayName}, {status} avatarı\",\"Cancel changes\":\"Değişiklikleri iptal et\",\"Change title\":\"Başlığı değiştir\",Choose:\"Seçin\",\"Clear text\":\"Metni temizle\",Close:\"Kapat\",\"Close modal\":\"Üste açılan pencereyi kapat\",\"Close navigation\":\"Gezinmeyi kapat\",\"Close sidebar\":\"Yan çubuğu kapat\",\"Confirm changes\":\"Değişiklikleri onayla\",Custom:\"Özel\",\"Edit item\":\"Ögeyi düzenle\",\"Error getting related resources\":\"İlgili kaynaklar alınırken sorun çıktı\",\"Error parsing svg\":\"svg işlenirken sorun çıktı\",\"External documentation for {title}\":\"{title} için dış belgeler\",Favorite:\"Sık kullanılanlara ekle\",Flags:\"Bayraklar\",\"Food & Drink\":\"Yeme ve İçme\",\"Frequently used\":\"Sık kullanılanlar\",Global:\"Evrensel\",\"Go back to the list\":\"Listeye dön\",\"Hide password\":\"Parolayı gizle\",\"Message limit of {count} characters reached\":\"{count} karakter ileti sınırına ulaşıldı\",\"More items …\":\"Diğer ögeler…\",Next:\"Sonraki\",\"No emoji found\":\"Herhangi bir emoji bulunamadı\",\"No results\":\"Herhangi bir sonuç bulunamadı\",Objects:\"Nesneler\",Open:\"Aç\",'Open link to \"{resourceTitle}\"':'\"{resourceTitle}\" bağlantısını aç',\"Open navigation\":\"Gezinmeyi aç\",\"Password is secure\":\"Parola güvenli\",\"Pause slideshow\":\"Slayt sunumunu duraklat\",\"People & Body\":\"İnsanlar ve Beden\",\"Pick an emoji\":\"Bir emoji seçin\",\"Please select a time zone:\":\"Lütfen bir saat dilimi seçin:\",Previous:\"Önceki\",\"Related resources\":\"İlgili kaynaklar\",Search:\"Arama\",\"Search results\":\"Arama sonuçları\",\"Select a tag\":\"Bir etiket seçin\",Settings:\"Ayarlar\",\"Settings navigation\":\"Gezinme ayarları\",\"Show password\":\"Parolayı görüntüle\",\"Smileys & Emotion\":\"İfadeler ve Duygular\",\"Start slideshow\":\"Slayt sunumunu başlat\",Submit:\"Gönder\",Symbols:\"Simgeler\",\"Travel & Places\":\"Gezi ve Yerler\",\"Type to search time zone\":\"Saat dilimi aramak için yazmaya başlayın\",\"Unable to search the group\":\"Grupta arama yapılamadı\",\"Undo changes\":\"Değişiklikleri geri al\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için \":\" kullanın…'}},{locale:\"uk\",translations:{\"{tag} (invisible)\":\"{tag} (невидимий)\",\"{tag} (restricted)\":\"{tag} (обмежений)\",Actions:\"Дії\",Activities:\"Діяльність\",\"Animals & Nature\":\"Тварини та природа\",\"Avatar of {displayName}\":\"Аватар {displayName}\",\"Avatar of {displayName}, {status}\":\"Аватар {displayName}, {status}\",\"Cancel changes\":\"Скасувати зміни\",\"Change title\":\"Змінити назву\",Choose:\"ВиберітьВиберіть\",\"Clear text\":\"Очистити текст\",Close:\"Закрити\",\"Close modal\":\"Закрити модаль\",\"Close navigation\":\"Закрити навігацію\",\"Close sidebar\":\"Закрити бічну панель\",\"Confirm changes\":\"Підтвердити зміни\",Custom:\"Власне\",\"Edit item\":\"Редагувати елемент\",\"External documentation for {title}\":\"Зовнішня документація для {title}\",Favorite:\"Улюблений\",Flags:\"Прапори\",\"Food & Drink\":\"Їжа та напої\",\"Frequently used\":\"Найчастіші\",Global:\"Глобальний\",\"Go back to the list\":\"Повернутися до списку\",\"Hide password\":\"Приховати пароль\",items:\"елементи\",\"Message limit of {count} characters reached\":\"Вичерпано ліміт у {count} символів для повідомлення\",\"More {dashboardItemType} …\":\"Більше {dashboardItemType}…\",Next:\"Вперед\",\"No emoji found\":\"Емоційки відсутні\",\"No results\":\"Відсутні результати\",Objects:\"Об'єкти\",Open:\"Відкрити\",\"Open navigation\":\"Відкрити навігацію\",\"Password is secure\":\"Пароль безпечний\",\"Pause slideshow\":\"Пауза у показі слайдів\",\"People & Body\":\"Люди та жести\",\"Pick an emoji\":\"Виберіть емоційку\",\"Please select a time zone:\":\"Виберіть часовий пояс:\",Previous:\"Назад\",Search:\"Пошук\",\"Search results\":\"Результати пошуку\",\"Select a tag\":\"Виберіть позначку\",Settings:\"Налаштування\",\"Settings navigation\":\"Навігація у налаштуваннях\",\"Show password\":\"Показати пароль\",\"Smileys & Emotion\":\"Смайли та емоції\",\"Start slideshow\":\"Почати показ слайдів\",Submit:\"Надіслати\",Symbols:\"Символи\",\"Travel & Places\":\"Поїздки та місця\",\"Type to search time zone\":\"Введіть для пошуку часовий пояс\",\"Unable to search the group\":\"Неможливо шукати в групі\",\"Undo changes\":\"Скасувати зміни\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…\"}},{locale:\"zh_CN\",translations:{\"{tag} (invisible)\":\"{tag} (不可见)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"行为\",Activities:\"活动\",\"Animals & Nature\":\"动物 & 自然\",\"Anything shared with the same group of people will show up here\":\"与同组用户分享的所有内容都会显示于此\",\"Avatar of {displayName}\":\"{displayName}的头像\",\"Avatar of {displayName}, {status}\":\"{displayName}的头像,{status}\",\"Cancel changes\":\"取消更改\",\"Change title\":\"更改标题\",Choose:\"选择\",\"Clear text\":\"清除文本\",Close:\"关闭\",\"Close modal\":\"关闭窗口\",\"Close navigation\":\"关闭导航\",\"Close sidebar\":\"关闭侧边栏\",\"Confirm changes\":\"确认更改\",Custom:\"自定义\",\"Edit item\":\"编辑项目\",\"Error getting related resources\":\"获取相关资源时出错\",\"Error parsing svg\":\"解析 svg 时出错\",\"External documentation for {title}\":\"{title}的外部文档\",Favorite:\"喜爱\",Flags:\"旗帜\",\"Food & Drink\":\"食物 & 饮品\",\"Frequently used\":\"经常使用\",Global:\"全局\",\"Go back to the list\":\"返回至列表\",\"Hide password\":\"隐藏密码\",\"Message limit of {count} characters reached\":\"已达到 {count} 个字符的消息限制\",\"More items …\":\"更多项目…\",Next:\"下一个\",\"No emoji found\":\"表情未找到\",\"No results\":\"无结果\",Objects:\"物体\",Open:\"打开\",'Open link to \"{resourceTitle}\"':'打开\"{resourceTitle}\"的连接',\"Open navigation\":\"开启导航\",\"Password is secure\":\"密码安全\",\"Pause slideshow\":\"暂停幻灯片\",\"People & Body\":\"人 & 身体\",\"Pick an emoji\":\"选择一个表情\",\"Please select a time zone:\":\"请选择一个时区:\",Previous:\"上一个\",\"Related resources\":\"相关资源\",Search:\"搜索\",\"Search results\":\"搜索结果\",\"Select a tag\":\"选择一个标签\",Settings:\"设置\",\"Settings navigation\":\"设置向导\",\"Show password\":\"显示密码\",\"Smileys & Emotion\":\"笑脸 & 情感\",\"Start slideshow\":\"开始幻灯片\",Submit:\"提交\",Symbols:\"符号\",\"Travel & Places\":\"旅游 & 地点\",\"Type to search time zone\":\"打字以搜索时区\",\"Unable to search the group\":\"无法搜索分组\",\"Undo changes\":\"撤销更改\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'写信息,使用\"@\"来提及某人,使用\":\"进行表情符号自动完成 ...'}},{locale:\"zh_HK\",translations:{\"{tag} (invisible)\":\"{tag} (隱藏)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"動作\",Activities:\"活動\",\"Animals & Nature\":\"動物與自然\",\"Anything shared with the same group of people will show up here\":\"與同一組人共享的任何內容都會顯示在此處\",\"Avatar of {displayName}\":\"{displayName} 的頭像\",\"Avatar of {displayName}, {status}\":\"{displayName} 的頭像,{status}\",\"Cancel changes\":\"取消更改\",\"Change title\":\"更改標題\",Choose:\"選擇\",\"Clear text\":\"清除文本\",Close:\"關閉\",\"Close modal\":\"關閉模態\",\"Close navigation\":\"關閉導航\",\"Close sidebar\":\"關閉側邊欄\",\"Confirm changes\":\"確認更改\",Custom:\"自定義\",\"Edit item\":\"編輯項目\",\"Error getting related resources\":\"獲取相關資源出錯\",\"Error parsing svg\":\"解析 svg 時出錯\",\"External documentation for {title}\":\"{title} 的外部文檔\",Favorite:\"喜愛\",Flags:\"旗幟\",\"Food & Drink\":\"食物與飲料\",\"Frequently used\":\"經常使用\",Global:\"全球的\",\"Go back to the list\":\"返回清單\",\"Hide password\":\"隱藏密碼\",\"Message limit of {count} characters reached\":\"已達到訊息最多 {count} 字元限制\",\"More items …\":\"更多項目 …\",Next:\"下一個\",\"No emoji found\":\"未找到表情符號\",\"No results\":\"無結果\",Objects:\"物件\",Open:\"打開\",'Open link to \"{resourceTitle}\"':\"打開指向 “{resourceTitle}” 的鏈結\",\"Open navigation\":\"開啟導航\",\"Password is secure\":\"密碼是安全的\",\"Pause slideshow\":\"暫停幻燈片\",\"People & Body\":\"人物\",\"Pick an emoji\":\"選擇表情符號\",\"Please select a time zone:\":\"請選擇時區:\",Previous:\"上一個\",\"Related resources\":\"相關資源\",Search:\"搜尋\",\"Search results\":\"搜尋結果\",\"Select a tag\":\"選擇標籤\",Settings:\"設定\",\"Settings navigation\":\"設定值導覽\",\"Show password\":\"顯示密碼\",\"Smileys & Emotion\":\"表情\",\"Start slideshow\":\"開始幻燈片\",Submit:\"提交\",Symbols:\"標誌\",\"Travel & Places\":\"旅遊與景點\",\"Type to search time zone\":\"鍵入以搜索時區\",\"Unable to search the group\":\"無法搜尋群組\",\"Undo changes\":\"取消更改\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'寫訊息,使用 \"@\" 來指代某人,使用 \":\" 用於表情符號自動填充 ...'}},{locale:\"zh_TW\",translations:{\"{tag} (invisible)\":\"{tag} (隱藏)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"動作\",Activities:\"活動\",\"Animals & Nature\":\"動物與自然\",Choose:\"選擇\",Close:\"關閉\",Custom:\"自定義\",Flags:\"旗幟\",\"Food & Drink\":\"食物與飲料\",\"Frequently used\":\"最近使用\",\"Message limit of {count} characters reached\":\"已達到訊息最多 {count} 字元限制\",Next:\"下一個\",\"No emoji found\":\"未找到表情符號\",\"No results\":\"無結果\",Objects:\"物件\",\"Pause slideshow\":\"暫停幻燈片\",\"People & Body\":\"人物\",\"Pick an emoji\":\"選擇表情符號\",Previous:\"上一個\",Search:\"搜尋\",\"Search results\":\"搜尋結果\",\"Select a tag\":\"選擇標籤\",Settings:\"設定\",\"Settings navigation\":\"設定值導覽\",\"Smileys & Emotion\":\"表情\",\"Start slideshow\":\"開始幻燈片\",Symbols:\"標誌\",\"Travel & Places\":\"旅遊與景點\",\"Unable to search the group\":\"無法搜尋群組\",\"Write message, @ to mention someone …\":\"輸入訊息時可使用 @ 來標示某人...\"}}].forEach((function(t){var e={};for(var n in t.translations)t.translations[n].pluralId?e[n]={msgid:n,msgid_plural:t.translations[n].pluralId,msgstr:t.translations[n].msgstr}:e[n]={msgid:n,msgstr:[t.translations[n]]};r.addTranslation(t.locale,{translations:{\"\":e}})}));var o=r.build(),a=o.ngettext.bind(o),s=o.gettext.bind(o)},6730:()=>{\"use strict\"},3351:(t,e,n)=>{\"use strict\";n.d(e,{iQ:()=>d});n(6730),n(8136),n(334),n(3132);var i=n(3607),r=n(768),o=n.n(r);const a=require(\"@nextcloud/capabilities\");var s=n(4262);function l(t){return l=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},l(t)}function c(){c=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},r=\"function\"==typeof Symbol?Symbol:{},o=r.iterator||\"@@iterator\",a=r.asyncIterator||\"@@asyncIterator\",s=r.toStringTag||\"@@toStringTag\";function u(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},\"\")}catch(t){u=function(t,e,n){return t[e]=n}}function d(t,e,n,r){var o=e&&e.prototype instanceof m?e:m,a=Object.create(o.prototype),s=new B(r||[]);return i(a,\"_invoke\",{value:x(t,n,s)}),a}function p(t,e,n){try{return{type:\"normal\",arg:t.call(e,n)}}catch(t){return{type:\"throw\",arg:t}}}t.wrap=d;var A={};function m(){}function h(){}function f(){}var v={};u(v,o,(function(){return this}));var g=Object.getPrototypeOf,C=g&&g(g(j([])));C&&C!==e&&n.call(C,o)&&(v=C);var b=f.prototype=m.prototype=Object.create(v);function y(t){[\"next\",\"throw\",\"return\"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function r(i,o,a,s){var c=p(t[i],t,o);if(\"throw\"!==c.type){var u=c.arg,d=u.value;return d&&\"object\"==l(d)&&n.call(d,\"__await\")?e.resolve(d.__await).then((function(t){r(\"next\",t,a,s)}),(function(t){r(\"throw\",t,a,s)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return r(\"throw\",t,a,s)}))}s(c.arg)}var o;i(this,\"_invoke\",{value:function(t,n){function i(){return new e((function(e,i){r(t,n,e,i)}))}return o=o?o.then(i,i):i()}})}function x(t,e,n){var i=\"suspendedStart\";return function(r,o){if(\"executing\"===i)throw new Error(\"Generator is already running\");if(\"completed\"===i){if(\"throw\"===r)throw o;return E()}for(n.method=r,n.arg=o;;){var a=n.delegate;if(a){var s=k(a,n);if(s){if(s===A)continue;return s}}if(\"next\"===n.method)n.sent=n._sent=n.arg;else if(\"throw\"===n.method){if(\"suspendedStart\"===i)throw i=\"completed\",n.arg;n.dispatchException(n.arg)}else\"return\"===n.method&&n.abrupt(\"return\",n.arg);i=\"executing\";var l=p(t,e,n);if(\"normal\"===l.type){if(i=n.done?\"completed\":\"suspendedYield\",l.arg===A)continue;return{value:l.arg,done:n.done}}\"throw\"===l.type&&(i=\"completed\",n.method=\"throw\",n.arg=l.arg)}}}function k(t,e){var n=e.method,i=t.iterator[n];if(void 0===i)return e.delegate=null,\"throw\"===n&&t.iterator.return&&(e.method=\"return\",e.arg=void 0,k(t,e),\"throw\"===e.method)||\"return\"!==n&&(e.method=\"throw\",e.arg=new TypeError(\"The iterator does not provide a '\"+n+\"' method\")),A;var r=p(i,t.iterator,e.arg);if(\"throw\"===r.type)return e.method=\"throw\",e.arg=r.arg,e.delegate=null,A;var o=r.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,\"return\"!==e.method&&(e.method=\"next\",e.arg=void 0),e.delegate=null,A):o:(e.method=\"throw\",e.arg=new TypeError(\"iterator result is not an object\"),e.delegate=null,A)}function _(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function S(t){var e=t.completion||{};e.type=\"normal\",delete e.arg,t.completion=e}function B(t){this.tryEntries=[{tryLoc:\"root\"}],t.forEach(_,this),this.reset(!0)}function j(t){if(t){var e=t[o];if(e)return e.call(t);if(\"function\"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,r=function e(){for(;++i<t.length;)if(n.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:E}}function E(){return{value:void 0,done:!0}}return h.prototype=f,i(b,\"constructor\",{value:f,configurable:!0}),i(f,\"constructor\",{value:h,configurable:!0}),h.displayName=u(f,s,\"GeneratorFunction\"),t.isGeneratorFunction=function(t){var e=\"function\"==typeof t&&t.constructor;return!!e&&(e===h||\"GeneratorFunction\"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,u(t,s,\"GeneratorFunction\")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},y(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,n,i,r,o){void 0===o&&(o=Promise);var a=new w(d(e,n,i,r),o);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(b),u(b,s,\"Generator\"),u(b,o,(function(){return this})),u(b,\"toString\",(function(){return\"[object Generator]\"})),t.keys=function(t){var e=Object(t),n=[];for(var i in e)n.push(i);return n.reverse(),function t(){for(;n.length;){var i=n.pop();if(i in e)return t.value=i,t.done=!1,t}return t.done=!0,t}},t.values=j,B.prototype={constructor:B,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method=\"next\",this.arg=void 0,this.tryEntries.forEach(S),!t)for(var e in this)\"t\"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if(\"throw\"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function i(n,i){return a.type=\"throw\",a.arg=t,e.next=n,i&&(e.method=\"next\",e.arg=void 0),!!i}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],a=o.completion;if(\"root\"===o.tryLoc)return i(\"end\");if(o.tryLoc<=this.prev){var s=n.call(o,\"catchLoc\"),l=n.call(o,\"finallyLoc\");if(s&&l){if(this.prev<o.catchLoc)return i(o.catchLoc,!0);if(this.prev<o.finallyLoc)return i(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return i(o.catchLoc,!0)}else{if(!l)throw new Error(\"try statement without catch or finally\");if(this.prev<o.finallyLoc)return i(o.finallyLoc)}}}},abrupt:function(t,e){for(var i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i];if(r.tryLoc<=this.prev&&n.call(r,\"finallyLoc\")&&this.prev<r.finallyLoc){var o=r;break}}o&&(\"break\"===t||\"continue\"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method=\"next\",this.next=o.finallyLoc,A):this.complete(a)},complete:function(t,e){if(\"throw\"===t.type)throw t.arg;return\"break\"===t.type||\"continue\"===t.type?this.next=t.arg:\"return\"===t.type?(this.rval=this.arg=t.arg,this.method=\"return\",this.next=\"end\"):\"normal\"===t.type&&e&&(this.next=e),A},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),S(n),A}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var i=n.completion;if(\"throw\"===i.type){var r=i.arg;S(n)}return r}}throw new Error(\"illegal catch attempt\")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},\"next\"===this.method&&(this.arg=void 0),A}},t}function u(t,e,n,i,r,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(i,r)}const d={data:function(){return{hasStatus:!1,userStatus:{status:null,message:null,icon:null}}},methods:{fetchUserStatus:function(t){var e,n=this;return(e=c().mark((function e(){var r,l,u,d,p,A,m,h,f;return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}return e.abrupt(\"return\");case 2:if(r=(0,a.getCapabilities)(),Object.prototype.hasOwnProperty.call(r,\"user_status\")&&r.user_status.enabled){e.next=5;break}return e.abrupt(\"return\");case 5:if((0,i.getCurrentUser)()){e.next=7;break}return e.abrupt(\"return\");case 7:return e.prev=7,e.next=10,o().get((0,s.generateOcsUrl)(\"apps/user_status/api/v1/statuses/{userId}\",{userId:t}));case 10:l=e.sent,u=l.data,d=u.ocs.data,p=d.status,A=d.message,m=d.icon,n.userStatus.status=p,n.userStatus.message=A||\"\",n.userStatus.icon=m||\"\",n.hasStatus=!0,e.next=24;break;case 19:if(e.prev=19,e.t0=e.catch(7),404!==e.t0.response.status||0!==(null===(h=e.t0.response.data.ocs)||void 0===h||null===(f=h.data)||void 0===f?void 0:f.length)){e.next=23;break}return e.abrupt(\"return\");case 23:console.error(e.t0);case 24:case\"end\":return e.stop()}}),e,null,[[7,19]])})),function(){var t=this,n=arguments;return new Promise((function(i,r){var o=e.apply(t,n);function a(t){u(o,i,r,a,s,\"next\",t)}function s(t){u(o,i,r,a,s,\"throw\",t)}a(void 0)}))})()}}}},8136:()=>{\"use strict\"},334:(t,e,n)=>{\"use strict\";var i=n(2734);new(n.n(i)())({data:function(){return{isMobile:!1}},watch:{isMobile:function(t){this.$emit(\"changed\",t)}},created:function(){window.addEventListener(\"resize\",this.handleWindowResize),this.handleWindowResize()},beforeDestroy:function(){window.removeEventListener(\"resize\",this.handleWindowResize)},methods:{handleWindowResize:function(){this.isMobile=document.documentElement.clientWidth<1024}}})},3648:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>r});var i=n(932);const r={methods:{n:i.n,t:i.t}}},3132:(t,e,n)=>{\"use strict\";n(4470),n(1390);require(\"escape-html\");require(\"striptags\");n(2734);var i=\"(?:^|\\\\s)\",r=\"(?:[^a-z]|$)\";new RegExp(\"\".concat(i,\"(@[a-zA-Z0-9_.@\\\\-']+)(\").concat(r,\")\"),\"gi\"),new RegExp(\"\".concat(i,\"(@"[a-zA-Z0-9 _.@\\\\-']+")(\").concat(r,\")\"),\"gi\")},1336:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>i});const i=function(t,e){for(var n=[],i=0,r=t.toLowerCase().indexOf(e.toLowerCase(),i),o=0;r>-1&&o<t.length;)i=r+e.length,n.push({start:r,end:i}),r=t.toLowerCase().indexOf(e.toLowerCase(),i),o++;return n}},6609:(t,e,n)=>{\"use strict\";function i(t,e,n){this.r=t,this.g=e,this.b=n}function r(t,e,n){var r=[];r.push(e);for(var o=function(t,e){var n=new Array(3);return n[0]=(e[1].r-e[0].r)/t,n[1]=(e[1].g-e[0].g)/t,n[2]=(e[1].b-e[0].b)/t,n}(t,[e,n]),a=1;a<t;a++){var s=parseInt(e.r+o[0]*a,10),l=parseInt(e.g+o[1]*a,10),c=parseInt(e.b+o[2]*a,10);r.push(new i(s,l,c))}return r}n.d(e,{Z:()=>o});const o=function(t){t||(t=6);var e=new i(182,70,157),n=new i(221,203,85),o=new i(0,130,201),a=r(t,e,n),s=r(t,n,o),l=r(t,o,e);return a.concat(s).concat(l)}},1205:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>i});const i=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,\"\").slice(0,t||5)}},1390:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>o});const i=require(\"linkify-string\");var r=n.n(i);const o=function(t){return r()(t,{defaultProtocol:\"https\",target:\"_blank\",className:\"external linkified\",attributes:{rel:\"nofollow noopener noreferrer\"}})}},7645:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>i});const i=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute(\"data-v-\".concat(\"caee4c9\"),\"\")}))}},1206:(t,e,n)=>{\"use strict\";n.d(e,{L:()=>i});n(4505);var i=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},636:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,'.material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.multiselect[data-v-caee4c9]{margin:0;padding:0 !important;display:inline-block;min-width:260px;position:relative}.multiselect[data-v-caee4c9]:not(.multiselect--active) .multiselect__single{width:100%;z-index:2 !important}.multiselect[data-v-caee4c9].multiselect--active.multiselect--above input.multiselect__input{border-radius:0 0 var(--border-radius) var(--border-radius)}.multiselect[data-v-caee4c9].multiselect--disabled,.multiselect[data-v-caee4c9].multiselect--disabled .multiselect__single{background-color:var(--color-background-dark) !important}.multiselect[data-v-caee4c9] .loading-icon{position:absolute;right:1px;top:1px;width:48px;height:35px;background:var(--color-main-background);z-index:3}.multiselect[data-v-caee4c9] .multiselect__tags{display:flex;flex-wrap:nowrap;overflow:hidden;border:2px solid var(--color-border-dark);cursor:pointer;position:relative;border-radius:var(--border-radius-large);min-height:44px;height:44px;padding:8px 12px !important;background-color:var(--color-main-background);box-sizing:border-box}.multiselect[data-v-caee4c9] .multiselect__tags:focus,.multiselect[data-v-caee4c9] .multiselect__tags:hover{border-color:var(--color-primary-element)}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__tags-wrap{align-items:center;display:inline-flex;overflow:hidden;max-width:100%;position:relative;gap:5px;flex:1 1;flex-wrap:nowrap}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__tags-wrap:empty~input.multiselect__input{opacity:1 !important;display:block !important}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__tags-wrap:empty~input.multiselect__input+span:not(.multiselect__single){display:none}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__tags-wrap .multiselect__tag{line-height:20px;padding:2px 5px;background-image:none;color:var(--color-main-text);border:1px solid var(--color-border-dark);display:inline-flex;align-items:center;border-radius:var(--border-radius);min-width:0;max-width:fit-content;max-width:-moz-fit-content;margin:0}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__tags-wrap .multiselect__tag:only-child{flex:0 1 auto}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__tags-wrap .multiselect__tag>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__single,.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__placeholder{z-index:1;background-color:var(--color-main-background);line-height:18px;color:var(--color-text-lighter);display:flex;align-items:center;font-size:var(--default-font-size)}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__single,.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__single *,.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__placeholder,.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__placeholder *{cursor:pointer}.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__strong,.multiselect[data-v-caee4c9] .multiselect__tags .multiselect__limit{line-height:20px;color:var(--color-text-lighter);display:inline-flex;align-items:center;opacity:.7;margin-right:5px;z-index:5}.multiselect[data-v-caee4c9] .multiselect__tags input.multiselect__input{width:100% !important;height:auto !important;margin:0;opacity:0;border:none;cursor:pointer;display:none;height:40px;min-height:26px;padding:0 !important;font-size:var(--default-font-size)}.multiselect[data-v-caee4c9].multiselect--active input.multiselect__input{opacity:1 !important;cursor:text !important;border-radius:var(--border-radius) var(--border-radius) 0 0;display:block !important}.multiselect[data-v-caee4c9].multiselect--active .multiselect__limit{display:none}.multiselect[data-v-caee4c9] .multiselect__content-wrapper{position:absolute;width:100%;margin-top:-1px;border:1px solid var(--color-border-dark);background:var(--color-main-background);z-index:50;max-height:250px;overflow-y:auto;border-radius:0 0 var(--border-radius) var(--border-radius)}.multiselect[data-v-caee4c9] .multiselect__content-wrapper .multiselect__content{width:100%;padding:0}.multiselect[data-v-caee4c9] .multiselect__content-wrapper li{position:relative;display:flex;align-items:center;background-color:rgba(0,0,0,0)}.multiselect[data-v-caee4c9] .multiselect__content-wrapper li,.multiselect[data-v-caee4c9] .multiselect__content-wrapper li span{cursor:pointer}.multiselect[data-v-caee4c9] .multiselect__content-wrapper li>span{padding:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;height:auto;min-height:1em;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-flex;align-items:center;background-color:rgba(0,0,0,0);color:var(--color-text-lighter);width:100%}.multiselect[data-v-caee4c9] .multiselect__content-wrapper li>span::before{content:\" \";background-repeat:no-repeat;background-position:center;min-width:16px;min-height:16px;display:block;opacity:.5;margin-right:5px;visibility:hidden}.multiselect[data-v-caee4c9] .multiselect__content-wrapper li>span.multiselect__option--disabled{background-color:var(--color-background-dark);opacity:.5}.multiselect[data-v-caee4c9] .multiselect__content-wrapper li>span.multiselect__option--highlight{color:var(--color-main-text);background-color:var(--color-background-dark)}.multiselect[data-v-caee4c9] .multiselect__content-wrapper li>span:not(.multiselect__option--disabled):hover::before{opacity:.3}.multiselect[data-v-caee4c9] .multiselect__content-wrapper li>span.multiselect__option--selected::before,.multiselect[data-v-caee4c9] .multiselect__content-wrapper li>span:not(.multiselect__option--disabled):hover::before{visibility:visible}.multiselect[data-v-caee4c9].multiselect--above .multiselect__content-wrapper{bottom:100%;margin-bottom:-1px}.multiselect[data-v-caee4c9].multiselect--multiple .multiselect__tags{flex-wrap:wrap}.multiselect[data-v-caee4c9].multiselect--multiple .multiselect__content-wrapper li>span::before{background-image:var(--icon-checkmark-dark)}.multiselect[data-v-caee4c9].multiselect--multiple .multiselect__content-wrapper li>span[data-select=create]::before{background-image:var(--icon-add-dark);visibility:visible}.multiselect[data-v-caee4c9].multiselect--single .multiselect__content-wrapper li>span::before{display:none}.multiselect[data-v-caee4c9]:hover .multiselect__placeholder,.multiselect[data-v-caee4c9] input.multiselect__input .multiselect__placeholder{color:var(--color-main-text)}',\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcMultiselect/index.scss\",\"webpack://./src/assets/variables.scss\"],names:[],mappings:\"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCJD,6BACC,QAAA,CACA,oBAAA,CACA,oBAAA,CAEA,eAAA,CACA,iBAAA,CAGA,4EACC,UAAA,CACA,oBAAA,CAKA,6FACC,2DAAA,CAKF,2HAEC,wDAAA,CAID,2CACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,UAAA,CACA,WAAA,CACA,uCAAA,CACA,SAAA,CAID,gDAGC,YAAA,CACA,gBAAA,CACA,eAAA,CACA,yCAAA,CACA,cAAA,CACA,iBAAA,CACA,wCAAA,CACA,eAAA,CACA,WAAA,CACA,2BAAA,CACA,6CAAA,CACA,qBAAA,CAEA,4GACC,yCAAA,CAID,wEACC,kBAAA,CACA,mBAAA,CACA,eAAA,CACA,cAAA,CACA,iBAAA,CACA,OAzBe,CA0Bf,QAAA,CACA,gBAAA,CAGA,uGACC,oBAAA,CACA,wBAAA,CAIA,sIACC,YAAA,CAIF,0FACC,gBAAA,CACA,eAAA,CACA,qBAAA,CACA,4BAAA,CACA,yCAAA,CACA,mBAAA,CACA,kBAAA,CACA,kCAAA,CAGA,WAAA,CACA,qBAAA,CACA,0BAAA,CACA,QAAA,CAGA,qGACC,aAAA,CAID,+FACC,kBAAA,CACA,sBAAA,CACA,eAAA,CAOH,+IAEC,SAAA,CACA,6CAAA,CACA,gBAAA,CACA,+BAAA,CAEA,YAAA,CACA,kBAAA,CACA,kCAAA,CAGA,kSACC,cAAA,CAIF,yIAEC,gBAAA,CACA,+BAAA,CACA,mBAAA,CACA,kBAAA,CACA,UClGc,CDmGd,gBAjGe,CAmGf,SAAA,CAGD,yEACC,qBAAA,CACA,sBAAA,CACA,QAAA,CACA,SAAA,CACA,WAAA,CAGA,cAAA,CAEA,YAAA,CACA,WAAA,CACA,eAAA,CACA,oBAAA,CACA,kCAAA,CAQD,0EACC,oBAAA,CACA,sBAAA,CAEA,2DAAA,CACA,wBAAA,CAID,qEACC,YAAA,CAKF,2DACC,iBAAA,CACA,UAAA,CACA,eAAA,CACA,yCAAA,CACA,uCAAA,CACA,UAAA,CACA,gBAAA,CACA,eAAA,CACA,2DAAA,CACA,iFACC,UAAA,CACA,SAAA,CAED,8DACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,8BAAA,CACA,iIAEC,cAAA,CAED,mEACC,WAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CACA,QAAA,CACA,WAAA,CACA,cAAA,CACA,0BAAA,CACA,wBAAA,CACA,qBAAA,CACA,oBAAA,CACA,gBAAA,CACA,mBAAA,CACA,kBAAA,CACA,8BAAA,CACA,+BAAA,CACA,UAAA,CAEA,2EACC,WAAA,CACA,2BAAA,CACA,0BAAA,CACA,cAAA,CACA,eAAA,CACA,aAAA,CACA,UC/Lc,CDgMd,gBAAA,CACA,iBAAA,CAED,iGACC,6CAAA,CACA,UCrMc,CDuMf,kGACC,4BAAA,CACA,6CAAA,CAED,qHACC,UAAA,CAIA,8NACC,kBAAA,CAOL,8EACC,WAAA,CACA,kBAAA,CAMA,sEACC,cAAA,CAIA,iGACC,2CAAA,CAMA,qHACC,qCAAA,CACA,kBAAA,CAOJ,+FACC,YAAA,CAMA,6IACC,4BAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n// scoping is not working inside the Multiselect.vue component\\n// as the nested properties are not inside it\\n// Therefore we need to use an external scoping\\n.multiselect[data-v-#{$scope_version}] {\\n\\tmargin: 0;\\n\\tpadding: 0 !important;\\n\\tdisplay: inline-block;\\n\\t/* override this rule with your width styling if you need */\\n\\tmin-width: 260px;\\n\\tposition: relative;\\n\\n\\t/* Force single multiselect value to be shown when not active */\\n\\t&:not(.multiselect--active) .multiselect__single {\\n\\t\\twidth: 100%;\\n\\t\\tz-index: 2 !important;\\n\\t}\\n\\n\\t// Remove radius on top opening\\n\\t&.multiselect--active.multiselect--above {\\n\\t\\tinput.multiselect__input {\\n\\t\\t\\tborder-radius: 0 0 var(--border-radius) var(--border-radius);\\n\\t\\t}\\n\\t}\\n\\n\\t// disabled state background\\n\\t&.multiselect--disabled,\\n\\t&.multiselect--disabled .multiselect__single {\\n\\t\\tbackground-color: var(--color-background-dark) !important;\\n\\t}\\n\\n\\t// loading state\\n\\t.loading-icon {\\n\\t\\tposition: absolute;\\n\\t\\tright: 1px;\\n\\t\\ttop: 1px;\\n\\t\\twidth: 48px;\\n\\t\\theight: 35px;\\n\\t\\tbackground: var(--color-main-background);\\n\\t\\tz-index: 3;\\n\\t}\\n\\n\\t// multiple selected options display\\n\\t.multiselect__tags {\\n\\t\\t/* space between tags and limit tag */\\n\\t\\t$space-between: 5px;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: nowrap;\\n\\t\\toverflow: hidden;\\n\\t\\tborder: 2px solid var(--color-border-dark);\\n\\t\\tcursor: pointer;\\n\\t\\tposition: relative;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tmin-height: 44px;\\n\\t\\theight: 44px;\\n\\t\\tpadding: 8px 12px !important;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tbox-sizing: border-box;\\n\\n\\t\\t&:focus, &:hover {\\n\\t\\t\\tborder-color: var(--color-primary-element);\\n\\t\\t}\\n\\n\\t\\t/* tag wrapper */\\n\\t\\t.multiselect__tags-wrap {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tgap: $space-between;\\n\\t\\t\\tflex: 1 1;\\n\\t\\t\\tflex-wrap: nowrap;\\n\\t\\t\\t/* no tags or simple select? Show input directly\\n\\t\\t\\tinput is used to display single value */\\n\\t\\t\\t&:empty ~ input.multiselect__input {\\n\\t\\t\\t\\topacity: $opacity_full !important;\\n\\t\\t\\t\\tdisplay: block !important;\\n\\t\\t\\t\\t/* hide default empty text like .multiselect__placeholder,\\n\\t\\t\\t\\tand show input instead. It looks better without a transition between\\n\\t\\t\\t\\ta span and the input that have different styling */\\n\\t\\t\\t\\t+ span:not(.multiselect__single) {\\n\\t\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t/* selected tag */\\n\\t\\t\\t.multiselect__tag {\\n\\t\\t\\t\\tline-height: 20px;\\n\\t\\t\\t\\tpadding: 2px 5px;\\n\\t\\t\\t\\tbackground-image: none;\\n\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\t\\t/* require to override the default width\\n\\t\\t\\t\\tand force the tag to shring properly */\\n\\t\\t\\t\\tmin-width: 0;\\n\\t\\t\\t\\tmax-width: fit-content;\\n\\t\\t\\t\\tmax-width: -moz-fit-content;\\n\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t\\t/* css hack, detect if more than two tags\\n\\t\\t\\t\\tif so, flex-basis is set to half */\\n\\t\\t\\t\\t&:only-child {\\n\\t\\t\\t\\t\\tflex: 0 1 auto;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t/* ellipsis the groups to be sure\\n\\t\\t\\t\\twe display at least two of them */\\n\\t\\t\\t\\t> span {\\n\\t\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t/* Single select default value\\n\\t\\tor default placeholder if search disabled*/\\n\\t\\t.multiselect__single,\\n\\t\\t.multiselect__placeholder {\\n\\t\\t\\tz-index: 1; /* above input */\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tline-height: 18px; // 32px - 2*6px (padding) - 2*1px (border)\\n\\t\\t\\tcolor: var(--color-text-lighter); // like the input\\n\\t\\t\\t// Align content and make the flow smoother\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tfont-size: var(--default-font-size);\\n\\n\\t\\t\\t// Anything inside will trigger the select opening\\n\\t\\t\\t&, * {\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t/* displayed text if tag limit reached */\\n\\t\\t.multiselect__strong,\\n\\t\\t.multiselect__limit {\\n\\t\\t\\tline-height: 20px;\\n\\t\\t\\tcolor: var(--color-text-lighter);\\n\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\topacity: $opacity_normal;\\n\\t\\t\\tmargin-right: $space-between;\\n\\t\\t\\t/* above the input */\\n\\t\\t\\tz-index: 5;\\n\\t\\t}\\n\\t\\t/* default multiselect input for search and placeholder */\\n\\t\\tinput.multiselect__input {\\n\\t\\t\\twidth: 100% !important;\\n\\t\\t\\theight: auto !important;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\topacity: 0;\\n\\t\\t\\tborder: none;\\n\\t\\t\\t/* override hide to force show the placeholder */\\n\\t\\t\\t/* only when not active */\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\t/* override inline styling of the lib */\\n\\t\\t\\tdisplay: none;\\n\\t\\t\\theight: 40px;\\n\\t\\t\\tmin-height: 26px;\\n\\t\\t\\tpadding: 0 !important;\\n\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t}\\n\\t}\\n\\n\\t// active state, force the input to be shown, we don't want\\n\\t// the placeholder or the currently selected options\\n\\t&.multiselect--active {\\n\\t\\t/* Opened: force display the input */\\n\\t\\tinput.multiselect__input {\\n\\t\\t\\topacity: $opacity_full !important;\\n\\t\\t\\tcursor: text !important;\\n\\t\\t\\t// remove border radius on bottom opening\\n\\t\\t\\tborder-radius: var(--border-radius) var(--border-radius) 0 0;\\n\\t\\t\\tdisplay: block !important;\\n\\t\\t}\\n\\n\\t\\t/* multiselect__limit hidden if active */\\n\\t\\t.multiselect__limit {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\n\\t/* results wrapper */\\n\\t.multiselect__content-wrapper {\\n\\t\\tposition: absolute;\\n\\t\\twidth: 100%;\\n\\t\\tmargin-top: -1px;\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tbackground: var(--color-main-background);\\n\\t\\tz-index: 50;\\n\\t\\tmax-height: 250px;\\n\\t\\toverflow-y: auto;\\n\\t\\tborder-radius: 0 0 var(--border-radius) var(--border-radius);\\n\\t\\t.multiselect__content {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\t\\tli {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t\\t&,\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t}\\n\\t\\t\\t> span {\\n\\t\\t\\t\\tpadding: 8px;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t\\theight: auto;\\n\\t\\t\\t\\tmin-height: 1em;\\n\\t\\t\\t\\t-webkit-touch-callout: none;\\n\\t\\t\\t\\t-webkit-user-select: none;\\n\\t\\t\\t\\t-moz-user-select: none;\\n\\t\\t\\t\\t-ms-user-select: none;\\n\\t\\t\\t\\tuser-select: none;\\n\\t\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tbackground-color: transparent;\\n\\t\\t\\t\\tcolor: var(--color-text-lighter);\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\t/* selected checkmark icon */\\n\\t\\t\\t\\t&::before {\\n\\t\\t\\t\\t\\tcontent: ' ';\\n\\t\\t\\t\\t\\tbackground-repeat: no-repeat;\\n\\t\\t\\t\\t\\tbackground-position: center;\\n\\t\\t\\t\\t\\tmin-width: 16px;\\n\\t\\t\\t\\t\\tmin-height: 16px;\\n\\t\\t\\t\\t\\tdisplay: block;\\n\\t\\t\\t\\t\\topacity: $opacity_disabled;\\n\\t\\t\\t\\t\\tmargin-right: 5px;\\n\\t\\t\\t\\t\\tvisibility: hidden;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&.multiselect__option--disabled {\\n\\t\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t\\t\\topacity: $opacity_disabled;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&.multiselect__option--highlight {\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&:not(.multiselect__option--disabled):hover::before {\\n\\t\\t\\t\\t\\topacity: .3;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&.multiselect__option--selected,\\n\\t\\t\\t\\t&:not(.multiselect__option--disabled):hover {\\n\\t\\t\\t\\t\\t&::before {\\n\\t\\t\\t\\t\\t\\tvisibility: visible;\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\t/* ABOVE display */\\n\\t&.multiselect--above .multiselect__content-wrapper {\\n\\t\\tbottom: 100%;\\n\\t\\tmargin-bottom: -1px;\\n\\t}\\n\\n\\t/* Icon before option select */\\n\\t&.multiselect--multiple {\\n\\t\\t// push the input after the tag list\\n\\t\\t.multiselect__tags {\\n\\t\\t\\tflex-wrap: wrap;\\n\\t\\t}\\n\\n\\t\\t.multiselect__content-wrapper li > span {\\n\\t\\t\\t&::before {\\n\\t\\t\\t\\tbackground-image: var(--icon-checkmark-dark);\\n\\t\\t\\t}\\n\\n\\t\\t\\t/* add the prop tag-placeholder=\\\"create\\\" to add the +\\n\\t\\t\\ticon on top of an unknown-and-ready-to-be-created entry */\\n\\t\\t\\t&[data-select='create'] {\\n\\t\\t\\t\\t&::before {\\n\\t\\t\\t\\t\\tbackground-image: var(--icon-add-dark);\\n\\t\\t\\t\\t\\tvisibility: visible;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t/* No need for an icon here */\\n\\t&.multiselect--single .multiselect__content-wrapper li > span::before {\\n\\t\\tdisplay: none;\\n\\t}\\n\\n\\t/* Mouse feedback */\\n\\t&:hover,\\n\\tinput.multiselect__input {\\n\\t\\t.multiselect__placeholder {\\n\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t}\\n\\t}\\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\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: math.div($clickable-area - $icon-size, 2);\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\\n// top-bar spacing\\n$topbar-margin: 4px;\\n\\n// navigation spacing\\n$app-navigation-settings-margin: 3px;\\n\"],sourceRoot:\"\"}]);const s=a},8384:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-tooltip.v-popper__popper{position:absolute;z-index:100000;top:0;right:auto;left:auto;display:block;margin:0;padding:0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{right:100%;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{left:100%;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity .15s,visibility .15s;opacity:0}.v-popper--theme-tooltip.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity .15s;opacity:1}.v-popper--theme-tooltip .v-popper__inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.v-popper--theme-tooltip .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/directives/Tooltip/index.scss\"],names:[],mappings:\"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCSA,0CACC,iBAAA,CACA,cAAA,CACA,KAAA,CACA,UAAA,CACA,SAAA,CACA,aAAA,CACA,QAAA,CACA,SAAA,CACA,eAAA,CACA,gBAAA,CACA,SAAA,CACA,eAAA,CAEA,eAAA,CACA,sDAAA,CAGA,iGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAID,oGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAID,mGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAID,kGACC,SAAA,CACA,oBAAA,CACA,8CAAA,CAID,4DACC,iBAAA,CACA,uCAAA,CACA,SAAA,CAED,6DACC,kBAAA,CACA,uBAAA,CACA,SAAA,CAKF,0CACC,eAAA,CACA,eAAA,CACA,iBAAA,CACA,4BAAA,CACA,kCAAA,CACA,6CAAA,CAID,oDACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBAhFY\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n/**\\n* @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\\n* @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\\n* @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\\n* @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\\n* @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\\n*\\n* Bootstrap (http://getbootstrap.com)\\n* SCSS copied from version 3.3.5\\n* Copyright 2011-2015 Twitter, Inc.\\n* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\\n*/\\n\\n$arrow-width: 10px;\\n\\n.v-popper--theme-tooltip {\\n\\t&.v-popper__popper {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 100000;\\n\\t\\ttop: 0;\\n\\t\\tright: auto;\\n\\t\\tleft: auto;\\n\\t\\tdisplay: block;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\ttext-align: left;\\n\\t\\ttext-align: start;\\n\\t\\topacity: 0;\\n\\t\\tline-height: 1.6;\\n\\n\\t\\tline-break: auto;\\n\\t\\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\\n\\n\\t\\t// TOP\\n\\t\\t&[data-popper-placement^='top'] .v-popper__arrow-container {\\n\\t\\t\\tbottom: -$arrow-width;\\n\\t\\t\\tborder-bottom-width: 0;\\n\\t\\t\\tborder-top-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t// BOTTOM\\n\\t\\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\\n\\t\\t\\ttop: -$arrow-width;\\n\\t\\t\\tborder-top-width: 0;\\n\\t\\t\\tborder-bottom-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t// RIGHT\\n\\t\\t&[data-popper-placement^='right'] .v-popper__arrow-container {\\n\\t\\t\\tright: 100%;\\n\\t\\t\\tborder-left-width: 0;\\n\\t\\t\\tborder-right-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t// LEFT\\n\\t\\t&[data-popper-placement^='left'] .v-popper__arrow-container {\\n\\t\\t\\tleft: 100%;\\n\\t\\t\\tborder-right-width: 0;\\n\\t\\t\\tborder-left-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t// HIDDEN / SHOWN\\n\\t\\t&[aria-hidden='true'] {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t\\ttransition: opacity .15s, visibility .15s;\\n\\t\\t\\topacity: 0;\\n\\t\\t}\\n\\t\\t&[aria-hidden='false'] {\\n\\t\\t\\tvisibility: visible;\\n\\t\\t\\ttransition: opacity .15s;\\n\\t\\t\\topacity: 1;\\n\\t\\t}\\n\\t}\\n\\n\\t// CONTENT\\n\\t.v-popper__inner {\\n\\t\\tmax-width: 350px;\\n\\t\\tpadding: 5px 8px;\\n\\t\\ttext-align: center;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t}\\n\\n\\t// ARROW\\n\\t.v-popper__arrow-container {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 1;\\n\\t\\twidth: 0;\\n\\t\\theight: 0;\\n\\t\\tmargin: 0;\\n\\t\\tborder-style: solid;\\n\\t\\tborder-color: transparent;\\n\\t\\tborder-width: $arrow-width;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},9286:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-3e2a42f5]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-items[data-v-3e2a42f5]{display:flex;align-items:center}.action-items>button[data-v-3e2a42f5]{margin-right:7px}.action-item[data-v-3e2a42f5]{--open-background-color: var(--color-background-hover, $action-background-hover);position:relative;display:inline-block}.action-item.action-item--primary[data-v-3e2a42f5]{--open-background-color: var(--color-primary-element-hover)}.action-item.action-item--secondary[data-v-3e2a42f5]{--open-background-color: var(--color-primary-element-light-hover)}.action-item.action-item--error[data-v-3e2a42f5]{--open-background-color: var(--color-error-hover)}.action-item.action-item--warning[data-v-3e2a42f5]{--open-background-color: var(--color-warning-hover)}.action-item.action-item--success[data-v-3e2a42f5]{--open-background-color: var(--color-success-hover)}.action-item.action-item--tertiary-no-background[data-v-3e2a42f5]{--open-background-color: transparent}.action-item.action-item--open .action-item__menutoggle[data-v-3e2a42f5]{background-color:var(--open-background-color)}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcActions/NcActions.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,+BACC,YAAA,CACA,kBAAA,CAGA,sCACC,gBAAA,CAIF,8BACC,gFAAA,CACA,iBAAA,CACA,oBAAA,CAEA,mDACC,2DAAA,CAGD,qDACC,iEAAA,CAGD,iDACC,iDAAA,CAGD,mDACC,mDAAA,CAGD,mDACC,mDAAA,CAGD,kEACC,oCAAA,CAGD,yEACC,6CAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n// Inline buttons\\n.action-items {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\n\\t// Spacing between buttons\\n\\t& > button {\\n\\t\\tmargin-right: math.div($icon-margin, 2);\\n\\t}\\n}\\n\\n.action-item {\\n\\t--open-background-color: var(--color-background-hover, $action-background-hover);\\n\\tposition: relative;\\n\\tdisplay: inline-block;\\n\\n\\t&.action-item--primary {\\n\\t\\t--open-background-color: var(--color-primary-element-hover);\\n\\t}\\n\\n\\t&.action-item--secondary {\\n\\t\\t--open-background-color: var(--color-primary-element-light-hover);\\n\\t}\\n\\n\\t&.action-item--error {\\n\\t\\t--open-background-color: var(--color-error-hover);\\n\\t}\\n\\n\\t&.action-item--warning {\\n\\t\\t--open-background-color: var(--color-warning-hover);\\n\\t}\\n\\n\\t&.action-item--success {\\n\\t\\t--open-background-color: var(--color-success-hover);\\n\\t}\\n\\n\\t&.action-item--tertiary-no-background {\\n\\t\\t--open-background-color: transparent;\\n\\t}\\n\\n\\t&.action-item--open .action-item__menutoggle {\\n\\t\\tbackground-color: var(--open-background-color);\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},2377:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper{border-radius:var(--border-radius-large);overflow:hidden}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner{border-radius:var(--border-radius-large);padding:4px;max-height:calc(50vh - 16px);overflow:auto}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcActions/NcActions.vue\"],names:[],mappings:\"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCJD,kFACC,wCAAA,CACA,eAAA,CAEA,mGACC,wCAAA,CACA,WAAA,CACA,4BAAA,CACA,aAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n// We overwrote the popover base class, so we can style\\n// the popover__inner for actions only.\\n.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper {\\n\\tborder-radius: var(--border-radius-large);\\n\\toverflow:hidden;\\n\\n\\t.v-popper__inner {\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tpadding: 4px;\\n\\t\\tmax-height: calc(50vh - 16px);\\n\\t\\toverflow: auto;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},2242:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>f});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o),s=n(1667),l=n.n(s),c=new URL(n(3423),n.b),u=new URL(n(2605),n.b),d=new URL(n(7127),n.b),p=a()(r()),A=l()(c),m=l()(u),h=l()(d);p.push([t.id,\".material-design-icon[data-v-f73be20c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.avatardiv[data-v-f73be20c]{position:relative;display:inline-block;width:var(--size);height:var(--size)}.avatardiv--unknown[data-v-f73be20c]{position:relative;background-color:var(--color-main-background)}.avatardiv[data-v-f73be20c]:not(.avatardiv--unknown){background-color:var(--color-main-background) !important;box-shadow:0 0 5px rgba(0,0,0,.05) inset}.avatardiv--with-menu[data-v-f73be20c]{cursor:pointer}.avatardiv--with-menu[data-v-f73be20c] .v-popper{position:absolute;top:0;left:0}.avatardiv--with-menu .icon-more[data-v-f73be20c]{cursor:pointer;opacity:0}.avatardiv--with-menu:focus .icon-more[data-v-f73be20c],.avatardiv--with-menu:hover .icon-more[data-v-f73be20c]{opacity:1}.avatardiv--with-menu:focus img[data-v-f73be20c],.avatardiv--with-menu:hover img[data-v-f73be20c]{opacity:.3}.avatardiv--with-menu .icon-more[data-v-f73be20c],.avatardiv--with-menu img[data-v-f73be20c]{transition:opacity var(--animation-quick)}.avatardiv .avatardiv__initials-wrapper[data-v-f73be20c]{height:var(--size);width:var(--size);background-color:var(--color-main-background);border-radius:50%}.avatardiv .avatardiv__initials-wrapper .unknown[data-v-f73be20c]{position:absolute;top:0;left:0;display:block;width:100%;text-align:center;font-weight:normal}.avatardiv img[data-v-f73be20c]{width:100%;height:100%;object-fit:cover}.avatardiv .material-design-icon[data-v-f73be20c]{width:var(--size);height:var(--size)}.avatardiv .avatardiv__user-status[data-v-f73be20c]{position:absolute;right:-4px;bottom:-4px;max-height:18px;max-width:18px;height:40%;width:40%;line-height:15px;font-size:var(--default-font-size);border:2px solid var(--color-main-background);background-color:var(--color-main-background);background-repeat:no-repeat;background-size:16px;background-position:center;border-radius:50%}.acli:hover .avatardiv .avatardiv__user-status[data-v-f73be20c]{border-color:var(--color-background-hover);background-color:var(--color-background-hover)}.acli.active .avatardiv .avatardiv__user-status[data-v-f73be20c]{border-color:var(--color-primary-element-light);background-color:var(--color-primary-element-light)}.avatardiv .avatardiv__user-status--online[data-v-f73be20c]{background-image:url(\"+A+\")}.avatardiv .avatardiv__user-status--dnd[data-v-f73be20c]{background-image:url(\"+m+\");background-color:#fff}.avatardiv .avatardiv__user-status--away[data-v-f73be20c]{background-image:url(\"+h+\")}.avatardiv .avatardiv__user-status--icon[data-v-f73be20c]{border:none;background-color:rgba(0,0,0,0)}.avatardiv .popovermenu-wrapper[data-v-f73be20c]{position:relative;display:inline-block}.avatar-class-icon[data-v-f73be20c]{border-radius:50%;background-color:var(--color-background-darker);height:100%}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcAvatar/NcAvatar.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,4BACC,iBAAA,CACA,oBAAA,CACA,iBAAA,CACA,kBAAA,CAEA,qCACC,iBAAA,CACA,6CAAA,CAGD,qDAEC,wDAAA,CACA,wCAAA,CAGD,uCACC,cAAA,CACA,iDACC,iBAAA,CACA,KAAA,CACA,MAAA,CAED,kDACC,cAAA,CACA,SAAA,CAIA,gHACC,SAAA,CAED,kGACC,UAAA,CAGF,6FAEC,yCAAA,CAIF,yDACC,kBAAA,CACA,iBAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kEACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,aAAA,CACA,UAAA,CACA,iBAAA,CACA,kBAAA,CAIF,gCAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CAGD,kDACC,iBAAA,CACA,kBAAA,CAGD,oDACC,iBAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CACA,cAAA,CACA,UAAA,CACA,SAAA,CACA,gBAAA,CACA,kCAAA,CACA,6CAAA,CACA,6CAAA,CACA,2BAAA,CACA,oBAAA,CACA,0BAAA,CACA,iBAAA,CAEA,gEACC,0CAAA,CACA,8CAAA,CAED,iEACC,+CAAA,CACA,mDAAA,CAGD,4DACC,wDAAA,CAED,yDACC,wDAAA,CACA,qBAAA,CAED,0DACC,wDAAA,CAED,0DACC,WAAA,CACA,8BAAA,CAIF,iDACC,iBAAA,CACA,oBAAA,CAIF,oCACC,iBAAA,CACA,+CAAA,CACA,WAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.avatardiv {\\n\\tposition: relative;\\n\\tdisplay: inline-block;\\n\\twidth: var(--size);\\n\\theight: var(--size);\\n\\n\\t&--unknown {\\n\\t\\tposition: relative;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t}\\n\\n\\t&:not(&--unknown) {\\n\\t\\t// White/black background for avatars with transparency\\n\\t\\tbackground-color: var(--color-main-background) !important;\\n\\t\\tbox-shadow: 0 0 5px rgba(0, 0, 0, 0.05) inset;\\n\\t}\\n\\n\\t&--with-menu {\\n\\t\\tcursor: pointer;\\n\\t\\t:deep(.v-popper) {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t}\\n\\t\\t.icon-more {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\topacity: 0;\\n\\t\\t}\\n\\t\\t&:focus,\\n\\t\\t&:hover {\\n\\t\\t\\t.icon-more {\\n\\t\\t\\t\\topacity: 1;\\n\\t\\t\\t}\\n\\t\\t\\timg {\\n\\t\\t\\t\\topacity: 0.3;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t.icon-more,\\n\\t\\timg {\\n\\t\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\t}\\n\\t}\\n\\n\\t.avatardiv__initials-wrapper {\\n\\t\\theight: var(--size);\\n\\t\\twidth: var(--size);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tborder-radius: 50%;\\n\\n\\t\\t.unknown {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\ttext-align: center;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t}\\n\\t}\\n\\n\\timg {\\n\\t\\t// Cover entire area\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\t// Keep ratio\\n\\t\\tobject-fit: cover;\\n\\t}\\n\\n\\t.material-design-icon {\\n\\t\\twidth: var(--size);\\n\\t\\theight: var(--size);\\n\\t}\\n\\n\\t.avatardiv__user-status {\\n\\t\\tposition: absolute;\\n\\t\\tright: -4px;\\n\\t\\tbottom: -4px;\\n\\t\\tmax-height: 18px;\\n\\t\\tmax-width: 18px;\\n\\t\\theight: 40%;\\n\\t\\twidth: 40%;\\n\\t\\tline-height: 15px;\\n\\t\\tfont-size: var(--default-font-size);\\n\\t\\tborder: 2px solid var(--color-main-background);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tbackground-size: 16px;\\n\\t\\tbackground-position: center;\\n\\t\\tborder-radius: 50%;\\n\\n\\t\\t.acli:hover & {\\n\\t\\t\\tborder-color: var(--color-background-hover);\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\t\\t.acli.active & {\\n\\t\\t\\tborder-color: var(--color-primary-element-light);\\n\\t\\t\\tbackground-color: var(--color-primary-element-light);\\n\\t\\t}\\n\\n\\t\\t&--online{\\n\\t\\t\\tbackground-image: url('../../assets/status-icons/user-status-online.svg');\\n\\t\\t}\\n\\t\\t&--dnd{\\n\\t\\t\\tbackground-image: url('../../assets/status-icons/user-status-dnd.svg');\\n\\t\\t\\tbackground-color: #ffffff;\\n\\t\\t}\\n\\t\\t&--away{\\n\\t\\t\\tbackground-image: url('../../assets/status-icons/user-status-away.svg');\\n\\t\\t}\\n\\t\\t&--icon {\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t.popovermenu-wrapper {\\n\\t\\tposition: relative;\\n\\t\\tdisplay: inline-block;\\n\\t}\\n}\\n\\n.avatar-class-icon {\\n\\tborder-radius: 50%;\\n\\tbackground-color: var(--color-background-darker);\\n\\theight: 100%;\\n}\\n\\n\"],sourceRoot:\"\"}]);const f=p},1898:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-2e49be1e]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-2e49be1e]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-2e49be1e],.button-vue span[data-v-2e49be1e]{cursor:pointer}.button-vue[data-v-2e49be1e]:focus{outline:none}.button-vue[data-v-2e49be1e]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-2e49be1e]{cursor:default}.button-vue[data-v-2e49be1e]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-2e49be1e]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-2e49be1e]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-2e49be1e]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-2e49be1e]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-2e49be1e]{width:44px !important}.button-vue--text-only[data-v-2e49be1e]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-2e49be1e]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-2e49be1e]{padding:0 16px 0 4px}.button-vue--wide[data-v-2e49be1e]{width:100%}.button-vue[data-v-2e49be1e]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-2e49be1e]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-2e49be1e]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-2e49be1e]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-2e49be1e]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-2e49be1e]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-2e49be1e]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-2e49be1e]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-2e49be1e]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-2e49be1e]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-2e49be1e]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-2e49be1e]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-2e49be1e]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-2e49be1e]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-2e49be1e]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-2e49be1e]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-2e49be1e]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-2e49be1e]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-2e49be1e]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-2e49be1e]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-2e49be1e]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-2e49be1e]:active{background-color:var(--color-error)}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcButton/NcButton.vue\",\"webpack://./src/assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n.button-vue {\\n\\tposition: relative;\\n\\twidth: fit-content;\\n\\toverflow: hidden;\\n\\tborder: 0;\\n\\tpadding: 0;\\n\\tfont-size: var(--default-font-size);\\n\\tfont-weight: bold;\\n\\tmin-height: $clickable-area;\\n\\tmin-width: $clickable-area;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\n\\t// Cursor pointer on element and all children\\n\\tcursor: pointer;\\n\\t& *,\\n\\tspan {\\n\\t\\tcursor: pointer;\\n\\t}\\n\\tborder-radius: math.div($clickable-area, 2);\\n\\ttransition-property: color, border-color, background-color;\\n\\ttransition-duration: 0.1s;\\n\\ttransition-timing-function: linear;\\n\\n\\t// No outline feedback for focus. Handled with a toggled class in js (see data)\\n\\t&:focus {\\n\\t\\toutline: none;\\n\\t}\\n\\n\\t&:disabled {\\n\\t\\tcursor: default;\\n\\t\\t& * {\\n\\t\\t\\tcursor: default;\\n\\t\\t}\\n\\t\\topacity: $opacity_disabled;\\n\\t\\t// Gives a wash out effect\\n\\t\\tfilter: saturate($opacity_normal);\\n\\t}\\n\\n\\t// Default button type\\n\\tcolor: var(--color-primary-element-light-text);\\n\\tbackground-color: var(--color-primary-element-light);\\n\\t&:hover:not(:disabled) {\\n\\t\\tbackground-color: var(--color-primary-element-light-hover);\\n\\t}\\n\\n\\t// Back to the default color for this button when active\\n\\t// TODO: add ripple effect\\n\\t&:active {\\n\\t\\tbackground-color: var(--color-primary-element-light);\\n\\t}\\n\\n\\t&__wrapper {\\n\\t\\tdisplay: inline-flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 100%;\\n\\t}\\n\\n\\t&__icon {\\n\\t\\theight: $clickable-area;\\n\\t\\twidth: $clickable-area;\\n\\t\\tmin-height: $clickable-area;\\n\\t\\tmin-width: $clickable-area;\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: center;\\n\\t\\talign-items: center;\\n\\t}\\n\\n\\t&__text {\\n\\t\\tfont-weight: bold;\\n\\t\\tmargin-bottom: 1px;\\n\\t\\tpadding: 2px 0;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\toverflow: hidden;\\n\\t}\\n\\n\\t// Icon-only button\\n\\t&--icon-only {\\n\\t\\twidth: $clickable-area !important;\\n\\t}\\n\\n\\t// Text-only button\\n\\t&--text-only {\\n\\t\\tpadding: 0 12px;\\n\\t\\t& .button-vue__text {\\n\\t\\t\\tmargin-left: 4px;\\n\\t\\t\\tmargin-right: 4px;\\n\\t\\t}\\n\\t}\\n\\n\\t// Icon and text button\\n\\t&--icon-and-text {\\n\\t\\tpadding: 0 16px 0 4px;\\n\\t}\\n\\n\\t// Wide button spans the whole width of the container\\n\\t&--wide {\\n\\t\\twidth: 100%;\\n\\t}\\n\\n\\t&:focus-visible {\\n\\t\\toutline: 2px solid var(--color-main-text) !important;\\n\\t\\t&.button-vue--vue-tertiary-on-primary {\\n\\t\\t\\toutline: 2px solid var(--color-primary-element-text);\\n\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// Button types\\n\\n\\t// Primary\\n\\t&--vue-primary {\\n\\t\\tbackground-color: var(--color-primary-element);\\n\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\t&:hover:not(:disabled) {\\n\\t\\t\\tbackground-color: var(--color-primary-element-hover);\\n\\t\\t}\\n\\t\\t// Back to the default color for this button when active\\n\\t\\t// TODO: add ripple effect\\n\\t\\t&:active {\\n\\t\\t\\tbackground-color: var(--color-primary-element);\\n\\t\\t}\\n\\t}\\n\\n\\t// Secondary\\n\\t&--vue-secondary {\\n\\t\\tcolor: var(--color-primary-element-light-text);\\n\\t\\tbackground-color: var(--color-primary-element-light);\\n\\t\\t&:hover:not(:disabled) {\\n\\t\\t\\tcolor: var(--color-primary-element-light-text);\\n\\t\\t\\tbackground-color: var(--color-primary-element-light-hover);\\n\\t\\t}\\n\\t}\\n\\n\\t// Tertiary\\n\\t&--vue-tertiary {\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tbackground-color: transparent;\\n\\t\\t&:hover:not(:disabled) {\\n\\t\\t\\tbackground-color: var(--color);\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\t}\\n\\n\\t// Tertiary, no background\\n\\t&--vue-tertiary-no-background {\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tbackground-color: transparent;\\n\\t\\t&:hover:not(:disabled) {\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// Tertiary on primary color (like the header)\\n\\t&--vue-tertiary-on-primary {\\n\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\tbackground-color: transparent;\\n\\n\\t\\t&:hover:not(:disabled) {\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// Success\\n\\t&--vue-success {\\n\\t\\tbackground-color: var(--color-success);\\n\\t\\tcolor: white;\\n\\t\\t&:hover:not(:disabled) {\\n\\t\\t\\tbackground-color: var(--color-success-hover);\\n\\t\\t}\\n\\t\\t// Back to the default color for this button when active\\n\\t\\t// : add ripple effect\\n\\t\\t&:active {\\n\\t\\t\\tbackground-color: var(--color-success);\\n\\t\\t}\\n\\t}\\n\\n\\t// Warning\\n\\t&--vue-warning {\\n\\t\\tbackground-color: var(--color-warning);\\n\\t\\tcolor: white;\\n\\t\\t&:hover:not(:disabled) {\\n\\t\\t\\tbackground-color: var(--color-warning-hover);\\n\\t\\t}\\n\\t\\t// Back to the default color for this button when active\\n\\t\\t// TODO: add ripple effect\\n\\t\\t&:active {\\n\\t\\t\\tbackground-color: var(--color-warning);\\n\\t\\t}\\n\\t}\\n\\n\\t// Error\\n\\t&--vue-error {\\n\\t\\tbackground-color: var(--color-error);\\n\\t\\tcolor: white;\\n\\t\\t&:hover:not(:disabled) {\\n\\t\\t\\tbackground-color: var(--color-error-hover);\\n\\t\\t}\\n\\t\\t// Back to the default color for this button when active\\n\\t\\t// TODO: add ripple effect\\n\\t\\t&:active {\\n\\t\\t\\tbackground-color: var(--color-error);\\n\\t\\t}\\n\\t}\\n}\\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\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: math.div($clickable-area - $icon-size, 2);\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\\n// top-bar spacing\\n$topbar-margin: 4px;\\n\\n// navigation spacing\\n$app-navigation-settings-margin: 3px;\\n\"],sourceRoot:\"\"}]);const s=a},436:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-3daafbe0]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.name-parts[data-v-3daafbe0]{display:flex;max-width:100%;cursor:inherit}.name-parts__first[data-v-3daafbe0]{overflow:hidden;text-overflow:ellipsis}.name-parts__first[data-v-3daafbe0],.name-parts__last[data-v-3daafbe0]{white-space:pre;cursor:inherit}.name-parts__first strong[data-v-3daafbe0],.name-parts__last strong[data-v-3daafbe0]{font-weight:bold}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcEllipsisedOption/NcEllipsisedOption.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,6BACC,YAAA,CACA,cAAA,CACA,cAAA,CACA,oCACC,eAAA,CACA,sBAAA,CAED,uEAGC,eAAA,CACA,cAAA,CACA,qFACC,gBAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.name-parts {\\n\\tdisplay: flex;\\n\\tmax-width: 100%;\\n\\tcursor: inherit;\\n\\t&__first {\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n\\t&__first,\\n\\t&__last {\\n\\t\\t// prevent whitespace from being trimmed\\n\\t\\twhite-space: pre;\\n\\t\\tcursor: inherit;\\n\\t\\tstrong {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},3300:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-04d732c3]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.empty-content[data-v-04d732c3]{display:flex;align-items:center;flex-direction:column;margin-top:20vh}.modal-wrapper .empty-content[data-v-04d732c3]{margin-top:5vh;margin-bottom:5vh}.empty-content__icon[data-v-04d732c3]{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 15px;opacity:.4;background-repeat:no-repeat;background-position:center;background-size:64px}.empty-content__icon[data-v-04d732c3] svg{width:64px;height:64px}.empty-content__title[data-v-04d732c3]{margin-bottom:10px;text-align:center}.empty-content__action[data-v-04d732c3]{margin-top:8px}.modal-wrapper .empty-content__action[data-v-04d732c3]{margin-top:20px;display:flex}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcEmptyContent/NcEmptyContent.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,gCACC,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,eAAA,CAEA,+CACC,cAAA,CACA,iBAAA,CAGD,sCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kBAAA,CACA,UAAA,CACA,2BAAA,CACA,0BAAA,CACA,oBAAA,CAEA,0CACC,UAAA,CACA,WAAA,CAIF,uCACC,kBAAA,CACA,iBAAA,CAGD,wCACC,cAAA,CAEA,uDACC,eAAA,CACA,YAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.empty-content {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tflex-direction: column;\\n\\tmargin-top: 20vh;\\n\\n\\t.modal-wrapper & {\\n\\t\\tmargin-top: 5vh;\\n\\t\\tmargin-bottom: 5vh;\\n\\t}\\n\\n\\t&__icon {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 64px;\\n\\t\\theight: 64px;\\n\\t\\tmargin: 0 auto 15px;\\n\\t\\topacity: .4;\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tbackground-position: center;\\n\\t\\tbackground-size: 64px;\\n\\n\\t\\t:deep(svg) {\\n\\t\\t\\twidth: 64px;\\n\\t\\t\\theight: 64px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__title {\\n\\t\\tmargin-bottom: 10px;\\n\\t\\ttext-align: center;\\n\\t}\\n\\n\\t&__action {\\n\\t\\tmargin-top: 8px;\\n\\n\\t\\t.modal-wrapper & {\\n\\t\\t\\tmargin-top: 20px;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},5635:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-5bf5fa74]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.icon-vue[data-v-5bf5fa74]{display:flex;justify-content:center;align-items:center;width:44px;height:44px;opacity:1}.icon-vue[data-v-5bf5fa74] svg{fill:currentColor;max-width:20px;max-height:20px}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcIconSvgWrapper/NcIconSvgWrapper.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,2BACC,YAAA,CACA,sBAAA,CACA,kBAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CAEA,+BACC,iBAAA,CACA,cAAA,CACA,eAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.icon-vue {\\n\\tdisplay: flex;\\n\\tjustify-content: center;\\n\\talign-items: center;\\n\\twidth: 44px;\\n\\theight: 44px;\\n\\topacity: 1;\\n\\n\\t&:deep(svg) {\\n\\t\\tfill: currentColor;\\n\\t\\tmax-width: 20px;\\n\\t\\tmax-height: 20px;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},847:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-f50b337c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.input-field[data-v-f50b337c]{position:relative;width:100%;border-radius:var(--border-radius-large)}.input-field__main-wrapper[data-v-f50b337c]{height:36px;position:relative}.input-field__input[data-v-f50b337c]{margin:0;padding:0 12px;font-size:var(--default-font-size);background-color:var(--color-main-background);color:var(--color-main-text);border:2px solid var(--color-border-maxcontrast);height:36px !important;border-radius:var(--border-radius-large);text-overflow:ellipsis;cursor:pointer;width:100%;-webkit-appearance:textfield !important;-moz-appearance:textfield !important}.input-field__input[data-v-f50b337c]:active:not([disabled]),.input-field__input[data-v-f50b337c]:hover:not([disabled]),.input-field__input[data-v-f50b337c]:focus:not([disabled]){border-color:var(--color-primary-element)}.input-field__input[data-v-f50b337c]:focus{cursor:text}.input-field__input[data-v-f50b337c]:focus-visible{box-shadow:unset !important}.input-field__input--success[data-v-f50b337c]{border-color:var(--color-success) !important}.input-field__input--success[data-v-f50b337c]:focus-visible{box-shadow:#f8fafc 0px 0px 0px 2px,var(--color-primary-element) 0px 0px 0px 4px,rgba(0,0,0,.05) 0px 1px 2px 0px}.input-field__input--error[data-v-f50b337c]{border-color:var(--color-error) !important}.input-field__input--error[data-v-f50b337c]:focus-visible{box-shadow:#f8fafc 0px 0px 0px 2px,var(--color-primary-element) 0px 0px 0px 4px,rgba(0,0,0,.05) 0px 1px 2px 0px}.input-field__input--leading-icon[data-v-f50b337c]{padding-left:28px}.input-field__input--trailing-icon[data-v-f50b337c]{padding-right:28px}.input-field__label[data-v-f50b337c]{padding:4px 0;display:block}.input-field__label--hidden[data-v-f50b337c]{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.input-field__icon[data-v-f50b337c]{position:absolute;height:32px;width:32px;display:flex;align-items:center;justify-content:center;opacity:.7}.input-field__icon--leading[data-v-f50b337c]{bottom:2px;left:2px}.input-field__icon--trailing[data-v-f50b337c]{bottom:2px;right:2px}.input-field__clear-button.button-vue[data-v-f50b337c]{position:absolute;top:2px;right:1px;min-width:unset;min-height:unset;height:32px;width:32px !important;border-radius:var(--border-radius-large)}.input-field__helper-text-message[data-v-f50b337c]{padding:4px 0;display:flex;align-items:center}.input-field__helper-text-message__icon[data-v-f50b337c]{margin-right:8px;align-self:start;margin-top:4px}.input-field__helper-text-message--error[data-v-f50b337c]{color:var(--color-error)}.input-field__helper-text-message--success[data-v-f50b337c]{color:var(--color-success)}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcInputField/NcInputField.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,8BACC,iBAAA,CACA,UAAA,CACA,wCAAA,CAEA,4CACC,WAAA,CACA,iBAAA,CAGD,qCACC,QAAA,CACA,cAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,gDAAA,CACA,sBAAA,CACA,wCAAA,CACA,sBAAA,CACA,cAAA,CACA,UAAA,CACA,uCAAA,CACA,oCAAA,CAEA,kLAGC,yCAAA,CAGD,2CACC,WAAA,CAGD,mDACC,2BAAA,CAGD,8CACC,4CAAA,CACA,4DACC,+GAAA,CAIF,4CACC,0CAAA,CACA,0DACC,+GAAA,CAIF,mDACC,iBAAA,CAGD,oDACC,kBAAA,CAIF,qCACC,aAAA,CACA,aAAA,CAEA,6CACC,iBAAA,CACA,aAAA,CACA,QAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAIF,oCACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,6CACC,UAAA,CACA,QAAA,CAGD,8CACC,UAAA,CACA,SAAA,CAIF,uDACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,eAAA,CACA,gBAAA,CACA,WAAA,CACA,qBAAA,CACA,wCAAA,CAGD,mDACC,aAAA,CACA,YAAA,CACA,kBAAA,CAEA,yDACC,gBAAA,CACA,gBAAA,CACA,cAAA,CAGD,0DACC,wBAAA,CAGD,4DACC,0BAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n.input-field {\\n\\tposition: relative;\\n\\twidth: 100%;\\n\\tborder-radius: var(--border-radius-large);\\n\\n\\t&__main-wrapper {\\n\\t\\theight: 36px;\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t&__input {\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0 12px;\\n\\t\\tfont-size: var(--default-font-size);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 2px solid var(--color-border-maxcontrast);\\n\\t\\theight: 36px !important;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tcursor: pointer;\\n\\t\\twidth: 100%;\\n\\t\\t-webkit-appearance: textfield !important;\\n\\t\\t-moz-appearance: textfield !important;\\n\\n\\t\\t&:active:not([disabled]),\\n\\t\\t&:hover:not([disabled]),\\n\\t\\t&:focus:not([disabled]) {\\n\\t\\t\\tborder-color: var(--color-primary-element);\\n\\t\\t}\\n\\n\\t\\t&:focus {\\n\\t\\t\\tcursor: text;\\n\\t\\t}\\n\\n\\t\\t&:focus-visible {\\n\\t\\t\\tbox-shadow: unset !important; // Override server rules\\n\\t\\t}\\n\\n\\t\\t&--success {\\n\\t\\t\\tborder-color: var(--color-success) !important; //Override hover border color\\n\\t\\t\\t&:focus-visible {\\n\\t\\t\\t\\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--error {\\n\\t\\t\\tborder-color: var(--color-error) !important; //Override hover border color\\n\\t\\t\\t&:focus-visible {\\n\\t\\t\\t\\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--leading-icon {\\n\\t\\t\\tpadding-left: 28px;\\n\\t\\t}\\n\\n\\t\\t&--trailing-icon {\\n\\t\\t\\tpadding-right: 28px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__label {\\n\\t\\tpadding: 4px 0;\\n\\t\\tdisplay: block;\\n\\n\\t\\t&--hidden {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tleft: -10000px;\\n\\t\\t\\ttop: auto;\\n\\t\\t\\twidth: 1px;\\n\\t\\t\\theight: 1px;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t}\\n\\t}\\n\\n\\t&__icon {\\n\\t\\tposition: absolute;\\n\\t\\theight: 32px;\\n\\t\\twidth: 32px;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\topacity: 0.7;\\n\\t\\t&--leading {\\n\\t\\t\\tbottom: 2px;\\n\\t\\t\\tleft: 2px;\\n\\t\\t}\\n\\n\\t\\t&--trailing {\\n\\t\\t\\tbottom: 2px;\\n\\t\\t\\tright: 2px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__clear-button.button-vue {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 2px;\\n\\t\\tright: 1px;\\n\\t\\tmin-width: unset;\\n\\t\\tmin-height: unset;\\n\\t\\theight: 32px;\\n\\t\\twidth: 32px !important;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t}\\n\\n\\t&__helper-text-message {\\n\\t\\tpadding: 4px 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\n\\t\\t&__icon {\\n\\t\\t\\tmargin-right: 8px;\\n\\t\\t\\talign-self: start;\\n\\t\\t\\tmargin-top: 4px;\\n\\t\\t}\\n\\n\\t\\t&--error {\\n\\t\\t\\tcolor: var(--color-error);\\n\\t\\t}\\n\\n\\t\\t&--success {\\n\\t\\t\\tcolor: var(--color-success);\\n\\t\\t}\\n\\t}\\n}\\n\\n\"],sourceRoot:\"\"}]);const s=a},808:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-4f3daf70]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.option[data-v-4f3daf70]{display:flex;align-items:center;width:100%;height:var(--height);cursor:inherit}.option__avatar[data-v-4f3daf70]{margin-right:var(--margin)}.option__details[data-v-4f3daf70]{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0}.option__lineone[data-v-4f3daf70]{color:var(--color-main-text)}.option__linetwo[data-v-4f3daf70]{color:var(--color-text-maxcontrast)}.option__lineone[data-v-4f3daf70],.option__linetwo[data-v-4f3daf70]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:1.1em}.option__lineone strong[data-v-4f3daf70],.option__linetwo strong[data-v-4f3daf70]{font-weight:bold}.option__icon[data-v-4f3daf70]{width:44px;height:44px;color:var(--color-text-maxcontrast)}.option__icon.icon[data-v-4f3daf70]{flex:0 0 44px;opacity:.7;background-position:center;background-size:16px}.option__details[data-v-4f3daf70],.option__lineone[data-v-4f3daf70],.option__linetwo[data-v-4f3daf70],.option__icon[data-v-4f3daf70]{cursor:inherit}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcListItemIcon/NcListItemIcon.vue\",\"webpack://./src/assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,yBACC,YAAA,CACA,kBAAA,CACA,UAAA,CACA,oBAAA,CACA,cAAA,CAEA,iCACC,0BAAA,CAGD,kCACC,YAAA,CACA,QAAA,CACA,qBAAA,CACA,sBAAA,CACA,WAAA,CAGD,kCACC,4BAAA,CAGD,kCACC,mCAAA,CAGD,oEAEC,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,iBAAA,CACA,kFACC,gBAAA,CAIF,+BACC,UChBe,CDiBf,WCjBe,CDkBf,mCAAA,CACA,oCACC,aAAA,CACA,UCHc,CDId,0BAAA,CACA,oBAAA,CAIF,qIAIC,cAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.option {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\twidth: 100%;\\n\\theight: var(--height);\\n\\tcursor: inherit;\\n\\n\\t&__avatar {\\n\\t\\tmargin-right: var(--margin);\\n\\t}\\n\\n\\t&__details {\\n\\t\\tdisplay: flex;\\n\\t\\tflex: 1 1;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\tmin-width: 0;\\n\\t}\\n\\n\\t&__lineone {\\n\\t\\tcolor: var(--color-main-text);\\n\\t}\\n\\n\\t&__linetwo {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n\\n\\t&__lineone,\\n\\t&__linetwo {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tline-height: 1.1em;\\n\\t\\tstrong {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t}\\n\\t}\\n\\n\\t&__icon {\\n\\t\\twidth: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t&.icon {\\n\\t\\t\\tflex: 0 0 $clickable-area;\\n\\t\\t\\topacity: $opacity_normal;\\n\\t\\t\\tbackground-position: center;\\n\\t\\t\\tbackground-size: 16px;\\n\\t\\t}\\n\\t}\\n\\n\\t&__details,\\n\\t&__lineone,\\n\\t&__linetwo,\\n\\t&__icon {\\n\\t\\tcursor: inherit;\\n\\t}\\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\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: math.div($clickable-area - $icon-size, 2);\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\\n// top-bar spacing\\n$topbar-margin: 4px;\\n\\n// navigation spacing\\n$app-navigation-settings-margin: 3px;\\n\"],sourceRoot:\"\"}]);const s=a},5030:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-c4a9cada]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.loading-icon svg[data-v-c4a9cada]{animation:rotate var(--animation-duration, 0.8s) linear infinite}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcLoadingIcon/NcLoadingIcon.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,mCACC,gEAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.loading-icon svg{\\n\\tanimation: rotate var(--animation-duration, 0.8s) linear infinite;\\n}\\n\"],sourceRoot:\"\"}]);const s=a},4167:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,'.material-design-icon[data-v-1350db4f]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-1350db4f]{position:fixed;z-index:9998;top:0;left:0;display:block;width:100%;height:100%;background-color:rgba(0,0,0,.5)}.modal-mask--dark[data-v-1350db4f]{background-color:rgba(0,0,0,.92)}.modal-header[data-v-1350db4f]{position:absolute;z-index:10001;top:0;right:0;left:0;display:flex !important;align-items:center;justify-content:center;width:100%;height:50px;overflow:hidden;transition:opacity 250ms,visibility 250ms}.modal-header.invisible[style*=\"display:none\"][data-v-1350db4f],.modal-header.invisible[style*=\"display: none\"][data-v-1350db4f]{visibility:hidden}.modal-header .modal-title[data-v-1350db4f]{overflow-x:hidden;box-sizing:border-box;width:100%;padding:0 132px 0 12px;transition:padding ease 100ms;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:14px;margin-bottom:0}@media only screen and (min-width: 1024px){.modal-header .modal-title[data-v-1350db4f]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-1350db4f]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-1350db4f]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;margin:3px;padding:0}.modal-header .icons-menu .play-pause-icons[data-v-1350db4f]{position:relative;width:50px;height:50px;margin:0;padding:0;cursor:pointer;border:none;background-color:rgba(0,0,0,0)}.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__play[data-v-1350db4f],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-1350db4f],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-1350db4f],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-1350db4f]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-1350db4f],.modal-header .icons-menu .play-pause-icons__pause[data-v-1350db4f]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-1350db4f]{color:#fff}.modal-header .icons-menu[data-v-1350db4f] .action-item{margin:3px}.modal-header .icons-menu[data-v-1350db4f] .action-item--single{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-1350db4f] button{color:#fff}.modal-header .icons-menu[data-v-1350db4f] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-1350db4f] .action-item__menutoggle span,.modal-header .icons-menu[data-v-1350db4f] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-1350db4f]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-1350db4f],.modal-wrapper .next[data-v-1350db4f]{z-index:10000;display:flex !important;height:35vw;position:absolute;transition:opacity 250ms,visibility 250ms;color:var(--color-primary-element-text)}.modal-wrapper .prev[data-v-1350db4f]:focus-visible,.modal-wrapper .next[data-v-1350db4f]:focus-visible{box-shadow:0 0 0 2px var(--color-primary-element-text);background-color:var(--color-box-shadow)}.modal-wrapper .prev.invisible[style*=\"display:none\"][data-v-1350db4f],.modal-wrapper .prev.invisible[style*=\"display: none\"][data-v-1350db4f],.modal-wrapper .next.invisible[style*=\"display:none\"][data-v-1350db4f],.modal-wrapper .next.invisible[style*=\"display: none\"][data-v-1350db4f]{visibility:hidden}.modal-wrapper .prev[data-v-1350db4f]{left:2px}.modal-wrapper .next[data-v-1350db4f]{right:2px}.modal-wrapper .modal-container[data-v-1350db4f]{position:relative;display:block;overflow:auto;padding:0;transition:transform 300ms ease;border-radius:var(--border-radius-large);background-color:var(--color-main-background);box-shadow:0 0 40px rgba(0,0,0,.2)}.modal-wrapper .modal-container__close[data-v-1350db4f]{position:absolute;top:4px;right:4px}.modal-wrapper--small .modal-container[data-v-1350db4f]{width:400px;max-width:90%;max-height:90%}.modal-wrapper--normal .modal-container[data-v-1350db4f]{max-width:90%;width:600px;max-height:90%}.modal-wrapper--large .modal-container[data-v-1350db4f]{max-width:90%;width:900px;max-height:90%}.modal-wrapper--full .modal-container[data-v-1350db4f]{width:100%;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}@media only screen and (max-width: 512px){.modal-wrapper .modal-container[data-v-1350db4f]{max-width:initial;width:100%;max-height:initial;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}}.fade-enter-active[data-v-1350db4f],.fade-leave-active[data-v-1350db4f]{transition:opacity 250ms}.fade-enter[data-v-1350db4f],.fade-leave-to[data-v-1350db4f]{opacity:0}.fade-visibility-enter[data-v-1350db4f],.fade-visibility-leave-to[data-v-1350db4f]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-1350db4f],.modal-in-leave-active[data-v-1350db4f],.modal-out-enter-active[data-v-1350db4f],.modal-out-leave-active[data-v-1350db4f]{transition:opacity 250ms}.modal-in-enter[data-v-1350db4f],.modal-in-leave-to[data-v-1350db4f],.modal-out-enter[data-v-1350db4f],.modal-out-leave-to[data-v-1350db4f]{opacity:0}.modal-in-enter .modal-container[data-v-1350db4f],.modal-in-leave-to .modal-container[data-v-1350db4f]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-1350db4f],.modal-out-leave-to .modal-container[data-v-1350db4f]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-1350db4f]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-1350db4f]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-1350db4f linear var(--slideshow-duration) infinite;stroke-linecap:round;stroke-dashoffset:94.2477796077;stroke-dasharray:94.2477796077}.modal-mask .play-pause-icons--paused .icon-pause[data-v-1350db4f]{animation:breath-1350db4f 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-1350db4f]{animation-play-state:paused !important}@keyframes progressring-1350db4f{from{stroke-dashoffset:94.2477796077}to{stroke-dashoffset:0}}@keyframes breath-1350db4f{0%{opacity:1}50%{opacity:0}100%{opacity:1}}',\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcModal/NcModal.vue\",\"webpack://./src/assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,cAAA,CACA,YAAA,CACA,KAAA,CACA,MAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,+BAAA,CACA,mCACC,gCAAA,CAIF,+BACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,OAAA,CACA,MAAA,CAGA,uBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WCuBe,CDtBf,eAAA,CACA,yCAAA,CAIA,iIAEC,iBAAA,CAGD,4CACC,iBAAA,CACA,qBAAA,CACA,UAAA,CACA,sBAAA,CACA,6BAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,cChBY,CDiBZ,eAAA,CAID,2CACC,4CACC,kBAAA,CACA,iBAAA,CAAA,CAIF,2CACC,iBAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,wBAAA,CAEA,yDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,qBAAA,CACA,UAAA,CACA,SAAA,CAGD,6DACC,iBAAA,CACA,UC3Ba,CD4Bb,WC5Ba,CD6Bb,QAAA,CACA,SAAA,CACA,cAAA,CACA,WAAA,CACA,8BAAA,CAGC,8WAEC,SC9CU,CD+CV,kBAAA,CACA,sCCxDW,CD2Db,uIAEC,qBAAA,CACA,UCzEa,CD0Eb,WC1Ea,CD2Eb,UAAA,CACA,cAAA,CACA,UC3Da,CD+Df,2DACC,UAAA,CAGD,yDACC,UAAA,CAEA,iEACC,qBAAA,CACA,UC1Fa,CD2Fb,WC3Fa,CD4Fb,cAAA,CACA,0BAAA,CACA,oBAAA,CAIF,kDAEC,UAAA,CAID,oEACC,SAAA,CACA,iJACC,sBAAA,CACA,uBAAA,CAMJ,gCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,qBAAA,CACA,UAAA,CACA,WAAA,CAGA,4EAEC,aAAA,CAEA,uBAAA,CACA,WAAA,CACA,iBAAA,CACA,yCAAA,CAEA,uCAAA,CAEA,wGAEC,sDAAA,CACA,wCAAA,CAOD,8RAEC,iBAAA,CAGF,sCACC,QAAA,CAED,sCACC,SAAA,CAID,iDACC,iBAAA,CACA,aAAA,CACA,aAAA,CACA,SAAA,CACA,+BAAA,CACA,wCAAA,CACA,6CAAA,CACA,kCAAA,CACA,wDACC,iBAAA,CACA,OAAA,CACA,SAAA,CAMD,wDACC,WAAA,CACA,aAAA,CACA,cAAA,CAID,yDACC,aAAA,CACA,WAAA,CACA,cAAA,CAID,wDACC,aAAA,CACA,WAAA,CACA,cAAA,CAID,uDACC,UAAA,CACA,wCAAA,CACA,iBAAA,CACA,QC7Ka,CD8Kb,eAAA,CAKF,0CACC,iDACC,iBAAA,CACA,UAAA,CACA,kBAAA,CACA,wCAAA,CACA,iBAAA,CACA,QC1La,CD2Lb,eAAA,CAAA,CAMH,wEAEC,wBAAA,CAGD,6DAEC,SAAA,CAGD,mFAEC,iBAAA,CACA,SAAA,CAGD,kKAIC,wBAAA,CAGD,4IAIC,SAAA,CAGD,uGAEC,oBAAA,CAGD,yGAEC,oBAAA,CAQA,8DACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CACA,qFACC,kCAAA,CACA,wBAAA,CACA,yEAAA,CAEA,oBAAA,CACA,+BAAA,CACA,8BAAA,CAID,mEACC,kEAAA,CAED,8EACC,sCAAA,CAMH,iCACC,KACC,+BAAA,CAED,GACC,mBAAA,CAAA,CAIF,2BACC,GACC,SAAA,CAED,IACC,SAAA,CAED,KACC,SAAA,CAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n.modal-mask {\\n\\tposition: fixed;\\n\\tz-index: 9998;\\n\\ttop: 0;\\n\\tleft: 0;\\n\\tdisplay: block;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tbackground-color: rgba(0, 0, 0, .5);\\n\\t&--dark {\\n\\t\\tbackground-color: rgba(0, 0, 0, .92);\\n\\t}\\n}\\n\\n.modal-header {\\n\\tposition: absolute;\\n\\tz-index: 10001;\\n\\ttop: 0;\\n\\tright: 0;\\n\\tleft: 0;\\n\\t// prevent vue show to use display:none and reseting\\n\\t// the circle animation loop\\n\\tdisplay: flex !important;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: 100%;\\n\\theight: $header-height;\\n\\toverflow: hidden;\\n\\ttransition: opacity 250ms,\\n\\t\\tvisibility 250ms;\\n\\n\\t// replace display by visibility\\n\\t&.invisible[style*='display:none'],\\n\\t&.invisible[style*='display: none'] {\\n\\t\\tvisibility: hidden;\\n\\t}\\n\\n\\t.modal-title {\\n\\t\\toverflow-x: hidden;\\n\\t\\tbox-sizing: border-box;\\n\\t\\twidth: 100%;\\n\\t\\tpadding: 0 #{$clickable-area * 3} 0 12px; // maximum actions is 3\\n\\t\\ttransition: padding ease 100ms;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tcolor: #fff;\\n\\t\\tfont-size: $icon-margin;\\n\\t\\tmargin-bottom: 0;\\n\\t}\\n\\n\\t// On wider screens the title can be centered\\n\\t@media only screen and (min-width: $breakpoint-mobile) {\\n\\t\\t.modal-title {\\n\\t\\t\\tpadding-left: #{$clickable-area * 3}; // maximum actions is 3\\n\\t\\t\\ttext-align: center;\\n\\t\\t}\\n\\t}\\n\\n\\t.icons-menu {\\n\\t\\tposition: absolute;\\n\\t\\tright: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: flex-end;\\n\\n\\t\\t.header-close {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tmargin: math.div($header-height - $clickable-area, 2);\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\n\\t\\t.play-pause-icons {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\twidth: $header-height;\\n\\t\\t\\theight: $header-height;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus {\\n\\t\\t\\t\\t.play-pause-icons__play,\\n\\t\\t\\t\\t.play-pause-icons__pause {\\n\\t\\t\\t\\t\\topacity: $opacity_full;\\n\\t\\t\\t\\t\\tborder-radius: math.div($clickable-area, 2);\\n\\t\\t\\t\\t\\tbackground-color: $icon-focus-bg;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t&__play,\\n\\t\\t\\t&__pause {\\n\\t\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\t\\theight: $clickable-area;\\n\\t\\t\\t\\tmargin: math.div($header-height - $clickable-area, 2);\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t\\topacity: $opacity_normal;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.header-actions {\\n\\t\\t\\tcolor: white;\\n\\t\\t}\\n\\n\\t\\t&:deep() .action-item {\\n\\t\\t\\tmargin: math.div($header-height - $clickable-area, 2);\\n\\n\\t\\t\\t&--single {\\n\\t\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\t\\theight: $clickable-area;\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t\\tbackground-position: center;\\n\\t\\t\\t\\tbackground-size: 22px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t:deep(button) {\\n\\t\\t\\t// force white instead of default main text\\n\\t\\t\\tcolor: #fff;\\n\\t\\t}\\n\\n\\t\\t// Force the Actions menu icon to be the same size as other icons\\n\\t\\t&:deep(.action-item__menutoggle) {\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tspan, svg {\\n\\t\\t\\t\\twidth: var(--icon-size);\\n\\t\\t\\t\\theight: var(--icon-size);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n.modal-wrapper {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\tbox-sizing: border-box;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\n\\t/* Navigation buttons */\\n\\t.prev,\\n\\t.next {\\n\\t\\tz-index: 10000;\\n\\t\\t// ignore display: none\\n\\t\\tdisplay: flex !important;\\n\\t\\theight: 35vw;\\n\\t\\tposition: absolute;\\n\\t\\ttransition: opacity 250ms,\\n\\t\\t\\tvisibility 250ms;\\n\\t\\tcolor: var(--color-primary-element-text);\\n\\n\\t\\t&:focus-visible {\\n\\t\\t\\t// Override NcButton focus styles\\n\\t\\t\\tbox-shadow: 0 0 0 2px var(--color-primary-element-text);\\n\\t\\t\\tbackground-color: var(--color-box-shadow);\\n\\t\\t}\\n\\n\\t\\t// we want to keep the elements on page\\n\\t\\t// even if hidden to avoid having a unbalanced\\n\\t\\t// centered content\\n\\t\\t// replace display by visibility\\n\\t\\t&.invisible[style*='display:none'],\\n\\t\\t&.invisible[style*='display: none'] {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t}\\n\\t}\\n\\t.prev {\\n\\t\\tleft: 2px;\\n\\t}\\n\\t.next {\\n\\t\\tright: 2px;\\n\\t}\\n\\n\\t/* Content */\\n\\t.modal-container {\\n\\t\\tposition: relative;\\n\\t\\tdisplay: block;\\n\\t\\toverflow: auto; // avoids unecessary hacks if the content should be bigger than the modal\\n\\t\\tpadding: 0;\\n\\t\\ttransition: transform 300ms ease;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tbox-shadow: 0 0 40px rgba(0, 0, 0, .2);\\n\\t\\t&__close {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 4px;\\n\\t\\t\\tright: 4px;\\n\\t\\t}\\n\\t}\\n\\n\\t// Sizing\\n\\t&--small {\\n\\t\\t.modal-container {\\n\\t\\t\\twidth: 400px;\\n\\t\\t\\tmax-width: 90%;\\n\\t\\t\\tmax-height: 90%;\\n\\t\\t}\\n\\t}\\n\\t&--normal {\\n\\t\\t.modal-container {\\n\\t\\t\\tmax-width: 90%;\\n\\t\\t\\twidth: 600px;\\n\\t\\t\\tmax-height: 90%;\\n\\t\\t}\\n\\t}\\n\\t&--large {\\n\\t\\t.modal-container {\\n\\t\\t\\tmax-width: 90%;\\n\\t\\t\\twidth: 900px;\\n\\t\\t\\tmax-height: 90%;\\n\\t\\t}\\n\\t}\\n\\t&--full {\\n\\t\\t.modal-container {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: calc(100% - var(--header-height));\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: $header-height;\\n\\t\\t\\tborder-radius: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t// Make modal full screen on mobile\\n\\t@media only screen and (max-width: math.div($breakpoint-mobile, 2)) {\\n\\t\\t.modal-container {\\n\\t\\t\\tmax-width: initial;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmax-height: initial;\\n\\t\\t\\theight: calc(100% - var(--header-height));\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: $header-height;\\n\\t\\t\\tborder-radius: 0;\\n\\t\\t}\\n\\t}\\n}\\n\\n/* TRANSITIONS */\\n.fade-enter-active,\\n.fade-leave-active {\\n\\ttransition: opacity 250ms;\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-visibility-enter,\\n.fade-visibility-leave-to {\\n\\tvisibility: hidden;\\n\\topacity: 0;\\n}\\n\\n.modal-in-enter-active,\\n.modal-in-leave-active,\\n.modal-out-enter-active,\\n.modal-out-leave-active {\\n\\ttransition: opacity 250ms;\\n}\\n\\n.modal-in-enter,\\n.modal-in-leave-to,\\n.modal-out-enter,\\n.modal-out-leave-to {\\n\\topacity: 0;\\n}\\n\\n.modal-in-enter .modal-container,\\n.modal-in-leave-to .modal-container {\\n\\ttransform: scale(.9);\\n}\\n\\n.modal-out-enter .modal-container,\\n.modal-out-leave-to .modal-container {\\n\\ttransform: scale(1.1);\\n}\\n\\n// animated circle\\n$radius: 15;\\n$pi: 3.14159265358979;\\n\\n.modal-mask .play-pause-icons {\\n\\t.progress-ring {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\ttransform: rotate(-90deg);\\n\\t\\t.progress-ring__circle {\\n\\t\\t\\ttransition: 100ms stroke-dashoffset;\\n\\t\\t\\ttransform-origin: 50% 50%; // axis compensation\\n\\t\\t\\tanimation: progressring linear var(--slideshow-duration) infinite;\\n\\n\\t\\t\\tstroke-linecap: round;\\n\\t\\t\\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\\n\\t\\t\\tstroke-dasharray: $radius * 2 * $pi; // radius * 2 * PI\\n\\t\\t}\\n\\t}\\n\\t&--paused {\\n\\t\\t.icon-pause {\\n\\t\\t\\tanimation: breath 2s cubic-bezier(.4, 0, .2, 1) infinite;\\n\\t\\t}\\n\\t\\t.progress-ring__circle {\\n\\t\\t\\tanimation-play-state: paused !important;\\n\\t\\t}\\n\\t}\\n}\\n\\n// keyframes get scoped too and break the animation name, we need them unscoped\\n@keyframes progressring {\\n\\tfrom {\\n\\t\\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\\n\\t}\\n\\tto {\\n\\t\\tstroke-dashoffset: 0;\\n\\t}\\n}\\n\\n@keyframes breath {\\n\\t0% {\\n\\t\\topacity: 1;\\n\\t}\\n\\t50% {\\n\\t\\topacity: 0;\\n\\t}\\n\\t100% {\\n\\t\\topacity: 1;\\n\\t}\\n}\\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\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: math.div($clickable-area - $icon-size, 2);\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\\n// top-bar spacing\\n$topbar-margin: 4px;\\n\\n// navigation spacing\\n$app-navigation-settings-margin: 3px;\\n\"],sourceRoot:\"\"}]);const s=a},4401:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcPopover/NcPopover.vue\"],names:[],mappings:\"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,kCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n.resize-observer {\\n\\tposition:absolute;\\n\\ttop:0;\\n\\tleft:0;\\n\\tz-index:-1;\\n\\twidth:100%;\\n\\theight:100%;\\n\\tborder:none;\\n\\tbackground-color:transparent;\\n\\tpointer-events:none;\\n\\tdisplay:block;\\n\\toverflow:hidden;\\n\\topacity:0\\n}\\n\\n.resize-observer object {\\n\\tdisplay:block;\\n\\tposition:absolute;\\n\\ttop:0;\\n\\tleft:0;\\n\\theight:100%;\\n\\twidth:100%;\\n\\toverflow:hidden;\\n\\tpointer-events:none;\\n\\tz-index:-1\\n}\\n\\n$arrow-width: 10px;\\n\\n.v-popper--theme-dropdown {\\n\\t&.v-popper__popper {\\n\\t\\tz-index: 100000;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\tdisplay: block !important;\\n\\n\\t\\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\\n\\n\\t\\t.v-popper__inner {\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\tbackground: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t.v-popper__arrow-container {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tz-index: 1;\\n\\t\\t\\twidth: 0;\\n\\t\\t\\theight: 0;\\n\\t\\t\\tborder-style: solid;\\n\\t\\t\\tborder-color: transparent;\\n\\t\\t\\tborder-width: $arrow-width;\\n\\t\\t}\\n\\n\\t\\t&[data-popper-placement^='top'] .v-popper__arrow-container {\\n\\t\\t\\tbottom: -$arrow-width;\\n\\t\\t\\tborder-bottom-width: 0;\\n\\t\\t\\tborder-top-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\\n\\t\\t\\ttop: -$arrow-width;\\n\\t\\t\\tborder-top-width: 0;\\n\\t\\t\\tborder-bottom-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t&[data-popper-placement^='right'] .v-popper__arrow-container {\\n\\t\\t\\tleft: -$arrow-width;\\n\\t\\t\\tborder-left-width: 0;\\n\\t\\t\\tborder-right-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t&[data-popper-placement^='left'] .v-popper__arrow-container {\\n\\t\\t\\tright: -$arrow-width;\\n\\t\\t\\tborder-right-width: 0;\\n\\t\\t\\tborder-left-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t&[aria-hidden='true'] {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t\\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\\n\\t\\t\\topacity: 0;\\n\\t\\t}\\n\\n\\t\\t&[aria-hidden='false'] {\\n\\t\\t\\tvisibility: visible;\\n\\t\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\t\\topacity: 1;\\n\\t\\t}\\n\\t}\\n}\\n\\n\"],sourceRoot:\"\"}]);const s=a},2:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-31ffd2d4]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}ul[data-v-31ffd2d4]{display:flex;flex-direction:column;gap:4px}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcPopoverMenu/NcPopoverMenu.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,oBACC,YAAA,CACA,qBAAA,CACA,OAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\nul {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 4px;\\n}\\n\"],sourceRoot:\"\"}]);const s=a},408:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,'.material-design-icon[data-v-127b0c62]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li[data-v-127b0c62]{display:flex;flex:0 0 auto}li.hidden[data-v-127b0c62]{display:none}li>button[data-v-127b0c62],li>a[data-v-127b0c62],li>.menuitem[data-v-127b0c62]{cursor:pointer;line-height:44px;border:0;background-color:rgba(0,0,0,0);display:flex;align-items:flex-start;height:auto;margin:0;padding:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap;opacity:.7}li>button span[class^=icon-][data-v-127b0c62],li>button span[class*=\" icon-\"][data-v-127b0c62],li>button[class^=icon-][data-v-127b0c62],li>button[class*=\" icon-\"][data-v-127b0c62],li>a span[class^=icon-][data-v-127b0c62],li>a span[class*=\" icon-\"][data-v-127b0c62],li>a[class^=icon-][data-v-127b0c62],li>a[class*=\" icon-\"][data-v-127b0c62],li>.menuitem span[class^=icon-][data-v-127b0c62],li>.menuitem span[class*=\" icon-\"][data-v-127b0c62],li>.menuitem[class^=icon-][data-v-127b0c62],li>.menuitem[class*=\" icon-\"][data-v-127b0c62]{min-width:0;min-height:0;background-position:14px center;background-size:16px}li>button span[class^=icon-][data-v-127b0c62],li>button span[class*=\" icon-\"][data-v-127b0c62],li>a span[class^=icon-][data-v-127b0c62],li>a span[class*=\" icon-\"][data-v-127b0c62],li>.menuitem span[class^=icon-][data-v-127b0c62],li>.menuitem span[class*=\" icon-\"][data-v-127b0c62]{padding:22px 0 22px 44px}li>button:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>button:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>button:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child{margin-left:44px}li>button[class^=icon-][data-v-127b0c62],li>button[class*=\" icon-\"][data-v-127b0c62],li>a[class^=icon-][data-v-127b0c62],li>a[class*=\" icon-\"][data-v-127b0c62],li>.menuitem[class^=icon-][data-v-127b0c62],li>.menuitem[class*=\" icon-\"][data-v-127b0c62]{padding:0 14px 0 44px}li>button[data-v-127b0c62]:not(:disabled):hover,li>button[data-v-127b0c62]:not(:disabled):focus,li>button:not(:disabled).active[data-v-127b0c62],li>a[data-v-127b0c62]:not(:disabled):hover,li>a[data-v-127b0c62]:not(:disabled):focus,li>a:not(:disabled).active[data-v-127b0c62],li>.menuitem[data-v-127b0c62]:not(:disabled):hover,li>.menuitem[data-v-127b0c62]:not(:disabled):focus,li>.menuitem:not(:disabled).active[data-v-127b0c62]{opacity:1 !important}li>button.action[data-v-127b0c62],li>a.action[data-v-127b0c62],li>.menuitem.action[data-v-127b0c62]{padding:inherit !important}li>button>span[data-v-127b0c62],li>a>span[data-v-127b0c62],li>.menuitem>span[data-v-127b0c62]{cursor:pointer;white-space:nowrap}li>button>p[data-v-127b0c62],li>a>p[data-v-127b0c62],li>.menuitem>p[data-v-127b0c62]{width:150px;line-height:1.6em;padding:8px 0;white-space:normal;overflow:hidden;text-overflow:ellipsis}li>button>select[data-v-127b0c62],li>a>select[data-v-127b0c62],li>.menuitem>select[data-v-127b0c62]{margin:0;margin-left:6px}li>button[data-v-127b0c62]:not(:empty),li>a[data-v-127b0c62]:not(:empty),li>.menuitem[data-v-127b0c62]:not(:empty){padding-right:14px !important}li>button>img[data-v-127b0c62],li>a>img[data-v-127b0c62],li>.menuitem>img[data-v-127b0c62]{width:16px;height:16px;margin:14px}li>button>input.radio+label[data-v-127b0c62],li>button>input.checkbox+label[data-v-127b0c62],li>a>input.radio+label[data-v-127b0c62],li>a>input.checkbox+label[data-v-127b0c62],li>.menuitem>input.radio+label[data-v-127b0c62],li>.menuitem>input.checkbox+label[data-v-127b0c62]{padding:0 !important;width:100%}li>button>input.checkbox+label[data-v-127b0c62]::before,li>a>input.checkbox+label[data-v-127b0c62]::before,li>.menuitem>input.checkbox+label[data-v-127b0c62]::before{margin:-2px 13px 0}li>button>input.radio+label[data-v-127b0c62]::before,li>a>input.radio+label[data-v-127b0c62]::before,li>.menuitem>input.radio+label[data-v-127b0c62]::before{margin:-2px 12px 0}li>button>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]),li>a>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]),li>.menuitem>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}li>button form[data-v-127b0c62],li>a form[data-v-127b0c62],li>.menuitem form[data-v-127b0c62]{display:flex;flex:1 1 auto}li>button form[data-v-127b0c62]:not(:first-child),li>a form[data-v-127b0c62]:not(:first-child),li>.menuitem form[data-v-127b0c62]:not(:first-child){margin-left:5px}li>button>span.hidden+form[data-v-127b0c62],li>button>span[style*=\"display:none\"]+form[data-v-127b0c62],li>a>span.hidden+form[data-v-127b0c62],li>a>span[style*=\"display:none\"]+form[data-v-127b0c62],li>.menuitem>span.hidden+form[data-v-127b0c62],li>.menuitem>span[style*=\"display:none\"]+form[data-v-127b0c62]{margin-left:0}li>button input[data-v-127b0c62],li>a input[data-v-127b0c62],li>.menuitem input[data-v-127b0c62]{min-width:44px;max-height:40px;margin:2px 0;flex:1 1 auto}li>button input[data-v-127b0c62]:not(:first-child),li>a input[data-v-127b0c62]:not(:first-child),li>.menuitem input[data-v-127b0c62]:not(:first-child){margin-left:5px}li:not(.hidden):not([style*=\"display:none\"]):first-of-type>button>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>button>input[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>a>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>a>input[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>.menuitem>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>.menuitem>input[data-v-127b0c62]{margin-top:12px}li:not(.hidden):not([style*=\"display:none\"]):last-of-type>button>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>button>input[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>a>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>a>input[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>.menuitem>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>.menuitem>input[data-v-127b0c62]{margin-bottom:12px}li>button[data-v-127b0c62]{padding:0}li>button span[data-v-127b0c62]{opacity:1}',\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcPopoverMenu/NcPopoverMenuItem.vue\",\"webpack://./src/assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,oBACC,YAAA,CACA,aAAA,CAEA,2BACC,YAAA,CAGD,+EAGC,cAAA,CACA,gBCWe,CDVf,QAAA,CACA,8BAAA,CACA,YAAA,CACA,sBAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,kBAAA,CACA,eAAA,CACA,UAAA,CACA,4BAAA,CACA,kBAAA,CACA,UCgBe,CDbf,ohBAIC,WAAA,CACA,YAAA,CACA,+BAAA,CACA,oBCRS,CDWV,yRAIC,wBAAA,CAQC,ylCACC,gBC5BY,CDiCf,2PAEC,qBAAA,CAGD,6aAGC,oBAAA,CAID,oGACC,0BAAA,CAGD,8FACC,cAAA,CACA,kBAAA,CAID,qFACC,WAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CAGA,eAAA,CACA,sBAAA,CAID,oGACC,QAAA,CACA,eAAA,CAID,mHACC,6BAAA,CAKD,2FACC,UC5ES,CD6ET,WC7ES,CD8ET,WC1EW,CD8EZ,mRAEC,oBAAA,CACA,UAAA,CAED,sKACC,kBAAA,CAED,6JACC,kBAAA,CAED,4QACC,WAAA,CAID,8FACC,YAAA,CACA,aAAA,CAGA,oJACC,eAAA,CAIF,oTAEC,aAAA,CAGD,iGACC,cCtHc,CDuHd,eAAA,CACA,YAAA,CACA,aAAA,CAEA,uJACC,eAAA,CAUA,+gBACC,eAAA,CAMD,ygBACC,kBAAA,CAKJ,2BACC,SAAA,CACA,gCACC,SCnIY\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\nli {\\n\\tdisplay: flex;\\n\\tflex: 0 0 auto;\\n\\n\\t&.hidden {\\n\\t\\tdisplay: none;\\n\\t}\\n\\n\\t> button,\\n\\t> a,\\n\\t> .menuitem {\\n\\t\\tcursor: pointer;\\n\\t\\tline-height: $clickable-area;\\n\\t\\tborder: 0;\\n\\t\\tbackground-color: transparent;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\t\\theight: auto;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\tfont-weight: normal;\\n\\t\\tbox-shadow: none;\\n\\t\\twidth: 100%;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\twhite-space: nowrap;\\n\\t\\topacity: $opacity_normal;\\n\\n\\t\\t// TODO split into individual components for readability\\n\\t\\tspan[class^='icon-'],\\n\\t\\tspan[class*=' icon-'],\\n\\t\\t&[class^='icon-'],\\n\\t\\t&[class*=' icon-'] {\\n\\t\\t\\tmin-width: 0; /* Overwrite icons*/\\n\\t\\t\\tmin-height: 0;\\n\\t\\t\\tbackground-position: #{$icon-margin} center;\\n\\t\\t\\tbackground-size: $icon-size;\\n\\t\\t}\\n\\n\\t\\tspan[class^='icon-'],\\n\\t\\tspan[class*=' icon-'] {\\n\\t\\t\\t/* Keep padding to define the width to\\n\\t\\t\\t\\tassure correct position of a possible text */\\n\\t\\t\\tpadding: #{math.div($clickable-area, 2)} 0 #{math.div($clickable-area, 2)} $clickable-area;\\n\\t\\t}\\n\\n\\t\\t// If no icons set, force left margin to align\\n\\t\\t&:not([class^='icon-']):not([class*='icon-']) {\\n\\t\\t\\t> span,\\n\\t\\t\\t> input,\\n\\t\\t\\t> form {\\n\\t\\t\\t\\t&:not([class^='icon-']):not([class*='icon-']):first-child {\\n\\t\\t\\t\\t\\tmargin-left: $clickable-area;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&[class^='icon-'],\\n\\t\\t&[class*=' icon-'] {\\n\\t\\t\\tpadding: 0 $icon-margin 0 $clickable-area;\\n\\t\\t}\\n\\n\\t\\t&:not(:disabled):hover,\\n\\t\\t&:not(:disabled):focus,\\n\\t\\t&:not(:disabled).active {\\n\\t\\t\\topacity: $opacity_full !important;\\n\\t\\t}\\n\\n\\t\\t/* prevent .action class to break the design */\\n\\t\\t&.action {\\n\\t\\t\\tpadding: inherit !important;\\n\\t\\t}\\n\\n\\t\\t> span {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t// long text area\\n\\t\\t> p {\\n\\t\\t\\twidth: 150px;\\n\\t\\t\\tline-height: 1.6em;\\n\\t\\t\\tpadding: 8px 0;\\n\\t\\t\\twhite-space: normal;\\n\\n\\t\\t\\t// in case there are no spaces like long email addresses\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t// TODO: do we really supports it?\\n\\t\\t> select {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tmargin-left: 6px;\\n\\t\\t}\\n\\n\\t\\t/* Add padding if contains icon+text */\\n\\t\\t&:not(:empty) {\\n\\t\\t\\tpadding-right: $icon-margin !important;\\n\\t\\t}\\n\\n\\t\\t/* DEPRECATED! old img in popover fallback\\n\\t\\t\\t* TODO: to remove */\\n\\t\\t> img {\\n\\t\\t\\twidth: $icon-size;\\n\\t\\t\\theight: $icon-size;\\n\\t\\t\\tmargin: $icon-margin;\\n\\t\\t}\\n\\n\\t\\t/* checkbox/radio fixes */\\n\\t\\t> input.radio + label,\\n\\t\\t> input.checkbox + label {\\n\\t\\t\\tpadding: 0 !important;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t\\t> input.checkbox + label::before {\\n\\t\\t\\tmargin: -2px 13px 0;\\n\\t\\t}\\n\\t\\t> input.radio + label::before {\\n\\t\\t\\tmargin: -2px 12px 0;\\n\\t\\t}\\n\\t\\t> input:not([type=radio]):not([type=checkbox]):not([type=image]) {\\n\\t\\t\\twidth: 150px;\\n\\t\\t}\\n\\n\\t\\t// Forms & text inputs\\n\\t\\tform {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t\\t/* put a small space between text and form\\n\\t\\t\\t\\tif there is an element before */\\n\\t\\t\\t&:not(:first-child) {\\n\\t\\t\\t\\tmargin-left: 5px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t/* no margin if hidden span before */\\n\\t\\t> span.hidden + form,\\n\\t\\t> span[style*='display:none'] + form {\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t}\\n\\t\\t/* Inputs inside popover supports text, submit & reset */\\n\\t\\tinput {\\n\\t\\t\\tmin-width: $clickable-area;\\n\\t\\t\\tmax-height: #{$clickable-area - 4px}; /* twice the element margin-y */\\n\\t\\t\\tmargin: 2px 0;\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t\\t// space between inline inputs\\n\\t\\t\\t&:not(:first-child) {\\n\\t\\t\\t\\tmargin-left: 5px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// TODO: do that in js, should be cleaner\\n\\t/* css hack, only first not hidden */\\n\\t&:not(.hidden):not([style*='display:none']) {\\n\\t\\t&:first-of-type {\\n\\t\\t\\t> button, > a, > .menuitem {\\n\\t\\t\\t\\t> form, > input {\\n\\t\\t\\t\\t\\tmargin-top: $icon-margin - 2px; // minus the input margin\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t&:last-of-type {\\n\\t\\t\\t> button, > a, > .menuitem {\\n\\t\\t\\t\\t> form, > input {\\n\\t\\t\\t\\t\\tmargin-bottom: $icon-margin - 2px; // minus the input margin\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\t> button {\\n\\t\\tpadding: 0;\\n\\t\\tspan {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t}\\n\\t}\\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\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: math.div($clickable-area - $icon-size, 2);\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\\n// top-bar spacing\\n$topbar-margin: 4px;\\n\\n// navigation spacing\\n$app-navigation-settings-margin: 3px;\\n\"],sourceRoot:\"\"}]);const s=a},5594:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-8a961b36]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.mention-bubble--primary .mention-bubble__content[data-v-8a961b36]{color:var(--color-primary-element-text);background-color:var(--color-primary-element)}.mention-bubble__wrapper[data-v-8a961b36]{max-width:150px;height:18px;vertical-align:text-bottom;display:inline-flex;align-items:center}.mention-bubble__content[data-v-8a961b36]{display:inline-flex;overflow:hidden;align-items:center;max-width:100%;height:20px;-webkit-user-select:none;user-select:none;padding-right:6px;padding-left:2px;border-radius:10px;background-color:var(--color-background-dark)}.mention-bubble__icon[data-v-8a961b36]{position:relative;width:16px;height:16px;border-radius:8px;background-color:var(--color-background-darker);background-repeat:no-repeat;background-position:center;background-size:12px}.mention-bubble__icon--with-avatar[data-v-8a961b36]{color:inherit;background-size:cover}.mention-bubble__title[data-v-8a961b36]{overflow:hidden;margin-left:2px;white-space:nowrap;text-overflow:ellipsis}.mention-bubble__title[data-v-8a961b36]::before{content:attr(title)}.mention-bubble__select[data-v-8a961b36]{position:absolute;z-index:-1;left:-1000px}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichContenteditable/NcMentionBubble.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CAAA,mECCC,uCAAA,CACA,6CAAA,CAGD,0CACC,eAXiB,CAajB,WAAA,CACA,0BAAA,CACA,mBAAA,CACA,kBAAA,CAGD,0CACC,mBAAA,CACA,eAAA,CACA,kBAAA,CACA,cAAA,CACA,WAzBc,CA0Bd,wBAAA,CACA,gBAAA,CACA,iBAAA,CACA,gBA3Be,CA4Bf,kBAAA,CACA,6CAAA,CAGD,uCACC,iBAAA,CACA,UAjCmB,CAkCnB,WAlCmB,CAmCnB,iBAAA,CACA,+CAAA,CACA,2BAAA,CACA,0BAAA,CACA,oBAAA,CAEA,oDACC,aAAA,CACA,qBAAA,CAIF,wCACC,eAAA,CACA,eAlDe,CAmDf,kBAAA,CACA,sBAAA,CAEA,gDACC,mBAAA,CAKF,yCACC,iBAAA,CACA,UAAA,CACA,YAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n$bubble-height: 20px;\\n$bubble-max-width: 150px;\\n$bubble-padding: 2px;\\n$bubble-avatar-size: $bubble-height - 2 * $bubble-padding;\\n\\n.mention-bubble {\\n\\t&--primary &__content {\\n\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\tbackground-color: var(--color-primary-element);\\n\\t}\\n\\n\\t&__wrapper {\\n\\t\\tmax-width: $bubble-max-width;\\n\\t\\t// Align with text\\n\\t\\theight: $bubble-height - $bubble-padding;\\n\\t\\tvertical-align: text-bottom;\\n\\t\\tdisplay: inline-flex;\\n\\t\\talign-items: center;\\n\\t}\\n\\n\\t&__content {\\n\\t\\tdisplay: inline-flex;\\n\\t\\toverflow: hidden;\\n\\t\\talign-items: center;\\n\\t\\tmax-width: 100%;\\n\\t\\theight: $bubble-height ;\\n\\t\\t-webkit-user-select: none;\\n\\t\\tuser-select: none;\\n\\t\\tpadding-right: $bubble-padding * 3;\\n\\t\\tpadding-left: $bubble-padding;\\n\\t\\tborder-radius: math.div($bubble-height, 2);\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t}\\n\\n\\t&__icon {\\n\\t\\tposition: relative;\\n\\t\\twidth: $bubble-avatar-size;\\n\\t\\theight: $bubble-avatar-size;\\n\\t\\tborder-radius: math.div($bubble-avatar-size, 2);\\n\\t\\tbackground-color: var(--color-background-darker);\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tbackground-position: center;\\n\\t\\tbackground-size: $bubble-avatar-size - 2 * $bubble-padding;\\n\\n\\t\\t&--with-avatar {\\n\\t\\t\\tcolor: inherit;\\n\\t\\t\\tbackground-size: cover;\\n\\t\\t}\\n\\t}\\n\\n\\t&__title {\\n\\t\\toverflow: hidden;\\n\\t\\tmargin-left: $bubble-padding;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\t// Put label in ::before so it is not selectable\\n\\t\\t&::before {\\n\\t\\t\\tcontent: attr(title);\\n\\t\\t}\\n\\t}\\n\\n\\t// Hide the mention id so it is selectable\\n\\t&__select {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: -1;\\n\\t\\tleft: -1000px;\\n\\t}\\n}\\n\\n\"],sourceRoot:\"\"}]);const s=a},122:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-36a4d5cc]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.widgets--list.icon-loading[data-v-36a4d5cc]{min-height:44px}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferenceList.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,6CACC,eAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.widgets--list.icon-loading {\\n\\tmin-height: 44px;\\n}\\n\"],sourceRoot:\"\"}]);const s=a},9425:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-60e96d80]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\"],sourceRoot:\"\"}]);const s=a},4091:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-51a83e19]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.provider-list[data-v-51a83e19]{width:100%;min-height:350px;padding-right:2px;display:flex;flex-direction:column}.provider-list--empty-content[data-v-51a83e19]{margin-top:auto !important;margin-bottom:auto !important}.provider-list--select[data-v-51a83e19]{width:100%}.provider-list--select .provider[data-v-51a83e19]{display:flex;align-items:center;height:28px;overflow:hidden}.provider-list--select .provider .link-icon[data-v-51a83e19]{margin-right:8px}.provider-list--select .provider .provider-icon[data-v-51a83e19]{width:20px;height:20px;object-fit:contain;margin-right:8px;filter:var(--background-invert-if-dark)}.provider-list--select .provider .option-text[data-v-51a83e19]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferencePicker/NcProviderList.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,gCACC,UAAA,CACA,gBAAA,CAGA,iBAAA,CACA,YAAA,CACA,qBAAA,CAEA,+CACC,0BAAA,CACA,6BAAA,CAGD,wCACC,UAAA,CAEA,kDACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,eAAA,CAEA,6DACC,gBAAA,CAGD,iEACC,UAAA,CACA,WAAA,CACA,kBAAA,CACA,gBAAA,CACA,uCAAA,CAGD,+DACC,eAAA,CACA,sBAAA,CACA,kBAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.provider-list {\\n\\twidth: 100%;\\n\\tmin-height: 350px;\\n\\t// multiselect dropdown is wider than the select input\\n\\t// this avoids overflow\\n\\tpadding-right: 2px;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&--empty-content {\\n\\t\\tmargin-top: auto !important;\\n\\t\\tmargin-bottom: auto !important;\\n\\t}\\n\\n\\t&--select {\\n\\t\\twidth: 100%;\\n\\n\\t\\t.provider {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\theight: 28px;\\n\\t\\t\\toverflow: hidden;\\n\\n\\t\\t\\t.link-icon {\\n\\t\\t\\t\\tmargin-right: 8px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.provider-icon {\\n\\t\\t\\t\\twidth: 20px;\\n\\t\\t\\t\\theight: 20px;\\n\\t\\t\\t\\tobject-fit: contain;\\n\\t\\t\\t\\tmargin-right: 8px;\\n\\t\\t\\t\\tfilter: var(--background-invert-if-dark);\\n\\t\\t\\t}\\n\\n\\t\\t\\t.option-text {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t}\\n\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},6068:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-2e61b91c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.raw-link[data-v-2e61b91c]{width:100%;min-height:350px;display:flex;flex-direction:column;overflow-y:auto}.raw-link .input-wrapper[data-v-2e61b91c]{width:100%}.raw-link .reference-widget[data-v-2e61b91c]{display:flex}.raw-link--empty-content[data-v-2e61b91c]{margin-top:auto !important;margin-bottom:auto !important}.raw-link--empty-content .provider-icon[data-v-2e61b91c]{width:150px;height:150px;object-fit:contain;filter:var(--background-invert-if-dark)}.raw-link--input[data-v-2e61b91c]{width:99%}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferencePicker/NcRawLinkInput.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,2BACC,UAAA,CACA,gBAAA,CACA,YAAA,CACA,qBAAA,CACA,eAAA,CAEA,0CACC,UAAA,CAGD,6CACC,YAAA,CAGD,0CACC,0BAAA,CACA,6BAAA,CAEA,yDACC,WAAA,CACA,YAAA,CACA,kBAAA,CACA,uCAAA,CAIF,kCACC,SAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.raw-link {\\n\\twidth: 100%;\\n\\tmin-height: 350px;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\toverflow-y: auto;\\n\\n\\t.input-wrapper {\\n\\t\\twidth: 100%;\\n\\t}\\n\\n\\t.reference-widget {\\n\\t\\tdisplay: flex;\\n\\t}\\n\\n\\t&--empty-content {\\n\\t\\tmargin-top: auto !important;\\n\\t\\tmargin-bottom: auto !important;\\n\\n\\t\\t.provider-icon {\\n\\t\\t\\twidth: 150px;\\n\\t\\t\\theight: 150px;\\n\\t\\t\\tobject-fit: contain;\\n\\t\\t\\tfilter: var(--background-invert-if-dark);\\n\\t\\t}\\n\\t}\\n\\n\\t&--input {\\n\\t\\twidth: 99%;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},34:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-9b2f661a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.reference-picker[data-v-9b2f661a]{display:flex;overflow-y:auto;width:100%}.reference-picker .custom-element-wrapper[data-v-9b2f661a]{display:flex;overflow-y:auto;width:100%}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferencePicker/NcReferencePicker.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,mCACC,YAAA,CACA,eAAA,CACA,UAAA,CAEA,2DACC,YAAA,CACA,eAAA,CACA,UAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.reference-picker {\\n\\tdisplay: flex;\\n\\toverflow-y: auto;\\n\\twidth: 100%;\\n\\n\\t.custom-element-wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\toverflow-y: auto;\\n\\t\\twidth: 100%;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},698:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.reference-picker-modal .modal-container{display:flex !important}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferencePicker/NcReferencePickerModal.vue\"],names:[],mappings:\"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,yCACC,uBAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n// this is to avoid scroll on the container and leave it to the result block\\n.reference-picker-modal .modal-container {\\n\\tdisplay: flex !important;\\n}\\n\"],sourceRoot:\"\"}]);const s=a},6508:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-1f66021a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.reference-picker-modal--content[data-v-1f66021a]{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto}.reference-picker-modal--content .close-button[data-v-1f66021a],.reference-picker-modal--content .back-button[data-v-1f66021a]{position:absolute;top:4px}.reference-picker-modal--content .back-button[data-v-1f66021a]{left:4px}.reference-picker-modal--content .close-button[data-v-1f66021a]{right:4px}.reference-picker-modal--content>h2[data-v-1f66021a]{display:flex;margin:12px 0 20px 0}.reference-picker-modal--content>h2 .icon[data-v-1f66021a]{margin-right:8px}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferencePicker/NcReferencePickerModal.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,kDACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAEA,+HAEC,iBAAA,CACA,OAAA,CAED,+DACC,QAAA,CAED,gEACC,SAAA,CAGD,qDACC,YAAA,CACA,oBAAA,CACA,2DACC,gBAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.reference-picker-modal--content {\\n\\twidth: 100%;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\toverflow-y: auto;\\n\\n\\t.close-button,\\n\\t.back-button {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 4px;\\n\\t}\\n\\t.back-button {\\n\\t\\tleft: 4px;\\n\\t}\\n\\t.close-button {\\n\\t\\tright: 4px;\\n\\t}\\n\\n\\t> h2 {\\n\\t\\tdisplay: flex;\\n\\t\\tmargin: 12px 0 20px 0;\\n\\t\\t.icon {\\n\\t\\t\\tmargin-right: 8px;\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},2873:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-26e3248c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.smart-picker-search[data-v-26e3248c]{width:100%;display:flex;flex-direction:column;padding:0 16px 16px 16px}.smart-picker-search.with-empty-content[data-v-26e3248c]{min-height:350px}.smart-picker-search--empty-content[data-v-26e3248c]{margin-top:auto !important;margin-bottom:auto !important}.smart-picker-search .provider-icon[data-v-26e3248c]{width:150px;height:150px;object-fit:contain;filter:var(--background-invert-if-dark)}.smart-picker-search--select[data-v-26e3248c]{width:100%}.smart-picker-search--select .search-result[data-v-26e3248c]{width:100%}.smart-picker-search--select .group-title-icon[data-v-26e3248c],.smart-picker-search--select .option-simple-icon[data-v-26e3248c]{width:20px;height:20px;margin:0 20px 0 10px}.smart-picker-search--select .custom-option[data-v-26e3248c]{height:44px;display:flex;align-items:center;overflow:hidden}.smart-picker-search--select .option-text[data-v-26e3248c]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smart-picker-search--select[data-v-26e3248c] .multiselect__content-wrapper{width:calc(100% - 4px) !important}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferencePicker/NcSearch.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,sCACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,wBAAA,CACA,yDACC,gBAAA,CAGD,qDACC,0BAAA,CACA,6BAAA,CAGD,qDACC,WAAA,CACA,YAAA,CACA,kBAAA,CACA,uCAAA,CAGD,8CACC,UAAA,CAEA,6DACC,UAAA,CAGD,kIAEC,UAAA,CACA,WAAA,CACA,oBAAA,CAGD,6DACC,WAAA,CACA,YAAA,CACA,kBAAA,CACA,eAAA,CAGD,2DACC,eAAA,CACA,sBAAA,CACA,kBAAA,CAKD,4EACC,iCAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.smart-picker-search {\\n\\twidth: 100%;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tpadding: 0 16px 16px 16px;\\n\\t&.with-empty-content {\\n\\t\\tmin-height: 350px;\\n\\t}\\n\\n\\t&--empty-content {\\n\\t\\tmargin-top: auto !important;\\n\\t\\tmargin-bottom: auto !important;\\n\\t}\\n\\n\\t.provider-icon {\\n\\t\\twidth: 150px;\\n\\t\\theight: 150px;\\n\\t\\tobject-fit: contain;\\n\\t\\tfilter: var(--background-invert-if-dark);\\n\\t}\\n\\n\\t&--select {\\n\\t\\twidth: 100%;\\n\\n\\t\\t.search-result {\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\t.group-title-icon,\\n\\t\\t.option-simple-icon {\\n\\t\\t\\twidth: 20px;\\n\\t\\t\\theight: 20px;\\n\\t\\t\\tmargin: 0 20px 0 10px;\\n\\t\\t}\\n\\n\\t\\t.custom-option {\\n\\t\\t\\theight: 44px;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t}\\n\\n\\t\\t.option-text {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t// multiselect dropdown is wider than the select input\\n\\t\\t// this avoids overflow\\n\\t\\t:deep(.multiselect__content-wrapper) {\\n\\t\\t\\twidth: calc(100% - 4px) !important;\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},9052:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-7297c50a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.result[data-v-7297c50a]{display:flex;align-items:center;height:44px;overflow:hidden}.result--icon-class[data-v-7297c50a],.result--image[data-v-7297c50a]{width:40px;min-width:40px;height:40px;object-fit:contain}.result--icon-class.rounded[data-v-7297c50a],.result--image.rounded[data-v-7297c50a]{border-radius:50%}.result--content[data-v-7297c50a]{display:flex;flex-direction:column;padding-left:10px;overflow:hidden}.result--content--title[data-v-7297c50a],.result--content--subline[data-v-7297c50a]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferencePicker/NcSearchResult.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,yBACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,eAAA,CAEA,qEAEC,UAAA,CACA,cAAA,CACA,WAAA,CACA,kBAAA,CAEA,qFACC,iBAAA,CAIF,kCACC,YAAA,CACA,qBAAA,CACA,iBAAA,CACA,eAAA,CAEA,oFAEC,eAAA,CACA,sBAAA,CACA,kBAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n.result {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\toverflow: hidden;\\n\\n\\t&--icon-class,\\n\\t&--image {\\n\\t\\twidth: 40px;\\n\\t\\tmin-width: 40px;\\n\\t\\theight: 40px;\\n\\t\\tobject-fit: contain;\\n\\n\\t\\t&.rounded {\\n\\t\\t\\tborder-radius: 50%;\\n\\t\\t}\\n\\t}\\n\\n\\t&--content {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tpadding-left: 10px;\\n\\t\\toverflow: hidden;\\n\\n\\t\\t&--title,\\n\\t\\t&--subline {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},1880:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\".material-design-icon[data-v-4be6aca8]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.widget-custom[data-v-4be6aca8]{width:100%;margin:auto;margin-bottom:calc(var(--default-grid-baseline, 4px)*3);margin-top:calc(var(--default-grid-baseline, 4px)*3);overflow:hidden;border:2px solid var(--color-border);border-radius:var(--border-radius-large);background-color:rgba(0,0,0,0);display:flex}.widget-access[data-v-4be6aca8]{width:100%;margin:auto;margin-bottom:calc(var(--default-grid-baseline, 4px)*3);margin-top:calc(var(--default-grid-baseline, 4px)*3);overflow:hidden;border:2px solid var(--color-border);border-radius:var(--border-radius-large);background-color:rgba(0,0,0,0);display:flex;padding:calc(var(--default-grid-baseline, 4px)*3)}.widget-default[data-v-4be6aca8]{width:100%;margin:auto;margin-bottom:calc(var(--default-grid-baseline, 4px)*3);margin-top:calc(var(--default-grid-baseline, 4px)*3);overflow:hidden;border:2px solid var(--color-border);border-radius:var(--border-radius-large);background-color:rgba(0,0,0,0);display:flex}.widget-default--compact[data-v-4be6aca8]{flex-direction:column}.widget-default--compact .widget-default--image[data-v-4be6aca8]{width:100%;height:150px}.widget-default--compact .widget-default--details[data-v-4be6aca8]{width:100%;padding-top:calc(var(--default-grid-baseline, 4px)*2);padding-bottom:calc(var(--default-grid-baseline, 4px)*2)}.widget-default--compact .widget-default--description[data-v-4be6aca8]{display:none}.widget-default--image[data-v-4be6aca8]{width:40%;background-position:center;background-size:cover;background-repeat:no-repeat}.widget-default--title[data-v-4be6aca8]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:bold}.widget-default--details[data-v-4be6aca8]{padding:calc(var(--default-grid-baseline, 4px)*3);width:60%}.widget-default--details p[data-v-4be6aca8]{margin:0;padding:0}.widget-default--description[data-v-4be6aca8]{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical}.widget-default--link[data-v-4be6aca8]{color:var(--color-text-maxcontrast);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichText/NcReferenceWidget.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCOD,gCAXC,UAAA,CACA,WAAA,CACA,uDAAA,CACA,oDAAA,CACA,eAAA,CACA,oCAAA,CACA,wCAAA,CACA,8BAAA,CACA,YAAA,CAOD,gCAfC,UAAA,CACA,WAAA,CACA,uDAAA,CACA,oDAAA,CACA,eAAA,CACA,oCAAA,CACA,wCAAA,CACA,8BAAA,CACA,YAAA,CASA,iDAAA,CAGD,iCApBC,UAAA,CACA,WAAA,CACA,uDAAA,CACA,oDAAA,CACA,eAAA,CACA,oCAAA,CACA,wCAAA,CACA,8BAAA,CACA,YAAA,CAeA,0CACC,qBAAA,CAEA,iEACC,UAAA,CACA,YAAA,CAGD,mEACC,UAAA,CACA,qDAAA,CACA,wDAAA,CAGD,uEACC,YAAA,CAKF,wCACC,SAAA,CACA,0BAAA,CACA,qBAAA,CACA,2BAAA,CAGD,wCACC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,gBAAA,CAGD,0CACC,iDAAA,CACA,SAAA,CAEA,4CACC,QAAA,CACA,SAAA,CAIF,8CACC,eAAA,CACA,sBAAA,CACA,mBAAA,CACA,oBAAA,CACA,YAAA,CACA,2BAAA,CAGD,uCACC,mCAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"caee4c9\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n@mixin widget {\\n\\twidth: 100%;\\n\\tmargin: auto;\\n\\tmargin-bottom: calc(var(--default-grid-baseline, 4px) * 3);\\n\\tmargin-top: calc(var(--default-grid-baseline, 4px) * 3);\\n\\toverflow: hidden;\\n\\tborder: 2px solid var(--color-border);\\n\\tborder-radius: var(--border-radius-large);\\n\\tbackground-color: transparent;\\n\\tdisplay: flex;\\n}\\n\\n.widget-custom {\\n\\t@include widget;\\n}\\n\\n.widget-access {\\n\\t@include widget;\\n\\tpadding: calc(var(--default-grid-baseline, 4px) * 3);\\n}\\n\\n.widget-default {\\n\\t@include widget;\\n\\n\\t&--compact {\\n\\t\\tflex-direction: column;\\n\\n\\t\\t.widget-default--image {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 150px;\\n\\t\\t}\\n\\n\\t\\t.widget-default--details {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tpadding-top: calc(var(--default-grid-baseline, 4px) * 2);\\n\\t\\t\\tpadding-bottom: calc(var(--default-grid-baseline, 4px) * 2);\\n\\t\\t}\\n\\n\\t\\t.widget-default--description {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&--image {\\n\\t\\twidth: 40%;\\n\\t\\tbackground-position: center;\\n\\t\\tbackground-size: cover;\\n\\t\\tbackground-repeat: no-repeat;\\n\\t}\\n\\n\\t&--title {\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\twhite-space: nowrap;\\n\\t\\tfont-weight: bold;\\n\\t}\\n\\n\\t&--details {\\n\\t\\tpadding: calc(var(--default-grid-baseline, 4px) * 3);\\n\\t\\twidth: 60%;\\n\\n\\t\\tp {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t&--description {\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tdisplay: -webkit-box;\\n\\t\\t-webkit-line-clamp: 3;\\n\\t\\tline-clamp: 3;\\n\\t\\t-webkit-box-orient: vertical;\\n\\t}\\n\\n\\t&--link {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\twhite-space: nowrap;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},8369:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\"\\nbutton.menuitem[data-v-127b0c62] {\\n\\tborder-radius: var(--border-radius-large) !important;\\n\\ttext-align: left;\\n}\\nbutton.menuitem *[data-v-127b0c62] {\\n\\tcursor: pointer;\\n}\\nbutton.menuitem[data-v-127b0c62]:disabled {\\n\\topacity: 0.5 !important;\\n\\tcursor: default;\\n}\\nbutton.menuitem:disabled *[data-v-127b0c62] {\\n\\tcursor: default;\\n}\\n.menuitem.active[data-v-127b0c62] {\\n\\tborder-left: 4px solid var(--color-primary-element);\\n\\tborder-radius: 0 var(--border-radius-large) var(--border-radius-large) 0 !important;\\n}\\n\",\"\",{version:3,sources:[\"webpack://./src/components/NcPopoverMenu/NcPopoverMenuItem.vue\"],names:[],mappings:\";AAgYA;CACA,oDAAA;CACA,gBAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,uBAAA;CACA,eAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,mDAAA;CACA,mFAAA;AACA\",sourcesContent:['\\x3c!--\\n - @copyright Copyright (c) 2018 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 --\\x3e\\n\\n<template>\\n\\t<li class=\"popover__menuitem\">\\n\\t\\t\\x3c!-- If item.href is set, a link will be directly used --\\x3e\\n\\t\\t<a v-if=\"item.href\"\\n\\t\\t\\t:href=\"(item.href) ? item.href : \\'#\\' \"\\n\\t\\t\\t:target=\"(item.target) ? item.target : \\'\\' \"\\n\\t\\t\\t:download=\"item.download\"\\n\\t\\t\\tclass=\"focusable\"\\n\\t\\t\\trel=\"nofollow noreferrer noopener\"\\n\\t\\t\\t@click=\"action\">\\n\\t\\t\\t<span v-if=\"!iconIsUrl\" :class=\"item.icon\" />\\n\\t\\t\\t<img v-else :src=\"item.icon\">\\n\\t\\t\\t<p v-if=\"item.text && item.longtext\">\\n\\t\\t\\t\\t<strong class=\"menuitem-text\">\\n\\t\\t\\t\\t\\t{{ item.text }}\\n\\t\\t\\t\\t</strong><br>\\n\\t\\t\\t\\t<span class=\"menuitem-text-detail\">\\n\\t\\t\\t\\t\\t{{ item.longtext }}\\n\\t\\t\\t\\t</span>\\n\\t\\t\\t</p>\\n\\t\\t\\t<span v-else-if=\"item.text\">\\n\\t\\t\\t\\t{{ item.text }}\\n\\t\\t\\t</span>\\n\\t\\t\\t<p v-else-if=\"item.longtext\">\\n\\t\\t\\t\\t{{ item.longtext }}\\n\\t\\t\\t</p>\\n\\t\\t</a>\\n\\n\\t\\t\\x3c!-- If item.input is set instead, an put will be used --\\x3e\\n\\t\\t<span v-else-if=\"item.input\" class=\"menuitem\" :class=\"{active: item.active}\">\\n\\t\\t\\t\\x3c!-- does not show if input is checkbox --\\x3e\\n\\t\\t\\t<span v-if=\"item.input !== \\'checkbox\\'\" :class=\"item.icon\" />\\n\\n\\t\\t\\t\\x3c!-- only shows if input is text --\\x3e\\n\\t\\t\\t<form v-if=\"item.input === \\'text\\'\"\\n\\t\\t\\t\\t:class=\"item.input\"\\n\\t\\t\\t\\t@submit.prevent=\"item.action\">\\n\\t\\t\\t\\t<input :type=\"item.input\"\\n\\t\\t\\t\\t\\t:value=\"item.value\"\\n\\t\\t\\t\\t\\t:placeholder=\"item.text\"\\n\\t\\t\\t\\t\\trequired>\\n\\t\\t\\t\\t<input type=\"submit\" value=\"\" class=\"icon-confirm\">\\n\\t\\t\\t</form>\\n\\n\\t\\t\\t\\x3c!-- checkbox --\\x3e\\n\\t\\t\\t<template v-else>\\n\\t\\t\\t\\t\\x3c!-- eslint-disable-next-line --\\x3e\\n\\t\\t\\t\\t<input :id=\"key\" v-model=\"item.model\"\\n\\t\\t\\t\\t\\t:type=\"item.input\"\\n\\t\\t\\t\\t\\t:class=\"item.input\"\\n\\t\\t\\t\\t\\t@change=\"item.action\">\\n\\t\\t\\t\\t<label :for=\"key\" @click.stop.prevent=\"item.action\">\\n\\t\\t\\t\\t\\t{{ item.text }}\\n\\t\\t\\t\\t</label>\\n\\t\\t\\t</template>\\n\\t\\t</span>\\n\\n\\t\\t\\x3c!-- If item.action is set instead, a button will be used --\\x3e\\n\\t\\t<button v-else-if=\"item.action\"\\n\\t\\t\\tclass=\"menuitem focusable\"\\n\\t\\t\\t:class=\"{active: item.active}\"\\n\\t\\t\\t:disabled=\"item.disabled\"\\n\\t\\t\\ttype=\"button\"\\n\\t\\t\\t@click.stop.prevent=\"item.action\">\\n\\t\\t\\t<span :class=\"item.icon\" />\\n\\t\\t\\t<p v-if=\"item.text && item.longtext\">\\n\\t\\t\\t\\t<strong class=\"menuitem-text\">\\n\\t\\t\\t\\t\\t{{ item.text }}\\n\\t\\t\\t\\t</strong><br>\\n\\t\\t\\t\\t<span class=\"menuitem-text-detail\">\\n\\t\\t\\t\\t\\t{{ item.longtext }}\\n\\t\\t\\t\\t</span>\\n\\t\\t\\t</p>\\n\\t\\t\\t<span v-else-if=\"item.text\">\\n\\t\\t\\t\\t{{ item.text }}\\n\\t\\t\\t</span>\\n\\t\\t\\t<p v-else-if=\"item.longtext\">\\n\\t\\t\\t\\t{{ item.longtext }}\\n\\t\\t\\t</p>\\n\\t\\t</button>\\n\\n\\t\\t\\x3c!-- If item.longtext is set AND the item does not have an action --\\x3e\\n\\t\\t<span v-else class=\"menuitem\" :class=\"{active: item.active}\">\\n\\t\\t\\t<span :class=\"item.icon\" />\\n\\t\\t\\t<p v-if=\"item.text && item.longtext\">\\n\\t\\t\\t\\t<strong class=\"menuitem-text\">\\n\\t\\t\\t\\t\\t{{ item.text }}\\n\\t\\t\\t\\t</strong><br>\\n\\t\\t\\t\\t<span class=\"menuitem-text-detail\">\\n\\t\\t\\t\\t\\t{{ item.longtext }}\\n\\t\\t\\t\\t</span>\\n\\t\\t\\t</p>\\n\\t\\t\\t<span v-else-if=\"item.text\">\\n\\t\\t\\t\\t{{ item.text }}\\n\\t\\t\\t</span>\\n\\t\\t\\t<p v-else-if=\"item.longtext\">\\n\\t\\t\\t\\t{{ item.longtext }}\\n\\t\\t\\t</p>\\n\\t\\t</span>\\n\\t</li>\\n</template>\\n\\n<script>\\nexport default {\\n\\tname: \\'NcPopoverMenuItem\\',\\n\\tprops: {\\n\\t\\titem: {\\n\\t\\t\\ttype: Object,\\n\\t\\t\\trequired: true,\\n\\t\\t\\tdefault: () => {\\n\\t\\t\\t\\treturn {\\n\\t\\t\\t\\t\\tkey: \\'nextcloud-link\\',\\n\\t\\t\\t\\t\\thref: \\'https://nextcloud.com\\',\\n\\t\\t\\t\\t\\ticon: \\'icon-links\\',\\n\\t\\t\\t\\t\\ttext: \\'Nextcloud\\',\\n\\t\\t\\t\\t}\\n\\t\\t\\t},\\n\\t\\t\\t// check the input types\\n\\t\\t\\t// TODO: add more validation of types\\n\\t\\t\\tvalidator: item => {\\n\\t\\t\\t\\t// TODO: support radio\\n\\t\\t\\t\\tif (item.input) {\\n\\t\\t\\t\\t\\treturn [\\'text\\', \\'checkbox\\'].indexOf(item.input) !== -1\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\treturn true\\n\\t\\t\\t},\\n\\t\\t},\\n\\t},\\n\\tcomputed: {\\n\\t\\t// random key for inputs binding if not provided\\n\\t\\tkey() {\\n\\t\\t\\treturn this.item.key\\n\\t\\t\\t\\t? this.item.key\\n\\t\\t\\t\\t: Math.round(Math.random() * 16 * 1000000).toString(16)\\n\\t\\t},\\n\\t\\ticonIsUrl() {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t// eslint-disable-next-line no-new\\n\\t\\t\\t\\tnew URL(this.item.icon)\\n\\t\\t\\t\\treturn true\\n\\t\\t\\t} catch (_) {\\n\\t\\t\\t\\treturn false\\n\\t\\t\\t}\\n\\t\\t},\\n\\t},\\n\\tmethods: {\\n\\t\\t// allow us to use both link and an action on `a`\\n\\t\\t// we still need to make sure item.action exists\\n\\t\\taction(event) {\\n\\t\\t\\tif (this.item.action) {\\n\\t\\t\\t\\tthis.item.action(event)\\n\\t\\t\\t}\\n\\t\\t},\\n\\t},\\n}\\n<\\/script>\\n\\n<style scoped>\\n\\tbutton.menuitem {\\n\\t\\tborder-radius: var(--border-radius-large) !important;\\n\\t\\ttext-align: left;\\n\\t}\\n\\n\\tbutton.menuitem * {\\n\\t\\tcursor: pointer;\\n\\t}\\n\\n\\tbutton.menuitem:disabled {\\n\\t\\topacity: 0.5 !important;\\n\\t\\tcursor: default;\\n\\t}\\n\\n\\tbutton.menuitem:disabled * {\\n\\t\\tcursor: default;\\n\\t}\\n\\n\\t.menuitem.active {\\n\\t\\tborder-left: 4px solid var(--color-primary-element);\\n\\t\\tborder-radius: 0 var(--border-radius-large) var(--border-radius-large) 0 !important;\\n\\t}\\n</style>\\n\\n<style lang=\"scss\" scoped>\\nli {\\n\\tdisplay: flex;\\n\\tflex: 0 0 auto;\\n\\n\\t&.hidden {\\n\\t\\tdisplay: none;\\n\\t}\\n\\n\\t> button,\\n\\t> a,\\n\\t> .menuitem {\\n\\t\\tcursor: pointer;\\n\\t\\tline-height: $clickable-area;\\n\\t\\tborder: 0;\\n\\t\\tbackground-color: transparent;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\t\\theight: auto;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\tfont-weight: normal;\\n\\t\\tbox-shadow: none;\\n\\t\\twidth: 100%;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\twhite-space: nowrap;\\n\\t\\topacity: $opacity_normal;\\n\\n\\t\\t// TODO split into individual components for readability\\n\\t\\tspan[class^=\\'icon-\\'],\\n\\t\\tspan[class*=\\' icon-\\'],\\n\\t\\t&[class^=\\'icon-\\'],\\n\\t\\t&[class*=\\' icon-\\'] {\\n\\t\\t\\tmin-width: 0; /* Overwrite icons*/\\n\\t\\t\\tmin-height: 0;\\n\\t\\t\\tbackground-position: #{$icon-margin} center;\\n\\t\\t\\tbackground-size: $icon-size;\\n\\t\\t}\\n\\n\\t\\tspan[class^=\\'icon-\\'],\\n\\t\\tspan[class*=\\' icon-\\'] {\\n\\t\\t\\t/* Keep padding to define the width to\\n\\t\\t\\t\\tassure correct position of a possible text */\\n\\t\\t\\tpadding: #{math.div($clickable-area, 2)} 0 #{math.div($clickable-area, 2)} $clickable-area;\\n\\t\\t}\\n\\n\\t\\t// If no icons set, force left margin to align\\n\\t\\t&:not([class^=\\'icon-\\']):not([class*=\\'icon-\\']) {\\n\\t\\t\\t> span,\\n\\t\\t\\t> input,\\n\\t\\t\\t> form {\\n\\t\\t\\t\\t&:not([class^=\\'icon-\\']):not([class*=\\'icon-\\']):first-child {\\n\\t\\t\\t\\t\\tmargin-left: $clickable-area;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&[class^=\\'icon-\\'],\\n\\t\\t&[class*=\\' icon-\\'] {\\n\\t\\t\\tpadding: 0 $icon-margin 0 $clickable-area;\\n\\t\\t}\\n\\n\\t\\t&:not(:disabled):hover,\\n\\t\\t&:not(:disabled):focus,\\n\\t\\t&:not(:disabled).active {\\n\\t\\t\\topacity: $opacity_full !important;\\n\\t\\t}\\n\\n\\t\\t/* prevent .action class to break the design */\\n\\t\\t&.action {\\n\\t\\t\\tpadding: inherit !important;\\n\\t\\t}\\n\\n\\t\\t> span {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t// long text area\\n\\t\\t> p {\\n\\t\\t\\twidth: 150px;\\n\\t\\t\\tline-height: 1.6em;\\n\\t\\t\\tpadding: 8px 0;\\n\\t\\t\\twhite-space: normal;\\n\\n\\t\\t\\t// in case there are no spaces like long email addresses\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t// TODO: do we really supports it?\\n\\t\\t> select {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tmargin-left: 6px;\\n\\t\\t}\\n\\n\\t\\t/* Add padding if contains icon+text */\\n\\t\\t&:not(:empty) {\\n\\t\\t\\tpadding-right: $icon-margin !important;\\n\\t\\t}\\n\\n\\t\\t/* DEPRECATED! old img in popover fallback\\n\\t\\t\\t* TODO: to remove */\\n\\t\\t> img {\\n\\t\\t\\twidth: $icon-size;\\n\\t\\t\\theight: $icon-size;\\n\\t\\t\\tmargin: $icon-margin;\\n\\t\\t}\\n\\n\\t\\t/* checkbox/radio fixes */\\n\\t\\t> input.radio + label,\\n\\t\\t> input.checkbox + label {\\n\\t\\t\\tpadding: 0 !important;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t\\t> input.checkbox + label::before {\\n\\t\\t\\tmargin: -2px 13px 0;\\n\\t\\t}\\n\\t\\t> input.radio + label::before {\\n\\t\\t\\tmargin: -2px 12px 0;\\n\\t\\t}\\n\\t\\t> input:not([type=radio]):not([type=checkbox]):not([type=image]) {\\n\\t\\t\\twidth: 150px;\\n\\t\\t}\\n\\n\\t\\t// Forms & text inputs\\n\\t\\tform {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t\\t/* put a small space between text and form\\n\\t\\t\\t\\tif there is an element before */\\n\\t\\t\\t&:not(:first-child) {\\n\\t\\t\\t\\tmargin-left: 5px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t/* no margin if hidden span before */\\n\\t\\t> span.hidden + form,\\n\\t\\t> span[style*=\\'display:none\\'] + form {\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t}\\n\\t\\t/* Inputs inside popover supports text, submit & reset */\\n\\t\\tinput {\\n\\t\\t\\tmin-width: $clickable-area;\\n\\t\\t\\tmax-height: #{$clickable-area - 4px}; /* twice the element margin-y */\\n\\t\\t\\tmargin: 2px 0;\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t\\t// space between inline inputs\\n\\t\\t\\t&:not(:first-child) {\\n\\t\\t\\t\\tmargin-left: 5px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// TODO: do that in js, should be cleaner\\n\\t/* css hack, only first not hidden */\\n\\t&:not(.hidden):not([style*=\\'display:none\\']) {\\n\\t\\t&:first-of-type {\\n\\t\\t\\t> button, > a, > .menuitem {\\n\\t\\t\\t\\t> form, > input {\\n\\t\\t\\t\\t\\tmargin-top: $icon-margin - 2px; // minus the input margin\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t&:last-of-type {\\n\\t\\t\\t> button, > a, > .menuitem {\\n\\t\\t\\t\\t> form, > input {\\n\\t\\t\\t\\t\\tmargin-bottom: $icon-margin - 2px; // minus the input margin\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\t> button {\\n\\t\\tpadding: 0;\\n\\t\\tspan {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t}\\n\\t}\\n}\\n</style>\\n'],sourceRoot:\"\"}]);const s=a},7856:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>c});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o),s=n(5425),l=a()(r());l.i(s.Z),l.push([t.id,\"\\n/* stylelint-disable-next-line scss/at-import-partial-extension */\\na[data-v-57480046]:not(.rich-text--component) {\\n\\ttext-decoration: underline;\\n}\\n\",\"\",{version:3,sources:[\"webpack://./src/components/NcRichText/NcRichText.vue\"],names:[],mappings:\";AAkPA,iEAAA;AAGA;CACA,0BAAA;AACA\",sourcesContent:[\"\\x3c!--\\n - @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>\\n -\\n - @author Julius Härtl <jus@bitgrid.net>\\n - @author Guido Krömer <mail@cacodaemon.de>\\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 --\\x3e\\n<docs>\\n```vue\\n<template>\\n\\t<div>\\n\\t\\t<textarea v-model=\\\"text\\\" />\\n\\t\\t<NcCheckboxRadioSwitch :checked.sync=\\\"autolink\\\" type=\\\"checkbox\\\">Autolink</NcCheckboxRadioSwitch>\\n\\t\\t<NcCheckboxRadioSwitch :checked.sync=\\\"useMarkdown\\\" type=\\\"checkbox\\\">Use Markdown</NcCheckboxRadioSwitch>\\n\\n\\t\\t<NcRichText\\n\\t\\t\\t:text=\\\"text\\\" :autolink=\\\"autolink\\\" :arguments=\\\"args\\\"\\n\\t\\t\\t:use-markdown=\\\"useMarkdown\\\" />\\n\\t</div>\\n</template>\\n<script>\\nexport default {\\n\\tdata() {\\n\\t\\treturn {\\n\\t\\t\\ttext: `Hello {username}. The file {file} was added by {username}. Go visit https://nextcloud.com\\n\\nLocal IP: http://127.0.0.1/status.php should be clickable\\n\\nSome examples for markdown syntax: **bold text** *italic text* ~~strikethrough~~`,\\n\\t\\t\\tautolink: true,\\n\\t\\t\\tuseMarkdown: true,\\n\\t\\t\\targs: {\\n\\t\\t\\t\\tfile: 'MyDocument.odt',\\n\\t\\t\\t\\tusername: {\\n\\t\\t\\t\\t\\tcomponent: 'NcUserBubble',\\n\\t\\t\\t\\t\\tprops: {\\n\\t\\t\\t\\t\\t\\tdisplayName: 'Jane Doe'\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t},\\n\\t\\t}\\n\\t},\\n}\\n<\\/script>\\n<style lang=\\\"scss\\\">\\ntextarea {\\n\\twidth: 100%;\\n\\theight: 100px;\\n}\\n</style>\\n```\\n</docs>\\n\\n<script>\\nimport NcReferenceList from './NcReferenceList.vue'\\nimport { remarkAutolink } from './autolink.js'\\nimport { remarkPlaceholder, prepareTextNode } from './placeholder.js'\\n\\nimport { unified } from 'unified'\\nimport markdown from 'remark-parse'\\nimport breaks from 'remark-breaks'\\nimport remark2rehype from 'remark-rehype'\\nimport rehype2react from 'rehype-react'\\nimport remarkExternalLinks from 'remark-external-links'\\n\\nexport default {\\n\\tname: 'NcRichText',\\n\\tcomponents: {\\n\\t\\tNcReferenceList,\\n\\t},\\n\\tprops: {\\n\\t\\ttext: {\\n\\t\\t\\ttype: String,\\n\\t\\t\\tdefault: '',\\n\\t\\t},\\n\\t\\targuments: {\\n\\t\\t\\ttype: Object,\\n\\t\\t\\tdefault: () => {\\n\\t\\t\\t\\treturn {}\\n\\t\\t\\t},\\n\\t\\t},\\n\\t\\treferenceLimit: {\\n\\t\\t\\ttype: Number,\\n\\t\\t\\tdefault: 0,\\n\\t\\t},\\n\\t\\t/** Provide data upfront to avoid extra http request */\\n\\t\\treferences: {\\n\\t\\t\\ttype: Object,\\n\\t\\t\\tdefault: null,\\n\\t\\t},\\n\\t\\tmarkdownCssClasses: {\\n\\t\\t\\ttype: Object,\\n\\t\\t\\tdefault: () => {\\n\\t\\t\\t\\treturn {\\n\\t\\t\\t\\t\\ta: 'rich-text--external-link',\\n\\t\\t\\t\\t\\tol: 'rich-text--ordered-list',\\n\\t\\t\\t\\t\\tul: 'rich-text--un-ordered-list',\\n\\t\\t\\t\\t\\tli: 'rich-text--list-item',\\n\\t\\t\\t\\t\\tstrong: 'rich-text--strong',\\n\\t\\t\\t\\t\\tem: 'rich-text--italic',\\n\\t\\t\\t\\t\\th1: 'rich-text--heading rich-text--heading-1',\\n\\t\\t\\t\\t\\th2: 'rich-text--heading rich-text--heading-2',\\n\\t\\t\\t\\t\\th3: 'rich-text--heading rich-text--heading-3',\\n\\t\\t\\t\\t\\th4: 'rich-text--heading rich-text--heading-4',\\n\\t\\t\\t\\t\\th5: 'rich-text--heading rich-text--heading-5',\\n\\t\\t\\t\\t\\th6: 'rich-text--heading rich-text--heading-6',\\n\\t\\t\\t\\t\\thr: 'rich-text--hr',\\n\\t\\t\\t\\t\\ttable: 'rich-text--table',\\n\\t\\t\\t\\t\\tpre: 'rich-text--pre',\\n\\t\\t\\t\\t\\tcode: 'rich-text--code',\\n\\t\\t\\t\\t\\tblockquote: 'rich-text--blockquote',\\n\\t\\t\\t\\t}\\n\\t\\t\\t},\\n\\t\\t},\\n\\t\\tuseMarkdown: {\\n\\t\\t\\ttype: Boolean,\\n\\t\\t\\tdefault: false,\\n\\t\\t},\\n\\t\\tautolink: {\\n\\t\\t\\ttype: Boolean,\\n\\t\\t\\tdefault: true,\\n\\t\\t},\\n\\t},\\n\\tmethods: {\\n\\t\\trenderPlaintext(h) {\\n\\t\\t\\tconst context = this\\n\\t\\t\\tconst placeholders = this.text.split(/(\\\\{[a-z\\\\-_.0-9]+\\\\})/ig).map(function(entry, index, list) {\\n\\t\\t\\t\\tconst matches = entry.match(/^\\\\{([a-z\\\\-_.0-9]+)\\\\}$/i)\\n\\t\\t\\t\\t// just return plain string nodes as text\\n\\t\\t\\t\\tif (!matches) {\\n\\t\\t\\t\\t\\treturn prepareTextNode({ h, context }, entry)\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t// return component instance if argument is an object\\n\\t\\t\\t\\tconst argumentId = matches[1]\\n\\t\\t\\t\\tconst argument = context.arguments[argumentId]\\n\\t\\t\\t\\tif (typeof argument === 'object') {\\n\\t\\t\\t\\t\\tconst { component, props } = argument\\n\\t\\t\\t\\t\\treturn h(component, {\\n\\t\\t\\t\\t\\t\\tprops,\\n\\t\\t\\t\\t\\t\\tclass: 'rich-text--component',\\n\\t\\t\\t\\t\\t})\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tif (argument) {\\n\\t\\t\\t\\t\\treturn h('span', { class: 'rich-text--fallback' }, argument)\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\treturn entry\\n\\t\\t\\t})\\n\\t\\t\\treturn h('div', { class: 'rich-text--wrapper' }, [\\n\\t\\t\\t\\th('div', {}, placeholders.flat()),\\n\\t\\t\\t\\tthis.referenceLimit > 0\\n\\t\\t\\t\\t\\t? h('div', { class: 'rich-text--reference-widget' }, [\\n\\t\\t\\t\\t\\t\\th(NcReferenceList, { props: { text: this.text, referenceData: this.references } }),\\n\\t\\t\\t\\t\\t])\\n\\t\\t\\t\\t\\t: null,\\n\\t\\t\\t])\\n\\t\\t},\\n\\t\\trenderMarkdown(h) {\\n\\t\\t\\tconst renderedMarkdown = unified()\\n\\t\\t\\t\\t.use(markdown)\\n\\t\\t\\t\\t.use(remarkAutolink, {\\n\\t\\t\\t\\t\\tautolink: this.autolink,\\n\\t\\t\\t\\t\\tuseMarkdown: this.useMarkdown,\\n\\t\\t\\t\\t})\\n\\t\\t\\t\\t.use(remarkExternalLinks, {\\n\\t\\t\\t\\t\\ttarget: '_blank',\\n\\t\\t\\t\\t\\trel: ['noopener noreferrer'],\\n\\t\\t\\t\\t})\\n\\t\\t\\t\\t.use(breaks)\\n\\t\\t\\t\\t.use(remark2rehype, {\\n\\t\\t\\t\\t\\thandlers: {\\n\\t\\t\\t\\t\\t\\tcomponent(toHast, node) {\\n\\t\\t\\t\\t\\t\\t\\treturn toHast(node, node.component, { value: node.value })\\n\\t\\t\\t\\t\\t\\t},\\n\\t\\t\\t\\t\\t},\\n\\t\\t\\t\\t})\\n\\t\\t\\t\\t// .use(rehypeAddClasses, this.markdownCssClasses)\\n\\t\\t\\t\\t.use(remarkPlaceholder)\\n\\t\\t\\t\\t.use(rehype2react, {\\n\\t\\t\\t\\t\\tcreateElement: (tag, attrs, children) => {\\n\\t\\t\\t\\t\\t\\tif (!tag.startsWith('#')) {\\n\\t\\t\\t\\t\\t\\t\\treturn h(tag, attrs, children)\\n\\t\\t\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t\\t\\tconst placeholder = this.arguments[tag.slice(1)]\\n\\t\\t\\t\\t\\t\\tif (!placeholder) {\\n\\t\\t\\t\\t\\t\\t\\treturn h('span', { ...{ attrs }, ...{ class: 'rich-text--fallback' } }, [`{${tag.slice(1)}}`])\\n\\t\\t\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t\\t\\tif (!placeholder.component) {\\n\\t\\t\\t\\t\\t\\t\\treturn h('span', attrs, [placeholder])\\n\\t\\t\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t\\t\\treturn h(\\n\\t\\t\\t\\t\\t\\t\\tplaceholder.component,\\n\\t\\t\\t\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\t\\t\\tattrs,\\n\\t\\t\\t\\t\\t\\t\\t\\tprops: placeholder.props,\\n\\t\\t\\t\\t\\t\\t\\t\\tclass: 'rich-text--component',\\n\\t\\t\\t\\t\\t\\t\\t},\\n\\t\\t\\t\\t\\t\\t\\tchildren\\n\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t},\\n\\t\\t\\t\\t\\tprefix: false,\\n\\t\\t\\t\\t})\\n\\t\\t\\t\\t.processSync(this.text)\\n\\t\\t\\t\\t.result\\n\\n\\t\\t\\treturn h('div', { class: 'rich-text--wrapper' }, [\\n\\t\\t\\t\\trenderedMarkdown,\\n\\t\\t\\t\\tthis.referenceLimit > 0\\n\\t\\t\\t\\t\\t? h('div', { class: 'rich-text--reference-widget' }, [\\n\\t\\t\\t\\t\\t\\th(NcReferenceList, { props: { text: this.text, referenceData: this.references } }),\\n\\t\\t\\t\\t\\t])\\n\\t\\t\\t\\t\\t: null,\\n\\t\\t\\t])\\n\\t\\t},\\n\\t},\\n\\trender(h) {\\n\\t\\tif (!this.useMarkdown) {\\n\\t\\t\\treturn this.renderPlaintext(h)\\n\\t\\t}\\n\\n\\t\\treturn this.renderMarkdown(h)\\n\\t},\\n}\\n<\\/script>\\n<style scoped>\\n/* stylelint-disable-next-line scss/at-import-partial-extension */\\n@import './richtext.scss';\\n\\na:not(.rich-text--component) {\\n\\ttext-decoration: underline;\\n}\\n</style>\\n\"],sourceRoot:\"\"}]);const c=l},5425:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>s});var i=n(7537),r=n.n(i),o=n(3645),a=n.n(o)()(r());a.push([t.id,\"/**\\n * Styles are extracted to extract scss to dist folder, too.\\n */\\n\\n.rich-text--wrapper {\\n\\tword-break: break-word;\\n\\tline-height: 1.5;\\n\\n\\t.rich-text--fallback, .rich-text-component {\\n\\t\\tdisplay: inline;\\n\\t}\\n\\n\\t.rich-text--external-link {\\n\\t\\ttext-decoration: underline;\\n\\t\\t&:after {\\n\\t\\t\\tcontent: ' ↗';\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--ordered-list {\\n\\t\\t.rich-text--list-item {\\n\\t\\t\\tlist-style: decimal;\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--un-ordered-list {\\n\\t\\t.rich-text--list-item {\\n\\t\\t\\tlist-style: initial;\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--list-item {\\n\\t\\twhite-space: initial;\\n\\t\\tcolor: var(--color-text-light);\\n\\t\\tpadding: initial;\\n\\t\\tmargin-left: 20px;\\n\\n\\t\\t&.task-list-item {\\n\\t\\t\\tlist-style: none;\\n\\t\\t\\twhite-space: initial;\\n\\t\\t\\tcolor: var(--color-text-light);\\n\\n\\t\\t\\tinput {\\n\\t\\t\\t\\tmin-height: initial;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--strong {\\n\\t\\twhite-space: initial;\\n\\t\\tfont-weight: bold;\\n\\t\\tcolor: var(--color-text-light);\\n\\t}\\n\\n\\t.rich-text--italic {\\n\\t\\twhite-space: initial;\\n\\t\\tfont-style: italic;\\n\\t\\tcolor: var(--color-text-light);\\n\\t}\\n\\n\\t.rich-text--heading {\\n\\t\\twhite-space: initial;\\n\\t\\tfont-size: initial;\\n\\t\\tcolor: var(--color-text-light);\\n\\t\\tmargin-bottom: 5px;\\n\\t\\tmargin-top: 5px;\\n\\t\\tfont-weight: bold;\\n\\n\\t\\t&.rich-text--heading-1 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-2 {\\n\\t\\t\\tfont-size: 19px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-3 {\\n\\t\\t\\tfont-size: 18px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-4 {\\n\\t\\t\\tfont-size: 17px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-5 {\\n\\t\\t\\tfont-size: 16px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-6 {\\n\\t\\t\\tfont-size: 15px;\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--hr {\\n\\t\\tborder-top: 1px solid var(--color-border-dark);\\n\\t\\tborder-bottom: 0;\\n\\t}\\n\\n\\t.rich-text--pre {\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\tpadding: 5px;\\n\\t}\\n\\n\\t.rich-text--code {\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t}\\n\\n\\t.rich-text--blockquote {\\n\\t\\tborder-left: 3px solid var(--color-border-dark);\\n\\t\\tpadding-left: 5px;\\n\\t}\\n\\n\\t.rich-text--table {\\n\\t\\tborder-collapse: collapse;\\n\\n\\t\\tthead tr th {\\n\\t\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tpadding: 6px 13px;\\n\\t\\t}\\n\\n\\t\\ttbody tr {\\n\\t\\t\\ttd {\\n\\t\\t\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\t\\t\\tpadding: 6px 13px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:nth-child(even) {\\n\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\",\"\",{version:3,sources:[\"webpack://./src/components/NcRichText/richtext.scss\"],names:[],mappings:\"AAAA;;EAEE;;AAEF;CACC,sBAAsB;CACtB,gBAAgB;;CAEhB;EACC,eAAe;CAChB;;CAEA;EACC,0BAA0B;EAC1B;GACC,aAAa;EACd;CACD;;CAEA;EACC;GACC,mBAAmB;EACpB;CACD;;CAEA;EACC;GACC,mBAAmB;EACpB;CACD;;CAEA;EACC,oBAAoB;EACpB,8BAA8B;EAC9B,gBAAgB;EAChB,iBAAiB;;EAEjB;GACC,gBAAgB;GAChB,oBAAoB;GACpB,8BAA8B;;GAE9B;IACC,mBAAmB;GACpB;EACD;CACD;;CAEA;EACC,oBAAoB;EACpB,iBAAiB;EACjB,8BAA8B;CAC/B;;CAEA;EACC,oBAAoB;EACpB,kBAAkB;EAClB,8BAA8B;CAC/B;;CAEA;EACC,oBAAoB;EACpB,kBAAkB;EAClB,8BAA8B;EAC9B,kBAAkB;EAClB,eAAe;EACf,iBAAiB;;EAEjB;GACC,eAAe;EAChB;;EAEA;GACC,eAAe;EAChB;;EAEA;GACC,eAAe;EAChB;;EAEA;GACC,eAAe;EAChB;;EAEA;GACC,eAAe;EAChB;;EAEA;GACC,eAAe;EAChB;CACD;;CAEA;EACC,8CAA8C;EAC9C,gBAAgB;CACjB;;CAEA;EACC,0CAA0C;EAC1C,8CAA8C;EAC9C,YAAY;CACb;;CAEA;EACC,8CAA8C;CAC/C;;CAEA;EACC,+CAA+C;EAC/C,iBAAiB;CAClB;;CAEA;EACC,yBAAyB;;EAEzB;GACC,0CAA0C;GAC1C,iBAAiB;GACjB,iBAAiB;EAClB;;EAEA;GACC;IACC,0CAA0C;IAC1C,iBAAiB;GAClB;;GAEA;IACC,8CAA8C;GAC/C;EACD;CACD;AACD\",sourcesContent:[\"/**\\n * Styles are extracted to extract scss to dist folder, too.\\n */\\n\\n.rich-text--wrapper {\\n\\tword-break: break-word;\\n\\tline-height: 1.5;\\n\\n\\t.rich-text--fallback, .rich-text-component {\\n\\t\\tdisplay: inline;\\n\\t}\\n\\n\\t.rich-text--external-link {\\n\\t\\ttext-decoration: underline;\\n\\t\\t&:after {\\n\\t\\t\\tcontent: ' ↗';\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--ordered-list {\\n\\t\\t.rich-text--list-item {\\n\\t\\t\\tlist-style: decimal;\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--un-ordered-list {\\n\\t\\t.rich-text--list-item {\\n\\t\\t\\tlist-style: initial;\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--list-item {\\n\\t\\twhite-space: initial;\\n\\t\\tcolor: var(--color-text-light);\\n\\t\\tpadding: initial;\\n\\t\\tmargin-left: 20px;\\n\\n\\t\\t&.task-list-item {\\n\\t\\t\\tlist-style: none;\\n\\t\\t\\twhite-space: initial;\\n\\t\\t\\tcolor: var(--color-text-light);\\n\\n\\t\\t\\tinput {\\n\\t\\t\\t\\tmin-height: initial;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--strong {\\n\\t\\twhite-space: initial;\\n\\t\\tfont-weight: bold;\\n\\t\\tcolor: var(--color-text-light);\\n\\t}\\n\\n\\t.rich-text--italic {\\n\\t\\twhite-space: initial;\\n\\t\\tfont-style: italic;\\n\\t\\tcolor: var(--color-text-light);\\n\\t}\\n\\n\\t.rich-text--heading {\\n\\t\\twhite-space: initial;\\n\\t\\tfont-size: initial;\\n\\t\\tcolor: var(--color-text-light);\\n\\t\\tmargin-bottom: 5px;\\n\\t\\tmargin-top: 5px;\\n\\t\\tfont-weight: bold;\\n\\n\\t\\t&.rich-text--heading-1 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-2 {\\n\\t\\t\\tfont-size: 19px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-3 {\\n\\t\\t\\tfont-size: 18px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-4 {\\n\\t\\t\\tfont-size: 17px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-5 {\\n\\t\\t\\tfont-size: 16px;\\n\\t\\t}\\n\\n\\t\\t&.rich-text--heading-6 {\\n\\t\\t\\tfont-size: 15px;\\n\\t\\t}\\n\\t}\\n\\n\\t.rich-text--hr {\\n\\t\\tborder-top: 1px solid var(--color-border-dark);\\n\\t\\tborder-bottom: 0;\\n\\t}\\n\\n\\t.rich-text--pre {\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\tpadding: 5px;\\n\\t}\\n\\n\\t.rich-text--code {\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t}\\n\\n\\t.rich-text--blockquote {\\n\\t\\tborder-left: 3px solid var(--color-border-dark);\\n\\t\\tpadding-left: 5px;\\n\\t}\\n\\n\\t.rich-text--table {\\n\\t\\tborder-collapse: collapse;\\n\\n\\t\\tthead tr th {\\n\\t\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tpadding: 6px 13px;\\n\\t\\t}\\n\\n\\t\\ttbody tr {\\n\\t\\t\\ttd {\\n\\t\\t\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\t\\t\\tpadding: 6px 13px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:nth-child(even) {\\n\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]);const s=a},3645:t=>{\"use strict\";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=\"\",i=void 0!==e[5];return e[4]&&(n+=\"@supports (\".concat(e[4],\") {\")),e[2]&&(n+=\"@media \".concat(e[2],\" {\")),i&&(n+=\"@layer\".concat(e[5].length>0?\" \".concat(e[5]):\"\",\" {\")),n+=t(e),i&&(n+=\"}\"),e[2]&&(n+=\"}\"),e[4]&&(n+=\"}\"),n})).join(\"\")},e.i=function(t,n,i,r,o){\"string\"==typeof t&&(t=[[null,t,void 0]]);var a={};if(i)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);i&&a[u[0]]||(void 0!==o&&(void 0===u[5]||(u[1]=\"@layer\".concat(u[5].length>0?\" \".concat(u[5]):\"\",\" {\").concat(u[1],\"}\")),u[5]=o),n&&(u[2]?(u[1]=\"@media \".concat(u[2],\" {\").concat(u[1],\"}\"),u[2]=n):u[2]=n),r&&(u[4]?(u[1]=\"@supports (\".concat(u[4],\") {\").concat(u[1],\"}\"),u[4]=r):u[4]=\"\".concat(r)),e.push(u))}},e}},1667:t=>{\"use strict\";t.exports=function(t,e){return e||(e={}),t?(t=String(t.__esModule?t.default:t),/^['\"].*['\"]$/.test(t)&&(t=t.slice(1,-1)),e.hash&&(t+=e.hash),/[\"'() \\t\\n]|(%20)/.test(t)||e.needQuotes?'\"'.concat(t.replace(/\"/g,'\\\\\"').replace(/\\n/g,\"\\\\n\"),'\"'):t):t}},7537:t=>{\"use strict\";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if(\"function\"==typeof btoa){var i=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),r=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(i),o=\"/*# \".concat(r,\" */\");return[e].concat([o]).join(\"\\n\")}return[e].join(\"\\n\")}},5664:(t,e,n)=>{\"use strict\";var i=n(3379),r=n.n(i),o=n(7795),a=n.n(o),s=n(569),l=n.n(s),c=n(3565),u=n.n(c),d=n(9216),p=n.n(d),A=n(4589),m=n.n(A),h=n(847),f={};f.styleTagTransform=m(),f.setAttributes=u(),f.insert=l().bind(null,\"head\"),f.domAPI=a(),f.insertStyleElement=p();r()(h.Z,f),h.Z&&h.Z.locals&&h.Z.locals},3379:t=>{\"use strict\";var e=[];function n(t){for(var n=-1,i=0;i<e.length;i++)if(e[i].identifier===t){n=i;break}return n}function i(t,i){for(var o={},a=[],s=0;s<t.length;s++){var l=t[s],c=i.base?l[0]+i.base:l[0],u=o[c]||0,d=\"\".concat(c,\" \").concat(u);o[c]=u+1;var p=n(d),A={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)e[p].references++,e[p].updater(A);else{var m=r(A,i);i.byIndex=s,e.splice(s,0,{identifier:d,updater:m,references:1})}a.push(d)}return a}function r(t,e){var n=e.domAPI(e);n.update(t);return function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,r){var o=i(t=t||[],r=r||{});return function(t){t=t||[];for(var a=0;a<o.length;a++){var s=n(o[a]);e[s].references--}for(var l=i(t,r),c=0;c<o.length;c++){var u=n(o[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}o=l}}},569:t=>{\"use strict\";var e={};t.exports=function(t,n){var i=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!i)throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");i.appendChild(n)}},9216:t=>{\"use strict\";t.exports=function(t){var e=document.createElement(\"style\");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{\"use strict\";t.exports=function(t){var e=n.nc;e&&t.setAttribute(\"nonce\",e)}},7795:t=>{\"use strict\";t.exports=function(t){var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var i=\"\";n.supports&&(i+=\"@supports (\".concat(n.supports,\") {\")),n.media&&(i+=\"@media \".concat(n.media,\" {\"));var r=void 0!==n.layer;r&&(i+=\"@layer\".concat(n.layer.length>0?\" \".concat(n.layer):\"\",\" {\")),i+=n.css,r&&(i+=\"}\"),n.media&&(i+=\"}\"),n.supports&&(i+=\"}\");var o=n.sourceMap;o&&\"undefined\"!=typeof btoa&&(i+=\"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o)))),\" */\")),e.styleTagTransform(i,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{\"use strict\";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},9563:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>c});var i=n(1039),r=n(5495),o=(n(9521),n(1900)),a=n(4348),s=n.n(a),l=(0,o.Z)(r.Z,i.s,i.x,!1,null,\"f50b337c\",null);\"function\"==typeof s()&&s()(l);const c=l.exports},4470:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>C});var i=n(4262);const r={name:\"NcMentionBubble\",props:{id:{type:String,required:!0},label:{type:String,required:!0},icon:{type:String,required:!0},iconUrl:{type:[String,null],default:null},source:{type:String,required:!0},primary:{type:Boolean,default:!1}},computed:{avatarUrl:function(){return this.iconUrl?this.iconUrl:this.id&&\"users\"===this.source?this.getAvatarUrl(this.id,44):null},mentionText:function(){return this.id.includes(\" \")||this.id.includes(\"/\")?'@\"'.concat(this.id,'\"'):\"@\".concat(this.id)}},methods:{getAvatarUrl:function(t,e){return(0,i.generateUrl)(\"/avatar/{user}/{size}\",{user:t,size:e})}}};var o=n(3379),a=n.n(o),s=n(7795),l=n.n(s),c=n(569),u=n.n(c),d=n(3565),p=n.n(d),A=n(9216),m=n.n(A),h=n(4589),f=n.n(h),v=n(5594),g={};g.styleTagTransform=f(),g.setAttributes=p(),g.insert=u().bind(null,\"head\"),g.domAPI=l(),g.insertStyleElement=m();a()(v.Z,g);v.Z&&v.Z.locals&&v.Z.locals;const C=(0,n(1900).Z)(r,(function(){var t=this,e=t._self._c;return e(\"span\",{staticClass:\"mention-bubble\",class:{\"mention-bubble--primary\":t.primary},attrs:{contenteditable:\"false\"}},[e(\"span\",{staticClass:\"mention-bubble__wrapper\"},[e(\"span\",{staticClass:\"mention-bubble__content\"},[e(\"span\",{staticClass:\"mention-bubble__icon\",class:[t.icon,\"mention-bubble__icon--\".concat(t.avatarUrl?\"with-avatar\":\"\")],style:t.avatarUrl?{backgroundImage:\"url(\".concat(t.avatarUrl,\")\")}:null}),t._v(\" \"),e(\"span\",{staticClass:\"mention-bubble__title\",attrs:{role:\"heading\",title:t.label}})]),t._v(\" \"),e(\"span\",{staticClass:\"mention-bubble__select\",attrs:{role:\"none\"}},[t._v(t._s(t.mentionText))])])])}),[],!1,null,\"8a961b36\",null).exports},5495:(t,e,n)=>{\"use strict\";n.d(e,{Z:()=>i});const i=n(9456).Z},9521:(t,e,n)=>{\"use strict\";n(5664)},5727:()=>{},3051:()=>{},2102:()=>{},9258:()=>{},6274:()=>{},1287:()=>{},4348:()=>{},8488:()=>{},9280:()=>{},9989:()=>{},6049:()=>{},2405:()=>{},1174:()=>{},3407:()=>{},5439:()=>{},1900:(t,e,n)=>{\"use strict\";function i(t,e,n,i,r,o,a,s){var l,c=\"function\"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),i&&(c.functional=!0),o&&(c._scopeId=\"data-v-\"+o),a?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),r&&r.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):r&&(l=s?function(){r.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:r),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,{Z:()=>i})},7127:t=>{\"use strict\";t.exports=\"data:image/svg+xml;base64,PCEtLSBUaGlzIGljb24gaXMgcGFydCBvZiBNYXRlcmlhbCBVSSBJY29ucy4gQ29weXJpZ2h0IDIwMjAgR29vZ2xlIEluYy4sIEFwYWNoZS0yLjAgTGljZW5zZSAtLT4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTS00LTRoMjR2MjRILTR6Ii8+PHBhdGggZD0iTTYuOS4xQzMgLjYtLjEgNC0uMSA4YzAgNC40IDMuNiA4IDggOCA0IDAgNy40LTMgOC02LjktMS4yIDEuMy0yLjkgMi4xLTQuNyAyLjEtMy41IDAtNi40LTIuOS02LjQtNi40IDAtMS45LjgtMy42IDIuMS00Ljd6IiBmaWxsPSIjZjRhMzMxIi8+PC9zdmc+Cg==\"},2605:t=>{\"use strict\";t.exports=\"data:image/svg+xml;base64,PCEtLSBUaGlzIGljb24gaXMgcGFydCBvZiBNYXRlcmlhbCBVSSBJY29ucy4gQ29weXJpZ2h0IDIwMjAgR29vZ2xlIEluYy4sIEFwYWNoZS0yLjAgTGljZW5zZSAtLT4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTS00LTRoMjR2MjRILTRWLTR6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTggMEMzLjYgMCAwIDMuNiAwIDhzMy42IDggOCA4IDgtMy42IDgtOC0zLjYtOC04LTh6IiBmaWxsPSIjZWQ0ODRjIi8+PHBhdGggZD0iTTUgNi41aDZjLjggMCAxLjUuNyAxLjUgMS41cy0uNyAxLjUtMS41IDEuNUg1Yy0uOCAwLTEuNS0uNy0xLjUtMS41UzQuMiA2LjUgNSA2LjV6IiBmaWxsPSIjZmRmZmZmIi8+PC9zdmc+Cg==\"},3423:t=>{\"use strict\";t.exports=\"data:image/svg+xml;base64,PCEtLSBUaGlzIGljb24gaXMgcGFydCBvZiBNYXRlcmlhbCBVSSBJY29ucy4gQ29weXJpZ2h0IDIwMjAgR29vZ2xlIEluYy4sIEFwYWNoZS0yLjAgTGljZW5zZSAtLT4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTQuOCAxMS4yaDYuNFY0LjhINC44djYuNHpNOCAwQzMuNiAwIDAgMy42IDAgOHMzLjYgOCA4IDggOC0zLjYgOC04LTMuNi04LTgtOHoiIGZpbGw9IiM0OWIzODIiLz48L3N2Zz4K\"},3607:t=>{\"use strict\";t.exports=require(\"@nextcloud/auth\")},768:t=>{\"use strict\";t.exports=require(\"@nextcloud/axios\")},7672:t=>{\"use strict\";t.exports=require(\"@nextcloud/browser-storage\")},542:t=>{\"use strict\";t.exports=require(\"@nextcloud/event-bus\")},733:t=>{\"use strict\";t.exports=require(\"@nextcloud/initial-state\")},7931:t=>{\"use strict\";t.exports=require(\"@nextcloud/l10n/gettext\")},4262:t=>{\"use strict\";t.exports=require(\"@nextcloud/router\")},4055:t=>{\"use strict\";t.exports=require(\"@vueuse/components\")},9454:t=>{\"use strict\";t.exports=require(\"floating-vue\")},4505:t=>{\"use strict\";t.exports=require(\"focus-trap\")},2640:t=>{\"use strict\";t.exports=require(\"hammerjs\")},2734:t=>{\"use strict\";t.exports=require(\"vue\")},5512:t=>{\"use strict\";t.exports=require(\"vue-material-design-icons/AlertCircleOutline.vue\")},6921:t=>{\"use strict\";t.exports=require(\"vue-material-design-icons/ArrowLeft.vue\")},3875:t=>{\"use strict\";t.exports=require(\"vue-material-design-icons/ArrowRight.vue\")},6915:t=>{\"use strict\";t.exports=require(\"vue-material-design-icons/Check.vue\")},9044:t=>{\"use strict\";t.exports=require(\"vue-material-design-icons/ChevronRight.vue\")},8618:t=>{\"use strict\";t.exports=require(\"vue-material-design-icons/Close.vue\")},1441:t=>{\"use strict\";t.exports=require(\"vue-material-design-icons/DotsHorizontal.vue\")}},e={};function n(i){var r=e[i];if(void 0!==r)return r.exports;var o=e[i]={id:i,exports:{}};return t[i](o,o.exports,n),o.exports}n.m=t,n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var i in e)n.o(e,i)&&!n.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},n.b=document.baseURI||self.location.href,n.nc=void 0;var i={};return(()=>{\"use strict\";n.r(i),n.d(i,{NcCustomPickerRenderResult:()=>ht,NcReferenceList:()=>N,NcReferencePicker:()=>ge,NcReferencePickerModal:()=>Pe,NcReferenceWidget:()=>y,NcRichText:()=>dt,NcSearch:()=>Ae,anyLinkProviderId:()=>_t,default:()=>Me,getLinkWithPicker:()=>Ge,getProvider:()=>Bt,getProviders:()=>jt,isCustomPickerElementRegistered:()=>ft,isWidgetRegistered:()=>t,registerCustomPickerElement:()=>vt,registerWidget:()=>e,renderCustomPickerElement:()=>gt,renderWidget:()=>r,searchProvider:()=>Nt,sortProviders:()=>Et});window._vue_richtext_widgets||(window._vue_richtext_widgets={});var t=function(t){return!!window._vue_richtext_widgets[t]},e=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(t){};window._vue_richtext_widgets[t]?console.error(\"Widget for id \"+t+\" already registered\"):window._vue_richtext_widgets[t]={id:t,callback:e,onDestroy:n}},r=function(t,e){var n=e.richObjectType,i=e.richObject,r=e.accessible;\"open-graph\"!==n&&(window._vue_richtext_widgets[n]?window._vue_richtext_widgets[n].callback(t,{richObjectType:n,richObject:i,accessible:r}):console.error(\"Widget for rich object type \"+n+\" not registered\"))};window._registerWidget=e;const o={name:\"NcReferenceWidget\",props:{reference:{type:Object,required:!0}},data:function(){return{compact:3}},computed:{hasCustomWidget:function(){return t(this.reference.richObjectType)},noAccess:function(){return this.reference&&!this.reference.accessible},descriptionStyle:function(){if(0===this.compact)return{display:\"none\"};var t=this.compact<4?this.compact:3;return{lineClamp:t,webkitLineClamp:t}},compactLink:function(){var t=this.reference.openGraphObject.link;return t?t.startsWith(\"https://\")?t.substring(8):t.startsWith(\"http://\")?t.substring(7):t:\"\"}},mounted:function(){var t=this;this.renderWidget(),this.observer=new ResizeObserver((function(e){e[0].contentRect.width<450?t.compact=0:e[0].contentRect.width<550?t.compact=1:e[0].contentRect.width<650?t.compact=2:t.compact=3})),this.observer.observe(this.$el)},beforeDestroy:function(){var t,e;this.observer.disconnect(),t=this.reference.richObjectType,e=this.$el,\"open-graph\"!==t&&window._vue_richtext_widgets[t]&&window._vue_richtext_widgets[t].onDestroy(e)},methods:{renderWidget:function(){var t,e=this;this.$refs.customWidget&&(this.$refs.customWidget.innerHTML=\"\"),\"open-graph\"!==(null==this||null===(t=this.reference)||void 0===t?void 0:t.richObjectType)&&this.$nextTick((function(){r(e.$refs.customWidget,e.reference)}))}}};var a=n(3379),s=n.n(a),l=n(7795),c=n.n(l),u=n(569),d=n.n(u),p=n(3565),A=n.n(p),m=n(9216),h=n.n(m),f=n(4589),v=n.n(f),g=n(1880),C={};C.styleTagTransform=v(),C.setAttributes=A(),C.insert=d().bind(null,\"head\"),C.domAPI=c(),C.insertStyleElement=h();s()(g.Z,C);g.Z&&g.Z.locals&&g.Z.locals;var b=n(1900);const y=(0,b.Z)(o,(function(){var t=this,e=t._self._c;return e(\"div\",[t.reference&&t.hasCustomWidget?e(\"div\",{staticClass:\"widget-custom\"},[e(\"div\",{ref:\"customWidget\"})]):!t.noAccess&&t.reference&&t.reference.openGraphObject&&!t.hasCustomWidget?e(\"a\",{staticClass:\"widget-default\",attrs:{href:t.reference.openGraphObject.link,rel:\"noopener noreferrer\",target:\"_blank\"}},[t.reference.openGraphObject.thumb?e(\"img\",{staticClass:\"widget-default--image\",attrs:{src:t.reference.openGraphObject.thumb}}):t._e(),t._v(\" \"),e(\"div\",{staticClass:\"widget-default--details\"},[e(\"p\",{staticClass:\"widget-default--title\"},[t._v(t._s(t.reference.openGraphObject.name))]),t._v(\" \"),e(\"p\",{staticClass:\"widget-default--description\",style:t.descriptionStyle},[t._v(t._s(t.reference.openGraphObject.description))]),t._v(\" \"),e(\"p\",{staticClass:\"widget-default--link\"},[t._v(t._s(t.compactLink))])])]):t._e()])}),[],!1,null,\"4be6aca8\",null).exports;var w=/(\\s|^)(https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z]+(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*)(\\s|$)/gi,x=/(\\s|\\(|^)((https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z0-9]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\\s|\\)|$)/gi,k=n(768),_=n.n(k),S=n(4262);const B={name:\"NcReferenceList\",components:{NcReferenceWidget:y},props:{text:{type:String,default:\"\"},referenceData:{type:Object,default:null},limit:{type:Number,default:1}},data:function(){return{references:null,loading:!0}},computed:{isVisible:function(){return this.loading||this.displayedReferences},values:function(){return this.referenceData?this.referenceData:this.references?Object.values(this.references):[]},firstReference:function(){var t;return null!==(t=this.values[0])&&void 0!==t?t:null},displayedReferences:function(){return this.values.slice(0,this.limit)}},watch:{text:\"fetch\"},mounted:function(){this.fetch()},methods:{fetch:function(){var t=this;this.loading=!0,this.referenceData?this.loading=!1:new RegExp(w).exec(this.text)?this.resolve().then((function(e){t.references=e.data.ocs.data.references,t.loading=!1})).catch((function(e){console.error(\"Failed to extract references\",e),t.loading=!1})):this.loading=!1},resolve:function(){var t=new RegExp(w).exec(this.text.trim());return 1===this.limit&&t?_().get((0,S.generateOcsUrl)(\"references/resolve\",2)+\"?reference=\".concat(encodeURIComponent(t[0]))):_().post((0,S.generateOcsUrl)(\"references/extract\",2),{text:this.text,resolve:!0,limit:this.limit})}}};var j=n(122),E={};E.styleTagTransform=v(),E.setAttributes=A(),E.insert=d().bind(null,\"head\"),E.domAPI=c(),E.insertStyleElement=h();s()(j.Z,E);j.Z&&j.Z.locals&&j.Z.locals;const N=(0,b.Z)(B,(function(){var t=this,e=t._self._c;return t.isVisible?e(\"div\",{staticClass:\"widgets--list\",class:{\"icon-loading\":t.loading}},t._l(t.displayedReferences,(function(t){var n;return e(\"div\",{key:null==t||null===(n=t.openGraphObject)||void 0===n?void 0:n.id},[e(\"NcReferenceWidget\",{attrs:{reference:t}})],1)})),0):t._e()}),[],!1,null,\"36a4d5cc\",null).exports,P=require(\"unist-util-visit\"),z=require(\"unist-builder\");function O(t){return function(t){if(Array.isArray(t))return D(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(!t)return;if(\"string\"==typeof t)return D(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===n&&t.constructor&&(n=t.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(t);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return D(t,e)}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function D(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var T={name:\"NcLink\",props:{href:{type:String,required:!0}},render:function(t){return t(\"a\",{attrs:{href:this.href,rel:\"noopener noreferrer\",target:\"_blank\",class:\"rich-text--external-link\"}},[this.href.trim()])}},I=function(t){var e=t.autolink,n=t.useMarkdown;return function(t){n&&e&&(0,P.visit)(t,(function(t){return\"text\"===t.type}),(function(t,e,n){var i,r=L(t.value);return r=r.map((function(t){return\"string\"==typeof t?(0,z.u)(\"text\",t):(0,z.u)(\"link\",{url:t.props.href},[(0,z.u)(\"text\",t.props.href)])})).filter((function(t){return t})),(i=n.children).splice.apply(i,[e,1].concat(O(r.flat()))),[P.SKIP,e+r.flat().length]}))}},L=function(t){for(var e=x.exec(t),n=[],i=0;null!==e;){var r=e[2],o=void 0,a=t.substring(i,e.index+e[1].length);\" \"===r[0]&&(a+=r[0],r=r.substring(1).trim());var s=r[r.length-1];(\".\"===s||\",\"===s||\";\"===s||\"(\"===e[0][0]&&\")\"===s)&&(r=r.substring(0,r.length-1),o=s),n.push(a),n.push({component:T,props:{href:r}}),o&&n.push(o),i=e.index+e[0].length,e=x.exec(t)}return n.push(t.substring(i)),t===n.map((function(t){return\"string\"==typeof t?t:t.props.href})).join(\"\")?n:(console.error(\"Failed to reassemble the chunked text: \"+t),t)};function G(t){return function(t){if(Array.isArray(t))return F(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||M(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function $(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(null!=n){var i,r,o,a,s=[],l=!0,c=!1;try{if(o=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;l=!1}else for(;!(l=(i=o.call(n)).done)&&(s.push(i.value),s.length!==e);l=!0);}catch(t){c=!0,r=t}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return s}}(t,e)||M(t,e)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function M(t,e){if(t){if(\"string\"==typeof t)return F(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===n&&t.constructor&&(n=t.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(t):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?F(t,e):void 0}}function F(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var U=function(){return function(t){(0,P.visit)(t,(function(t){return\"text\"===t.type}),(function(t,e,n){var i=t.value.split(/(\\{[a-z\\-_.0-9]+\\})/gi).map((function(t,e,n){var i=t.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);if(!i)return(0,z.u)(\"text\",t);var r=$(i,2)[1];return(0,z.u)(\"element\",{tagName:\"#\".concat(r)})}));t=(0,z.u)(\"element\",{tagName:\"span\"},G(i)),n.children[e]=t}))}};const R=require(\"unified\"),Z=require(\"remark-parse\");var q=n.n(Z);const W=require(\"remark-breaks\");var Y=n.n(W);const V=require(\"remark-rehype\");var H=n.n(V);const K=require(\"rehype-react\");var Q=n.n(K);const J=require(\"remark-external-links\");var X=n.n(J);function tt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function et(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?tt(Object(n),!0).forEach((function(e){nt(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):tt(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function nt(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!==it(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var i=n.call(t,e||\"default\");if(\"object\"!==it(i))return i;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"===it(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function it(t){return it=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},it(t)}const rt={name:\"NcRichText\",components:{NcReferenceList:N},props:{text:{type:String,default:\"\"},arguments:{type:Object,default:function(){return{}}},referenceLimit:{type:Number,default:0},references:{type:Object,default:null},markdownCssClasses:{type:Object,default:function(){return{a:\"rich-text--external-link\",ol:\"rich-text--ordered-list\",ul:\"rich-text--un-ordered-list\",li:\"rich-text--list-item\",strong:\"rich-text--strong\",em:\"rich-text--italic\",h1:\"rich-text--heading rich-text--heading-1\",h2:\"rich-text--heading rich-text--heading-2\",h3:\"rich-text--heading rich-text--heading-3\",h4:\"rich-text--heading rich-text--heading-4\",h5:\"rich-text--heading rich-text--heading-5\",h6:\"rich-text--heading rich-text--heading-6\",hr:\"rich-text--hr\",table:\"rich-text--table\",pre:\"rich-text--pre\",code:\"rich-text--code\",blockquote:\"rich-text--blockquote\"}}},useMarkdown:{type:Boolean,default:!1},autolink:{type:Boolean,default:!0}},methods:{renderPlaintext:function(t){var e=this,n=this.text.split(/(\\{[a-z\\-_.0-9]+\\})/gi).map((function(n,i,r){var o=n.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);if(!o)return function(t,e){var n=t.h;return t.context.autolink&&(e=L(e)),Array.isArray(e)?e.map((function(t){if(\"string\"==typeof t)return t;var e=t.component,i=t.props,r=\"NcLink\"===e.name?void 0:\"rich-text--component\";return n(e,{props:i,class:r})})):e}({h:t,context:e},n);var a=o[1],s=e.arguments[a];if(\"object\"===it(s)){var l=s.component,c=s.props;return t(l,{props:c,class:\"rich-text--component\"})}return s?t(\"span\",{class:\"rich-text--fallback\"},s):n}));return t(\"div\",{class:\"rich-text--wrapper\"},[t(\"div\",{},n.flat()),this.referenceLimit>0?t(\"div\",{class:\"rich-text--reference-widget\"},[t(N,{props:{text:this.text,referenceData:this.references}})]):null])},renderMarkdown:function(t){var e=this,n=(0,R.unified)().use(q()).use(I,{autolink:this.autolink,useMarkdown:this.useMarkdown}).use(X(),{target:\"_blank\",rel:[\"noopener noreferrer\"]}).use(Y()).use(H(),{handlers:{component:function(t,e){return t(e,e.component,{value:e.value})}}}).use(U).use(Q(),{createElement:function(n,i,r){if(!n.startsWith(\"#\"))return t(n,i,r);var o=e.arguments[n.slice(1)];return o?o.component?t(o.component,{attrs:i,props:o.props,class:\"rich-text--component\"},r):t(\"span\",i,[o]):t(\"span\",et(et({},{attrs:i}),{class:\"rich-text--fallback\"}),[\"{\".concat(n.slice(1),\"}\")])},prefix:!1}).processSync(this.text).result;return t(\"div\",{class:\"rich-text--wrapper\"},[n,this.referenceLimit>0?t(\"div\",{class:\"rich-text--reference-widget\"},[t(N,{props:{text:this.text,referenceData:this.references}})]):null])}},render:function(t){return this.useMarkdown?this.renderMarkdown(t):this.renderPlaintext(t)}},ot=rt;var at=n(7856),st={};st.styleTagTransform=v(),st.setAttributes=A(),st.insert=d().bind(null,\"head\"),st.domAPI=c(),st.insertStyleElement=h();s()(at.Z,st);at.Z&&at.Z.locals&&at.Z.locals;var lt=n(3407),ct=n.n(lt),ut=(0,b.Z)(ot,undefined,undefined,!1,null,\"57480046\",null);\"function\"==typeof ct()&&ct()(ut);const dt=ut.exports;function pt(t){return pt=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},pt(t)}function At(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,\"value\"in i&&(i.writable=!0),Object.defineProperty(t,(r=i.key,o=void 0,o=function(t,e){if(\"object\"!==pt(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var i=n.call(t,e||\"default\");if(\"object\"!==pt(i))return i;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(r,\"string\"),\"symbol\"===pt(o)?o:String(o)),i)}var r,o}function mt(t,e,n){return e&&At(t.prototype,e),n&&At(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t}window._vue_richtext_custom_picker_elements||(window._vue_richtext_custom_picker_elements={});var ht=mt((function t(e,n){!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),this.element=e,this.object=n})),ft=function(t){return!!window._vue_richtext_custom_picker_elements[t]},vt=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(t){},i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"large\";window._vue_richtext_custom_picker_elements[t]?console.error(\"Custom reference picker element for id \"+t+\" already registered\"):window._vue_richtext_custom_picker_elements[t]={id:t,callback:e,onDestroy:n,size:i}},gt=function(t,e){var n=e.providerId,i=e.accessible;if(window._vue_richtext_custom_picker_elements[n])return window._vue_richtext_custom_picker_elements[n].callback(t,{providerId:n,accessible:i});console.error(\"Custom reference picker element for reference provider ID \"+n+\" not registered\")};window._registerCustomPickerElement=vt;const Ct={name:\"NcCustomPickerElement\",props:{provider:{type:Object,required:!0}},emits:[\"cancel\",\"submit\"],data:function(){return{isRegistered:ft(this.provider.id),renderResult:null}},mounted:function(){this.isRegistered&&this.renderElement()},beforeDestroy:function(){var t,e,n;this.isRegistered&&(t=this.provider.id,e=this.$el,n=this.renderResult,window._vue_richtext_custom_picker_elements[t]&&window._vue_richtext_custom_picker_elements[t].onDestroy(e,n))},methods:{renderElement:function(){var t=this;this.$refs.domElement&&(this.$refs.domElement.innerHTML=\"\");var e=gt(this.$refs.domElement,{providerId:this.provider.id,accessible:!1});Promise.resolve(e).then((function(e){var n,i;t.renderResult=e,null!==(n=t.renderResult.object)&&void 0!==n&&n._isVue&&null!==(i=t.renderResult.object)&&void 0!==i&&i.$on&&(t.renderResult.object.$on(\"submit\",t.onSubmit),t.renderResult.object.$on(\"cancel\",t.onCancel)),t.renderResult.element.addEventListener(\"submit\",(function(e){t.onSubmit(e.detail)})),t.renderResult.element.addEventListener(\"cancel\",t.onCancel)}))},onSubmit:function(t){this.$emit(\"submit\",t)},onCancel:function(){this.$emit(\"cancel\")}}};var bt=n(9425),yt={};yt.styleTagTransform=v(),yt.setAttributes=A(),yt.insert=d().bind(null,\"head\"),yt.domAPI=c(),yt.insertStyleElement=h();s()(bt.Z,yt);bt.Z&&bt.Z.locals&&bt.Z.locals;const wt=(0,b.Z)(Ct,(function(){return(0,this._self._c)(\"div\",{ref:\"domElement\"})}),[],!1,null,\"60e96d80\",null).exports;var xt=n(932),kt=n(733),_t=\"any-link\",St={id:_t,title:(0,xt.t)(\"Any link\"),icon_url:(0,S.imagePath)(\"core\",\"filetypes/link.svg\")};function Bt(t){return t===_t?St:jt().find((function(e){return e.id===t}))}function jt(){return window._vue_richtext_reference_providers.filter((function(t){var e=!!t.search_providers_ids&&t.search_providers_ids.length>0||ft(t.id);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}))}function Et(t){var e=window._vue_richtext_reference_provider_timestamps;return t.sort((function(t,e){return t.order===e.order?0:t.order>e.order?1:-1})).sort((function(t,n){var i=e[t.id],r=e[n.id];return i===r?0:void 0===r?-1:void 0===i?1:i>r?-1:1}))}function Nt(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=jt(),i=t.replace(/[/\\-\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\"),r=new RegExp(i,\"i\"),o=Et(n),a=o.filter((function(t){return t.title.match(r)})),s=e?a.slice(0,e):a;return\"\"!==t&&0!==s.length||s.push(St),s}window._vue_richtext_reference_providers||(window._vue_richtext_reference_providers=(0,kt.loadState)(\"core\",\"reference-provider-list\",[])),window._vue_richtext_reference_provider_timestamps||(window._vue_richtext_reference_provider_timestamps=(0,kt.loadState)(\"core\",\"reference-provider-timestamps\",{}));var Pt=0;function zt(t,e){return function(){var n=this,i=arguments;clearTimeout(Pt),Pt=setTimeout((function(){t.apply(n,i)}),e||0)}}function Ot(t){try{return Boolean(new URL(t))}catch(t){return!1}}var Dt=n(3335),Tt=n(281),It=n(2917);const Lt=require(\"vue-material-design-icons/LinkVariant.vue\");var Gt=n.n(Lt);function $t(t){return function(t){if(Array.isArray(t))return Mt(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(!t)return;if(\"string\"==typeof t)return Mt(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===n&&t.constructor&&(n=t.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(t);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Mt(t,e)}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function Mt(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}const Ft={name:\"NcProviderList\",components:{NcMultiselect:It.default,NcHighlight:Tt.default,NcEmptyContent:Dt.default,LinkVariantIcon:Gt()},emits:[\"select-provider\",\"submit\"],data:function(){return{selectedProvider:null,query:\"\",multiselectPlaceholder:(0,xt.t)(\"Select provider\")}},computed:{options:function(){var t=[];return\"\"!==this.query&&Ot(this.query)&&t.push({id:this.query,title:this.query,isLink:!0}),t.push.apply(t,$t(Nt(this.query))),t}},methods:{focus:function(){var t=this;this.$nextTick((function(){var e,n;null===(e=t.$refs[\"provider-select\"])||void 0===e||null===(n=e.$el)||void 0===n||n.focus()}))},onProviderSelected:function(t){null!==t&&(t.isLink?this.$emit(\"submit\",t.title):this.$emit(\"select-provider\",t),this.selectedProvider=null)}}};var Ut=n(4091),Rt={};Rt.styleTagTransform=v(),Rt.setAttributes=A(),Rt.insert=d().bind(null,\"head\"),Rt.domAPI=c(),Rt.insertStyleElement=h();s()(Ut.Z,Rt);Ut.Z&&Ut.Z.locals&&Ut.Z.locals;const Zt=(0,b.Z)(Ft,(function(){var t=this,e=t._self._c;return e(\"div\",{staticClass:\"provider-list\"},[e(\"NcMultiselect\",{ref:\"provider-select\",staticClass:\"provider-list--select\",attrs:{\"track-by\":\"id\",label:\"title\",placeholder:t.multiselectPlaceholder,options:t.options,\"internal-search\":!1,\"clear-on-select\":!0,\"preserve-search\":!0,\"option-height\":44},on:{\"search-change\":function(e){t.query=e},input:t.onProviderSelected},scopedSlots:t._u([{key:\"option\",fn:function(n){var i=n.option;return[i.isLink?e(\"div\",{staticClass:\"provider\"},[e(\"LinkVariantIcon\",{staticClass:\"link-icon\",attrs:{size:20}}),t._v(\" \"),e(\"span\",[t._v(t._s(i.title))])],1):e(\"div\",{staticClass:\"provider\"},[e(\"img\",{staticClass:\"provider-icon\",attrs:{src:i.icon_url}}),t._v(\" \"),e(\"NcHighlight\",{staticClass:\"option-text\",attrs:{search:t.query,text:i.title}})],1)]}}]),model:{value:t.selectedProvider,callback:function(e){t.selectedProvider=e},expression:\"selectedProvider\"}}),t._v(\" \"),e(\"NcEmptyContent\",{staticClass:\"provider-list--empty-content\",scopedSlots:t._u([{key:\"icon\",fn:function(){return[e(\"LinkVariantIcon\")]},proxy:!0}])})],1)}),[],!1,null,\"51a83e19\",null).exports;var qt=n(5378),Wt=n(4941);const Yt={name:\"NcRawLinkInput\",components:{LinkVariantIcon:Gt(),NcEmptyContent:Dt.default,NcLoadingIcon:qt.default,NcReferenceWidget:y,NcTextField:Wt.default},props:{provider:{type:Object,required:!0}},emits:[\"submit\"],data:function(){return{inputValue:\"\",loading:!1,reference:null,abortController:null,inputPlaceholder:(0,xt.t)(\"Enter link\")}},computed:{isLinkValid:function(){return Ot(this.inputValue)}},methods:{focus:function(){var t;null===(t=this.$refs[\"url-input\"].$el.getElementsByTagName(\"input\")[0])||void 0===t||t.focus()},onSubmit:function(t){var e=t.target.value;this.isLinkValid&&this.$emit(\"submit\",e)},onClear:function(){this.inputValue=\"\",this.reference=null},onInput:function(){var t=this;this.reference=null,this.abortController&&this.abortController.abort(),this.isLinkValid&&zt((function(){t.updateReference()}),500)()},updateReference:function(){var t=this;this.loading=!0,this.abortController=new AbortController,_().get((0,S.generateOcsUrl)(\"references/resolve\",2)+\"?reference=\"+encodeURIComponent(this.inputValue),{signal:this.abortController.signal}).then((function(e){t.reference=e.data.ocs.data.references[t.inputValue]})).catch((function(t){console.error(t)})).then((function(){t.loading=!1}))}}};var Vt=n(6068),Ht={};Ht.styleTagTransform=v(),Ht.setAttributes=A(),Ht.insert=d().bind(null,\"head\"),Ht.domAPI=c(),Ht.insertStyleElement=h();s()(Vt.Z,Ht);Vt.Z&&Vt.Z.locals&&Vt.Z.locals;const Kt=(0,b.Z)(Yt,(function(){var t=this,e=t._self._c;return e(\"div\",{staticClass:\"raw-link\"},[e(\"div\",{staticClass:\"input-wrapper\"},[e(\"NcTextField\",{ref:\"url-input\",attrs:{value:t.inputValue,\"show-trailing-button\":\"\"!==t.inputValue,label:t.inputPlaceholder},on:{\"update:value\":[function(e){t.inputValue=e},t.onInput],\"trailing-button-click\":t.onClear},nativeOn:{keyup:function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"enter\",13,e.key,\"Enter\")?null:t.onSubmit.apply(null,arguments)}}},[t.loading?e(\"NcLoadingIcon\",{attrs:{size:16}}):e(\"LinkVariantIcon\",{attrs:{size:16}})],1)],1),t._v(\" \"),null!==t.reference?e(\"NcReferenceWidget\",{staticClass:\"reference-widget\",attrs:{reference:t.reference}}):e(\"NcEmptyContent\",{staticClass:\"raw-link--empty-content\",scopedSlots:t._u([{key:\"icon\",fn:function(){return[t.provider.icon_url?e(\"img\",{staticClass:\"provider-icon\",attrs:{src:t.provider.icon_url}}):e(\"LinkVariantIcon\")]},proxy:!0}])})],1)}),[],!1,null,\"2e61b91c\",null).exports;function Qt(t){return Qt=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},Qt(t)}function Jt(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!==Qt(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var i=n.call(t,e||\"default\");if(\"object\"!==Qt(i))return i;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"===Qt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}const Xt={name:\"NcSearchResult\",components:{NcHighlight:Tt.default},props:{entry:{type:Object,required:!0},query:{type:String,required:!0}}};var te=n(9052),ee={};ee.styleTagTransform=v(),ee.setAttributes=A(),ee.insert=d().bind(null,\"head\"),ee.domAPI=c(),ee.insertStyleElement=h();s()(te.Z,ee);te.Z&&te.Z.locals&&te.Z.locals;const ne=(0,b.Z)(Xt,(function(){var t,e=this,n=e._self._c;return n(\"div\",{staticClass:\"result\"},[e.entry.icon?n(\"div\",{staticClass:\"result--icon-class\",class:(t={},Jt(t,e.entry.icon,!0),Jt(t,\"rounded\",e.entry.rounded),t)}):n(\"img\",{staticClass:\"result--image\",class:{rounded:e.entry.rounded},attrs:{src:e.entry.thumbnailUrl}}),e._v(\" \"),n(\"div\",{staticClass:\"result--content\"},[n(\"span\",{staticClass:\"result--content--title\"},[n(\"NcHighlight\",{attrs:{search:e.query,text:e.entry.title}})],1),e._v(\" \"),n(\"span\",{staticClass:\"result--content--subline\"},[n(\"NcHighlight\",{attrs:{search:e.query,text:e.entry.subline}})],1)])])}),[],!1,null,\"7297c50a\",null).exports;var ie=n(1441),re=n.n(ie);const oe=require(\"vue-material-design-icons/Magnify.vue\");var ae=n.n(oe);function se(t){return function(t){if(Array.isArray(t))return le(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(!t)return;if(\"string\"==typeof t)return le(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===n&&t.constructor&&(n=t.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(t);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return le(t,e)}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function le(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}const ce={name:\"NcSearch\",components:{LinkVariantIcon:Gt(),DotsHorizontalIcon:re(),MagnifyIcon:ae(),NcEmptyContent:Dt.default,NcMultiselect:It.default,NcSearchResult:ne},props:{provider:{type:Object,required:!0},showEmptyContent:{type:Boolean,default:!0},searchPlaceholder:{type:String,default:null}},emits:[\"submit\"],data:function(){return{searchQuery:\"\",selectedResult:null,resultsBySearchProvider:{},searching:!1,searchingMoreOf:null,abortController:null}},computed:{mySearchPlaceholder:function(){return this.searchPlaceholder||(0,xt.t)(\"Search\")},searchProviderIds:function(){return this.provider.search_providers_ids},options:function(){if(\"\"===this.searchQuery)return[];var t=[];return Ot(this.searchQuery)&&t.push(this.rawLinkEntry),t.push.apply(t,se(this.formattedSearchResults)),t},rawLinkEntry:function(){return{resourceUrl:this.searchQuery,isRawLink:!0}},formattedSearchResults:function(){var t=this,e=[];return this.searchProviderIds.forEach((function(n){t.resultsBySearchProvider[n].entries.length>0&&((t.searchProviderIds.length>1||t.resultsBySearchProvider[n].entries.length>1)&&e.push({name:t.resultsBySearchProvider[n].name,isCustomGroupTitle:!0,providerId:n}),e.push.apply(e,se(t.resultsBySearchProvider[n].entries)),t.resultsBySearchProvider[n].isPaginated&&e.push({name:t.resultsBySearchProvider[n].name,isMore:!0,providerId:n,isLoading:t.searchingMoreOf===n}))})),e}},mounted:function(){this.resetResults()},beforeDestroy:function(){this.cancelSearchRequests()},methods:{t:xt.t,resetResults:function(){var t={};this.searchProviderIds.forEach((function(e){t[e]={entries:[]}})),this.resultsBySearchProvider=t},focus:function(){var t,e;null===(t=this.$refs[\"search-select\"])||void 0===t||null===(e=t.$el)||void 0===e||e.focus()},cancelSearchRequests:function(){this.abortController&&this.abortController.abort()},onSearchInput:function(t){var e=this;this.searchQuery=t,zt((function(){e.updateSearch()}),500)()},onSelectResultSelected:function(t){null!==t&&(t.resourceUrl?(this.cancelSearchRequests(),this.$emit(\"submit\",t.resourceUrl)):t.isMore&&this.searchMoreOf(t.providerId)),this.selectedResult=null},searchMoreOf:function(t){this.searchingMoreOf=t,this.cancelSearchRequests(),this.searchProviders(t)},updateSearch:function(){this.cancelSearchRequests(),this.resetResults(),\"\"!==this.searchQuery?this.searchProviders():this.searching=!1},searchProviders:function(){var t,e,n=this,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;this.abortController=new AbortController,this.searching=!0;var r=null===i?se(this.searchProviderIds).map((function(t){return n.searchOneProvider(t)})):[this.searchOneProvider(i,null!==(t=null===(e=this.resultsBySearchProvider[i])||void 0===e?void 0:e.cursor)&&void 0!==t?t:null)];return Promise.allSettled(r).then((function(t){!!t.find((function(t){return\"rejected\"===t.status&&(\"CanceledError\"===t.reason.name||\"ERR_CANCELED\"===t.reason.code)}))||(n.searching=!1,n.searchingMoreOf=null)}))},searchOneProvider:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=null===n?(0,S.generateOcsUrl)(\"search/providers/{providerId}/search?term={term}&limit={limit}\",{providerId:t,term:this.searchQuery,limit:5}):(0,S.generateOcsUrl)(\"search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}\",{providerId:t,term:this.searchQuery,limit:5,cursor:n});return _().get(i,{signal:this.abortController.signal}).then((function(n){var i,r=n.data.ocs.data;e.resultsBySearchProvider[t].name=r.name,e.resultsBySearchProvider[t].cursor=r.cursor,e.resultsBySearchProvider[t].isPaginated=r.isPaginated,(i=e.resultsBySearchProvider[t].entries).push.apply(i,se(r.entries))}))}}},ue=ce;var de=n(2873),pe={};pe.styleTagTransform=v(),pe.setAttributes=A(),pe.insert=d().bind(null,\"head\"),pe.domAPI=c(),pe.insertStyleElement=h();s()(de.Z,pe);de.Z&&de.Z.locals&&de.Z.locals;const Ae=(0,b.Z)(ue,(function(){var t=this,e=t._self._c;return e(\"div\",{staticClass:\"smart-picker-search\",class:{\"with-empty-content\":t.showEmptyContent}},[e(\"NcMultiselect\",{ref:\"search-select\",staticClass:\"smart-picker-search--select\",attrs:{\"track-by\":\"resourceUrl\",placeholder:t.mySearchPlaceholder,options:t.options,\"internal-search\":!1,\"clear-on-select\":!1,\"close-on-select\":!1,\"preserve-search\":!0,loading:t.searching,multiple:!1,\"option-height\":60},on:{\"search-change\":t.onSearchInput,input:t.onSelectResultSelected},scopedSlots:t._u([{key:\"option\",fn:function(n){var i=n.option;return[i.isRawLink?e(\"div\",{staticClass:\"custom-option\"},[e(\"LinkVariantIcon\",{staticClass:\"option-simple-icon\",attrs:{size:20}}),t._v(\" \"),e(\"span\",{staticClass:\"option-text\"},[t._v(\"\\n\\t\\t\\t\\t\\t\"+t._s(t.t(\"Raw link {options}\",{options:i.resourceUrl}))+\"\\n\\t\\t\\t\\t\")])],1):i.resourceUrl?e(\"NcSearchResult\",{staticClass:\"search-result\",attrs:{entry:i,query:t.searchQuery}}):i.isCustomGroupTitle?e(\"span\",{staticClass:\"custom-option group-title\"},[t.provider.icon_url?e(\"img\",{staticClass:\"provider-icon group-title-icon\",attrs:{src:t.provider.icon_url}}):t._e(),t._v(\" \"),e(\"span\",{staticClass:\"option-text\"},[e(\"strong\",[t._v(t._s(i.name))])])]):i.isMore?e(\"span\",{class:{\"custom-option\":!0}},[i.isLoading?e(\"span\",{staticClass:\"option-simple-icon icon-loading-small\"}):e(\"DotsHorizontalIcon\",{staticClass:\"option-simple-icon\",attrs:{size:20}}),t._v(\" \"),e(\"span\",{staticClass:\"option-text\"},[t._v(\"\\n\\t\\t\\t\\t\\t\"+t._s(t.t('Load more \"{options}\"\"',{options:i.name}))+\"\\n\\t\\t\\t\\t\")])],1):t._e()]}},{key:\"noOptions\",fn:function(){return[e(\"MagnifyIcon\",{staticClass:\"option-simple-icon\",attrs:{size:20}}),t._v(\"\\n\\t\\t\\t\"+t._s(t.t(\"Start typing to search\"))+\"\\n\\t\\t\")]},proxy:!0},{key:\"noResult\",fn:function(){return[e(\"MagnifyIcon\",{staticClass:\"option-simple-icon\",attrs:{size:20}}),t._v(\"\\n\\t\\t\\t\"+t._s(t.t(\"Start typing to search\"))+\"\\n\\t\\t\")]},proxy:!0}]),model:{value:t.selectedResult,callback:function(e){t.selectedResult=e},expression:\"selectedResult\"}}),t._v(\" \"),t.showEmptyContent?e(\"NcEmptyContent\",{staticClass:\"smart-picker-search--empty-content\",scopedSlots:t._u([{key:\"icon\",fn:function(){return[t.provider.icon_url?e(\"img\",{staticClass:\"provider-icon\",attrs:{src:t.provider.icon_url}}):e(\"LinkVariantIcon\")]},proxy:!0}],null,!1,4245470124)}):t._e()],1)}),[],!1,null,\"26e3248c\",null).exports;var me={providerList:1,standardLinkInput:2,searchInput:3,customElement:4};const he={name:\"NcReferencePicker\",components:{NcCustomPickerElement:wt,NcProviderList:Zt,NcRawLinkInput:Kt,NcSearch:Ae},props:{initialProvider:{type:Object,default:function(){return null}},width:{type:Number,default:null},focusOnCreate:{type:Boolean,default:!0}},emits:[\"cancel\",\"cancel-raw-link\",\"cancel-search\",\"provider-selected\",\"submit\"],data:function(){return{MODES:me,selectedProvider:this.initialProvider}},computed:{mode:function(){return null===this.selectedProvider?me.providerList:ft(this.selectedProvider.id)?me.customElement:this.selectedProvider.search_providers_ids?me.searchInput:me.standardLinkInput},pickerWrapperStyle:function(){return{width:this.width?this.width+\"px\":void 0}}},mounted:function(){var t=this;this.focusOnCreate&&(this.initialProvider?setTimeout((function(){var e;null===(e=t.$refs[\"url-input\"])||void 0===e||e.focus()}),300):this.$nextTick((function(){var e;null===(e=t.$refs[\"provider-list\"])||void 0===e||e.focus()})))},methods:{onEscapePressed:function(){null!==this.selectedProvider?this.deselectProvider():this.cancelProviderSelection()},onProviderSelected:function(t){var e=this;this.selectedProvider=t,this.$emit(\"provider-selected\",t),this.$nextTick((function(){var t;null===(t=e.$refs[\"url-input\"])||void 0===t||t.focus()}))},cancelCustomElement:function(){this.deselectProvider()},cancelSearch:function(){var t;this.$emit(\"cancel-search\",null===(t=this.selectedProvider)||void 0===t?void 0:t.title),this.deselectProvider()},cancelRawLinkInput:function(){var t;this.$emit(\"cancel-raw-link\",null===(t=this.selectedProvider)||void 0===t?void 0:t.title),this.deselectProvider()},cancelProviderSelection:function(){this.$emit(\"cancel\")},submitLink:function(t){var e,n,i,r;null!==this.selectedProvider&&(e=this.selectedProvider.id,n=Math.floor(Date.now()/1e3),i={timestamp:n},r=(0,S.generateOcsUrl)(\"references/provider/{providerId}\",{providerId:e}),_().put(r,i).then((function(t){window._vue_richtext_reference_provider_timestamps[e]=n}))),this.$emit(\"submit\",t),this.deselectProvider()},deselectProvider:function(){var t=this;this.selectedProvider=null,this.$emit(\"provider-selected\",null),setTimeout((function(){var e;null===(e=t.$refs[\"provider-list\"])||void 0===e||e.focus()}),300)}}};var fe=n(34),ve={};ve.styleTagTransform=v(),ve.setAttributes=A(),ve.insert=d().bind(null,\"head\"),ve.domAPI=c(),ve.insertStyleElement=h();s()(fe.Z,ve);fe.Z&&fe.Z.locals&&fe.Z.locals;const ge=(0,b.Z)(he,(function(){var t=this,e=t._self._c;return e(\"div\",{staticClass:\"reference-picker\",style:t.pickerWrapperStyle,attrs:{tabindex:\"-1\"},on:{keydown:function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"esc\",27,e.key,[\"Esc\",\"Escape\"])?null:(e.stopPropagation(),e.preventDefault(),t.onEscapePressed.apply(null,arguments))}}},[t.mode===t.MODES.providerList?e(\"NcProviderList\",{ref:\"provider-list\",on:{\"select-provider\":t.onProviderSelected,submit:t.submitLink,cancel:t.cancelProviderSelection}}):t.mode===t.MODES.standardLinkInput?e(\"NcRawLinkInput\",{ref:\"url-input\",attrs:{provider:t.selectedProvider},on:{submit:t.submitLink,cancel:t.cancelRawLinkInput}}):t.mode===t.MODES.searchInput?e(\"NcSearch\",{ref:\"url-input\",attrs:{provider:t.selectedProvider},on:{cancel:t.cancelSearch,submit:t.submitLink}}):t.mode===t.MODES.customElement?e(\"div\",{staticClass:\"custom-element-wrapper\"},[e(\"NcCustomPickerElement\",{attrs:{provider:t.selectedProvider},on:{submit:t.submitLink,cancel:t.cancelCustomElement}})],1):t._e()],1)}),[],!1,null,\"9b2f661a\",null).exports;var Ce=n(9104),be=n(1373),ye=n(542),we=n(6921),xe=n.n(we),ke=n(8618),_e=n.n(ke);const Se={name:\"NcReferencePickerModal\",components:{NcReferencePicker:ge,NcModal:be.default,NcButton:Ce.default,ArrowLeftIcon:xe(),CloseIcon:_e()},props:{initialProvider:{type:Object,default:function(){return null}},focusOnCreate:{type:Boolean,default:!0},isInsideViewer:{type:Boolean,default:!1}},emits:[\"cancel\",\"submit\"],data:function(){return{show:!0,selectedProvider:this.initialProvider,backButtonTitle:(0,xt.t)(\"Back to provider selection\"),closeButtonTitle:(0,xt.t)(\"Close\"),closeButtonLabel:(0,xt.t)(\"Close Smart Picker\")}},computed:{isProviderSelected:function(){return null!==this.selectedProvider},showBackButton:function(){return null===this.initialProvider&&this.isProviderSelected},modalSize:function(){var t,e,n,i;return this.isProviderSelected&&ft(this.selectedProvider.id)?null!==(e=this.selectedProvider.id,i=null===(n=window._vue_richtext_custom_picker_elements[e])||void 0===n?void 0:n.size,t=[\"small\",\"normal\",\"large\",\"full\"].includes(i)?i:null)&&void 0!==t?t:\"large\":\"normal\"},showModalTitle:function(){return!this.isProviderSelected||!ft(this.selectedProvider.id)},modalTitle:function(){return this.isProviderSelected?this.selectedProvider.title:(0,xt.t)(\"Smart Picker\")}},mounted:function(){if(this.isInsideViewer){var t=this.$refs.modal_content;(0,ye.emit)(\"viewer:trapElements:changed\",t)}},methods:{onCancel:function(){this.show=!1,this.$emit(\"cancel\")},onSubmit:function(t){this.show=!1,this.$emit(\"submit\",t)},onProviderSelect:function(t){this.selectedProvider=t,null===t&&null!==this.initialProvider&&this.onCancel()},onBackClicked:function(){this.$refs.referencePicker.deselectProvider()}}};var Be=n(698),je={};je.styleTagTransform=v(),je.setAttributes=A(),je.insert=d().bind(null,\"head\"),je.domAPI=c(),je.insertStyleElement=h();s()(Be.Z,je);Be.Z&&Be.Z.locals&&Be.Z.locals;var Ee=n(6508),Ne={};Ne.styleTagTransform=v(),Ne.setAttributes=A(),Ne.insert=d().bind(null,\"head\"),Ne.domAPI=c(),Ne.insertStyleElement=h();s()(Ee.Z,Ne);Ee.Z&&Ee.Z.locals&&Ee.Z.locals;const Pe=(0,b.Z)(Se,(function(){var t=this,e=t._self._c;return t.show?e(\"NcModal\",{staticClass:\"reference-picker-modal\",attrs:{size:t.modalSize,\"can-close\":!1},on:{close:t.onCancel}},[e(\"div\",{ref:\"modal_content\",staticClass:\"reference-picker-modal--content\"},[t.showBackButton?e(\"NcButton\",{staticClass:\"back-button\",attrs:{\"aria-label\":t.backButtonTitle,title:t.backButtonTitle},on:{click:t.onBackClicked},scopedSlots:t._u([{key:\"icon\",fn:function(){return[e(\"ArrowLeftIcon\")]},proxy:!0}],null,!1,3001860362)}):t._e(),t._v(\" \"),e(\"NcButton\",{staticClass:\"close-button\",attrs:{\"aria-label\":t.closeButtonLabel,title:t.closeButtonTitle},on:{click:t.onCancel},scopedSlots:t._u([{key:\"icon\",fn:function(){return[e(\"CloseIcon\")]},proxy:!0}],null,!1,2491825086)}),t._v(\" \"),t.showModalTitle?e(\"h2\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.modalTitle)+\"\\n\\t\\t\")]):t._e(),t._v(\" \"),e(\"NcReferencePicker\",{ref:\"referencePicker\",attrs:{\"initial-provider\":t.initialProvider,\"focus-on-create\":t.focusOnCreate},on:{\"provider-selected\":t.onProviderSelect,submit:t.onSubmit,cancel:t.onCancel}})],1)]):t._e()}),[],!1,null,\"1f66021a\",null).exports;var ze=n(2734),Oe=n.n(ze);function De(t){return De=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},De(t)}function Te(){Te=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},r=\"function\"==typeof Symbol?Symbol:{},o=r.iterator||\"@@iterator\",a=r.asyncIterator||\"@@asyncIterator\",s=r.toStringTag||\"@@toStringTag\";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},\"\")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var o=e&&e.prototype instanceof p?e:p,a=Object.create(o.prototype),s=new _(r||[]);return i(a,\"_invoke\",{value:y(t,n,s)}),a}function u(t,e,n){try{return{type:\"normal\",arg:t.call(e,n)}}catch(t){return{type:\"throw\",arg:t}}}t.wrap=c;var d={};function p(){}function A(){}function m(){}var h={};l(h,o,(function(){return this}));var f=Object.getPrototypeOf,v=f&&f(f(S([])));v&&v!==e&&n.call(v,o)&&(h=v);var g=m.prototype=p.prototype=Object.create(h);function C(t){[\"next\",\"throw\",\"return\"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function r(i,o,a,s){var l=u(t[i],t,o);if(\"throw\"!==l.type){var c=l.arg,d=c.value;return d&&\"object\"==De(d)&&n.call(d,\"__await\")?e.resolve(d.__await).then((function(t){r(\"next\",t,a,s)}),(function(t){r(\"throw\",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return r(\"throw\",t,a,s)}))}s(l.arg)}var o;i(this,\"_invoke\",{value:function(t,n){function i(){return new e((function(e,i){r(t,n,e,i)}))}return o=o?o.then(i,i):i()}})}function y(t,e,n){var i=\"suspendedStart\";return function(r,o){if(\"executing\"===i)throw new Error(\"Generator is already running\");if(\"completed\"===i){if(\"throw\"===r)throw o;return B()}for(n.method=r,n.arg=o;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if(\"next\"===n.method)n.sent=n._sent=n.arg;else if(\"throw\"===n.method){if(\"suspendedStart\"===i)throw i=\"completed\",n.arg;n.dispatchException(n.arg)}else\"return\"===n.method&&n.abrupt(\"return\",n.arg);i=\"executing\";var l=u(t,e,n);if(\"normal\"===l.type){if(i=n.done?\"completed\":\"suspendedYield\",l.arg===d)continue;return{value:l.arg,done:n.done}}\"throw\"===l.type&&(i=\"completed\",n.method=\"throw\",n.arg=l.arg)}}}function w(t,e){var n=e.method,i=t.iterator[n];if(void 0===i)return e.delegate=null,\"throw\"===n&&t.iterator.return&&(e.method=\"return\",e.arg=void 0,w(t,e),\"throw\"===e.method)||\"return\"!==n&&(e.method=\"throw\",e.arg=new TypeError(\"The iterator does not provide a '\"+n+\"' method\")),d;var r=u(i,t.iterator,e.arg);if(\"throw\"===r.type)return e.method=\"throw\",e.arg=r.arg,e.delegate=null,d;var o=r.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,\"return\"!==e.method&&(e.method=\"next\",e.arg=void 0),e.delegate=null,d):o:(e.method=\"throw\",e.arg=new TypeError(\"iterator result is not an object\"),e.delegate=null,d)}function x(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type=\"normal\",delete e.arg,t.completion=e}function _(t){this.tryEntries=[{tryLoc:\"root\"}],t.forEach(x,this),this.reset(!0)}function S(t){if(t){var e=t[o];if(e)return e.call(t);if(\"function\"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,r=function e(){for(;++i<t.length;)if(n.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:B}}function B(){return{value:void 0,done:!0}}return A.prototype=m,i(g,\"constructor\",{value:m,configurable:!0}),i(m,\"constructor\",{value:A,configurable:!0}),A.displayName=l(m,s,\"GeneratorFunction\"),t.isGeneratorFunction=function(t){var e=\"function\"==typeof t&&t.constructor;return!!e&&(e===A||\"GeneratorFunction\"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,m):(t.__proto__=m,l(t,s,\"GeneratorFunction\")),t.prototype=Object.create(g),t},t.awrap=function(t){return{__await:t}},C(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,i,r,o){void 0===o&&(o=Promise);var a=new b(c(e,n,i,r),o);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},C(g),l(g,s,\"Generator\"),l(g,o,(function(){return this})),l(g,\"toString\",(function(){return\"[object Generator]\"})),t.keys=function(t){var e=Object(t),n=[];for(var i in e)n.push(i);return n.reverse(),function t(){for(;n.length;){var i=n.pop();if(i in e)return t.value=i,t.done=!1,t}return t.done=!0,t}},t.values=S,_.prototype={constructor:_,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method=\"next\",this.arg=void 0,this.tryEntries.forEach(k),!t)for(var e in this)\"t\"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if(\"throw\"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function i(n,i){return a.type=\"throw\",a.arg=t,e.next=n,i&&(e.method=\"next\",e.arg=void 0),!!i}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],a=o.completion;if(\"root\"===o.tryLoc)return i(\"end\");if(o.tryLoc<=this.prev){var s=n.call(o,\"catchLoc\"),l=n.call(o,\"finallyLoc\");if(s&&l){if(this.prev<o.catchLoc)return i(o.catchLoc,!0);if(this.prev<o.finallyLoc)return i(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return i(o.catchLoc,!0)}else{if(!l)throw new Error(\"try statement without catch or finally\");if(this.prev<o.finallyLoc)return i(o.finallyLoc)}}}},abrupt:function(t,e){for(var i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i];if(r.tryLoc<=this.prev&&n.call(r,\"finallyLoc\")&&this.prev<r.finallyLoc){var o=r;break}}o&&(\"break\"===t||\"continue\"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method=\"next\",this.next=o.finallyLoc,d):this.complete(a)},complete:function(t,e){if(\"throw\"===t.type)throw t.arg;return\"break\"===t.type||\"continue\"===t.type?this.next=t.arg:\"return\"===t.type?(this.rval=this.arg=t.arg,this.method=\"return\",this.next=\"end\"):\"normal\"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),k(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var i=n.completion;if(\"throw\"===i.type){var r=i.arg;k(n)}return r}}throw new Error(\"illegal catch attempt\")},delegateYield:function(t,e,n){return this.delegate={iterator:S(t),resultName:e,nextLoc:n},\"next\"===this.method&&(this.arg=void 0),d}},t}function Ie(t,e,n,i,r,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(i,r)}function Le(t){return function(){var e=this,n=arguments;return new Promise((function(i,r){var o=t.apply(e,n);function a(t){Ie(o,i,r,a,s,\"next\",t)}function s(t){Ie(o,i,r,a,s,\"throw\",t)}a(void 0)}))}}function Ge(){return $e.apply(this,arguments)}function $e(){return $e=Le(Te().mark((function t(){var e,n,i=arguments;return Te().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e=i.length>0&&void 0!==i[0]?i[0]:null,n=i.length>1&&void 0!==i[1]?i[1]:void 0,t.next=4,new Promise((function(t,i){var r,o=document.createElement(\"div\");o.id=\"referencePickerModal\",document.body.append(o);var a=null===e?null:null!==(r=Bt(e))&&void 0!==r?r:null,s=new(Oe().extend(Pe))({propsData:{initialProvider:a,isInsideViewer:n}}).$mount(o);s.$on(\"cancel\",(function(){s.$destroy(),i(new Error(\"User cancellation\"))})),s.$on(\"submit\",(function(e){s.$destroy(),t(e)}))}));case 4:return t.abrupt(\"return\",t.sent);case 5:case\"end\":return t.stop()}}),t)}))),$e.apply(this,arguments)}const Me=dt})(),i})()));\n//# sourceMappingURL=NcRichText.js.map","<!--\n - @copyright Copyright (c) 2022 Julius Härtl <jus@bitgrid.net>\n -\n - @author Julius Härtl <jus@bitgrid.net>\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<template>\n\t<div v-if=\"!accessible\" class=\"widget-file widget-file--no-access\">\n\t\t<div class=\"widget-file--image widget-file--image--icon icon-folder\" />\n\t\t<div class=\"widget-file--details\">\n\t\t\t<p class=\"widget-file--title\">\n\t\t\t\t{{ t('files', 'File cannot be accessed') }}\n\t\t\t</p>\n\t\t\t<p class=\"widget-file--description\">\n\t\t\t\t{{ t('files', 'You might not have have permissions to view it, ask the sender to share it') }}\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\t<a v-else\n\t\tclass=\"widget-file\"\n\t\t:href=\"richObject.link\"\n\t\t@click.prevent=\"navigate\">\n\t\t<div class=\"widget-file--image\" :class=\"filePreviewClass\" :style=\"filePreview\" />\n\t\t<div class=\"widget-file--details\">\n\t\t\t<p class=\"widget-file--title\">{{ richObject.name }}</p>\n\t\t\t<p class=\"widget-file--description\">{{ fileSize }}<br>{{ fileMtime }}</p>\n\t\t\t<p class=\"widget-file--link\">{{ filePath }}</p>\n\t\t</div>\n\t</a>\n</template>\n<script>\nimport { generateUrl } from '@nextcloud/router'\nimport path from 'path'\n\nexport default {\n\tname: 'ReferenceFileWidget',\n\tprops: {\n\t\trichObject: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\taccessible: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tpreviewUrl: window.OC.MimeType.getIconUrl(this.richObject.mimetype),\n\t\t}\n\t},\n\tcomputed: {\n\t\tfileSize() {\n\t\t\treturn window.OC.Util.humanFileSize(this.richObject.size)\n\t\t},\n\t\tfileMtime() {\n\t\t\treturn window.OC.Util.relativeModifiedDate(this.richObject.mtime * 1000)\n\t\t},\n\t\tfilePath() {\n\t\t\treturn path.dirname(this.richObject.path)\n\t\t},\n\t\tfilePreview() {\n\t\t\tif (this.previewUrl) {\n\t\t\t\treturn {\n\t\t\t\t\tbackgroundImage: 'url(' + this.previewUrl + ')',\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tbackgroundImage: 'url(' + window.OC.MimeType.getIconUrl(this.richObject.mimetype) + ')',\n\t\t\t}\n\n\t\t},\n\t\tfilePreviewClass() {\n\t\t\tif (this.previewUrl) {\n\t\t\t\treturn 'widget-file--image--preview'\n\t\t\t}\n\t\t\treturn 'widget-file--image--icon'\n\n\t\t},\n\t},\n\tmounted() {\n\t\tif (this.richObject['preview-available']) {\n\t\t\tconst previewUrl = generateUrl('/core/preview?fileId={fileId}&x=250&y=250', {\n\t\t\t\tfileId: this.richObject.id,\n\t\t\t})\n\t\t\tconst img = new Image()\n\t\t\timg.onload = () => {\n\t\t\t\tthis.previewUrl = previewUrl\n\t\t\t}\n\t\t\timg.onerror = err => {\n\t\t\t\tconsole.error('could not load recommendation preview', err)\n\t\t\t}\n\t\t\timg.src = previewUrl\n\t\t}\n\t},\n\tmethods: {\n\t\tnavigate() {\n\t\t\tif (OCA.Viewer && OCA.Viewer.mimetypes.indexOf(this.richObject.mimetype) !== -1) {\n\t\t\t\tOCA.Viewer.open({ path: this.richObject.path })\n\t\t\t\treturn\n\t\t\t}\n\t\t\twindow.location = this.richObject.link\n\t\t},\n\t},\n}\n</script>\n<style lang=\"scss\" scoped>\n.widget-file {\n\tdisplay: flex;\n\tflex-grow: 1;\n\tcolor: var(--color-main-text) !important;\n\ttext-decoration: none !important;\n\n\t&--image {\n\t\tmin-width: 40%;\n\t\tbackground-position: center;\n\t\tbackground-size: cover;\n\t\tbackground-repeat: no-repeat;\n\n\t\t&.widget-file--image--icon {\n\t\t\tmin-width: 88px;\n\t\t\tbackground-size: 44px;\n\t\t}\n\t}\n\n\t&--title {\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t\tfont-weight: bold;\n\t}\n\n\t&--details {\n\t\tpadding: 12px;\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\tp {\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t}\n\t}\n\n\t&--description {\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\tdisplay: -webkit-box;\n\t\t-webkit-line-clamp: 3;\n\t\tline-clamp: 3;\n\t\t-webkit-box-orient: vertical;\n\t}\n\n\t&--link {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t&.widget-file--no-access {\n\t\tpadding: 12px;\n\n\t\t.widget-file--details {\n\t\t\tpadding: 0;\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReferenceFileWidget.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReferenceFileWidget.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReferenceFileWidget.vue?vue&type=style&index=0&id=3f729da0&prod&lang=scss&scoped=true&\";\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 \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReferenceFileWidget.vue?vue&type=style&index=0&id=3f729da0&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ReferenceFileWidget.vue?vue&type=template&id=3f729da0&scoped=true&\"\nimport script from \"./ReferenceFileWidget.vue?vue&type=script&lang=js&\"\nexport * from \"./ReferenceFileWidget.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReferenceFileWidget.vue?vue&type=style&index=0&id=3f729da0&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3f729da0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (!_vm.accessible)?_c('div',{staticClass:\"widget-file widget-file--no-access\"},[_c('div',{staticClass:\"widget-file--image widget-file--image--icon icon-folder\"}),_vm._v(\" \"),_c('div',{staticClass:\"widget-file--details\"},[_c('p',{staticClass:\"widget-file--title\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'File cannot be accessed'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('p',{staticClass:\"widget-file--description\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'You might not have have permissions to view it, ask the sender to share it'))+\"\\n\\t\\t\")])])]):_c('a',{staticClass:\"widget-file\",attrs:{\"href\":_vm.richObject.link},on:{\"click\":function($event){$event.preventDefault();return _vm.navigate.apply(null, arguments)}}},[_c('div',{staticClass:\"widget-file--image\",class:_vm.filePreviewClass,style:(_vm.filePreview)}),_vm._v(\" \"),_c('div',{staticClass:\"widget-file--details\"},[_c('p',{staticClass:\"widget-file--title\"},[_vm._v(_vm._s(_vm.richObject.name))]),_vm._v(\" \"),_c('p',{staticClass:\"widget-file--description\"},[_vm._v(_vm._s(_vm.fileSize)),_c('br'),_vm._v(_vm._s(_vm.fileMtime))]),_vm._v(\" \"),_c('p',{staticClass:\"widget-file--link\"},[_vm._v(_vm._s(_vm.filePath))])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:\"picker\",staticClass:\"reference-file-picker\"})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2023 Julius Härtl <jus@bitgrid.net>\n -\n - @author Julius Härtl <jus@bitgrid.net>\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<template>\n\t<div ref=\"picker\" class=\"reference-file-picker\" />\n</template>\n\n<script>\nimport { FilePickerType } from '@nextcloud/dialogs'\nimport { generateUrl } from '@nextcloud/router'\nexport default {\n\tname: 'FileReferencePickerElement',\n\tcomponents: {\n\t},\n\tprops: {\n\t\tproviderId: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\taccessible: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.openFilePicker()\n\t\twindow.addEventListener('click', this.onWindowClick)\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('click', this.onWindowClick)\n\t},\n\tmethods: {\n\t\tonWindowClick(e) {\n\t\t\tif (e.target.tagName === 'A' && e.target.classList.contains('oc-dialog-close')) {\n\t\t\t\tthis.$emit('cancel')\n\t\t\t}\n\t\t},\n\t\tasync openFilePicker() {\n\t\t\tOC.dialogs.filepicker(\n\t\t\t\tt('files', 'Select file or folder to link to'),\n\t\t\t\t(file) => {\n\t\t\t\t\tconst client = OC.Files.getClient()\n\t\t\t\t\tclient.getFileInfo(file).then((_status, fileInfo) => {\n\t\t\t\t\t\tthis.submit(fileInfo.id)\n\t\t\t\t\t})\n\t\t\t\t},\n\t\t\t\tfalse, // multiselect\n\t\t\t\t[], // mime filter\n\t\t\t\tfalse, // modal\n\t\t\t\tFilePickerType.Choose, // type\n\t\t\t\t'',\n\t\t\t\t{\n\t\t\t\t\ttarget: this.$refs.picker,\n\t\t\t\t},\n\t\t\t)\n\t\t},\n\t\tsubmit(fileId) {\n\t\t\tconst fileLink = window.location.protocol + '//' + window.location.host\n\t\t\t\t+ generateUrl('/f/{fileId}', { fileId })\n\t\t\tthis.$emit('submit', fileLink)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.reference-file-picker {\n\tflex-grow: 1;\n\tpadding: 12px 16px 16px 16px;\n\n\t&:deep(.oc-dialog) {\n\t\ttransform: none !important;\n\t\tbox-shadow: none !important;\n\t\tflex-grow: 1 !important;\n\t\tposition: static !important;\n\t\twidth: 100% !important;\n\t\theight: auto !important;\n\t\tpadding: 0 !important;\n\t\tmax-width: initial;\n\n\t\t.oc-dialog-close {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t.oc-dialog-buttonrow.onebutton.aside {\n\t\t\tposition: absolute;\n\t\t\tpadding: 12px 32px;\n\t\t}\n\n\t\t.oc-dialog-content {\n\t\t\tmax-width: 100% !important;\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileReferencePickerElement.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileReferencePickerElement.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileReferencePickerElement.vue?vue&type=style&index=0&id=2dd87592&prod&scoped=true&lang=scss&\";\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 \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileReferencePickerElement.vue?vue&type=style&index=0&id=2dd87592&prod&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileReferencePickerElement.vue?vue&type=template&id=2dd87592&scoped=true&\"\nimport script from \"./FileReferencePickerElement.vue?vue&type=script&lang=js&\"\nexport * from \"./FileReferencePickerElement.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FileReferencePickerElement.vue?vue&type=style&index=0&id=2dd87592&prod&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2dd87592\",\n null\n \n)\n\nexport default component.exports","/**\n * @copyright Copyright (c) 2022 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\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\nimport Vue from 'vue'\nimport { translate as t } from '@nextcloud/l10n'\n\nimport { registerWidget, registerCustomPickerElement, NcCustomPickerRenderResult } from '@nextcloud/vue/dist/Components/NcRichText.js'\n\nimport FileWidget from './views/ReferenceFileWidget.vue'\nimport FileReferencePickerElement from './views/FileReferencePickerElement.vue'\n\nVue.mixin({\n\tmethods: {\n\t\tt,\n\t},\n})\n\nregisterWidget('file', (el, { richObjectType, richObject, accessible }) => {\n\tconst Widget = Vue.extend(FileWidget)\n\tnew Widget({\n\t\tpropsData: {\n\t\t\trichObjectType,\n\t\t\trichObject,\n\t\t\taccessible,\n\t\t},\n\t}).$mount(el)\n})\n\nregisterCustomPickerElement('files', (el, { providerId, accessible }) => {\n\tconst Element = Vue.extend(FileReferencePickerElement)\n\tconst vueElement = new Element({\n\t\tpropsData: {\n\t\t\tproviderId,\n\t\t\taccessible,\n\t\t},\n\t}).$mount(el)\n\treturn new NcCustomPickerRenderResult(vueElement.$el, vueElement)\n}, (el, renderResult) => {\n\trenderResult.object.$destroy()\n})\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/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, \".reference-file-picker[data-v-2dd87592]{flex-grow:1;padding:12px 16px 16px 16px}.reference-file-picker[data-v-2dd87592] .oc-dialog{transform:none !important;box-shadow:none !important;flex-grow:1 !important;position:static !important;width:100% !important;height:auto !important;padding:0 !important;max-width:initial}.reference-file-picker[data-v-2dd87592] .oc-dialog .oc-dialog-close{display:none}.reference-file-picker[data-v-2dd87592] .oc-dialog .oc-dialog-buttonrow.onebutton.aside{position:absolute;padding:12px 32px}.reference-file-picker[data-v-2dd87592] .oc-dialog .oc-dialog-content{max-width:100% !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/FileReferencePickerElement.vue\"],\"names\":[],\"mappings\":\"AACA,wCACC,WAAA,CACA,2BAAA,CAEA,mDACC,yBAAA,CACA,0BAAA,CACA,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,sBAAA,CACA,oBAAA,CACA,iBAAA,CAEA,oEACC,YAAA,CAGD,wFACC,iBAAA,CACA,iBAAA,CAGD,sEACC,yBAAA\",\"sourcesContent\":[\"\\n.reference-file-picker {\\n\\tflex-grow: 1;\\n\\tpadding: 12px 16px 16px 16px;\\n\\n\\t&:deep(.oc-dialog) {\\n\\t\\ttransform: none !important;\\n\\t\\tbox-shadow: none !important;\\n\\t\\tflex-grow: 1 !important;\\n\\t\\tposition: static !important;\\n\\t\\twidth: 100% !important;\\n\\t\\theight: auto !important;\\n\\t\\tpadding: 0 !important;\\n\\t\\tmax-width: initial;\\n\\n\\t\\t.oc-dialog-close {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\n\\t\\t.oc-dialog-buttonrow.onebutton.aside {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tpadding: 12px 32px;\\n\\t\\t}\\n\\n\\t\\t.oc-dialog-content {\\n\\t\\t\\tmax-width: 100% !important;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/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, \".widget-file[data-v-3f729da0]{display:flex;flex-grow:1;color:var(--color-main-text) !important;text-decoration:none !important}.widget-file--image[data-v-3f729da0]{min-width:40%;background-position:center;background-size:cover;background-repeat:no-repeat}.widget-file--image.widget-file--image--icon[data-v-3f729da0]{min-width:88px;background-size:44px}.widget-file--title[data-v-3f729da0]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:bold}.widget-file--details[data-v-3f729da0]{padding:12px;flex-grow:1;display:flex;flex-direction:column}.widget-file--details p[data-v-3f729da0]{margin:0;padding:0}.widget-file--description[data-v-3f729da0]{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical}.widget-file--link[data-v-3f729da0]{color:var(--color-text-maxcontrast)}.widget-file.widget-file--no-access[data-v-3f729da0]{padding:12px}.widget-file.widget-file--no-access .widget-file--details[data-v-3f729da0]{padding:0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/ReferenceFileWidget.vue\"],\"names\":[],\"mappings\":\"AACA,8BACC,YAAA,CACA,WAAA,CACA,uCAAA,CACA,+BAAA,CAEA,qCACC,aAAA,CACA,0BAAA,CACA,qBAAA,CACA,2BAAA,CAEA,8DACC,cAAA,CACA,oBAAA,CAIF,qCACC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,gBAAA,CAGD,uCACC,YAAA,CACA,WAAA,CACA,YAAA,CACA,qBAAA,CAEA,yCACC,QAAA,CACA,SAAA,CAIF,2CACC,eAAA,CACA,sBAAA,CACA,mBAAA,CACA,oBAAA,CACA,YAAA,CACA,2BAAA,CAGD,oCACC,mCAAA,CAGD,qDACC,YAAA,CAEA,2EACC,SAAA\",\"sourcesContent\":[\"\\n.widget-file {\\n\\tdisplay: flex;\\n\\tflex-grow: 1;\\n\\tcolor: var(--color-main-text) !important;\\n\\ttext-decoration: none !important;\\n\\n\\t&--image {\\n\\t\\tmin-width: 40%;\\n\\t\\tbackground-position: center;\\n\\t\\tbackground-size: cover;\\n\\t\\tbackground-repeat: no-repeat;\\n\\n\\t\\t&.widget-file--image--icon {\\n\\t\\t\\tmin-width: 88px;\\n\\t\\t\\tbackground-size: 44px;\\n\\t\\t}\\n\\t}\\n\\n\\t&--title {\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\twhite-space: nowrap;\\n\\t\\tfont-weight: bold;\\n\\t}\\n\\n\\t&--details {\\n\\t\\tpadding: 12px;\\n\\t\\tflex-grow: 1;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\n\\t\\tp {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t&--description {\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tdisplay: -webkit-box;\\n\\t\\t-webkit-line-clamp: 3;\\n\\t\\tline-clamp: 3;\\n\\t\\t-webkit-box-orient: vertical;\\n\\t}\\n\\n\\t&--link {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n\\n\\t&.widget-file--no-access {\\n\\t\\tpadding: 12px;\\n\\n\\t\\t.widget-file--details {\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar toStr = Object.prototype.toString;\nvar defineProperty = Object.defineProperty;\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nvar isArray = function isArray(arr) {\n\tif (typeof Array.isArray === 'function') {\n\t\treturn Array.isArray(arr);\n\t}\n\n\treturn toStr.call(arr) === '[object Array]';\n};\n\nvar isPlainObject = function isPlainObject(obj) {\n\tif (!obj || toStr.call(obj) !== '[object Object]') {\n\t\treturn false;\n\t}\n\n\tvar hasOwnConstructor = hasOwn.call(obj, 'constructor');\n\tvar hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, 'isPrototypeOf');\n\t// Not own constructor property must be Object\n\tif (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {\n\t\treturn false;\n\t}\n\n\t// Own properties are enumerated firstly, so to speed up,\n\t// if last one is own, then all properties are own.\n\tvar key;\n\tfor (key in obj) { /**/ }\n\n\treturn typeof key === 'undefined' || hasOwn.call(obj, key);\n};\n\n// If name is '__proto__', and Object.defineProperty is available, define __proto__ as an own property on target\nvar setProperty = function setProperty(target, options) {\n\tif (defineProperty && options.name === '__proto__') {\n\t\tdefineProperty(target, options.name, {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true,\n\t\t\tvalue: options.newValue,\n\t\t\twritable: true\n\t\t});\n\t} else {\n\t\ttarget[options.name] = options.newValue;\n\t}\n};\n\n// Return undefined instead of __proto__ if '__proto__' is not an own property\nvar getProperty = function getProperty(obj, name) {\n\tif (name === '__proto__') {\n\t\tif (!hasOwn.call(obj, name)) {\n\t\t\treturn void 0;\n\t\t} else if (gOPD) {\n\t\t\t// In early versions of node, obj['__proto__'] is buggy when obj has\n\t\t\t// __proto__ as an own property. Object.getOwnPropertyDescriptor() works.\n\t\t\treturn gOPD(obj, name).value;\n\t\t}\n\t}\n\n\treturn obj[name];\n};\n\nmodule.exports = function extend() {\n\tvar options, name, src, copy, copyIsArray, clone;\n\tvar target = arguments[0];\n\tvar i = 1;\n\tvar length = arguments.length;\n\tvar deep = false;\n\n\t// Handle a deep copy situation\n\tif (typeof target === 'boolean') {\n\t\tdeep = target;\n\t\ttarget = arguments[1] || {};\n\t\t// skip the boolean and the target\n\t\ti = 2;\n\t}\n\tif (target == null || (typeof target !== 'object' && typeof target !== 'function')) {\n\t\ttarget = {};\n\t}\n\n\tfor (; i < length; ++i) {\n\t\toptions = arguments[i];\n\t\t// Only deal with non-null/undefined values\n\t\tif (options != null) {\n\t\t\t// Extend the base object\n\t\t\tfor (name in options) {\n\t\t\t\tsrc = getProperty(target, name);\n\t\t\t\tcopy = getProperty(options, name);\n\n\t\t\t\t// Prevent never-ending loop\n\t\t\t\tif (target !== copy) {\n\t\t\t\t\t// Recurse if we're merging plain objects or arrays\n\t\t\t\t\tif (deep && copy && (isPlainObject(copy) || (copyIsArray = isArray(copy)))) {\n\t\t\t\t\t\tif (copyIsArray) {\n\t\t\t\t\t\t\tcopyIsArray = false;\n\t\t\t\t\t\t\tclone = src && isArray(src) ? src : [];\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tclone = src && isPlainObject(src) ? src : {};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Never move original objects, clone them\n\t\t\t\t\t\tsetProperty(target, { name: name, newValue: extend(deep, clone, copy) });\n\n\t\t\t\t\t// Don't bring in undefined values\n\t\t\t\t\t} else if (typeof copy !== 'undefined') {\n\t\t\t\t\t\tsetProperty(target, { name: name, newValue: copy });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// Return the modified object\n\treturn target;\n};\n","// http://www.w3.org/TR/CSS21/grammar.html\n// https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\n\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\n\n// declaration\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\n\n// https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\n\n// strings\nvar NEWLINE = '\\n';\nvar FORWARD_SLASH = '/';\nvar ASTERISK = '*';\nvar EMPTY_STRING = '';\n\n// types\nvar TYPE_COMMENT = 'comment';\nvar TYPE_DECLARATION = 'declaration';\n\n/**\n * @param {String} style\n * @param {Object} [options]\n * @return {Object[]}\n * @throws {TypeError}\n * @throws {Error}\n */\nmodule.exports = function(style, options) {\n if (typeof style !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!style) return [];\n\n options = options || {};\n\n /**\n * Positional.\n */\n var lineno = 1;\n var column = 1;\n\n /**\n * Update lineno and column based on `str`.\n *\n * @param {String} str\n */\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines) lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n\n /**\n * Mark position and patch `node.position`.\n *\n * @return {Function}\n */\n function position() {\n var start = { line: lineno, column: column };\n return function(node) {\n node.position = new Position(start);\n whitespace();\n return node;\n };\n }\n\n /**\n * Store position information for a node.\n *\n * @constructor\n * @property {Object} start\n * @property {Object} end\n * @property {undefined|String} source\n */\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column: column };\n this.source = options.source;\n }\n\n /**\n * Non-enumerable source string.\n */\n Position.prototype.content = style;\n\n var errorsList = [];\n\n /**\n * Error `msg`.\n *\n * @param {String} msg\n * @throws {Error}\n */\n function error(msg) {\n var err = new Error(\n options.source + ':' + lineno + ':' + column + ': ' + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n\n if (options.silent) {\n errorsList.push(err);\n } else {\n throw err;\n }\n }\n\n /**\n * Match `re` and return captures.\n *\n * @param {RegExp} re\n * @return {undefined|Array}\n */\n function match(re) {\n var m = re.exec(style);\n if (!m) return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n\n /**\n * Parse whitespace.\n */\n function whitespace() {\n match(WHITESPACE_REGEX);\n }\n\n /**\n * Parse comments.\n *\n * @param {Object[]} [rules]\n * @return {Object[]}\n */\n function comments(rules) {\n var c;\n rules = rules || [];\n while ((c = comment())) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n\n /**\n * Parse comment.\n *\n * @return {Object}\n * @throws {Error}\n */\n function comment() {\n var pos = position();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;\n\n var i = 2;\n while (\n EMPTY_STRING != style.charAt(i) &&\n (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))\n ) {\n ++i;\n }\n i += 2;\n\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error('End of comment missing');\n }\n\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n\n /**\n * Parse declaration.\n *\n * @return {Object}\n * @throws {Error}\n */\n function declaration() {\n var pos = position();\n\n // prop\n var prop = match(PROPERTY_REGEX);\n if (!prop) return;\n comment();\n\n // :\n if (!match(COLON_REGEX)) return error(\"property missing ':'\");\n\n // val\n var val = match(VALUE_REGEX);\n\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val\n ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))\n : EMPTY_STRING\n });\n\n // ;\n match(SEMICOLON_REGEX);\n\n return ret;\n }\n\n /**\n * Parse declarations.\n *\n * @return {Object[]}\n */\n function declarations() {\n var decls = [];\n\n comments(decls);\n\n // declarations\n var decl;\n while ((decl = declaration())) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n\n return decls;\n }\n\n whitespace();\n return declarations();\n};\n\n/**\n * Trim `str`.\n *\n * @param {String} str\n * @return {String}\n */\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\n","var parse = require('inline-style-parser');\n\n/**\n * Parses inline style to object.\n *\n * @example\n * // returns { 'line-height': '42' }\n * StyleToObject('line-height: 42;');\n *\n * @param {String} style - The inline style.\n * @param {Function} [iterator] - The iterator function.\n * @return {null|Object}\n */\nfunction StyleToObject(style, iterator) {\n var output = null;\n if (!style || typeof style !== 'string') {\n return output;\n }\n\n var declaration;\n var declarations = parse(style);\n var hasIterator = typeof iterator === 'function';\n var property;\n var value;\n\n for (var i = 0, len = declarations.length; i < len; i++) {\n declaration = declarations[i];\n property = declaration.property;\n value = declaration.value;\n\n if (hasIterator) {\n iterator(property, value, declaration);\n } else if (value) {\n output || (output = {});\n output[property] = value;\n }\n }\n\n return output;\n}\n\nmodule.exports = StyleToObject;\nmodule.exports.default = StyleToObject; // ESM support\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\nmodule.exports = function isBuffer (obj) {\n return obj != null && obj.constructor != null &&\n typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\nmodule.exports = function isBuffer (obj) {\n return obj != null && obj.constructor != null &&\n typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon link-variant-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path 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\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\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}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./LinkVariant.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./LinkVariant.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LinkVariant.vue?vue&type=template&id=3834522c&\"\nimport script from \"./LinkVariant.vue?vue&type=script&lang=js&\"\nexport * from \"./LinkVariant.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon link-variant-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('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\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=d480a606&\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js&\"\nexport * from \"./Magnify.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/**\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Definition} Definition\n */\n\n/**\n * @typedef {Root | Content} Node\n *\n * @callback GetDefinition\n * Get a definition by identifier.\n * @param {string | null | undefined} [identifier]\n * Identifier of definition.\n * @returns {Definition | null}\n * Definition corresponding to `identifier` or `null`.\n */\n\nimport {visit} from 'unist-util-visit'\n\nconst own = {}.hasOwnProperty\n\n/**\n * Find definitions in `tree`.\n *\n * Uses CommonMark precedence, which means that earlier definitions are\n * preferred over duplicate later definitions.\n *\n * @param {Node} tree\n * Tree to check.\n * @returns {GetDefinition}\n * Getter.\n */\nexport function definitions(tree) {\n /** @type {Record<string, Definition>} */\n const cache = Object.create(null)\n\n if (!tree || !tree.type) {\n throw new Error('mdast-util-definitions expected node')\n }\n\n visit(tree, 'definition', (definition) => {\n const id = clean(definition.identifier)\n if (id && !own.call(cache, id)) {\n cache[id] = definition\n }\n })\n\n return definition\n\n /** @type {GetDefinition} */\n function definition(identifier) {\n const id = clean(identifier)\n // To do: next major: return `undefined` when not found.\n return id && own.call(cache, id) ? cache[id] : null\n }\n}\n\n/**\n * @param {string | null | undefined} [value]\n * @returns {string}\n */\nfunction clean(value) {\n return String(value || '').toUpperCase()\n}\n","// This module is generated by `script/`.\n//\n// CommonMark handles attention (emphasis, strong) markers based on what comes\n// before or after them.\n// One such difference is if those characters are Unicode punctuation.\n// This script is generated from the Unicode data.\nexport const unicodePunctuationRegex =\n /[!-/:-@[-`{-~\\u00A1\\u00A7\\u00AB\\u00B6\\u00B7\\u00BB\\u00BF\\u037E\\u0387\\u055A-\\u055F\\u0589\\u058A\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0609\\u060A\\u060C\\u060D\\u061B\\u061E\\u061F\\u066A-\\u066D\\u06D4\\u0700-\\u070D\\u07F7-\\u07F9\\u0830-\\u083E\\u085E\\u0964\\u0965\\u0970\\u09FD\\u0A76\\u0AF0\\u0C77\\u0C84\\u0DF4\\u0E4F\\u0E5A\\u0E5B\\u0F04-\\u0F12\\u0F14\\u0F3A-\\u0F3D\\u0F85\\u0FD0-\\u0FD4\\u0FD9\\u0FDA\\u104A-\\u104F\\u10FB\\u1360-\\u1368\\u1400\\u166E\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DA\\u1800-\\u180A\\u1944\\u1945\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B5A-\\u1B60\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205E\\u207D\\u207E\\u208D\\u208E\\u2308-\\u230B\\u2329\\u232A\\u2768-\\u2775\\u27C5\\u27C6\\u27E6-\\u27EF\\u2983-\\u2998\\u29D8-\\u29DB\\u29FC\\u29FD\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E4F\\u2E52\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301F\\u3030\\u303D\\u30A0\\u30FB\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAADE\\uAADF\\uAAF0\\uAAF1\\uABEB\\uFD3E\\uFD3F\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE61\\uFE63\\uFE68\\uFE6A\\uFE6B\\uFF01-\\uFF03\\uFF05-\\uFF0A\\uFF0C-\\uFF0F\\uFF1A\\uFF1B\\uFF1F\\uFF20\\uFF3B-\\uFF3D\\uFF3F\\uFF5B\\uFF5D\\uFF5F-\\uFF65]/\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {unicodePunctuationRegex} from './lib/unicode-punctuation-regex.js'\n/**\n * Check whether the character code represents an ASCII alpha (`a` through `z`,\n * case insensitive).\n *\n * An **ASCII alpha** is an ASCII upper alpha or ASCII lower alpha.\n *\n * An **ASCII upper alpha** is a character in the inclusive range U+0041 (`A`)\n * to U+005A (`Z`).\n *\n * An **ASCII lower alpha** is a character in the inclusive range U+0061 (`a`)\n * to U+007A (`z`).\n */\n\nexport const asciiAlpha = regexCheck(/[A-Za-z]/)\n/**\n * Check whether the character code represents an ASCII digit (`0` through `9`).\n *\n * An **ASCII digit** is a character in the inclusive range U+0030 (`0`) to\n * U+0039 (`9`).\n */\n\nexport const asciiDigit = regexCheck(/\\d/)\n/**\n * Check whether the character code represents an ASCII hex digit (`a` through\n * `f`, case insensitive, or `0` through `9`).\n *\n * An **ASCII hex digit** is an ASCII digit (see `asciiDigit`), ASCII upper hex\n * digit, or an ASCII lower hex digit.\n *\n * An **ASCII upper hex digit** is a character in the inclusive range U+0041\n * (`A`) to U+0046 (`F`).\n *\n * An **ASCII lower hex digit** is a character in the inclusive range U+0061\n * (`a`) to U+0066 (`f`).\n */\n\nexport const asciiHexDigit = regexCheck(/[\\dA-Fa-f]/)\n/**\n * Check whether the character code represents an ASCII alphanumeric (`a`\n * through `z`, case insensitive, or `0` through `9`).\n *\n * An **ASCII alphanumeric** is an ASCII digit (see `asciiDigit`) or ASCII alpha\n * (see `asciiAlpha`).\n */\n\nexport const asciiAlphanumeric = regexCheck(/[\\dA-Za-z]/)\n/**\n * Check whether the character code represents ASCII punctuation.\n *\n * An **ASCII punctuation** is a character in the inclusive ranges U+0021\n * EXCLAMATION MARK (`!`) to U+002F SLASH (`/`), U+003A COLON (`:`) to U+0040 AT\n * SIGN (`@`), U+005B LEFT SQUARE BRACKET (`[`) to U+0060 GRAVE ACCENT\n * (`` ` ``), or U+007B LEFT CURLY BRACE (`{`) to U+007E TILDE (`~`).\n */\n\nexport const asciiPunctuation = regexCheck(/[!-/:-@[-`{-~]/)\n/**\n * Check whether the character code represents an ASCII atext.\n *\n * atext is an ASCII alphanumeric (see `asciiAlphanumeric`), or a character in\n * the inclusive ranges U+0023 NUMBER SIGN (`#`) to U+0027 APOSTROPHE (`'`),\n * U+002A ASTERISK (`*`), U+002B PLUS SIGN (`+`), U+002D DASH (`-`), U+002F\n * SLASH (`/`), U+003D EQUALS TO (`=`), U+003F QUESTION MARK (`?`), U+005E\n * CARET (`^`) to U+0060 GRAVE ACCENT (`` ` ``), or U+007B LEFT CURLY BRACE\n * (`{`) to U+007E TILDE (`~`).\n *\n * See:\n * **\\[RFC5322]**:\n * [Internet Message Format](https://tools.ietf.org/html/rfc5322).\n * P. Resnick.\n * IETF.\n */\n\nexport const asciiAtext = regexCheck(/[#-'*+\\--9=?A-Z^-~]/)\n/**\n * Check whether a character code is an ASCII control character.\n *\n * An **ASCII control** is a character in the inclusive range U+0000 NULL (NUL)\n * to U+001F (US), or U+007F (DEL).\n *\n * @param {Code} code\n * @returns {code is number}\n */\n\nexport function asciiControl(code) {\n return (\n // Special whitespace codes (which have negative values), C0 and Control\n // character DEL\n code !== null && (code < 32 || code === 127)\n )\n}\n/**\n * Check whether a character code is a markdown line ending (see\n * `markdownLineEnding`) or markdown space (see `markdownSpace`).\n *\n * @param {Code} code\n * @returns {code is number}\n */\n\nexport function markdownLineEndingOrSpace(code) {\n return code !== null && (code < 0 || code === 32)\n}\n/**\n * Check whether a character code is a markdown line ending.\n *\n * A **markdown line ending** is the virtual characters M-0003 CARRIAGE RETURN\n * LINE FEED (CRLF), M-0004 LINE FEED (LF) and M-0005 CARRIAGE RETURN (CR).\n *\n * In micromark, the actual character U+000A LINE FEED (LF) and U+000D CARRIAGE\n * RETURN (CR) are replaced by these virtual characters depending on whether\n * they occurred together.\n *\n * @param {Code} code\n * @returns {code is number}\n */\n\nexport function markdownLineEnding(code) {\n return code !== null && code < -2\n}\n/**\n * Check whether a character code is a markdown space.\n *\n * A **markdown space** is the concrete character U+0020 SPACE (SP) and the\n * virtual characters M-0001 VIRTUAL SPACE (VS) and M-0002 HORIZONTAL TAB (HT).\n *\n * In micromark, the actual character U+0009 CHARACTER TABULATION (HT) is\n * replaced by one M-0002 HORIZONTAL TAB (HT) and between 0 and 3 M-0001 VIRTUAL\n * SPACE (VS) characters, depending on the column at which the tab occurred.\n *\n * @param {Code} code\n * @returns {code is number}\n */\n\nexport function markdownSpace(code) {\n return code === -2 || code === -1 || code === 32\n}\n/**\n * Check whether the character code represents Unicode whitespace.\n *\n * Note that this does handle micromark specific markdown whitespace characters.\n * See `markdownLineEndingOrSpace` to check that.\n *\n * A **Unicode whitespace** is a character in the Unicode `Zs` (Separator,\n * Space) category, or U+0009 CHARACTER TABULATION (HT), U+000A LINE FEED (LF),\n * U+000C (FF), or U+000D CARRIAGE RETURN (CR) (**\\[UNICODE]**).\n *\n * See:\n * **\\[UNICODE]**:\n * [The Unicode Standard](https://www.unicode.org/versions/).\n * Unicode Consortium.\n */\n\nexport const unicodeWhitespace = regexCheck(/\\s/)\n/**\n * Check whether the character code represents Unicode punctuation.\n *\n * A **Unicode punctuation** is a character in the Unicode `Pc` (Punctuation,\n * Connector), `Pd` (Punctuation, Dash), `Pe` (Punctuation, Close), `Pf`\n * (Punctuation, Final quote), `Pi` (Punctuation, Initial quote), `Po`\n * (Punctuation, Other), or `Ps` (Punctuation, Open) categories, or an ASCII\n * punctuation (see `asciiPunctuation`).\n *\n * See:\n * **\\[UNICODE]**:\n * [The Unicode Standard](https://www.unicode.org/versions/).\n * Unicode Consortium.\n */\n// Size note: removing ASCII from the regex and using `asciiPunctuation` here\n// In fact adds to the bundle size.\n\nexport const unicodePunctuation = regexCheck(unicodePunctuationRegex)\n/**\n * Create a code check from a regex.\n *\n * @param {RegExp} regex\n * @returns {(code: Code) => code is number}\n */\n\nfunction regexCheck(regex) {\n return check\n /**\n * Check whether a code matches the bound regex.\n *\n * @param {Code} code Character code\n * @returns {code is number} Whether the character code matches the bound regex\n */\n\n function check(code) {\n return code !== null && regex.test(String.fromCharCode(code))\n }\n}\n","/**\n * @typedef {import('./info.js').Info} Info\n * @typedef {Record<string, Info>} Properties\n * @typedef {Record<string, string>} Normal\n */\n\nexport class Schema {\n /**\n * @constructor\n * @param {Properties} property\n * @param {Normal} normal\n * @param {string} [space]\n */\n constructor(property, normal, space) {\n this.property = property\n this.normal = normal\n if (space) {\n this.space = space\n }\n }\n}\n\n/** @type {Properties} */\nSchema.prototype.property = {}\n/** @type {Normal} */\nSchema.prototype.normal = {}\n/** @type {string|null} */\nSchema.prototype.space = null\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n */\n\nimport {Schema} from './schema.js'\n\n/**\n * @param {Schema[]} definitions\n * @param {string} [space]\n * @returns {Schema}\n */\nexport function merge(definitions, space) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n let index = -1\n\n while (++index < definitions.length) {\n Object.assign(property, definitions[index].property)\n Object.assign(normal, definitions[index].normal)\n }\n\n return new Schema(property, normal, space)\n}\n","/**\n * @param {string} value\n * @returns {string}\n */\nexport function normalize(value) {\n return value.toLowerCase()\n}\n","export class Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n */\n constructor(property, attribute) {\n /** @type {string} */\n this.property = property\n /** @type {string} */\n this.attribute = attribute\n }\n}\n\n/** @type {string|null} */\nInfo.prototype.space = null\nInfo.prototype.boolean = false\nInfo.prototype.booleanish = false\nInfo.prototype.overloadedBoolean = false\nInfo.prototype.number = false\nInfo.prototype.commaSeparated = false\nInfo.prototype.spaceSeparated = false\nInfo.prototype.commaOrSpaceSeparated = false\nInfo.prototype.mustUseProperty = false\nInfo.prototype.defined = false\n","let powers = 0\n\nexport const boolean = increment()\nexport const booleanish = increment()\nexport const overloadedBoolean = increment()\nexport const number = increment()\nexport const spaceSeparated = increment()\nexport const commaSeparated = increment()\nexport const commaOrSpaceSeparated = increment()\n\nfunction increment() {\n return 2 ** ++powers\n}\n","import {Info} from './info.js'\nimport * as types from './types.js'\n\n/** @type {Array<keyof types>} */\n// @ts-expect-error: hush.\nconst checks = Object.keys(types)\n\nexport class DefinedInfo extends Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n * @param {number|null} [mask]\n * @param {string} [space]\n */\n constructor(property, attribute, mask, space) {\n let index = -1\n\n super(property, attribute)\n\n mark(this, 'space', space)\n\n if (typeof mask === 'number') {\n while (++index < checks.length) {\n const check = checks[index]\n mark(this, checks[index], (mask & types[check]) === types[check])\n }\n }\n }\n}\n\nDefinedInfo.prototype.defined = true\n\n/**\n * @param {DefinedInfo} values\n * @param {string} key\n * @param {unknown} value\n */\nfunction mark(values, key, value) {\n if (value) {\n // @ts-expect-error: assume `value` matches the expected value of `key`.\n values[key] = value\n }\n}\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n *\n * @typedef {Record<string, string>} Attributes\n *\n * @typedef {Object} Definition\n * @property {Record<string, number|null>} properties\n * @property {(attributes: Attributes, property: string) => string} transform\n * @property {string} [space]\n * @property {Attributes} [attributes]\n * @property {Array<string>} [mustUseProperty]\n */\n\nimport {normalize} from '../normalize.js'\nimport {Schema} from './schema.js'\nimport {DefinedInfo} from './defined-info.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * @param {Definition} definition\n * @returns {Schema}\n */\nexport function create(definition) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n /** @type {string} */\n let prop\n\n for (prop in definition.properties) {\n if (own.call(definition.properties, prop)) {\n const value = definition.properties[prop]\n const info = new DefinedInfo(\n prop,\n definition.transform(definition.attributes || {}, prop),\n value,\n definition.space\n )\n\n if (\n definition.mustUseProperty &&\n definition.mustUseProperty.includes(prop)\n ) {\n info.mustUseProperty = true\n }\n\n property[prop] = info\n\n normal[normalize(prop)] = prop\n normal[normalize(info.attribute)] = prop\n }\n }\n\n return new Schema(property, normal, definition.space)\n}\n","import {create} from './util/create.js'\n\nexport const xlink = create({\n space: 'xlink',\n transform(_, prop) {\n return 'xlink:' + prop.slice(5).toLowerCase()\n },\n properties: {\n xLinkActuate: null,\n xLinkArcRole: null,\n xLinkHref: null,\n xLinkRole: null,\n xLinkShow: null,\n xLinkTitle: null,\n xLinkType: null\n }\n})\n","import {create} from './util/create.js'\n\nexport const xml = create({\n space: 'xml',\n transform(_, prop) {\n return 'xml:' + prop.slice(3).toLowerCase()\n },\n properties: {xmlLang: null, xmlBase: null, xmlSpace: null}\n})\n","/**\n * @param {Record<string, string>} attributes\n * @param {string} attribute\n * @returns {string}\n */\nexport function caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute\n}\n","import {caseSensitiveTransform} from './case-sensitive-transform.js'\n\n/**\n * @param {Record<string, string>} attributes\n * @param {string} property\n * @returns {string}\n */\nexport function caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase())\n}\n","import {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const xmlns = create({\n space: 'xmlns',\n attributes: {xmlnsxlink: 'xmlns:xlink'},\n transform: caseInsensitiveTransform,\n properties: {xmlns: null, xmlnsXLink: null}\n})\n","import {booleanish, number, spaceSeparated} from './util/types.js'\nimport {create} from './util/create.js'\n\nexport const aria = create({\n transform(_, prop) {\n return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase()\n },\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n }\n})\n","import {\n boolean,\n overloadedBoolean,\n booleanish,\n number,\n spaceSeparated,\n commaSeparated\n} from './util/types.js'\nimport {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const html = create({\n space: 'html',\n attributes: {\n acceptcharset: 'accept-charset',\n classname: 'class',\n htmlfor: 'for',\n httpequiv: 'http-equiv'\n },\n transform: caseInsensitiveTransform,\n mustUseProperty: ['checked', 'multiple', 'muted', 'selected'],\n properties: {\n // Standard Properties.\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n capture: boolean,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: boolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforeMatch: null,\n onBeforePrint: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onScrollEnd: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n\n // Legacy.\n // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis\n align: null, // Several. Use CSS `text-align` instead,\n aLink: null, // `<body>`. Use CSS `a:active {color}` instead\n archive: spaceSeparated, // `<object>`. List of URIs to archives\n axis: null, // `<td>` and `<th>`. Use `scope` on `<th>`\n background: null, // `<body>`. Use CSS `background-image` instead\n bgColor: null, // `<body>` and table elements. Use CSS `background-color` instead\n border: number, // `<table>`. Use CSS `border-width` instead,\n borderColor: null, // `<table>`. Use CSS `border-color` instead,\n bottomMargin: number, // `<body>`\n cellPadding: null, // `<table>`\n cellSpacing: null, // `<table>`\n char: null, // Several table elements. When `align=char`, sets the character to align on\n charOff: null, // Several table elements. When `char`, offsets the alignment\n classId: null, // `<object>`\n clear: null, // `<br>`. Use CSS `clear` instead\n code: null, // `<object>`\n codeBase: null, // `<object>`\n codeType: null, // `<object>`\n color: null, // `<font>` and `<hr>`. Use CSS instead\n compact: boolean, // Lists. Use CSS to reduce space between items instead\n declare: boolean, // `<object>`\n event: null, // `<script>`\n face: null, // `<font>`. Use CSS instead\n frame: null, // `<table>`\n frameBorder: null, // `<iframe>`. Use CSS `border` instead\n hSpace: number, // `<img>` and `<object>`\n leftMargin: number, // `<body>`\n link: null, // `<body>`. Use CSS `a:link {color: *}` instead\n longDesc: null, // `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`\n lowSrc: null, // `<img>`. Use a `<picture>`\n marginHeight: number, // `<body>`\n marginWidth: number, // `<body>`\n noResize: boolean, // `<frame>`\n noHref: boolean, // `<area>`. Use no href instead of an explicit `nohref`\n noShade: boolean, // `<hr>`. Use background-color and height instead of borders\n noWrap: boolean, // `<td>` and `<th>`\n object: null, // `<applet>`\n profile: null, // `<head>`\n prompt: null, // `<isindex>`\n rev: null, // `<link>`\n rightMargin: number, // `<body>`\n rules: null, // `<table>`\n scheme: null, // `<meta>`\n scrolling: booleanish, // `<frame>`. Use overflow in the child context\n standby: null, // `<object>`\n summary: null, // `<table>`\n text: null, // `<body>`. Use CSS `color` instead\n topMargin: number, // `<body>`\n valueType: null, // `<param>`\n version: null, // `<html>`. Use a doctype.\n vAlign: null, // Several. Use CSS `vertical-align` instead\n vLink: null, // `<body>`. Use CSS `a:visited {color}` instead\n vSpace: number, // `<img>` and `<object>`\n\n // Non-standard Properties.\n allowTransparency: null,\n autoCorrect: null,\n autoSave: null,\n disablePictureInPicture: boolean,\n disableRemotePlayback: boolean,\n prefix: null,\n property: null,\n results: number,\n security: null,\n unselectable: null\n }\n})\n","import {\n boolean,\n number,\n spaceSeparated,\n commaSeparated,\n commaOrSpaceSeparated\n} from './util/types.js'\nimport {create} from './util/create.js'\nimport {caseSensitiveTransform} from './util/case-sensitive-transform.js'\n\nexport const svg = create({\n space: 'svg',\n attributes: {\n accentHeight: 'accent-height',\n alignmentBaseline: 'alignment-baseline',\n arabicForm: 'arabic-form',\n baselineShift: 'baseline-shift',\n capHeight: 'cap-height',\n className: 'class',\n clipPath: 'clip-path',\n clipRule: 'clip-rule',\n colorInterpolation: 'color-interpolation',\n colorInterpolationFilters: 'color-interpolation-filters',\n colorProfile: 'color-profile',\n colorRendering: 'color-rendering',\n crossOrigin: 'crossorigin',\n dataType: 'datatype',\n dominantBaseline: 'dominant-baseline',\n enableBackground: 'enable-background',\n fillOpacity: 'fill-opacity',\n fillRule: 'fill-rule',\n floodColor: 'flood-color',\n floodOpacity: 'flood-opacity',\n fontFamily: 'font-family',\n fontSize: 'font-size',\n fontSizeAdjust: 'font-size-adjust',\n fontStretch: 'font-stretch',\n fontStyle: 'font-style',\n fontVariant: 'font-variant',\n fontWeight: 'font-weight',\n glyphName: 'glyph-name',\n glyphOrientationHorizontal: 'glyph-orientation-horizontal',\n glyphOrientationVertical: 'glyph-orientation-vertical',\n hrefLang: 'hreflang',\n horizAdvX: 'horiz-adv-x',\n horizOriginX: 'horiz-origin-x',\n horizOriginY: 'horiz-origin-y',\n imageRendering: 'image-rendering',\n letterSpacing: 'letter-spacing',\n lightingColor: 'lighting-color',\n markerEnd: 'marker-end',\n markerMid: 'marker-mid',\n markerStart: 'marker-start',\n navDown: 'nav-down',\n navDownLeft: 'nav-down-left',\n navDownRight: 'nav-down-right',\n navLeft: 'nav-left',\n navNext: 'nav-next',\n navPrev: 'nav-prev',\n navRight: 'nav-right',\n navUp: 'nav-up',\n navUpLeft: 'nav-up-left',\n navUpRight: 'nav-up-right',\n onAbort: 'onabort',\n onActivate: 'onactivate',\n onAfterPrint: 'onafterprint',\n onBeforePrint: 'onbeforeprint',\n onBegin: 'onbegin',\n onCancel: 'oncancel',\n onCanPlay: 'oncanplay',\n onCanPlayThrough: 'oncanplaythrough',\n onChange: 'onchange',\n onClick: 'onclick',\n onClose: 'onclose',\n onCopy: 'oncopy',\n onCueChange: 'oncuechange',\n onCut: 'oncut',\n onDblClick: 'ondblclick',\n onDrag: 'ondrag',\n onDragEnd: 'ondragend',\n onDragEnter: 'ondragenter',\n onDragExit: 'ondragexit',\n onDragLeave: 'ondragleave',\n onDragOver: 'ondragover',\n onDragStart: 'ondragstart',\n onDrop: 'ondrop',\n onDurationChange: 'ondurationchange',\n onEmptied: 'onemptied',\n onEnd: 'onend',\n onEnded: 'onended',\n onError: 'onerror',\n onFocus: 'onfocus',\n onFocusIn: 'onfocusin',\n onFocusOut: 'onfocusout',\n onHashChange: 'onhashchange',\n onInput: 'oninput',\n onInvalid: 'oninvalid',\n onKeyDown: 'onkeydown',\n onKeyPress: 'onkeypress',\n onKeyUp: 'onkeyup',\n onLoad: 'onload',\n onLoadedData: 'onloadeddata',\n onLoadedMetadata: 'onloadedmetadata',\n onLoadStart: 'onloadstart',\n onMessage: 'onmessage',\n onMouseDown: 'onmousedown',\n onMouseEnter: 'onmouseenter',\n onMouseLeave: 'onmouseleave',\n onMouseMove: 'onmousemove',\n onMouseOut: 'onmouseout',\n onMouseOver: 'onmouseover',\n onMouseUp: 'onmouseup',\n onMouseWheel: 'onmousewheel',\n onOffline: 'onoffline',\n onOnline: 'ononline',\n onPageHide: 'onpagehide',\n onPageShow: 'onpageshow',\n onPaste: 'onpaste',\n onPause: 'onpause',\n onPlay: 'onplay',\n onPlaying: 'onplaying',\n onPopState: 'onpopstate',\n onProgress: 'onprogress',\n onRateChange: 'onratechange',\n onRepeat: 'onrepeat',\n onReset: 'onreset',\n onResize: 'onresize',\n onScroll: 'onscroll',\n onSeeked: 'onseeked',\n onSeeking: 'onseeking',\n onSelect: 'onselect',\n onShow: 'onshow',\n onStalled: 'onstalled',\n onStorage: 'onstorage',\n onSubmit: 'onsubmit',\n onSuspend: 'onsuspend',\n onTimeUpdate: 'ontimeupdate',\n onToggle: 'ontoggle',\n onUnload: 'onunload',\n onVolumeChange: 'onvolumechange',\n onWaiting: 'onwaiting',\n onZoom: 'onzoom',\n overlinePosition: 'overline-position',\n overlineThickness: 'overline-thickness',\n paintOrder: 'paint-order',\n panose1: 'panose-1',\n pointerEvents: 'pointer-events',\n referrerPolicy: 'referrerpolicy',\n renderingIntent: 'rendering-intent',\n shapeRendering: 'shape-rendering',\n stopColor: 'stop-color',\n stopOpacity: 'stop-opacity',\n strikethroughPosition: 'strikethrough-position',\n strikethroughThickness: 'strikethrough-thickness',\n strokeDashArray: 'stroke-dasharray',\n strokeDashOffset: 'stroke-dashoffset',\n strokeLineCap: 'stroke-linecap',\n strokeLineJoin: 'stroke-linejoin',\n strokeMiterLimit: 'stroke-miterlimit',\n strokeOpacity: 'stroke-opacity',\n strokeWidth: 'stroke-width',\n tabIndex: 'tabindex',\n textAnchor: 'text-anchor',\n textDecoration: 'text-decoration',\n textRendering: 'text-rendering',\n typeOf: 'typeof',\n underlinePosition: 'underline-position',\n underlineThickness: 'underline-thickness',\n unicodeBidi: 'unicode-bidi',\n unicodeRange: 'unicode-range',\n unitsPerEm: 'units-per-em',\n vAlphabetic: 'v-alphabetic',\n vHanging: 'v-hanging',\n vIdeographic: 'v-ideographic',\n vMathematical: 'v-mathematical',\n vectorEffect: 'vector-effect',\n vertAdvY: 'vert-adv-y',\n vertOriginX: 'vert-origin-x',\n vertOriginY: 'vert-origin-y',\n wordSpacing: 'word-spacing',\n writingMode: 'writing-mode',\n xHeight: 'x-height',\n // These were camelcased in Tiny. Now lowercased in SVG 2\n playbackOrder: 'playbackorder',\n timelineBegin: 'timelinebegin'\n },\n transform: caseSensitiveTransform,\n properties: {\n about: commaOrSpaceSeparated,\n accentHeight: number,\n accumulate: null,\n additive: null,\n alignmentBaseline: null,\n alphabetic: number,\n amplitude: number,\n arabicForm: null,\n ascent: number,\n attributeName: null,\n attributeType: null,\n azimuth: number,\n bandwidth: null,\n baselineShift: null,\n baseFrequency: null,\n baseProfile: null,\n bbox: null,\n begin: null,\n bias: number,\n by: null,\n calcMode: null,\n capHeight: number,\n className: spaceSeparated,\n clip: null,\n clipPath: null,\n clipPathUnits: null,\n clipRule: null,\n color: null,\n colorInterpolation: null,\n colorInterpolationFilters: null,\n colorProfile: null,\n colorRendering: null,\n content: null,\n contentScriptType: null,\n contentStyleType: null,\n crossOrigin: null,\n cursor: null,\n cx: null,\n cy: null,\n d: null,\n dataType: null,\n defaultAction: null,\n descent: number,\n diffuseConstant: number,\n direction: null,\n display: null,\n dur: null,\n divisor: number,\n dominantBaseline: null,\n download: boolean,\n dx: null,\n dy: null,\n edgeMode: null,\n editable: null,\n elevation: number,\n enableBackground: null,\n end: null,\n event: null,\n exponent: number,\n externalResourcesRequired: null,\n fill: null,\n fillOpacity: number,\n fillRule: null,\n filter: null,\n filterRes: null,\n filterUnits: null,\n floodColor: null,\n floodOpacity: null,\n focusable: null,\n focusHighlight: null,\n fontFamily: null,\n fontSize: null,\n fontSizeAdjust: null,\n fontStretch: null,\n fontStyle: null,\n fontVariant: null,\n fontWeight: null,\n format: null,\n fr: null,\n from: null,\n fx: null,\n fy: null,\n g1: commaSeparated,\n g2: commaSeparated,\n glyphName: commaSeparated,\n glyphOrientationHorizontal: null,\n glyphOrientationVertical: null,\n glyphRef: null,\n gradientTransform: null,\n gradientUnits: null,\n handler: null,\n hanging: number,\n hatchContentUnits: null,\n hatchUnits: null,\n height: null,\n href: null,\n hrefLang: null,\n horizAdvX: number,\n horizOriginX: number,\n horizOriginY: number,\n id: null,\n ideographic: number,\n imageRendering: null,\n initialVisibility: null,\n in: null,\n in2: null,\n intercept: number,\n k: number,\n k1: number,\n k2: number,\n k3: number,\n k4: number,\n kernelMatrix: commaOrSpaceSeparated,\n kernelUnitLength: null,\n keyPoints: null, // SEMI_COLON_SEPARATED\n keySplines: null, // SEMI_COLON_SEPARATED\n keyTimes: null, // SEMI_COLON_SEPARATED\n kerning: null,\n lang: null,\n lengthAdjust: null,\n letterSpacing: null,\n lightingColor: null,\n limitingConeAngle: number,\n local: null,\n markerEnd: null,\n markerMid: null,\n markerStart: null,\n markerHeight: null,\n markerUnits: null,\n markerWidth: null,\n mask: null,\n maskContentUnits: null,\n maskUnits: null,\n mathematical: null,\n max: null,\n media: null,\n mediaCharacterEncoding: null,\n mediaContentEncodings: null,\n mediaSize: number,\n mediaTime: null,\n method: null,\n min: null,\n mode: null,\n name: null,\n navDown: null,\n navDownLeft: null,\n navDownRight: null,\n navLeft: null,\n navNext: null,\n navPrev: null,\n navRight: null,\n navUp: null,\n navUpLeft: null,\n navUpRight: null,\n numOctaves: null,\n observer: null,\n offset: null,\n onAbort: null,\n onActivate: null,\n onAfterPrint: null,\n onBeforePrint: null,\n onBegin: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnd: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFocusIn: null,\n onFocusOut: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadStart: null,\n onMessage: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onMouseWheel: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRepeat: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onShow: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onZoom: null,\n opacity: null,\n operator: null,\n order: null,\n orient: null,\n orientation: null,\n origin: null,\n overflow: null,\n overlay: null,\n overlinePosition: number,\n overlineThickness: number,\n paintOrder: null,\n panose1: null,\n path: null,\n pathLength: number,\n patternContentUnits: null,\n patternTransform: null,\n patternUnits: null,\n phase: null,\n ping: spaceSeparated,\n pitch: null,\n playbackOrder: null,\n pointerEvents: null,\n points: null,\n pointsAtX: number,\n pointsAtY: number,\n pointsAtZ: number,\n preserveAlpha: null,\n preserveAspectRatio: null,\n primitiveUnits: null,\n propagate: null,\n property: commaOrSpaceSeparated,\n r: null,\n radius: null,\n referrerPolicy: null,\n refX: null,\n refY: null,\n rel: commaOrSpaceSeparated,\n rev: commaOrSpaceSeparated,\n renderingIntent: null,\n repeatCount: null,\n repeatDur: null,\n requiredExtensions: commaOrSpaceSeparated,\n requiredFeatures: commaOrSpaceSeparated,\n requiredFonts: commaOrSpaceSeparated,\n requiredFormats: commaOrSpaceSeparated,\n resource: null,\n restart: null,\n result: null,\n rotate: null,\n rx: null,\n ry: null,\n scale: null,\n seed: null,\n shapeRendering: null,\n side: null,\n slope: null,\n snapshotTime: null,\n specularConstant: number,\n specularExponent: number,\n spreadMethod: null,\n spacing: null,\n startOffset: null,\n stdDeviation: null,\n stemh: null,\n stemv: null,\n stitchTiles: null,\n stopColor: null,\n stopOpacity: null,\n strikethroughPosition: number,\n strikethroughThickness: number,\n string: null,\n stroke: null,\n strokeDashArray: commaOrSpaceSeparated,\n strokeDashOffset: null,\n strokeLineCap: null,\n strokeLineJoin: null,\n strokeMiterLimit: number,\n strokeOpacity: number,\n strokeWidth: null,\n style: null,\n surfaceScale: number,\n syncBehavior: null,\n syncBehaviorDefault: null,\n syncMaster: null,\n syncTolerance: null,\n syncToleranceDefault: null,\n systemLanguage: commaOrSpaceSeparated,\n tabIndex: number,\n tableValues: null,\n target: null,\n targetX: number,\n targetY: number,\n textAnchor: null,\n textDecoration: null,\n textRendering: null,\n textLength: null,\n timelineBegin: null,\n title: null,\n transformBehavior: null,\n type: null,\n typeOf: commaOrSpaceSeparated,\n to: null,\n transform: null,\n u1: null,\n u2: null,\n underlinePosition: number,\n underlineThickness: number,\n unicode: null,\n unicodeBidi: null,\n unicodeRange: null,\n unitsPerEm: number,\n values: null,\n vAlphabetic: number,\n vMathematical: number,\n vectorEffect: null,\n vHanging: number,\n vIdeographic: number,\n version: null,\n vertAdvY: number,\n vertOriginX: number,\n vertOriginY: number,\n viewBox: null,\n viewTarget: null,\n visibility: null,\n width: null,\n widths: null,\n wordSpacing: null,\n writingMode: null,\n x: null,\n x1: null,\n x2: null,\n xChannelSelector: null,\n xHeight: number,\n y: null,\n y1: null,\n y2: null,\n yChannelSelector: null,\n z: null,\n zoomAndPan: null\n }\n})\n","/**\n * @typedef {import('./lib/util/info.js').Info} Info\n * @typedef {import('./lib/util/schema.js').Schema} Schema\n */\n\nimport {merge} from './lib/util/merge.js'\nimport {xlink} from './lib/xlink.js'\nimport {xml} from './lib/xml.js'\nimport {xmlns} from './lib/xmlns.js'\nimport {aria} from './lib/aria.js'\nimport {html as htmlBase} from './lib/html.js'\nimport {svg as svgBase} from './lib/svg.js'\n\nexport {find} from './lib/find.js'\nexport {hastToReact} from './lib/hast-to-react.js'\nexport {normalize} from './lib/normalize.js'\nexport const html = merge([xml, xlink, xmlns, aria, htmlBase], 'html')\nexport const svg = merge([xml, xlink, xmlns, aria, svgBase], 'svg')\n","/**\n * @typedef {import('./util/schema.js').Schema} Schema\n */\n\nimport {normalize} from './normalize.js'\nimport {DefinedInfo} from './util/defined-info.js'\nimport {Info} from './util/info.js'\n\nconst valid = /^data[-\\w.:]+$/i\nconst dash = /-[a-z]/g\nconst cap = /[A-Z]/g\n\n/**\n * @param {Schema} schema\n * @param {string} value\n * @returns {Info}\n */\nexport function find(schema, value) {\n const normal = normalize(value)\n let prop = value\n let Type = Info\n\n if (normal in schema.normal) {\n return schema.property[schema.normal[normal]]\n }\n\n if (normal.length > 4 && normal.slice(0, 4) === 'data' && valid.test(value)) {\n // Attribute or property.\n if (value.charAt(4) === '-') {\n // Turn it into a property.\n const rest = value.slice(5).replace(dash, camelcase)\n prop = 'data' + rest.charAt(0).toUpperCase() + rest.slice(1)\n } else {\n // Turn it into an attribute.\n const rest = value.slice(4)\n\n if (!dash.test(rest)) {\n let dashes = rest.replace(cap, kebab)\n\n if (dashes.charAt(0) !== '-') {\n dashes = '-' + dashes\n }\n\n value = 'data' + dashes\n }\n }\n\n Type = DefinedInfo\n }\n\n return new Type(prop, value)\n}\n\n/**\n * @param {string} $0\n * @returns {string}\n */\nfunction kebab($0) {\n return '-' + $0.toLowerCase()\n}\n\n/**\n * @param {string} $0\n * @returns {string}\n */\nfunction camelcase($0) {\n return $0.charAt(1).toUpperCase()\n}\n","/**\n * `hast` is close to `React`, but differs in a couple of cases.\n *\n * To get a React property from a hast property, check if it is in\n * `hastToReact`, if it is, then use the corresponding value,\n * otherwise, use the hast property.\n *\n * @type {Record<string, string>}\n */\nexport const hastToReact = {\n classId: 'classID',\n dataType: 'datatype',\n itemId: 'itemID',\n strokeDashArray: 'strokeDasharray',\n strokeDashOffset: 'strokeDashoffset',\n strokeLineCap: 'strokeLinecap',\n strokeLineJoin: 'strokeLinejoin',\n strokeMiterLimit: 'strokeMiterlimit',\n typeOf: 'typeof',\n xLinkActuate: 'xlinkActuate',\n xLinkArcRole: 'xlinkArcrole',\n xLinkHref: 'xlinkHref',\n xLinkRole: 'xlinkRole',\n xLinkShow: 'xlinkShow',\n xLinkTitle: 'xlinkTitle',\n xLinkType: 'xlinkType',\n xmlnsXLink: 'xmlnsXlink'\n}\n","import StyleToObject from './index.js';\n\nexport default StyleToObject;\n","/**\n * Map of web namespaces.\n *\n * @type {Record<string, string>}\n */\nexport const webNamespaces = {\n html: 'http://www.w3.org/1999/xhtml',\n mathml: 'http://www.w3.org/1998/Math/MathML',\n svg: 'http://www.w3.org/2000/svg',\n xlink: 'http://www.w3.org/1999/xlink',\n xml: 'http://www.w3.org/XML/1998/namespace',\n xmlns: 'http://www.w3.org/2000/xmlns/'\n}\n","/**\n * @typedef {import('property-information').Schema} Schema\n * @typedef {import('hast').Content} Content\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Root} Root\n */\n\n/**\n * @typedef {Root | Content} Node\n *\n * @callback CreateElementLike\n * Function that works somewhat like `React.createElement`.\n * @param {string} name\n * Element name.\n * @param {any} attributes\n * Properties.\n * @param {Array<any>} [children]\n * Children.\n * @returns {any}\n * Something.\n *\n * @typedef State\n * Info passed around.\n * @property {Schema} schema\n * Current schema.\n * @property {string | undefined} prefix\n * Prefix to use.\n * @property {number} key\n * Current key.\n * @property {boolean} react\n * Looks like React.\n * @property {boolean} vue\n * Looks like Vue.\n * @property {boolean} vdom\n * Looks like vdom.\n * @property {boolean} hyperscript\n * Looks like `hyperscript`.\n *\n * @typedef Options\n * Configuration.\n * @property {string | null | undefined} [prefix]\n * Prefix to use as a prefix for keys passed in `props` to `h()`, this\n * behavior is turned off by passing `false` and turned on by passing a\n * `string`.\n * By default, `h-` is used as a prefix if the given `h` is detected as being\n * `virtual-dom/h` or `React.createElement`\n * @property {'html' | 'svg' | null | undefined} [space]\n * Whether `node` is in the `'html'` or `'svg'` space.\n * If an `<svg>` element is found when inside the HTML space, `toH`\n * automatically switches to the SVG space when entering the element, and\n * switches back when exiting.\n */\n\nimport {html, svg, find, hastToReact} from 'property-information'\nimport {stringify as spaces} from 'space-separated-tokens'\nimport {stringify as commas} from 'comma-separated-tokens'\nimport styleToObject from 'style-to-object'\nimport {webNamespaces} from 'web-namespaces'\n\nconst own = {}.hasOwnProperty\n\n/**\n * @template {CreateElementLike} H\n * Type of hyperscript function.\n * @param {H} h\n * HyperScript function.\n * @param {Node} tree\n * Tree to transform.\n * @param {string | boolean | Options | null | undefined} [options]\n * Configuration (optional).\n * @returns {ReturnType<H>}\n * Return type of the hyperscript function.\n */\n// eslint-disable-next-line complexity\nexport function toH(h, tree, options) {\n if (typeof h !== 'function') {\n throw new TypeError('h is not a function')\n }\n\n const r = react(h)\n const v = vue(h)\n const vd = vdom(h)\n /** @type {string|boolean|null|undefined} */\n let prefix\n /** @type {Element} */\n let node\n\n if (typeof options === 'string' || typeof options === 'boolean') {\n prefix = options\n options = {}\n } else {\n if (!options) options = {}\n prefix = options.prefix\n }\n\n if (tree && tree.type === 'root') {\n const head = tree.children[0]\n // @ts-expect-error Allow `doctypes` in there, we’ll filter them out later.\n node =\n tree.children.length === 1 && head.type === 'element'\n ? head\n : {\n type: 'element',\n tagName: 'div',\n properties: {},\n children: tree.children\n }\n } else if (tree && tree.type === 'element') {\n node = tree\n } else {\n throw new Error(\n 'Expected root or element, not `' + ((tree && tree.type) || tree) + '`'\n )\n }\n\n return transform(h, node, {\n schema: options.space === 'svg' ? svg : html,\n prefix:\n prefix === undefined || prefix === null\n ? r || v || vd\n ? 'h-'\n : undefined\n : typeof prefix === 'string'\n ? prefix\n : prefix\n ? 'h-'\n : undefined,\n key: 0,\n react: r,\n vue: v,\n vdom: vd,\n hyperscript: hyperscript(h)\n })\n}\n\n/**\n * Transform a hast node through a hyperscript interface to *anything*!\n *\n * @template {CreateElementLike} H\n * Type of hyperscript function.\n * @param {H} h\n * HyperScript function.\n * @param {Element} node\n * Node to transform.\n * @param {State} state\n * Info passed around.\n * @returns {ReturnType<H>}\n * Return type of the hyperscript function.\n */\nfunction transform(h, node, state) {\n const parentSchema = state.schema\n let schema = parentSchema\n let name = node.tagName\n /** @type {Record<string, unknown>} */\n const attributes = {}\n /** @type {Array<ReturnType<H>|string>} */\n const nodes = []\n let index = -1\n /** @type {string} */\n let key\n\n if (parentSchema.space === 'html' && name.toLowerCase() === 'svg') {\n schema = svg\n state.schema = schema\n }\n\n for (key in node.properties) {\n if (node.properties && own.call(node.properties, key)) {\n addAttribute(attributes, key, node.properties[key], state, name)\n }\n }\n\n if (state.vdom) {\n if (schema.space === 'html') {\n name = name.toUpperCase()\n } else if (schema.space) {\n attributes.namespace = webNamespaces[schema.space]\n }\n }\n\n if (state.prefix) {\n state.key++\n attributes.key = state.prefix + state.key\n }\n\n if (node.children) {\n while (++index < node.children.length) {\n const value = node.children[index]\n\n if (value.type === 'element') {\n nodes.push(transform(h, value, state))\n } else if (value.type === 'text') {\n nodes.push(value.value)\n }\n }\n }\n\n // Restore parent schema.\n state.schema = parentSchema\n\n // Ensure no React warnings are triggered for void elements having children\n // passed in.\n return nodes.length > 0\n ? h.call(node, name, attributes, nodes)\n : h.call(node, name, attributes)\n}\n\n/**\n * Add an attribute to `props`.\n *\n * @param {Record<string, unknown>} props\n * Map.\n * @param {string} prop\n * Key.\n * @param {unknown} value\n * Value.\n * @param {State} state\n * Info passed around.\n * @param {string} name\n * Element name.\n * @returns {void}\n * Nothing.\n */\n// eslint-disable-next-line complexity, max-params\nfunction addAttribute(props, prop, value, state, name) {\n const info = find(state.schema, prop)\n /** @type {string | undefined} */\n let subprop\n\n // Ignore nullish and `NaN` values.\n // Ignore `false` and falsey known booleans for hyperlike DSLs.\n if (\n value === undefined ||\n value === null ||\n (typeof value === 'number' && Number.isNaN(value)) ||\n (value === false && (state.vue || state.vdom || state.hyperscript)) ||\n (!value && info.boolean && (state.vue || state.vdom || state.hyperscript))\n ) {\n return\n }\n\n if (Array.isArray(value)) {\n // Accept `array`.\n // Most props are space-separated.\n value = info.commaSeparated ? commas(value) : spaces(value)\n }\n\n // Treat `true` and truthy known booleans.\n if (info.boolean && state.hyperscript) {\n value = ''\n }\n\n // VDOM, Vue, and React accept `style` as object.\n if (\n info.property === 'style' &&\n typeof value === 'string' &&\n (state.react || state.vue || state.vdom)\n ) {\n value = parseStyle(value, name)\n }\n\n // Vue 3 (used in our tests) doesn’t need this anymore.\n // Some major in the future we can drop Vue 2 support.\n /* c8 ignore next 2 */\n if (state.vue) {\n if (info.property !== 'style') subprop = 'attrs'\n } else if (!info.mustUseProperty) {\n if (state.vdom) {\n if (info.property !== 'style') subprop = 'attributes'\n } else if (state.hyperscript) {\n subprop = 'attrs'\n }\n }\n\n if (subprop) {\n props[subprop] = Object.assign(props[subprop] || {}, {\n [info.attribute]: value\n })\n } else if (info.space && state.react) {\n props[hastToReact[info.property] || info.property] = value\n } else {\n props[info.attribute] = value\n }\n}\n\n/**\n * Check if `h` is `react.createElement`.\n *\n * @param {CreateElementLike} h\n * HyperScript function.\n * @returns {boolean}\n * Looks like React.\n */\nfunction react(h) {\n const node = /** @type {unknown} */ (h('div', {}))\n return Boolean(\n node &&\n // @ts-expect-error Looks like a React node.\n ('_owner' in node || '_store' in node) &&\n // @ts-expect-error Looks like a React node.\n (node.key === undefined || node.key === null)\n )\n}\n\n/**\n * Check if `h` is `hyperscript`.\n *\n * @param {CreateElementLike} h\n * HyperScript function.\n * @returns {boolean}\n * Looks like `hyperscript`.\n */\nfunction hyperscript(h) {\n return 'context' in h && 'cleanup' in h\n}\n\n/**\n * Check if `h` is `virtual-dom/h`.\n *\n * @param {CreateElementLike} h\n * HyperScript function.\n * @returns {boolean}\n * Looks like `virtual-dom`\n */\nfunction vdom(h) {\n const node = /** @type {unknown} */ (h('div', {}))\n // @ts-expect-error Looks like a vnode.\n return node.type === 'VirtualNode'\n}\n\n/**\n * Check if `h` is Vue.\n *\n * @param {CreateElementLike} h\n * HyperScript function.\n * @returns {boolean}\n * Looks like Vue.\n */\nfunction vue(h) {\n // Vue 3 (used in our tests) doesn’t need this anymore.\n // Some major in the future we can drop Vue 2 support.\n /* c8 ignore next 3 */\n const node = /** @type {unknown} */ (h('div', {}))\n // @ts-expect-error Looks like a Vue node.\n return Boolean(node && node.context && node.context._isVue)\n}\n\n/**\n * Parse a declaration into an object.\n *\n * @param {string} value\n * CSS declarations.\n * @param {string} tagName\n * Tag name.\n * @returns {Record<string, string>}\n * Properties.\n */\nfunction parseStyle(value, tagName) {\n /** @type {Record<string, string>} */\n const result = {}\n\n try {\n styleToObject(value, (name, value) => {\n if (name.slice(0, 4) === '-ms-') name = 'ms-' + name.slice(4)\n\n result[\n name.replace(\n /-([a-z])/g,\n /**\n * @param {string} _\n * @param {string} $1\n * @returns {string}\n */\n (_, $1) => $1.toUpperCase()\n )\n ] = value\n })\n } catch (error_) {\n const error = /** @type {Error} */ (error_)\n error.message =\n tagName + '[style]' + error.message.slice('undefined'.length)\n throw error\n }\n\n return result\n}\n","/**\n * @typedef Options\n * Configuration for `stringify`.\n * @property {boolean} [padLeft=true]\n * Whether to pad a space before a token.\n * @property {boolean} [padRight=false]\n * Whether to pad a space after a token.\n */\n\n/**\n * @typedef {Options} StringifyOptions\n * Please use `StringifyOptions` instead.\n */\n\n/**\n * Parse comma-separated tokens to an array.\n *\n * @param {string} value\n * Comma-separated tokens.\n * @returns {Array<string>}\n * List of tokens.\n */\nexport function parse(value) {\n /** @type {Array<string>} */\n const tokens = []\n const input = String(value || '')\n let index = input.indexOf(',')\n let start = 0\n /** @type {boolean} */\n let end = false\n\n while (!end) {\n if (index === -1) {\n index = input.length\n end = true\n }\n\n const token = input.slice(start, index).trim()\n\n if (token || !end) {\n tokens.push(token)\n }\n\n start = index + 1\n index = input.indexOf(',', start)\n }\n\n return tokens\n}\n\n/**\n * Serialize an array of strings or numbers to comma-separated tokens.\n *\n * @param {Array<string|number>} values\n * List of tokens.\n * @param {Options} [options]\n * Configuration for `stringify` (optional).\n * @returns {string}\n * Comma-separated tokens.\n */\nexport function stringify(values, options) {\n const settings = options || {}\n\n // Ensure the last empty entry is seen.\n const input = values[values.length - 1] === '' ? [...values, ''] : values\n\n return input\n .join(\n (settings.padRight ? ' ' : '') +\n ',' +\n (settings.padLeft === false ? '' : ' ')\n )\n .trim()\n}\n","/**\n * @typedef {import('hast').Root} Root\n * @typedef {import('react').ReactNode} ReactNode\n * @typedef {import('react').ReactElement<unknown>} ReactElement\n *\n * @callback CreateElementLike\n * @param {any} name\n * @param {any} props\n * @param {...ReactNode} children\n * @returns {ReactNode}\n *\n * @typedef SharedOptions\n * Base configuration (without `components`).\n * @property {CreateElementLike} createElement\n * How to create elements or components.\n * You should typically pass `React.createElement`.\n * @property {((props: any) => ReactNode)|undefined} [Fragment]\n * Create fragments instead of an outer `<div>` if available.\n * You should typically pass `React.Fragment`.\n * @property {string|undefined} [prefix='h-']\n * React key prefix.\n * @property {boolean|undefined} [fixTableCellAlign=true]\n * Fix obsolete align attributes on table cells by turning them\n * into inline styles.\n * Keep it on when working with markdown, turn it off when working\n * with markup for emails.\n * The default is `true`.\n *\n * @typedef {SharedOptions & (import('./complex-types').ComponentsWithNodeOptions|import('./complex-types').ComponentsWithoutNodeOptions)} Options\n * Configuration.\n */\n\nimport {toH} from 'hast-to-hyperscript'\n// @ts-expect-error: hush.\nimport tableCellStyle from '@mapbox/hast-util-table-cell-style'\nimport {whitespace} from 'hast-util-whitespace'\n\nconst own = {}.hasOwnProperty\nconst tableElements = new Set(['table', 'thead', 'tbody', 'tfoot', 'tr'])\n\n/**\n * Compile HTML to React nodes.\n *\n * > 👉 **Note**: this compiler returns a React node where compilers typically\n * > return `string`.\n * > When using `.stringify`, the result is such a React node.\n * > When using `.process` (or `.processSync`), the result is available at\n * > `file.result`.\n *\n * @this {import('unified').Processor}\n * @type {import('unified').Plugin<[Options], Root, ReactElement>}\n */\nexport default function rehypeReact(options) {\n if (!options || typeof options.createElement !== 'function') {\n throw new TypeError('createElement is not a function')\n }\n\n const createElement = options.createElement\n\n const fixTableCellAlign = options.fixTableCellAlign !== false\n\n Object.assign(this, {Compiler: compiler})\n\n /** @type {import('unified').CompilerFunction<Root, ReactNode>} */\n function compiler(node) {\n /** @type {ReactNode} */\n let result = toH(\n // @ts-expect-error: assume `name` is a known element.\n h,\n fixTableCellAlign ? tableCellStyle(node) : node,\n options.prefix\n )\n\n if (node.type === 'root') {\n // Invert <https://github.com/syntax-tree/hast-to-hyperscript/blob/d227372/index.js#L46-L56>.\n result =\n result &&\n typeof result === 'object' &&\n 'type' in result &&\n 'props' in result &&\n result.type === 'div' &&\n (node.children.length !== 1 || node.children[0].type !== 'element')\n ? // `children` does exist.\n // type-coverage:ignore-next-line\n result.props.children\n : [result]\n\n return createElement(options.Fragment || 'div', {}, result)\n }\n\n return result\n }\n\n /**\n * @param {keyof JSX.IntrinsicElements} name\n * @param {Record<string, unknown>} props\n * @param {Array<ReactNode>} [children]\n * @returns {ReactNode}\n */\n function h(name, props, children) {\n // Currently, a warning is triggered by react for *any* white space in\n // tables.\n // So we remove the pretty lines for now.\n // See: <https://github.com/facebook/react/pull/7081>.\n // See: <https://github.com/facebook/react/pull/7515>.\n // See: <https://github.com/remarkjs/remark-react/issues/64>.\n // See: <https://github.com/rehypejs/rehype-react/pull/29>.\n // See: <https://github.com/rehypejs/rehype-react/pull/32>.\n // See: <https://github.com/rehypejs/rehype-react/pull/45>.\n if (children && tableElements.has(name)) {\n children = children.filter((child) => !whitespace(child))\n }\n\n if (options.components && own.call(options.components, name)) {\n const component = options.components[name]\n\n if (options.passNode && typeof component === 'function') {\n // @ts-expect-error: `toH` passes the current node.\n // type-coverage:ignore-next-line\n props = Object.assign({node: this}, props)\n }\n\n return createElement(component, props, children)\n }\n\n return createElement(name, props, children)\n }\n}\n","/**\n * Check if the given value is *inter-element whitespace*.\n *\n * @param {unknown} thing\n * Thing to check (typically `Node` or `string`).\n * @returns {boolean}\n * Whether the `value` is inter-element whitespace (`boolean`): consisting of\n * zero or more of space, tab (`\\t`), line feed (`\\n`), carriage return\n * (`\\r`), or form feed (`\\f`).\n * If a node is passed it must be a `Text` node, whose `value` field is\n * checked.\n */\nexport function whitespace(thing) {\n /** @type {string} */\n const value =\n // @ts-expect-error looks like a node.\n thing && typeof thing === 'object' && thing.type === 'text'\n ? // @ts-expect-error looks like a text.\n thing.value || ''\n : thing\n\n // HTML whitespace expression.\n // See <https://infra.spec.whatwg.org/#ascii-whitespace>.\n return typeof value === 'string' && value.replace(/[ \\t\\n\\f\\r]/g, '') === ''\n}\n","/**\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').PhrasingContent} PhrasingContent\n */\n\nimport {visit} from 'unist-util-visit'\n\nconst find = /[\\t ]*(?:\\r?\\n|\\r)/g\n\n/**\n * Plugin to support hard breaks without needing spaces or escapes (turns enters\n * into `<br>`s).\n *\n * @type {import('unified').Plugin<void[], Root>}\n */\nexport default function remarkBreaks() {\n return (tree) => {\n visit(tree, 'text', (node, index, parent) => {\n /** @type {PhrasingContent[]} */\n const result = []\n let start = 0\n\n find.lastIndex = 0\n\n let match = find.exec(node.value)\n\n while (match) {\n const position = match.index\n\n if (start !== position) {\n result.push({type: 'text', value: node.value.slice(start, position)})\n }\n\n result.push({type: 'break'})\n start = position + match[0].length\n match = find.exec(node.value)\n }\n\n if (result.length > 0 && parent && typeof index === 'number') {\n if (start < node.value.length) {\n result.push({type: 'text', value: node.value.slice(start)})\n }\n\n parent.children.splice(index, 1, ...result)\n return index + result.length\n }\n })\n }\n}\n","// Scheme: https://tools.ietf.org/html/rfc3986#section-3.1\n// Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3\nconst ABSOLUTE_URL_REGEX = /^[a-zA-Z][a-zA-Z\\d+\\-.]*?:/;\n\n// Windows paths like `c:\\`\nconst WINDOWS_PATH_REGEX = /^[a-zA-Z]:\\\\/;\n\nexport default function isAbsoluteUrl(url) {\n\tif (typeof url !== 'string') {\n\t\tthrow new TypeError(`Expected a \\`string\\`, got \\`${typeof url}\\``);\n\t}\n\n\tif (WINDOWS_PATH_REGEX.test(url)) {\n\t\treturn false;\n\t}\n\n\treturn ABSOLUTE_URL_REGEX.test(url);\n}\n","/**\n * @typedef {import('mdast').Root} Root\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('hast').Element['children'][number]} ElementChild\n *\n * @typedef Options\n * Configuration.\n * @property {'_self'|'_blank'|'_parent'|'_top'|false} [target='_blank']\n * How to display referenced documents (`string?`: `_self`, `_blank`,\n * `_parent`, or `_top`, default: `_blank`).\n * Pass `false` to not set `target`s on links.\n * @property {string[]|string|false} [rel=['nofollow', 'noopener', 'noreferrer']]\n * Link types to hint about the referenced documents.\n * Pass `false` to not set `rel`s on links.\n *\n * > When using a `target`, add `noopener` and `noreferrer` to avoid\n * > exploitation of the `window.opener` API.\n * @property {string[]} [protocols=['http', 'https']]\n * Protocols to check, such as `mailto` or `tel`.\n * @property {ElementChild|ElementChild[]} [content]\n * hast content to insert at the end of external links.\n * Will be inserted in a `<span>` element.\n *\n * Useful for improving accessibility by [giving users advanced warning when\n * opening a new window.\n * @property {Properties} [contentProperties]\n * `Properties` to add to the `span` wrapping `content`, when given.\n */\n\nimport {visit} from 'unist-util-visit'\nimport {definitions} from 'mdast-util-definitions'\nimport {parse} from 'space-separated-tokens'\nimport absolute from 'is-absolute-url'\nimport extend from 'extend'\n\nconst defaultTarget = '_blank'\nconst defaultRel = ['nofollow', 'noopener', 'noreferrer']\nconst defaultProtocols = ['http', 'https']\n\n/**\n * Plugin to automatically add `target` and `rel` attributes to external links.\n *\n * @type {import('unified').Plugin<[Options?]|void[], Root>}\n */\nexport default function remarkExternalLinks(options = {}) {\n const target = options.target\n const rel = typeof options.rel === 'string' ? parse(options.rel) : options.rel\n const protocols = options.protocols || defaultProtocols\n const content =\n options.content && !Array.isArray(options.content)\n ? [options.content]\n : options.content\n const contentProperties = options.contentProperties || {}\n\n return (tree) => {\n const definition = definitions(tree)\n\n visit(tree, (node) => {\n if (node.type === 'link' || node.type === 'linkReference') {\n const ctx = node.type === 'link' ? node : definition(node.identifier)\n\n // Undefined references can be injected into the tree by plugins.\n /* c8 ignore next */\n if (!ctx) return\n\n const protocol = ctx.url.slice(0, ctx.url.indexOf(':'))\n\n if (absolute(ctx.url) && protocols.includes(protocol)) {\n const data = node.data || (node.data = {})\n const props = /** @type {Properties} */ (\n data.hProperties || (data.hProperties = {})\n )\n\n if (target !== false) {\n props.target = target || defaultTarget\n }\n\n if (rel !== false) {\n props.rel = (rel || defaultRel).concat()\n }\n\n if (content) {\n // `fragment` is not a known mdast node, but unknown nodes with\n // children are handled as elements by `mdast-util-to-hast`:\n // See: <https://github.com/syntax-tree/mdast-util-to-hast#notes>.\n node.children.push({\n // @ts-expect-error\n type: 'fragment',\n children: [],\n data: {\n hName: 'span',\n hProperties: extend(true, contentProperties),\n hChildren: extend(true, content)\n }\n })\n }\n }\n }\n })\n }\n}\n","/**\n * @typedef {import('mdast').Root|import('mdast').Content} Node\n *\n * @typedef Options\n * Configuration (optional).\n * @property {boolean | null | undefined} [includeImageAlt=true]\n * Whether to use `alt` for `image`s.\n * @property {boolean | null | undefined} [includeHtml=true]\n * Whether to use `value` of HTML.\n */\n\n/** @type {Options} */\nconst emptyOptions = {}\n\n/**\n * Get the text content of a node or list of nodes.\n *\n * Prefers the node’s plain-text fields, otherwise serializes its children,\n * and if the given value is an array, serialize the nodes in it.\n *\n * @param {unknown} value\n * Thing to serialize, typically `Node`.\n * @param {Options | null | undefined} [options]\n * Configuration (optional).\n * @returns {string}\n * Serialized `value`.\n */\nexport function toString(value, options) {\n const settings = options || emptyOptions\n const includeImageAlt =\n typeof settings.includeImageAlt === 'boolean'\n ? settings.includeImageAlt\n : true\n const includeHtml =\n typeof settings.includeHtml === 'boolean' ? settings.includeHtml : true\n\n return one(value, includeImageAlt, includeHtml)\n}\n\n/**\n * One node or several nodes.\n *\n * @param {unknown} value\n * Thing to serialize.\n * @param {boolean} includeImageAlt\n * Include image `alt`s.\n * @param {boolean} includeHtml\n * Include HTML.\n * @returns {string}\n * Serialized node.\n */\nfunction one(value, includeImageAlt, includeHtml) {\n if (node(value)) {\n if ('value' in value) {\n return value.type === 'html' && !includeHtml ? '' : value.value\n }\n\n if (includeImageAlt && 'alt' in value && value.alt) {\n return value.alt\n }\n\n if ('children' in value) {\n return all(value.children, includeImageAlt, includeHtml)\n }\n }\n\n if (Array.isArray(value)) {\n return all(value, includeImageAlt, includeHtml)\n }\n\n return ''\n}\n\n/**\n * Serialize a list of nodes.\n *\n * @param {Array<unknown>} values\n * Thing to serialize.\n * @param {boolean} includeImageAlt\n * Include image `alt`s.\n * @param {boolean} includeHtml\n * Include HTML.\n * @returns {string}\n * Serialized nodes.\n */\nfunction all(values, includeImageAlt, includeHtml) {\n /** @type {Array<string>} */\n const result = []\n let index = -1\n\n while (++index < values.length) {\n result[index] = one(values[index], includeImageAlt, includeHtml)\n }\n\n return result.join('')\n}\n\n/**\n * Check if `value` looks like a node.\n *\n * @param {unknown} value\n * Thing.\n * @returns {value is Node}\n * Whether `value` is a node.\n */\nfunction node(value) {\n return Boolean(value && typeof value === 'object')\n}\n","/**\n * Like `Array#splice`, but smarter for giant arrays.\n *\n * `Array#splice` takes all items to be inserted as individual argument which\n * causes a stack overflow in V8 when trying to insert 100k items for instance.\n *\n * Otherwise, this does not return the removed items, and takes `items` as an\n * array instead of rest parameters.\n *\n * @template {unknown} T\n * @param {T[]} list\n * @param {number} start\n * @param {number} remove\n * @param {T[]} items\n * @returns {void}\n */\nexport function splice(list, start, remove, items) {\n const end = list.length\n let chunkStart = 0\n /** @type {unknown[]} */\n\n let parameters // Make start between zero and `end` (included).\n\n if (start < 0) {\n start = -start > end ? 0 : end + start\n } else {\n start = start > end ? end : start\n }\n\n remove = remove > 0 ? remove : 0 // No need to chunk the items if there’s only a couple (10k) items.\n\n if (items.length < 10000) {\n parameters = Array.from(items)\n parameters.unshift(start, remove) // @ts-expect-error Hush, it’s fine.\n ;[].splice.apply(list, parameters)\n } else {\n // Delete `remove` items starting from `start`\n if (remove) [].splice.apply(list, [start, remove]) // Insert the items in chunks to not cause stack overflows.\n\n while (chunkStart < items.length) {\n parameters = items.slice(chunkStart, chunkStart + 10000)\n parameters.unshift(start, 0) // @ts-expect-error Hush, it’s fine.\n ;[].splice.apply(list, parameters)\n chunkStart += 10000\n start += 10000\n }\n }\n}\n/**\n * Append `items` (an array) at the end of `list` (another array).\n * When `list` was empty, returns `items` instead.\n *\n * This prevents a potentially expensive operation when `list` is empty,\n * and adds items in batches to prevent V8 from hanging.\n *\n * @template {unknown} T\n * @param {T[]} list\n * @param {T[]} items\n * @returns {T[]}\n */\n\nexport function push(list, items) {\n if (list.length > 0) {\n splice(list, list.length, 0, items)\n return list\n }\n\n return items\n}\n","/**\n * @typedef {import('micromark-util-types').NormalizedExtension} NormalizedExtension\n * @typedef {import('micromark-util-types').Extension} Extension\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension\n */\n\nimport {splice} from 'micromark-util-chunked'\n\nconst hasOwnProperty = {}.hasOwnProperty\n\n/**\n * Combine several syntax extensions into one.\n *\n * @param {Extension[]} extensions List of syntax extensions.\n * @returns {NormalizedExtension} A single combined extension.\n */\nexport function combineExtensions(extensions) {\n /** @type {NormalizedExtension} */\n const all = {}\n let index = -1\n\n while (++index < extensions.length) {\n syntaxExtension(all, extensions[index])\n }\n\n return all\n}\n\n/**\n * Merge `extension` into `all`.\n *\n * @param {NormalizedExtension} all Extension to merge into.\n * @param {Extension} extension Extension to merge.\n * @returns {void}\n */\nfunction syntaxExtension(all, extension) {\n /** @type {string} */\n let hook\n\n for (hook in extension) {\n const maybe = hasOwnProperty.call(all, hook) ? all[hook] : undefined\n const left = maybe || (all[hook] = {})\n const right = extension[hook]\n /** @type {string} */\n let code\n\n for (code in right) {\n if (!hasOwnProperty.call(left, code)) left[code] = []\n const value = right[code]\n constructs(\n // @ts-expect-error Looks like a list.\n left[code],\n Array.isArray(value) ? value : value ? [value] : []\n )\n }\n }\n}\n\n/**\n * Merge `list` into `existing` (both lists of constructs).\n * Mutates `existing`.\n *\n * @param {unknown[]} existing\n * @param {unknown[]} list\n * @returns {void}\n */\nfunction constructs(existing, list) {\n let index = -1\n /** @type {unknown[]} */\n const before = []\n\n while (++index < list.length) {\n // @ts-expect-error Looks like an object.\n ;(list[index].add === 'after' ? existing : before).push(list[index])\n }\n\n splice(existing, 0, 0, before)\n}\n\n/**\n * Combine several HTML extensions into one.\n *\n * @param {HtmlExtension[]} htmlExtensions List of HTML extensions.\n * @returns {HtmlExtension} A single combined extension.\n */\nexport function combineHtmlExtensions(htmlExtensions) {\n /** @type {HtmlExtension} */\n const handlers = {}\n let index = -1\n\n while (++index < htmlExtensions.length) {\n htmlExtension(handlers, htmlExtensions[index])\n }\n\n return handlers\n}\n\n/**\n * Merge `extension` into `all`.\n *\n * @param {HtmlExtension} all Extension to merge into.\n * @param {HtmlExtension} extension Extension to merge.\n * @returns {void}\n */\nfunction htmlExtension(all, extension) {\n /** @type {string} */\n let hook\n\n for (hook in extension) {\n const maybe = hasOwnProperty.call(all, hook) ? all[hook] : undefined\n const left = maybe || (all[hook] = {})\n const right = extension[hook]\n /** @type {string} */\n let type\n\n if (right) {\n for (type in right) {\n left[type] = right[type]\n }\n }\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n */\nimport {markdownSpace} from 'micromark-util-character'\n/**\n * @param {Effects} effects\n * @param {State} ok\n * @param {string} type\n * @param {number} [max=Infinity]\n * @returns {State}\n */\n\nexport function factorySpace(effects, ok, type, max) {\n const limit = max ? max - 1 : Number.POSITIVE_INFINITY\n let size = 0\n return start\n /** @type {State} */\n\n function start(code) {\n if (markdownSpace(code)) {\n effects.enter(type)\n return prefix(code)\n }\n\n return ok(code)\n }\n /** @type {State} */\n\n function prefix(code) {\n if (markdownSpace(code) && size++ < limit) {\n effects.consume(code)\n return prefix\n }\n\n effects.exit(type)\n return ok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').Initializer} Initializer\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/** @type {InitialConstruct} */\nexport const content = {\n tokenize: initializeContent\n}\n/** @type {Initializer} */\n\nfunction initializeContent(effects) {\n const contentStart = effects.attempt(\n this.parser.constructs.contentInitial,\n afterContentStartConstruct,\n paragraphInitial\n )\n /** @type {Token} */\n\n let previous\n return contentStart\n /** @type {State} */\n\n function afterContentStartConstruct(code) {\n if (code === null) {\n effects.consume(code)\n return\n }\n\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, contentStart, 'linePrefix')\n }\n /** @type {State} */\n\n function paragraphInitial(code) {\n effects.enter('paragraph')\n return lineStart(code)\n }\n /** @type {State} */\n\n function lineStart(code) {\n const token = effects.enter('chunkText', {\n contentType: 'text',\n previous\n })\n\n if (previous) {\n previous.next = token\n }\n\n previous = token\n return data(code)\n }\n /** @type {State} */\n\n function data(code) {\n if (code === null) {\n effects.exit('chunkText')\n effects.exit('paragraph')\n effects.consume(code)\n return\n }\n\n if (markdownLineEnding(code)) {\n effects.consume(code)\n effects.exit('chunkText')\n return lineStart\n } // Data.\n\n effects.consume(code)\n return data\n }\n}\n","/**\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').Initializer} Initializer\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Point} Point\n */\n\n/**\n * @typedef {Record<string, unknown>} StackState\n * @typedef {[Construct, StackState]} StackItem\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\nimport {splice} from 'micromark-util-chunked'\n/** @type {InitialConstruct} */\n\nexport const document = {\n tokenize: initializeDocument\n}\n/** @type {Construct} */\n\nconst containerConstruct = {\n tokenize: tokenizeContainer\n}\n/** @type {Initializer} */\n\nfunction initializeDocument(effects) {\n const self = this\n /** @type {Array<StackItem>} */\n\n const stack = []\n let continued = 0\n /** @type {TokenizeContext|undefined} */\n\n let childFlow\n /** @type {Token|undefined} */\n\n let childToken\n /** @type {number} */\n\n let lineStartOffset\n return start\n /** @type {State} */\n\n function start(code) {\n // First we iterate through the open blocks, starting with the root\n // document, and descending through last children down to the last open\n // block.\n // Each block imposes a condition that the line must satisfy if the block is\n // to remain open.\n // For example, a block quote requires a `>` character.\n // A paragraph requires a non-blank line.\n // In this phase we may match all or just some of the open blocks.\n // But we cannot close unmatched blocks yet, because we may have a lazy\n // continuation line.\n if (continued < stack.length) {\n const item = stack[continued]\n self.containerState = item[1]\n return effects.attempt(\n item[0].continuation,\n documentContinue,\n checkNewContainers\n )(code)\n } // Done.\n\n return checkNewContainers(code)\n }\n /** @type {State} */\n\n function documentContinue(code) {\n continued++ // Note: this field is called `_closeFlow` but it also closes containers.\n // Perhaps a good idea to rename it but it’s already used in the wild by\n // extensions.\n\n if (self.containerState._closeFlow) {\n self.containerState._closeFlow = undefined\n\n if (childFlow) {\n closeFlow()\n } // Note: this algorithm for moving events around is similar to the\n // algorithm when dealing with lazy lines in `writeToChild`.\n\n const indexBeforeExits = self.events.length\n let indexBeforeFlow = indexBeforeExits\n /** @type {Point|undefined} */\n\n let point // Find the flow chunk.\n\n while (indexBeforeFlow--) {\n if (\n self.events[indexBeforeFlow][0] === 'exit' &&\n self.events[indexBeforeFlow][1].type === 'chunkFlow'\n ) {\n point = self.events[indexBeforeFlow][1].end\n break\n }\n }\n\n exitContainers(continued) // Fix positions.\n\n let index = indexBeforeExits\n\n while (index < self.events.length) {\n self.events[index][1].end = Object.assign({}, point)\n index++\n } // Inject the exits earlier (they’re still also at the end).\n\n splice(\n self.events,\n indexBeforeFlow + 1,\n 0,\n self.events.slice(indexBeforeExits)\n ) // Discard the duplicate exits.\n\n self.events.length = index\n return checkNewContainers(code)\n }\n\n return start(code)\n }\n /** @type {State} */\n\n function checkNewContainers(code) {\n // Next, after consuming the continuation markers for existing blocks, we\n // look for new block starts (e.g. `>` for a block quote).\n // If we encounter a new block start, we close any blocks unmatched in\n // step 1 before creating the new block as a child of the last matched\n // block.\n if (continued === stack.length) {\n // No need to `check` whether there’s a container, of `exitContainers`\n // would be moot.\n // We can instead immediately `attempt` to parse one.\n if (!childFlow) {\n return documentContinued(code)\n } // If we have concrete content, such as block HTML or fenced code,\n // we can’t have containers “pierce” into them, so we can immediately\n // start.\n\n if (childFlow.currentConstruct && childFlow.currentConstruct.concrete) {\n return flowStart(code)\n } // If we do have flow, it could still be a blank line,\n // but we’d be interrupting it w/ a new container if there’s a current\n // construct.\n\n self.interrupt = Boolean(\n childFlow.currentConstruct && !childFlow._gfmTableDynamicInterruptHack\n )\n } // Check if there is a new container.\n\n self.containerState = {}\n return effects.check(\n containerConstruct,\n thereIsANewContainer,\n thereIsNoNewContainer\n )(code)\n }\n /** @type {State} */\n\n function thereIsANewContainer(code) {\n if (childFlow) closeFlow()\n exitContainers(continued)\n return documentContinued(code)\n }\n /** @type {State} */\n\n function thereIsNoNewContainer(code) {\n self.parser.lazy[self.now().line] = continued !== stack.length\n lineStartOffset = self.now().offset\n return flowStart(code)\n }\n /** @type {State} */\n\n function documentContinued(code) {\n // Try new containers.\n self.containerState = {}\n return effects.attempt(\n containerConstruct,\n containerContinue,\n flowStart\n )(code)\n }\n /** @type {State} */\n\n function containerContinue(code) {\n continued++\n stack.push([self.currentConstruct, self.containerState]) // Try another.\n\n return documentContinued(code)\n }\n /** @type {State} */\n\n function flowStart(code) {\n if (code === null) {\n if (childFlow) closeFlow()\n exitContainers(0)\n effects.consume(code)\n return\n }\n\n childFlow = childFlow || self.parser.flow(self.now())\n effects.enter('chunkFlow', {\n contentType: 'flow',\n previous: childToken,\n _tokenizer: childFlow\n })\n return flowContinue(code)\n }\n /** @type {State} */\n\n function flowContinue(code) {\n if (code === null) {\n writeToChild(effects.exit('chunkFlow'), true)\n exitContainers(0)\n effects.consume(code)\n return\n }\n\n if (markdownLineEnding(code)) {\n effects.consume(code)\n writeToChild(effects.exit('chunkFlow')) // Get ready for the next line.\n\n continued = 0\n self.interrupt = undefined\n return start\n }\n\n effects.consume(code)\n return flowContinue\n }\n /**\n * @param {Token} token\n * @param {boolean} [eof]\n * @returns {void}\n */\n\n function writeToChild(token, eof) {\n const stream = self.sliceStream(token)\n if (eof) stream.push(null)\n token.previous = childToken\n if (childToken) childToken.next = token\n childToken = token\n childFlow.defineSkip(token.start)\n childFlow.write(stream) // Alright, so we just added a lazy line:\n //\n // ```markdown\n // > a\n // b.\n //\n // Or:\n //\n // > ~~~c\n // d\n //\n // Or:\n //\n // > | e |\n // f\n // ```\n //\n // The construct in the second example (fenced code) does not accept lazy\n // lines, so it marked itself as done at the end of its first line, and\n // then the content construct parses `d`.\n // Most constructs in markdown match on the first line: if the first line\n // forms a construct, a non-lazy line can’t “unmake” it.\n //\n // The construct in the third example is potentially a GFM table, and\n // those are *weird*.\n // It *could* be a table, from the first line, if the following line\n // matches a condition.\n // In this case, that second line is lazy, which “unmakes” the first line\n // and turns the whole into one content block.\n //\n // We’ve now parsed the non-lazy and the lazy line, and can figure out\n // whether the lazy line started a new flow block.\n // If it did, we exit the current containers between the two flow blocks.\n\n if (self.parser.lazy[token.start.line]) {\n let index = childFlow.events.length\n\n while (index--) {\n if (\n // The token starts before the line ending…\n childFlow.events[index][1].start.offset < lineStartOffset && // …and either is not ended yet…\n (!childFlow.events[index][1].end || // …or ends after it.\n childFlow.events[index][1].end.offset > lineStartOffset)\n ) {\n // Exit: there’s still something open, which means it’s a lazy line\n // part of something.\n return\n }\n } // Note: this algorithm for moving events around is similar to the\n // algorithm when closing flow in `documentContinue`.\n\n const indexBeforeExits = self.events.length\n let indexBeforeFlow = indexBeforeExits\n /** @type {boolean|undefined} */\n\n let seen\n /** @type {Point|undefined} */\n\n let point // Find the previous chunk (the one before the lazy line).\n\n while (indexBeforeFlow--) {\n if (\n self.events[indexBeforeFlow][0] === 'exit' &&\n self.events[indexBeforeFlow][1].type === 'chunkFlow'\n ) {\n if (seen) {\n point = self.events[indexBeforeFlow][1].end\n break\n }\n\n seen = true\n }\n }\n\n exitContainers(continued) // Fix positions.\n\n index = indexBeforeExits\n\n while (index < self.events.length) {\n self.events[index][1].end = Object.assign({}, point)\n index++\n } // Inject the exits earlier (they’re still also at the end).\n\n splice(\n self.events,\n indexBeforeFlow + 1,\n 0,\n self.events.slice(indexBeforeExits)\n ) // Discard the duplicate exits.\n\n self.events.length = index\n }\n }\n /**\n * @param {number} size\n * @returns {void}\n */\n\n function exitContainers(size) {\n let index = stack.length // Exit open containers.\n\n while (index-- > size) {\n const entry = stack[index]\n self.containerState = entry[1]\n entry[0].exit.call(self, effects)\n }\n\n stack.length = size\n }\n\n function closeFlow() {\n childFlow.write([null])\n childToken = undefined\n childFlow = undefined\n self.containerState._closeFlow = undefined\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeContainer(effects, ok, nok) {\n return factorySpace(\n effects,\n effects.attempt(this.parser.constructs.document, ok, nok),\n 'linePrefix',\n this.parser.constructs.disable.null.includes('codeIndented') ? undefined : 4\n )\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const blankLine = {\n tokenize: tokenizeBlankLine,\n partial: true\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeBlankLine(effects, ok, nok) {\n return factorySpace(effects, afterWhitespace, 'linePrefix')\n /** @type {State} */\n\n function afterWhitespace(code) {\n return code === null || markdownLineEnding(code) ? ok(code) : nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').Chunk} Chunk\n * @typedef {import('micromark-util-types').Event} Event\n */\nimport {splice} from 'micromark-util-chunked'\n\n/**\n * Tokenize subcontent.\n *\n * @param {Event[]} events\n * @returns {boolean}\n */\nexport function subtokenize(events) {\n /** @type {Record<string, number>} */\n const jumps = {}\n let index = -1\n /** @type {Event} */\n\n let event\n /** @type {number|undefined} */\n\n let lineIndex\n /** @type {number} */\n\n let otherIndex\n /** @type {Event} */\n\n let otherEvent\n /** @type {Event[]} */\n\n let parameters\n /** @type {Event[]} */\n\n let subevents\n /** @type {boolean|undefined} */\n\n let more\n\n while (++index < events.length) {\n while (index in jumps) {\n index = jumps[index]\n }\n\n event = events[index] // Add a hook for the GFM tasklist extension, which needs to know if text\n // is in the first content of a list item.\n\n if (\n index &&\n event[1].type === 'chunkFlow' &&\n events[index - 1][1].type === 'listItemPrefix'\n ) {\n subevents = event[1]._tokenizer.events\n otherIndex = 0\n\n if (\n otherIndex < subevents.length &&\n subevents[otherIndex][1].type === 'lineEndingBlank'\n ) {\n otherIndex += 2\n }\n\n if (\n otherIndex < subevents.length &&\n subevents[otherIndex][1].type === 'content'\n ) {\n while (++otherIndex < subevents.length) {\n if (subevents[otherIndex][1].type === 'content') {\n break\n }\n\n if (subevents[otherIndex][1].type === 'chunkText') {\n subevents[otherIndex][1]._isInFirstContentOfListItem = true\n otherIndex++\n }\n }\n }\n } // Enter.\n\n if (event[0] === 'enter') {\n if (event[1].contentType) {\n Object.assign(jumps, subcontent(events, index))\n index = jumps[index]\n more = true\n }\n } // Exit.\n else if (event[1]._container) {\n otherIndex = index\n lineIndex = undefined\n\n while (otherIndex--) {\n otherEvent = events[otherIndex]\n\n if (\n otherEvent[1].type === 'lineEnding' ||\n otherEvent[1].type === 'lineEndingBlank'\n ) {\n if (otherEvent[0] === 'enter') {\n if (lineIndex) {\n events[lineIndex][1].type = 'lineEndingBlank'\n }\n\n otherEvent[1].type = 'lineEnding'\n lineIndex = otherIndex\n }\n } else {\n break\n }\n }\n\n if (lineIndex) {\n // Fix position.\n event[1].end = Object.assign({}, events[lineIndex][1].start) // Switch container exit w/ line endings.\n\n parameters = events.slice(lineIndex, index)\n parameters.unshift(event)\n splice(events, lineIndex, index - lineIndex + 1, parameters)\n }\n }\n }\n\n return !more\n}\n/**\n * Tokenize embedded tokens.\n *\n * @param {Event[]} events\n * @param {number} eventIndex\n * @returns {Record<string, number>}\n */\n\nfunction subcontent(events, eventIndex) {\n const token = events[eventIndex][1]\n const context = events[eventIndex][2]\n let startPosition = eventIndex - 1\n /** @type {number[]} */\n\n const startPositions = []\n const tokenizer =\n token._tokenizer || context.parser[token.contentType](token.start)\n const childEvents = tokenizer.events\n /** @type {[number, number][]} */\n\n const jumps = []\n /** @type {Record<string, number>} */\n\n const gaps = {}\n /** @type {Chunk[]} */\n\n let stream\n /** @type {Token|undefined} */\n\n let previous\n let index = -1\n /** @type {Token|undefined} */\n\n let current = token\n let adjust = 0\n let start = 0\n const breaks = [start] // Loop forward through the linked tokens to pass them in order to the\n // subtokenizer.\n\n while (current) {\n // Find the position of the event for this token.\n while (events[++startPosition][1] !== current) {\n // Empty.\n }\n\n startPositions.push(startPosition)\n\n if (!current._tokenizer) {\n stream = context.sliceStream(current)\n\n if (!current.next) {\n stream.push(null)\n }\n\n if (previous) {\n tokenizer.defineSkip(current.start)\n }\n\n if (current._isInFirstContentOfListItem) {\n tokenizer._gfmTasklistFirstContentOfListItem = true\n }\n\n tokenizer.write(stream)\n\n if (current._isInFirstContentOfListItem) {\n tokenizer._gfmTasklistFirstContentOfListItem = undefined\n }\n } // Unravel the next token.\n\n previous = current\n current = current.next\n } // Now, loop back through all events (and linked tokens), to figure out which\n // parts belong where.\n\n current = token\n\n while (++index < childEvents.length) {\n if (\n // Find a void token that includes a break.\n childEvents[index][0] === 'exit' &&\n childEvents[index - 1][0] === 'enter' &&\n childEvents[index][1].type === childEvents[index - 1][1].type &&\n childEvents[index][1].start.line !== childEvents[index][1].end.line\n ) {\n start = index + 1\n breaks.push(start) // Help GC.\n\n current._tokenizer = undefined\n current.previous = undefined\n current = current.next\n }\n } // Help GC.\n\n tokenizer.events = [] // If there’s one more token (which is the cases for lines that end in an\n // EOF), that’s perfect: the last point we found starts it.\n // If there isn’t then make sure any remaining content is added to it.\n\n if (current) {\n // Help GC.\n current._tokenizer = undefined\n current.previous = undefined\n } else {\n breaks.pop()\n } // Now splice the events from the subtokenizer into the current events,\n // moving back to front so that splice indices aren’t affected.\n\n index = breaks.length\n\n while (index--) {\n const slice = childEvents.slice(breaks[index], breaks[index + 1])\n const start = startPositions.pop()\n jumps.unshift([start, start + slice.length - 1])\n splice(events, start, 2, slice)\n }\n\n index = -1\n\n while (++index < jumps.length) {\n gaps[adjust + jumps[index][0]] = adjust + jumps[index][1]\n adjust += jumps[index][1] - jumps[index][0] - 1\n }\n\n return gaps\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\nimport {subtokenize} from 'micromark-util-subtokenize'\n\n/**\n * No name because it must not be turned off.\n * @type {Construct}\n */\nexport const content = {\n tokenize: tokenizeContent,\n resolve: resolveContent\n}\n/** @type {Construct} */\n\nconst continuationConstruct = {\n tokenize: tokenizeContinuation,\n partial: true\n}\n/**\n * Content is transparent: it’s parsed right now. That way, definitions are also\n * parsed right now: before text in paragraphs (specifically, media) are parsed.\n *\n * @type {Resolver}\n */\n\nfunction resolveContent(events) {\n subtokenize(events)\n return events\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeContent(effects, ok) {\n /** @type {Token} */\n let previous\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('content')\n previous = effects.enter('chunkContent', {\n contentType: 'content'\n })\n return data(code)\n }\n /** @type {State} */\n\n function data(code) {\n if (code === null) {\n return contentEnd(code)\n }\n\n if (markdownLineEnding(code)) {\n return effects.check(\n continuationConstruct,\n contentContinue,\n contentEnd\n )(code)\n } // Data.\n\n effects.consume(code)\n return data\n }\n /** @type {State} */\n\n function contentEnd(code) {\n effects.exit('chunkContent')\n effects.exit('content')\n return ok(code)\n }\n /** @type {State} */\n\n function contentContinue(code) {\n effects.consume(code)\n effects.exit('chunkContent')\n previous.next = effects.enter('chunkContent', {\n contentType: 'content',\n previous\n })\n previous = previous.next\n return data\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeContinuation(effects, ok, nok) {\n const self = this\n return startLookahead\n /** @type {State} */\n\n function startLookahead(code) {\n effects.exit('chunkContent')\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, prefixed, 'linePrefix')\n }\n /** @type {State} */\n\n function prefixed(code) {\n if (code === null || markdownLineEnding(code)) {\n return nok(code)\n }\n\n const tail = self.events[self.events.length - 1]\n\n if (\n !self.parser.constructs.disable.null.includes('codeIndented') &&\n tail &&\n tail[1].type === 'linePrefix' &&\n tail[2].sliceSerialize(tail[1], true).length >= 4\n ) {\n return ok(code)\n }\n\n return effects.interrupt(self.parser.constructs.flow, nok, ok)(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').Initializer} Initializer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {blankLine, content} from 'micromark-core-commonmark'\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/** @type {InitialConstruct} */\nexport const flow = {\n tokenize: initializeFlow\n}\n/** @type {Initializer} */\n\nfunction initializeFlow(effects) {\n const self = this\n const initial = effects.attempt(\n // Try to parse a blank line.\n blankLine,\n atBlankEnding, // Try to parse initial flow (essentially, only code).\n effects.attempt(\n this.parser.constructs.flowInitial,\n afterConstruct,\n factorySpace(\n effects,\n effects.attempt(\n this.parser.constructs.flow,\n afterConstruct,\n effects.attempt(content, afterConstruct)\n ),\n 'linePrefix'\n )\n )\n )\n return initial\n /** @type {State} */\n\n function atBlankEnding(code) {\n if (code === null) {\n effects.consume(code)\n return\n }\n\n effects.enter('lineEndingBlank')\n effects.consume(code)\n effects.exit('lineEndingBlank')\n self.currentConstruct = undefined\n return initial\n }\n /** @type {State} */\n\n function afterConstruct(code) {\n if (code === null) {\n effects.consume(code)\n return\n }\n\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n self.currentConstruct = undefined\n return initial\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').Initializer} Initializer\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nexport const resolver = {\n resolveAll: createResolver()\n}\nexport const string = initializeFactory('string')\nexport const text = initializeFactory('text')\n/**\n * @param {'string'|'text'} field\n * @returns {InitialConstruct}\n */\n\nfunction initializeFactory(field) {\n return {\n tokenize: initializeText,\n resolveAll: createResolver(\n field === 'text' ? resolveAllLineSuffixes : undefined\n )\n }\n /** @type {Initializer} */\n\n function initializeText(effects) {\n const self = this\n const constructs = this.parser.constructs[field]\n const text = effects.attempt(constructs, start, notText)\n return start\n /** @type {State} */\n\n function start(code) {\n return atBreak(code) ? text(code) : notText(code)\n }\n /** @type {State} */\n\n function notText(code) {\n if (code === null) {\n effects.consume(code)\n return\n }\n\n effects.enter('data')\n effects.consume(code)\n return data\n }\n /** @type {State} */\n\n function data(code) {\n if (atBreak(code)) {\n effects.exit('data')\n return text(code)\n } // Data.\n\n effects.consume(code)\n return data\n }\n /**\n * @param {Code} code\n * @returns {boolean}\n */\n\n function atBreak(code) {\n if (code === null) {\n return true\n }\n\n const list = constructs[code]\n let index = -1\n\n if (list) {\n while (++index < list.length) {\n const item = list[index]\n\n if (!item.previous || item.previous.call(self, self.previous)) {\n return true\n }\n }\n }\n\n return false\n }\n }\n}\n/**\n * @param {Resolver} [extraResolver]\n * @returns {Resolver}\n */\n\nfunction createResolver(extraResolver) {\n return resolveAllText\n /** @type {Resolver} */\n\n function resolveAllText(events, context) {\n let index = -1\n /** @type {number|undefined} */\n\n let enter // A rather boring computation (to merge adjacent `data` events) which\n // improves mm performance by 29%.\n\n while (++index <= events.length) {\n if (enter === undefined) {\n if (events[index] && events[index][1].type === 'data') {\n enter = index\n index++\n }\n } else if (!events[index] || events[index][1].type !== 'data') {\n // Don’t do anything if there is one data token.\n if (index !== enter + 2) {\n events[enter][1].end = events[index - 1][1].end\n events.splice(enter + 2, index - enter - 2)\n index = enter + 2\n }\n\n enter = undefined\n }\n }\n\n return extraResolver ? extraResolver(events, context) : events\n }\n}\n/**\n * A rather ugly set of instructions which again looks at chunks in the input\n * stream.\n * The reason to do this here is that it is *much* faster to parse in reverse.\n * And that we can’t hook into `null` to split the line suffix before an EOF.\n * To do: figure out if we can make this into a clean utility, or even in core.\n * As it will be useful for GFMs literal autolink extension (and maybe even\n * tables?)\n *\n * @type {Resolver}\n */\n\nfunction resolveAllLineSuffixes(events, context) {\n let eventIndex = 0 // Skip first.\n\n while (++eventIndex <= events.length) {\n if (\n (eventIndex === events.length ||\n events[eventIndex][1].type === 'lineEnding') &&\n events[eventIndex - 1][1].type === 'data'\n ) {\n const data = events[eventIndex - 1][1]\n const chunks = context.sliceStream(data)\n let index = chunks.length\n let bufferIndex = -1\n let size = 0\n /** @type {boolean|undefined} */\n\n let tabs\n\n while (index--) {\n const chunk = chunks[index]\n\n if (typeof chunk === 'string') {\n bufferIndex = chunk.length\n\n while (chunk.charCodeAt(bufferIndex - 1) === 32) {\n size++\n bufferIndex--\n }\n\n if (bufferIndex) break\n bufferIndex = -1\n } // Number\n else if (chunk === -2) {\n tabs = true\n size++\n } else if (chunk === -1) {\n // Empty\n } else {\n // Replacement character, exit.\n index++\n break\n }\n }\n\n if (size) {\n const token = {\n type:\n eventIndex === events.length || tabs || size < 2\n ? 'lineSuffix'\n : 'hardBreakTrailing',\n start: {\n line: data.end.line,\n column: data.end.column - size,\n offset: data.end.offset - size,\n _index: data.start._index + index,\n _bufferIndex: index\n ? bufferIndex\n : data.start._bufferIndex + bufferIndex\n },\n end: Object.assign({}, data.end)\n }\n data.end = Object.assign({}, token.start)\n\n if (data.start.offset === data.end.offset) {\n Object.assign(data, token)\n } else {\n events.splice(\n eventIndex,\n 0,\n ['enter', token, context],\n ['exit', token, context]\n )\n eventIndex += 2\n }\n }\n\n eventIndex++\n }\n }\n\n return events\n}\n","/**\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Resolver} Resolver\n */\n\n/**\n * Call all `resolveAll`s.\n *\n * @param {{resolveAll?: Resolver}[]} constructs\n * @param {Event[]} events\n * @param {TokenizeContext} context\n * @returns {Event[]}\n */\nexport function resolveAll(constructs, events, context) {\n /** @type {Resolver[]} */\n const called = []\n let index = -1\n\n while (++index < constructs.length) {\n const resolve = constructs[index].resolveAll\n\n if (resolve && !called.includes(resolve)) {\n events = resolve(events, context)\n called.push(resolve)\n }\n }\n\n return events\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Chunk} Chunk\n * @typedef {import('micromark-util-types').Point} Point\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').ConstructRecord} ConstructRecord\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').ParseContext} ParseContext\n */\n\n/**\n * @typedef Info\n * @property {() => void} restore\n * @property {number} from\n *\n * @callback ReturnHandle\n * Handle a successful run.\n * @param {Construct} construct\n * @param {Info} info\n * @returns {void}\n */\nimport {markdownLineEnding} from 'micromark-util-character'\nimport {push, splice} from 'micromark-util-chunked'\nimport {resolveAll} from 'micromark-util-resolve-all'\n\n/**\n * Create a tokenizer.\n * Tokenizers deal with one type of data (e.g., containers, flow, text).\n * The parser is the object dealing with it all.\n * `initialize` works like other constructs, except that only its `tokenize`\n * function is used, in which case it doesn’t receive an `ok` or `nok`.\n * `from` can be given to set the point before the first character, although\n * when further lines are indented, they must be set with `defineSkip`.\n *\n * @param {ParseContext} parser\n * @param {InitialConstruct} initialize\n * @param {Omit<Point, '_index'|'_bufferIndex'>} [from]\n * @returns {TokenizeContext}\n */\nexport function createTokenizer(parser, initialize, from) {\n /** @type {Point} */\n let point = Object.assign(\n from\n ? Object.assign({}, from)\n : {\n line: 1,\n column: 1,\n offset: 0\n },\n {\n _index: 0,\n _bufferIndex: -1\n }\n )\n /** @type {Record<string, number>} */\n\n const columnStart = {}\n /** @type {Array<Construct>} */\n\n const resolveAllConstructs = []\n /** @type {Array<Chunk>} */\n\n let chunks = []\n /** @type {Array<Token>} */\n\n let stack = []\n /** @type {boolean|undefined} */\n\n let consumed = true\n /**\n * Tools used for tokenizing.\n *\n * @type {Effects}\n */\n\n const effects = {\n consume,\n enter,\n exit,\n attempt: constructFactory(onsuccessfulconstruct),\n check: constructFactory(onsuccessfulcheck),\n interrupt: constructFactory(onsuccessfulcheck, {\n interrupt: true\n })\n }\n /**\n * State and tools for resolving and serializing.\n *\n * @type {TokenizeContext}\n */\n\n const context = {\n previous: null,\n code: null,\n containerState: {},\n events: [],\n parser,\n sliceStream,\n sliceSerialize,\n now,\n defineSkip,\n write\n }\n /**\n * The state function.\n *\n * @type {State|void}\n */\n\n let state = initialize.tokenize.call(context, effects)\n /**\n * Track which character we expect to be consumed, to catch bugs.\n *\n * @type {Code}\n */\n\n let expectedCode\n\n if (initialize.resolveAll) {\n resolveAllConstructs.push(initialize)\n }\n\n return context\n /** @type {TokenizeContext['write']} */\n\n function write(slice) {\n chunks = push(chunks, slice)\n main() // Exit if we’re not done, resolve might change stuff.\n\n if (chunks[chunks.length - 1] !== null) {\n return []\n }\n\n addResult(initialize, 0) // Otherwise, resolve, and exit.\n\n context.events = resolveAll(resolveAllConstructs, context.events, context)\n return context.events\n } //\n // Tools.\n //\n\n /** @type {TokenizeContext['sliceSerialize']} */\n\n function sliceSerialize(token, expandTabs) {\n return serializeChunks(sliceStream(token), expandTabs)\n }\n /** @type {TokenizeContext['sliceStream']} */\n\n function sliceStream(token) {\n return sliceChunks(chunks, token)\n }\n /** @type {TokenizeContext['now']} */\n\n function now() {\n return Object.assign({}, point)\n }\n /** @type {TokenizeContext['defineSkip']} */\n\n function defineSkip(value) {\n columnStart[value.line] = value.column\n accountForPotentialSkip()\n } //\n // State management.\n //\n\n /**\n * Main loop (note that `_index` and `_bufferIndex` in `point` are modified by\n * `consume`).\n * Here is where we walk through the chunks, which either include strings of\n * several characters, or numerical character codes.\n * The reason to do this in a loop instead of a call is so the stack can\n * drain.\n *\n * @returns {void}\n */\n\n function main() {\n /** @type {number} */\n let chunkIndex\n\n while (point._index < chunks.length) {\n const chunk = chunks[point._index] // If we’re in a buffer chunk, loop through it.\n\n if (typeof chunk === 'string') {\n chunkIndex = point._index\n\n if (point._bufferIndex < 0) {\n point._bufferIndex = 0\n }\n\n while (\n point._index === chunkIndex &&\n point._bufferIndex < chunk.length\n ) {\n go(chunk.charCodeAt(point._bufferIndex))\n }\n } else {\n go(chunk)\n }\n }\n }\n /**\n * Deal with one code.\n *\n * @param {Code} code\n * @returns {void}\n */\n\n function go(code) {\n consumed = undefined\n expectedCode = code\n state = state(code)\n }\n /** @type {Effects['consume']} */\n\n function consume(code) {\n if (markdownLineEnding(code)) {\n point.line++\n point.column = 1\n point.offset += code === -3 ? 2 : 1\n accountForPotentialSkip()\n } else if (code !== -1) {\n point.column++\n point.offset++\n } // Not in a string chunk.\n\n if (point._bufferIndex < 0) {\n point._index++\n } else {\n point._bufferIndex++ // At end of string chunk.\n // @ts-expect-error Points w/ non-negative `_bufferIndex` reference\n // strings.\n\n if (point._bufferIndex === chunks[point._index].length) {\n point._bufferIndex = -1\n point._index++\n }\n } // Expose the previous character.\n\n context.previous = code // Mark as consumed.\n\n consumed = true\n }\n /** @type {Effects['enter']} */\n\n function enter(type, fields) {\n /** @type {Token} */\n // @ts-expect-error Patch instead of assign required fields to help GC.\n const token = fields || {}\n token.type = type\n token.start = now()\n context.events.push(['enter', token, context])\n stack.push(token)\n return token\n }\n /** @type {Effects['exit']} */\n\n function exit(type) {\n const token = stack.pop()\n token.end = now()\n context.events.push(['exit', token, context])\n return token\n }\n /**\n * Use results.\n *\n * @type {ReturnHandle}\n */\n\n function onsuccessfulconstruct(construct, info) {\n addResult(construct, info.from)\n }\n /**\n * Discard results.\n *\n * @type {ReturnHandle}\n */\n\n function onsuccessfulcheck(_, info) {\n info.restore()\n }\n /**\n * Factory to attempt/check/interrupt.\n *\n * @param {ReturnHandle} onreturn\n * @param {Record<string, unknown>} [fields]\n */\n\n function constructFactory(onreturn, fields) {\n return hook\n /**\n * Handle either an object mapping codes to constructs, a list of\n * constructs, or a single construct.\n *\n * @param {Construct|Array<Construct>|ConstructRecord} constructs\n * @param {State} returnState\n * @param {State} [bogusState]\n * @returns {State}\n */\n\n function hook(constructs, returnState, bogusState) {\n /** @type {Array<Construct>} */\n let listOfConstructs\n /** @type {number} */\n\n let constructIndex\n /** @type {Construct} */\n\n let currentConstruct\n /** @type {Info} */\n\n let info\n return Array.isArray(constructs)\n ? /* c8 ignore next 1 */\n handleListOfConstructs(constructs)\n : 'tokenize' in constructs // @ts-expect-error Looks like a construct.\n ? handleListOfConstructs([constructs])\n : handleMapOfConstructs(constructs)\n /**\n * Handle a list of construct.\n *\n * @param {ConstructRecord} map\n * @returns {State}\n */\n\n function handleMapOfConstructs(map) {\n return start\n /** @type {State} */\n\n function start(code) {\n const def = code !== null && map[code]\n const all = code !== null && map.null\n const list = [\n // To do: add more extension tests.\n\n /* c8 ignore next 2 */\n ...(Array.isArray(def) ? def : def ? [def] : []),\n ...(Array.isArray(all) ? all : all ? [all] : [])\n ]\n return handleListOfConstructs(list)(code)\n }\n }\n /**\n * Handle a list of construct.\n *\n * @param {Array<Construct>} list\n * @returns {State}\n */\n\n function handleListOfConstructs(list) {\n listOfConstructs = list\n constructIndex = 0\n\n if (list.length === 0) {\n return bogusState\n }\n\n return handleConstruct(list[constructIndex])\n }\n /**\n * Handle a single construct.\n *\n * @param {Construct} construct\n * @returns {State}\n */\n\n function handleConstruct(construct) {\n return start\n /** @type {State} */\n\n function start(code) {\n // To do: not needed to store if there is no bogus state, probably?\n // Currently doesn’t work because `inspect` in document does a check\n // w/o a bogus, which doesn’t make sense. But it does seem to help perf\n // by not storing.\n info = store()\n currentConstruct = construct\n\n if (!construct.partial) {\n context.currentConstruct = construct\n }\n\n if (\n construct.name &&\n context.parser.constructs.disable.null.includes(construct.name)\n ) {\n return nok(code)\n }\n\n return construct.tokenize.call(\n // If we do have fields, create an object w/ `context` as its\n // prototype.\n // This allows a “live binding”, which is needed for `interrupt`.\n fields ? Object.assign(Object.create(context), fields) : context,\n effects,\n ok,\n nok\n )(code)\n }\n }\n /** @type {State} */\n\n function ok(code) {\n consumed = true\n onreturn(currentConstruct, info)\n return returnState\n }\n /** @type {State} */\n\n function nok(code) {\n consumed = true\n info.restore()\n\n if (++constructIndex < listOfConstructs.length) {\n return handleConstruct(listOfConstructs[constructIndex])\n }\n\n return bogusState\n }\n }\n }\n /**\n * @param {Construct} construct\n * @param {number} from\n * @returns {void}\n */\n\n function addResult(construct, from) {\n if (construct.resolveAll && !resolveAllConstructs.includes(construct)) {\n resolveAllConstructs.push(construct)\n }\n\n if (construct.resolve) {\n splice(\n context.events,\n from,\n context.events.length - from,\n construct.resolve(context.events.slice(from), context)\n )\n }\n\n if (construct.resolveTo) {\n context.events = construct.resolveTo(context.events, context)\n }\n }\n /**\n * Store state.\n *\n * @returns {Info}\n */\n\n function store() {\n const startPoint = now()\n const startPrevious = context.previous\n const startCurrentConstruct = context.currentConstruct\n const startEventsIndex = context.events.length\n const startStack = Array.from(stack)\n return {\n restore,\n from: startEventsIndex\n }\n /**\n * Restore state.\n *\n * @returns {void}\n */\n\n function restore() {\n point = startPoint\n context.previous = startPrevious\n context.currentConstruct = startCurrentConstruct\n context.events.length = startEventsIndex\n stack = startStack\n accountForPotentialSkip()\n }\n }\n /**\n * Move the current point a bit forward in the line when it’s on a column\n * skip.\n *\n * @returns {void}\n */\n\n function accountForPotentialSkip() {\n if (point.line in columnStart && point.column < 2) {\n point.column = columnStart[point.line]\n point.offset += columnStart[point.line] - 1\n }\n }\n}\n/**\n * Get the chunks from a slice of chunks in the range of a token.\n *\n * @param {Array<Chunk>} chunks\n * @param {Pick<Token, 'start'|'end'>} token\n * @returns {Array<Chunk>}\n */\n\nfunction sliceChunks(chunks, token) {\n const startIndex = token.start._index\n const startBufferIndex = token.start._bufferIndex\n const endIndex = token.end._index\n const endBufferIndex = token.end._bufferIndex\n /** @type {Array<Chunk>} */\n\n let view\n\n if (startIndex === endIndex) {\n // @ts-expect-error `_bufferIndex` is used on string chunks.\n view = [chunks[startIndex].slice(startBufferIndex, endBufferIndex)]\n } else {\n view = chunks.slice(startIndex, endIndex)\n\n if (startBufferIndex > -1) {\n // @ts-expect-error `_bufferIndex` is used on string chunks.\n view[0] = view[0].slice(startBufferIndex)\n }\n\n if (endBufferIndex > 0) {\n // @ts-expect-error `_bufferIndex` is used on string chunks.\n view.push(chunks[endIndex].slice(0, endBufferIndex))\n }\n }\n\n return view\n}\n/**\n * Get the string value of a slice of chunks.\n *\n * @param {Array<Chunk>} chunks\n * @param {boolean} [expandTabs=false]\n * @returns {string}\n */\n\nfunction serializeChunks(chunks, expandTabs) {\n let index = -1\n /** @type {Array<string>} */\n\n const result = []\n /** @type {boolean|undefined} */\n\n let atTab\n\n while (++index < chunks.length) {\n const chunk = chunks[index]\n /** @type {string} */\n\n let value\n\n if (typeof chunk === 'string') {\n value = chunk\n } else\n switch (chunk) {\n case -5: {\n value = '\\r'\n break\n }\n\n case -4: {\n value = '\\n'\n break\n }\n\n case -3: {\n value = '\\r' + '\\n'\n break\n }\n\n case -2: {\n value = expandTabs ? ' ' : '\\t'\n break\n }\n\n case -1: {\n if (!expandTabs && atTab) continue\n value = ' '\n break\n }\n\n default: {\n // Currently only replacement character.\n value = String.fromCharCode(chunk)\n }\n }\n\n atTab = chunk === -2\n result.push(value)\n }\n\n return result.join('')\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const thematicBreak = {\n name: 'thematicBreak',\n tokenize: tokenizeThematicBreak\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeThematicBreak(effects, ok, nok) {\n let size = 0\n /** @type {NonNullable<Code>} */\n\n let marker\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('thematicBreak')\n marker = code\n return atBreak(code)\n }\n /** @type {State} */\n\n function atBreak(code) {\n if (code === marker) {\n effects.enter('thematicBreakSequence')\n return sequence(code)\n }\n\n if (markdownSpace(code)) {\n return factorySpace(effects, atBreak, 'whitespace')(code)\n }\n\n if (size < 3 || (code !== null && !markdownLineEnding(code))) {\n return nok(code)\n }\n\n effects.exit('thematicBreak')\n return ok(code)\n }\n /** @type {State} */\n\n function sequence(code) {\n if (code === marker) {\n effects.consume(code)\n size++\n return sequence\n }\n\n effects.exit('thematicBreakSequence')\n return atBreak(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Exiter} Exiter\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\n\n/**\n * @typedef {Record<string, unknown> & {marker: Code, type: string, size: number}} ListContainerState\n * @typedef {TokenizeContext & {containerState: ListContainerState}} TokenizeContextWithState\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {asciiDigit, markdownSpace} from 'micromark-util-character'\nimport {blankLine} from './blank-line.js'\nimport {thematicBreak} from './thematic-break.js'\n/** @type {Construct} */\n\nexport const list = {\n name: 'list',\n tokenize: tokenizeListStart,\n continuation: {\n tokenize: tokenizeListContinuation\n },\n exit: tokenizeListEnd\n}\n/** @type {Construct} */\n\nconst listItemPrefixWhitespaceConstruct = {\n tokenize: tokenizeListItemPrefixWhitespace,\n partial: true\n}\n/** @type {Construct} */\n\nconst indentConstruct = {\n tokenize: tokenizeIndent,\n partial: true\n}\n/**\n * @type {Tokenizer}\n * @this {TokenizeContextWithState}\n */\n\nfunction tokenizeListStart(effects, ok, nok) {\n const self = this\n const tail = self.events[self.events.length - 1]\n let initialSize =\n tail && tail[1].type === 'linePrefix'\n ? tail[2].sliceSerialize(tail[1], true).length\n : 0\n let size = 0\n return start\n /** @type {State} */\n\n function start(code) {\n const kind =\n self.containerState.type ||\n (code === 42 || code === 43 || code === 45\n ? 'listUnordered'\n : 'listOrdered')\n\n if (\n kind === 'listUnordered'\n ? !self.containerState.marker || code === self.containerState.marker\n : asciiDigit(code)\n ) {\n if (!self.containerState.type) {\n self.containerState.type = kind\n effects.enter(kind, {\n _container: true\n })\n }\n\n if (kind === 'listUnordered') {\n effects.enter('listItemPrefix')\n return code === 42 || code === 45\n ? effects.check(thematicBreak, nok, atMarker)(code)\n : atMarker(code)\n }\n\n if (!self.interrupt || code === 49) {\n effects.enter('listItemPrefix')\n effects.enter('listItemValue')\n return inside(code)\n }\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function inside(code) {\n if (asciiDigit(code) && ++size < 10) {\n effects.consume(code)\n return inside\n }\n\n if (\n (!self.interrupt || size < 2) &&\n (self.containerState.marker\n ? code === self.containerState.marker\n : code === 41 || code === 46)\n ) {\n effects.exit('listItemValue')\n return atMarker(code)\n }\n\n return nok(code)\n }\n /**\n * @type {State}\n **/\n\n function atMarker(code) {\n effects.enter('listItemMarker')\n effects.consume(code)\n effects.exit('listItemMarker')\n self.containerState.marker = self.containerState.marker || code\n return effects.check(\n blankLine, // Can’t be empty when interrupting.\n self.interrupt ? nok : onBlank,\n effects.attempt(\n listItemPrefixWhitespaceConstruct,\n endOfPrefix,\n otherPrefix\n )\n )\n }\n /** @type {State} */\n\n function onBlank(code) {\n self.containerState.initialBlankLine = true\n initialSize++\n return endOfPrefix(code)\n }\n /** @type {State} */\n\n function otherPrefix(code) {\n if (markdownSpace(code)) {\n effects.enter('listItemPrefixWhitespace')\n effects.consume(code)\n effects.exit('listItemPrefixWhitespace')\n return endOfPrefix\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function endOfPrefix(code) {\n self.containerState.size =\n initialSize +\n self.sliceSerialize(effects.exit('listItemPrefix'), true).length\n return ok(code)\n }\n}\n/**\n * @type {Tokenizer}\n * @this {TokenizeContextWithState}\n */\n\nfunction tokenizeListContinuation(effects, ok, nok) {\n const self = this\n self.containerState._closeFlow = undefined\n return effects.check(blankLine, onBlank, notBlank)\n /** @type {State} */\n\n function onBlank(code) {\n self.containerState.furtherBlankLines =\n self.containerState.furtherBlankLines ||\n self.containerState.initialBlankLine // We have a blank line.\n // Still, try to consume at most the items size.\n\n return factorySpace(\n effects,\n ok,\n 'listItemIndent',\n self.containerState.size + 1\n )(code)\n }\n /** @type {State} */\n\n function notBlank(code) {\n if (self.containerState.furtherBlankLines || !markdownSpace(code)) {\n self.containerState.furtherBlankLines = undefined\n self.containerState.initialBlankLine = undefined\n return notInCurrentItem(code)\n }\n\n self.containerState.furtherBlankLines = undefined\n self.containerState.initialBlankLine = undefined\n return effects.attempt(indentConstruct, ok, notInCurrentItem)(code)\n }\n /** @type {State} */\n\n function notInCurrentItem(code) {\n // While we do continue, we signal that the flow should be closed.\n self.containerState._closeFlow = true // As we’re closing flow, we’re no longer interrupting.\n\n self.interrupt = undefined\n return factorySpace(\n effects,\n effects.attempt(list, ok, nok),\n 'linePrefix',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )(code)\n }\n}\n/**\n * @type {Tokenizer}\n * @this {TokenizeContextWithState}\n */\n\nfunction tokenizeIndent(effects, ok, nok) {\n const self = this\n return factorySpace(\n effects,\n afterPrefix,\n 'listItemIndent',\n self.containerState.size + 1\n )\n /** @type {State} */\n\n function afterPrefix(code) {\n const tail = self.events[self.events.length - 1]\n return tail &&\n tail[1].type === 'listItemIndent' &&\n tail[2].sliceSerialize(tail[1], true).length === self.containerState.size\n ? ok(code)\n : nok(code)\n }\n}\n/**\n * @type {Exiter}\n * @this {TokenizeContextWithState}\n */\n\nfunction tokenizeListEnd(effects) {\n effects.exit(this.containerState.type)\n}\n/**\n * @type {Tokenizer}\n * @this {TokenizeContextWithState}\n */\n\nfunction tokenizeListItemPrefixWhitespace(effects, ok, nok) {\n const self = this\n return factorySpace(\n effects,\n afterPrefix,\n 'listItemPrefixWhitespace',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4 + 1\n )\n /** @type {State} */\n\n function afterPrefix(code) {\n const tail = self.events[self.events.length - 1]\n return !markdownSpace(code) &&\n tail &&\n tail[1].type === 'listItemPrefixWhitespace'\n ? ok(code)\n : nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Exiter} Exiter\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownSpace} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const blockQuote = {\n name: 'blockQuote',\n tokenize: tokenizeBlockQuoteStart,\n continuation: {\n tokenize: tokenizeBlockQuoteContinuation\n },\n exit\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeBlockQuoteStart(effects, ok, nok) {\n const self = this\n return start\n /** @type {State} */\n\n function start(code) {\n if (code === 62) {\n const state = self.containerState\n\n if (!state.open) {\n effects.enter('blockQuote', {\n _container: true\n })\n state.open = true\n }\n\n effects.enter('blockQuotePrefix')\n effects.enter('blockQuoteMarker')\n effects.consume(code)\n effects.exit('blockQuoteMarker')\n return after\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function after(code) {\n if (markdownSpace(code)) {\n effects.enter('blockQuotePrefixWhitespace')\n effects.consume(code)\n effects.exit('blockQuotePrefixWhitespace')\n effects.exit('blockQuotePrefix')\n return ok\n }\n\n effects.exit('blockQuotePrefix')\n return ok(code)\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeBlockQuoteContinuation(effects, ok, nok) {\n return factorySpace(\n effects,\n effects.attempt(blockQuote, ok, nok),\n 'linePrefix',\n this.parser.constructs.disable.null.includes('codeIndented') ? undefined : 4\n )\n}\n/** @type {Exiter} */\n\nfunction exit(effects) {\n effects.exit('blockQuote')\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n */\nimport {\n asciiControl,\n markdownLineEndingOrSpace,\n markdownLineEnding\n} from 'micromark-util-character'\n\n/**\n * @param {Effects} effects\n * @param {State} ok\n * @param {State} nok\n * @param {string} type\n * @param {string} literalType\n * @param {string} literalMarkerType\n * @param {string} rawType\n * @param {string} stringType\n * @param {number} [max=Infinity]\n * @returns {State}\n */\n// eslint-disable-next-line max-params\nexport function factoryDestination(\n effects,\n ok,\n nok,\n type,\n literalType,\n literalMarkerType,\n rawType,\n stringType,\n max\n) {\n const limit = max || Number.POSITIVE_INFINITY\n let balance = 0\n return start\n /** @type {State} */\n\n function start(code) {\n if (code === 60) {\n effects.enter(type)\n effects.enter(literalType)\n effects.enter(literalMarkerType)\n effects.consume(code)\n effects.exit(literalMarkerType)\n return destinationEnclosedBefore\n }\n\n if (code === null || code === 41 || asciiControl(code)) {\n return nok(code)\n }\n\n effects.enter(type)\n effects.enter(rawType)\n effects.enter(stringType)\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return destinationRaw(code)\n }\n /** @type {State} */\n\n function destinationEnclosedBefore(code) {\n if (code === 62) {\n effects.enter(literalMarkerType)\n effects.consume(code)\n effects.exit(literalMarkerType)\n effects.exit(literalType)\n effects.exit(type)\n return ok\n }\n\n effects.enter(stringType)\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return destinationEnclosed(code)\n }\n /** @type {State} */\n\n function destinationEnclosed(code) {\n if (code === 62) {\n effects.exit('chunkString')\n effects.exit(stringType)\n return destinationEnclosedBefore(code)\n }\n\n if (code === null || code === 60 || markdownLineEnding(code)) {\n return nok(code)\n }\n\n effects.consume(code)\n return code === 92 ? destinationEnclosedEscape : destinationEnclosed\n }\n /** @type {State} */\n\n function destinationEnclosedEscape(code) {\n if (code === 60 || code === 62 || code === 92) {\n effects.consume(code)\n return destinationEnclosed\n }\n\n return destinationEnclosed(code)\n }\n /** @type {State} */\n\n function destinationRaw(code) {\n if (code === 40) {\n if (++balance > limit) return nok(code)\n effects.consume(code)\n return destinationRaw\n }\n\n if (code === 41) {\n if (!balance--) {\n effects.exit('chunkString')\n effects.exit(stringType)\n effects.exit(rawType)\n effects.exit(type)\n return ok(code)\n }\n\n effects.consume(code)\n return destinationRaw\n }\n\n if (code === null || markdownLineEndingOrSpace(code)) {\n if (balance) return nok(code)\n effects.exit('chunkString')\n effects.exit(stringType)\n effects.exit(rawType)\n effects.exit(type)\n return ok(code)\n }\n\n if (asciiControl(code)) return nok(code)\n effects.consume(code)\n return code === 92 ? destinationRawEscape : destinationRaw\n }\n /** @type {State} */\n\n function destinationRawEscape(code) {\n if (code === 40 || code === 41 || code === 92) {\n effects.consume(code)\n return destinationRaw\n }\n\n return destinationRaw(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').State} State\n */\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n\n/**\n * @this {TokenizeContext}\n * @param {Effects} effects\n * @param {State} ok\n * @param {State} nok\n * @param {string} type\n * @param {string} markerType\n * @param {string} stringType\n * @returns {State}\n */\n// eslint-disable-next-line max-params\nexport function factoryLabel(effects, ok, nok, type, markerType, stringType) {\n const self = this\n let size = 0\n /** @type {boolean} */\n\n let data\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter(type)\n effects.enter(markerType)\n effects.consume(code)\n effects.exit(markerType)\n effects.enter(stringType)\n return atBreak\n }\n /** @type {State} */\n\n function atBreak(code) {\n if (\n code === null ||\n code === 91 ||\n (code === 93 && !data) ||\n /* To do: remove in the future once we’ve switched from\n * `micromark-extension-footnote` to `micromark-extension-gfm-footnote`,\n * which doesn’t need this */\n\n /* Hidden footnotes hook */\n\n /* c8 ignore next 3 */\n (code === 94 &&\n !size &&\n '_hiddenFootnoteSupport' in self.parser.constructs) ||\n size > 999\n ) {\n return nok(code)\n }\n\n if (code === 93) {\n effects.exit(stringType)\n effects.enter(markerType)\n effects.consume(code)\n effects.exit(markerType)\n effects.exit(type)\n return ok\n }\n\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return atBreak\n }\n\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return label(code)\n }\n /** @type {State} */\n\n function label(code) {\n if (\n code === null ||\n code === 91 ||\n code === 93 ||\n markdownLineEnding(code) ||\n size++ > 999\n ) {\n effects.exit('chunkString')\n return atBreak(code)\n }\n\n effects.consume(code)\n data = data || !markdownSpace(code)\n return code === 92 ? labelEscape : label\n }\n /** @type {State} */\n\n function labelEscape(code) {\n if (code === 91 || code === 92 || code === 93) {\n effects.consume(code)\n size++\n return label\n }\n\n return label(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/**\n * @param {Effects} effects\n * @param {State} ok\n * @param {State} nok\n * @param {string} type\n * @param {string} markerType\n * @param {string} stringType\n * @returns {State}\n */\n// eslint-disable-next-line max-params\nexport function factoryTitle(effects, ok, nok, type, markerType, stringType) {\n /** @type {NonNullable<Code>} */\n let marker\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter(type)\n effects.enter(markerType)\n effects.consume(code)\n effects.exit(markerType)\n marker = code === 40 ? 41 : code\n return atFirstTitleBreak\n }\n /** @type {State} */\n\n function atFirstTitleBreak(code) {\n if (code === marker) {\n effects.enter(markerType)\n effects.consume(code)\n effects.exit(markerType)\n effects.exit(type)\n return ok\n }\n\n effects.enter(stringType)\n return atTitleBreak(code)\n }\n /** @type {State} */\n\n function atTitleBreak(code) {\n if (code === marker) {\n effects.exit(stringType)\n return atFirstTitleBreak(marker)\n }\n\n if (code === null) {\n return nok(code)\n } // Note: blank lines can’t exist in content.\n\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, atTitleBreak, 'linePrefix')\n }\n\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return title(code)\n }\n /** @type {State} */\n\n function title(code) {\n if (code === marker || code === null || markdownLineEnding(code)) {\n effects.exit('chunkString')\n return atTitleBreak(code)\n }\n\n effects.consume(code)\n return code === 92 ? titleEscape : title\n }\n /** @type {State} */\n\n function titleEscape(code) {\n if (code === marker || code === 92) {\n effects.consume(code)\n return title\n }\n\n return title(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Effects} Effects\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding, markdownSpace} from 'micromark-util-character'\n\n/**\n * @param {Effects} effects\n * @param {State} ok\n */\nexport function factoryWhitespace(effects, ok) {\n /** @type {boolean} */\n let seen\n return start\n /** @type {State} */\n\n function start(code) {\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n seen = true\n return start\n }\n\n if (markdownSpace(code)) {\n return factorySpace(\n effects,\n start,\n seen ? 'linePrefix' : 'lineSuffix'\n )(code)\n }\n\n return ok(code)\n }\n}\n","/**\n * Normalize an identifier (such as used in definitions).\n *\n * @param {string} value\n * @returns {string}\n */\nexport function normalizeIdentifier(value) {\n return (\n value // Collapse Markdown whitespace.\n .replace(/[\\t\\n\\r ]+/g, ' ') // Trim.\n .replace(/^ | $/g, '') // Some characters are considered “uppercase”, but if their lowercase\n // counterpart is uppercased will result in a different uppercase\n // character.\n // Hence, to get that form, we perform both lower- and uppercase.\n // Upper case makes sure keys will not interact with default prototypal\n // methods: no method is uppercase.\n .toLowerCase()\n .toUpperCase()\n )\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factoryDestination} from 'micromark-factory-destination'\nimport {factoryLabel} from 'micromark-factory-label'\nimport {factorySpace} from 'micromark-factory-space'\nimport {factoryTitle} from 'micromark-factory-title'\nimport {factoryWhitespace} from 'micromark-factory-whitespace'\nimport {normalizeIdentifier} from 'micromark-util-normalize-identifier'\nimport {\n markdownLineEnding,\n markdownLineEndingOrSpace\n} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const definition = {\n name: 'definition',\n tokenize: tokenizeDefinition\n}\n/** @type {Construct} */\n\nconst titleConstruct = {\n tokenize: tokenizeTitle,\n partial: true\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeDefinition(effects, ok, nok) {\n const self = this\n /** @type {string} */\n\n let identifier\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('definition')\n return factoryLabel.call(\n self,\n effects,\n labelAfter,\n nok,\n 'definitionLabel',\n 'definitionLabelMarker',\n 'definitionLabelString'\n )(code)\n }\n /** @type {State} */\n\n function labelAfter(code) {\n identifier = normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n )\n\n if (code === 58) {\n effects.enter('definitionMarker')\n effects.consume(code)\n effects.exit('definitionMarker') // Note: blank lines can’t exist in content.\n\n return factoryWhitespace(\n effects,\n factoryDestination(\n effects,\n effects.attempt(\n titleConstruct,\n factorySpace(effects, after, 'whitespace'),\n factorySpace(effects, after, 'whitespace')\n ),\n nok,\n 'definitionDestination',\n 'definitionDestinationLiteral',\n 'definitionDestinationLiteralMarker',\n 'definitionDestinationRaw',\n 'definitionDestinationString'\n )\n )\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function after(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('definition')\n\n if (!self.parser.defined.includes(identifier)) {\n self.parser.defined.push(identifier)\n }\n\n return ok(code)\n }\n\n return nok(code)\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeTitle(effects, ok, nok) {\n return start\n /** @type {State} */\n\n function start(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, before)(code)\n : nok(code)\n }\n /** @type {State} */\n\n function before(code) {\n if (code === 34 || code === 39 || code === 40) {\n return factoryTitle(\n effects,\n factorySpace(effects, after, 'whitespace'),\n nok,\n 'definitionTitle',\n 'definitionTitleMarker',\n 'definitionTitleString'\n )(code)\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function after(code) {\n return code === null || markdownLineEnding(code) ? ok(code) : nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const codeIndented = {\n name: 'codeIndented',\n tokenize: tokenizeCodeIndented\n}\n/** @type {Construct} */\n\nconst indentedContent = {\n tokenize: tokenizeIndentedContent,\n partial: true\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeCodeIndented(effects, ok, nok) {\n const self = this\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('codeIndented')\n return factorySpace(effects, afterStartPrefix, 'linePrefix', 4 + 1)(code)\n }\n /** @type {State} */\n\n function afterStartPrefix(code) {\n const tail = self.events[self.events.length - 1]\n return tail &&\n tail[1].type === 'linePrefix' &&\n tail[2].sliceSerialize(tail[1], true).length >= 4\n ? afterPrefix(code)\n : nok(code)\n }\n /** @type {State} */\n\n function afterPrefix(code) {\n if (code === null) {\n return after(code)\n }\n\n if (markdownLineEnding(code)) {\n return effects.attempt(indentedContent, afterPrefix, after)(code)\n }\n\n effects.enter('codeFlowValue')\n return content(code)\n }\n /** @type {State} */\n\n function content(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFlowValue')\n return afterPrefix(code)\n }\n\n effects.consume(code)\n return content\n }\n /** @type {State} */\n\n function after(code) {\n effects.exit('codeIndented')\n return ok(code)\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeIndentedContent(effects, ok, nok) {\n const self = this\n return start\n /** @type {State} */\n\n function start(code) {\n // If this is a lazy line, it can’t be code.\n if (self.parser.lazy[self.now().line]) {\n return nok(code)\n }\n\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return start\n }\n\n return factorySpace(effects, afterPrefix, 'linePrefix', 4 + 1)(code)\n }\n /** @type {State} */\n\n function afterPrefix(code) {\n const tail = self.events[self.events.length - 1]\n return tail &&\n tail[1].type === 'linePrefix' &&\n tail[2].sliceSerialize(tail[1], true).length >= 4\n ? ok(code)\n : markdownLineEnding(code)\n ? start(code)\n : nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {\n markdownLineEnding,\n markdownLineEndingOrSpace,\n markdownSpace\n} from 'micromark-util-character'\nimport {splice} from 'micromark-util-chunked'\n\n/** @type {Construct} */\nexport const headingAtx = {\n name: 'headingAtx',\n tokenize: tokenizeHeadingAtx,\n resolve: resolveHeadingAtx\n}\n/** @type {Resolver} */\n\nfunction resolveHeadingAtx(events, context) {\n let contentEnd = events.length - 2\n let contentStart = 3\n /** @type {Token} */\n\n let content\n /** @type {Token} */\n\n let text // Prefix whitespace, part of the opening.\n\n if (events[contentStart][1].type === 'whitespace') {\n contentStart += 2\n } // Suffix whitespace, part of the closing.\n\n if (\n contentEnd - 2 > contentStart &&\n events[contentEnd][1].type === 'whitespace'\n ) {\n contentEnd -= 2\n }\n\n if (\n events[contentEnd][1].type === 'atxHeadingSequence' &&\n (contentStart === contentEnd - 1 ||\n (contentEnd - 4 > contentStart &&\n events[contentEnd - 2][1].type === 'whitespace'))\n ) {\n contentEnd -= contentStart + 1 === contentEnd ? 2 : 4\n }\n\n if (contentEnd > contentStart) {\n content = {\n type: 'atxHeadingText',\n start: events[contentStart][1].start,\n end: events[contentEnd][1].end\n }\n text = {\n type: 'chunkText',\n start: events[contentStart][1].start,\n end: events[contentEnd][1].end,\n // @ts-expect-error Constants are fine to assign.\n contentType: 'text'\n }\n splice(events, contentStart, contentEnd - contentStart + 1, [\n ['enter', content, context],\n ['enter', text, context],\n ['exit', text, context],\n ['exit', content, context]\n ])\n }\n\n return events\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeHeadingAtx(effects, ok, nok) {\n const self = this\n let size = 0\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('atxHeading')\n effects.enter('atxHeadingSequence')\n return fenceOpenInside(code)\n }\n /** @type {State} */\n\n function fenceOpenInside(code) {\n if (code === 35 && size++ < 6) {\n effects.consume(code)\n return fenceOpenInside\n }\n\n if (code === null || markdownLineEndingOrSpace(code)) {\n effects.exit('atxHeadingSequence')\n return self.interrupt ? ok(code) : headingBreak(code)\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function headingBreak(code) {\n if (code === 35) {\n effects.enter('atxHeadingSequence')\n return sequence(code)\n }\n\n if (code === null || markdownLineEnding(code)) {\n effects.exit('atxHeading')\n return ok(code)\n }\n\n if (markdownSpace(code)) {\n return factorySpace(effects, headingBreak, 'whitespace')(code)\n }\n\n effects.enter('atxHeadingText')\n return data(code)\n }\n /** @type {State} */\n\n function sequence(code) {\n if (code === 35) {\n effects.consume(code)\n return sequence\n }\n\n effects.exit('atxHeadingSequence')\n return headingBreak(code)\n }\n /** @type {State} */\n\n function data(code) {\n if (code === null || code === 35 || markdownLineEndingOrSpace(code)) {\n effects.exit('atxHeadingText')\n return headingBreak(code)\n }\n\n effects.consume(code)\n return data\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const setextUnderline = {\n name: 'setextUnderline',\n tokenize: tokenizeSetextUnderline,\n resolveTo: resolveToSetextUnderline\n}\n/** @type {Resolver} */\n\nfunction resolveToSetextUnderline(events, context) {\n let index = events.length\n /** @type {number|undefined} */\n\n let content\n /** @type {number|undefined} */\n\n let text\n /** @type {number|undefined} */\n\n let definition // Find the opening of the content.\n // It’ll always exist: we don’t tokenize if it isn’t there.\n\n while (index--) {\n if (events[index][0] === 'enter') {\n if (events[index][1].type === 'content') {\n content = index\n break\n }\n\n if (events[index][1].type === 'paragraph') {\n text = index\n }\n } // Exit\n else {\n if (events[index][1].type === 'content') {\n // Remove the content end (if needed we’ll add it later)\n events.splice(index, 1)\n }\n\n if (!definition && events[index][1].type === 'definition') {\n definition = index\n }\n }\n }\n\n const heading = {\n type: 'setextHeading',\n start: Object.assign({}, events[text][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n } // Change the paragraph to setext heading text.\n\n events[text][1].type = 'setextHeadingText' // If we have definitions in the content, we’ll keep on having content,\n // but we need move it.\n\n if (definition) {\n events.splice(text, 0, ['enter', heading, context])\n events.splice(definition + 1, 0, ['exit', events[content][1], context])\n events[content][1].end = Object.assign({}, events[definition][1].end)\n } else {\n events[content][1] = heading\n } // Add the heading exit at the end.\n\n events.push(['exit', heading, context])\n return events\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeSetextUnderline(effects, ok, nok) {\n const self = this\n let index = self.events.length\n /** @type {NonNullable<Code>} */\n\n let marker\n /** @type {boolean} */\n\n let paragraph // Find an opening.\n\n while (index--) {\n // Skip enter/exit of line ending, line prefix, and content.\n // We can now either have a definition or a paragraph.\n if (\n self.events[index][1].type !== 'lineEnding' &&\n self.events[index][1].type !== 'linePrefix' &&\n self.events[index][1].type !== 'content'\n ) {\n paragraph = self.events[index][1].type === 'paragraph'\n break\n }\n }\n\n return start\n /** @type {State} */\n\n function start(code) {\n if (!self.parser.lazy[self.now().line] && (self.interrupt || paragraph)) {\n effects.enter('setextHeadingLine')\n effects.enter('setextHeadingLineSequence')\n marker = code\n return closingSequence(code)\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function closingSequence(code) {\n if (code === marker) {\n effects.consume(code)\n return closingSequence\n }\n\n effects.exit('setextHeadingLineSequence')\n return factorySpace(effects, closingSequenceEnd, 'lineSuffix')(code)\n }\n /** @type {State} */\n\n function closingSequenceEnd(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('setextHeadingLine')\n return ok(code)\n }\n\n return nok(code)\n }\n}\n","/**\n * List of lowercase HTML tag names which when parsing HTML (flow), result\n * in more relaxed rules (condition 6): because they are known blocks, the\n * HTML-like syntax doesn’t have to be strictly parsed.\n * For tag names not in this list, a more strict algorithm (condition 7) is used\n * to detect whether the HTML-like syntax is seen as HTML (flow) or not.\n *\n * This is copied from:\n * <https://spec.commonmark.org/0.30/#html-blocks>.\n */\nexport const htmlBlockNames = [\n 'address',\n 'article',\n 'aside',\n 'base',\n 'basefont',\n 'blockquote',\n 'body',\n 'caption',\n 'center',\n 'col',\n 'colgroup',\n 'dd',\n 'details',\n 'dialog',\n 'dir',\n 'div',\n 'dl',\n 'dt',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'frame',\n 'frameset',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'head',\n 'header',\n 'hr',\n 'html',\n 'iframe',\n 'legend',\n 'li',\n 'link',\n 'main',\n 'menu',\n 'menuitem',\n 'nav',\n 'noframes',\n 'ol',\n 'optgroup',\n 'option',\n 'p',\n 'param',\n 'section',\n 'summary',\n 'table',\n 'tbody',\n 'td',\n 'tfoot',\n 'th',\n 'thead',\n 'title',\n 'tr',\n 'track',\n 'ul'\n]\n\n/**\n * List of lowercase HTML tag names which when parsing HTML (flow), result in\n * HTML that can include lines w/o exiting, until a closing tag also in this\n * list is found (condition 1).\n *\n * This module is copied from:\n * <https://spec.commonmark.org/0.30/#html-blocks>.\n *\n * Note that `textarea` was added in `CommonMark@0.30`.\n */\nexport const htmlRawNames = ['pre', 'script', 'style', 'textarea']\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {\n asciiAlpha,\n asciiAlphanumeric,\n markdownLineEnding,\n markdownLineEndingOrSpace,\n markdownSpace\n} from 'micromark-util-character'\nimport {htmlBlockNames, htmlRawNames} from 'micromark-util-html-tag-name'\nimport {blankLine} from './blank-line.js'\n/** @type {Construct} */\n\nexport const htmlFlow = {\n name: 'htmlFlow',\n tokenize: tokenizeHtmlFlow,\n resolveTo: resolveToHtmlFlow,\n concrete: true\n}\n/** @type {Construct} */\n\nconst nextBlankConstruct = {\n tokenize: tokenizeNextBlank,\n partial: true\n}\n/** @type {Resolver} */\n\nfunction resolveToHtmlFlow(events) {\n let index = events.length\n\n while (index--) {\n if (events[index][0] === 'enter' && events[index][1].type === 'htmlFlow') {\n break\n }\n }\n\n if (index > 1 && events[index - 2][1].type === 'linePrefix') {\n // Add the prefix start to the HTML token.\n events[index][1].start = events[index - 2][1].start // Add the prefix start to the HTML line token.\n\n events[index + 1][1].start = events[index - 2][1].start // Remove the line prefix.\n\n events.splice(index - 2, 2)\n }\n\n return events\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeHtmlFlow(effects, ok, nok) {\n const self = this\n /** @type {number} */\n\n let kind\n /** @type {boolean} */\n\n let startTag\n /** @type {string} */\n\n let buffer\n /** @type {number} */\n\n let index\n /** @type {Code} */\n\n let marker\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('htmlFlow')\n effects.enter('htmlFlowData')\n effects.consume(code)\n return open\n }\n /** @type {State} */\n\n function open(code) {\n if (code === 33) {\n effects.consume(code)\n return declarationStart\n }\n\n if (code === 47) {\n effects.consume(code)\n return tagCloseStart\n }\n\n if (code === 63) {\n effects.consume(code)\n kind = 3 // While we’re in an instruction instead of a declaration, we’re on a `?`\n // right now, so we do need to search for `>`, similar to declarations.\n\n return self.interrupt ? ok : continuationDeclarationInside\n }\n\n if (asciiAlpha(code)) {\n effects.consume(code)\n buffer = String.fromCharCode(code)\n startTag = true\n return tagName\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function declarationStart(code) {\n if (code === 45) {\n effects.consume(code)\n kind = 2\n return commentOpenInside\n }\n\n if (code === 91) {\n effects.consume(code)\n kind = 5\n buffer = 'CDATA['\n index = 0\n return cdataOpenInside\n }\n\n if (asciiAlpha(code)) {\n effects.consume(code)\n kind = 4\n return self.interrupt ? ok : continuationDeclarationInside\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function commentOpenInside(code) {\n if (code === 45) {\n effects.consume(code)\n return self.interrupt ? ok : continuationDeclarationInside\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function cdataOpenInside(code) {\n if (code === buffer.charCodeAt(index++)) {\n effects.consume(code)\n return index === buffer.length\n ? self.interrupt\n ? ok\n : continuation\n : cdataOpenInside\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function tagCloseStart(code) {\n if (asciiAlpha(code)) {\n effects.consume(code)\n buffer = String.fromCharCode(code)\n return tagName\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function tagName(code) {\n if (\n code === null ||\n code === 47 ||\n code === 62 ||\n markdownLineEndingOrSpace(code)\n ) {\n if (\n code !== 47 &&\n startTag &&\n htmlRawNames.includes(buffer.toLowerCase())\n ) {\n kind = 1\n return self.interrupt ? ok(code) : continuation(code)\n }\n\n if (htmlBlockNames.includes(buffer.toLowerCase())) {\n kind = 6\n\n if (code === 47) {\n effects.consume(code)\n return basicSelfClosing\n }\n\n return self.interrupt ? ok(code) : continuation(code)\n }\n\n kind = 7 // Do not support complete HTML when interrupting\n\n return self.interrupt && !self.parser.lazy[self.now().line]\n ? nok(code)\n : startTag\n ? completeAttributeNameBefore(code)\n : completeClosingTagAfter(code)\n }\n\n if (code === 45 || asciiAlphanumeric(code)) {\n effects.consume(code)\n buffer += String.fromCharCode(code)\n return tagName\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function basicSelfClosing(code) {\n if (code === 62) {\n effects.consume(code)\n return self.interrupt ? ok : continuation\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function completeClosingTagAfter(code) {\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeClosingTagAfter\n }\n\n return completeEnd(code)\n }\n /** @type {State} */\n\n function completeAttributeNameBefore(code) {\n if (code === 47) {\n effects.consume(code)\n return completeEnd\n }\n\n if (code === 58 || code === 95 || asciiAlpha(code)) {\n effects.consume(code)\n return completeAttributeName\n }\n\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeAttributeNameBefore\n }\n\n return completeEnd(code)\n }\n /** @type {State} */\n\n function completeAttributeName(code) {\n if (\n code === 45 ||\n code === 46 ||\n code === 58 ||\n code === 95 ||\n asciiAlphanumeric(code)\n ) {\n effects.consume(code)\n return completeAttributeName\n }\n\n return completeAttributeNameAfter(code)\n }\n /** @type {State} */\n\n function completeAttributeNameAfter(code) {\n if (code === 61) {\n effects.consume(code)\n return completeAttributeValueBefore\n }\n\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeAttributeNameAfter\n }\n\n return completeAttributeNameBefore(code)\n }\n /** @type {State} */\n\n function completeAttributeValueBefore(code) {\n if (\n code === null ||\n code === 60 ||\n code === 61 ||\n code === 62 ||\n code === 96\n ) {\n return nok(code)\n }\n\n if (code === 34 || code === 39) {\n effects.consume(code)\n marker = code\n return completeAttributeValueQuoted\n }\n\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeAttributeValueBefore\n }\n\n marker = null\n return completeAttributeValueUnquoted(code)\n }\n /** @type {State} */\n\n function completeAttributeValueQuoted(code) {\n if (code === null || markdownLineEnding(code)) {\n return nok(code)\n }\n\n if (code === marker) {\n effects.consume(code)\n return completeAttributeValueQuotedAfter\n }\n\n effects.consume(code)\n return completeAttributeValueQuoted\n }\n /** @type {State} */\n\n function completeAttributeValueUnquoted(code) {\n if (\n code === null ||\n code === 34 ||\n code === 39 ||\n code === 60 ||\n code === 61 ||\n code === 62 ||\n code === 96 ||\n markdownLineEndingOrSpace(code)\n ) {\n return completeAttributeNameAfter(code)\n }\n\n effects.consume(code)\n return completeAttributeValueUnquoted\n }\n /** @type {State} */\n\n function completeAttributeValueQuotedAfter(code) {\n if (code === 47 || code === 62 || markdownSpace(code)) {\n return completeAttributeNameBefore(code)\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function completeEnd(code) {\n if (code === 62) {\n effects.consume(code)\n return completeAfter\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function completeAfter(code) {\n if (markdownSpace(code)) {\n effects.consume(code)\n return completeAfter\n }\n\n return code === null || markdownLineEnding(code)\n ? continuation(code)\n : nok(code)\n }\n /** @type {State} */\n\n function continuation(code) {\n if (code === 45 && kind === 2) {\n effects.consume(code)\n return continuationCommentInside\n }\n\n if (code === 60 && kind === 1) {\n effects.consume(code)\n return continuationRawTagOpen\n }\n\n if (code === 62 && kind === 4) {\n effects.consume(code)\n return continuationClose\n }\n\n if (code === 63 && kind === 3) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n\n if (code === 93 && kind === 5) {\n effects.consume(code)\n return continuationCharacterDataInside\n }\n\n if (markdownLineEnding(code) && (kind === 6 || kind === 7)) {\n return effects.check(\n nextBlankConstruct,\n continuationClose,\n continuationAtLineEnding\n )(code)\n }\n\n if (code === null || markdownLineEnding(code)) {\n return continuationAtLineEnding(code)\n }\n\n effects.consume(code)\n return continuation\n }\n /** @type {State} */\n\n function continuationAtLineEnding(code) {\n effects.exit('htmlFlowData')\n return htmlContinueStart(code)\n }\n /** @type {State} */\n\n function htmlContinueStart(code) {\n if (code === null) {\n return done(code)\n }\n\n if (markdownLineEnding(code)) {\n return effects.attempt(\n {\n tokenize: htmlLineEnd,\n partial: true\n },\n htmlContinueStart,\n done\n )(code)\n }\n\n effects.enter('htmlFlowData')\n return continuation(code)\n }\n /** @type {Tokenizer} */\n\n function htmlLineEnd(effects, ok, nok) {\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return lineStart\n }\n /** @type {State} */\n\n function lineStart(code) {\n return self.parser.lazy[self.now().line] ? nok(code) : ok(code)\n }\n }\n /** @type {State} */\n\n function continuationCommentInside(code) {\n if (code === 45) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n\n return continuation(code)\n }\n /** @type {State} */\n\n function continuationRawTagOpen(code) {\n if (code === 47) {\n effects.consume(code)\n buffer = ''\n return continuationRawEndTag\n }\n\n return continuation(code)\n }\n /** @type {State} */\n\n function continuationRawEndTag(code) {\n if (code === 62 && htmlRawNames.includes(buffer.toLowerCase())) {\n effects.consume(code)\n return continuationClose\n }\n\n if (asciiAlpha(code) && buffer.length < 8) {\n effects.consume(code)\n buffer += String.fromCharCode(code)\n return continuationRawEndTag\n }\n\n return continuation(code)\n }\n /** @type {State} */\n\n function continuationCharacterDataInside(code) {\n if (code === 93) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n\n return continuation(code)\n }\n /** @type {State} */\n\n function continuationDeclarationInside(code) {\n if (code === 62) {\n effects.consume(code)\n return continuationClose\n } // More dashes.\n\n if (code === 45 && kind === 2) {\n effects.consume(code)\n return continuationDeclarationInside\n }\n\n return continuation(code)\n }\n /** @type {State} */\n\n function continuationClose(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('htmlFlowData')\n return done(code)\n }\n\n effects.consume(code)\n return continuationClose\n }\n /** @type {State} */\n\n function done(code) {\n effects.exit('htmlFlow')\n return ok(code)\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeNextBlank(effects, ok, nok) {\n return start\n /** @type {State} */\n\n function start(code) {\n effects.exit('htmlFlowData')\n effects.enter('lineEndingBlank')\n effects.consume(code)\n effects.exit('lineEndingBlank')\n return effects.attempt(blankLine, ok, nok)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {\n markdownLineEnding,\n markdownLineEndingOrSpace\n} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const codeFenced = {\n name: 'codeFenced',\n tokenize: tokenizeCodeFenced,\n concrete: true\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeCodeFenced(effects, ok, nok) {\n const self = this\n /** @type {Construct} */\n\n const closingFenceConstruct = {\n tokenize: tokenizeClosingFence,\n partial: true\n }\n /** @type {Construct} */\n\n const nonLazyLine = {\n tokenize: tokenizeNonLazyLine,\n partial: true\n }\n const tail = this.events[this.events.length - 1]\n const initialPrefix =\n tail && tail[1].type === 'linePrefix'\n ? tail[2].sliceSerialize(tail[1], true).length\n : 0\n let sizeOpen = 0\n /** @type {NonNullable<Code>} */\n\n let marker\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('codeFenced')\n effects.enter('codeFencedFence')\n effects.enter('codeFencedFenceSequence')\n marker = code\n return sequenceOpen(code)\n }\n /** @type {State} */\n\n function sequenceOpen(code) {\n if (code === marker) {\n effects.consume(code)\n sizeOpen++\n return sequenceOpen\n }\n\n effects.exit('codeFencedFenceSequence')\n return sizeOpen < 3\n ? nok(code)\n : factorySpace(effects, infoOpen, 'whitespace')(code)\n }\n /** @type {State} */\n\n function infoOpen(code) {\n if (code === null || markdownLineEnding(code)) {\n return openAfter(code)\n }\n\n effects.enter('codeFencedFenceInfo')\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return info(code)\n }\n /** @type {State} */\n\n function info(code) {\n if (code === null || markdownLineEndingOrSpace(code)) {\n effects.exit('chunkString')\n effects.exit('codeFencedFenceInfo')\n return factorySpace(effects, infoAfter, 'whitespace')(code)\n }\n\n if (code === 96 && code === marker) return nok(code)\n effects.consume(code)\n return info\n }\n /** @type {State} */\n\n function infoAfter(code) {\n if (code === null || markdownLineEnding(code)) {\n return openAfter(code)\n }\n\n effects.enter('codeFencedFenceMeta')\n effects.enter('chunkString', {\n contentType: 'string'\n })\n return meta(code)\n }\n /** @type {State} */\n\n function meta(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('chunkString')\n effects.exit('codeFencedFenceMeta')\n return openAfter(code)\n }\n\n if (code === 96 && code === marker) return nok(code)\n effects.consume(code)\n return meta\n }\n /** @type {State} */\n\n function openAfter(code) {\n effects.exit('codeFencedFence')\n return self.interrupt ? ok(code) : contentStart(code)\n }\n /** @type {State} */\n\n function contentStart(code) {\n if (code === null) {\n return after(code)\n }\n\n if (markdownLineEnding(code)) {\n return effects.attempt(\n nonLazyLine,\n effects.attempt(\n closingFenceConstruct,\n after,\n initialPrefix\n ? factorySpace(\n effects,\n contentStart,\n 'linePrefix',\n initialPrefix + 1\n )\n : contentStart\n ),\n after\n )(code)\n }\n\n effects.enter('codeFlowValue')\n return contentContinue(code)\n }\n /** @type {State} */\n\n function contentContinue(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFlowValue')\n return contentStart(code)\n }\n\n effects.consume(code)\n return contentContinue\n }\n /** @type {State} */\n\n function after(code) {\n effects.exit('codeFenced')\n return ok(code)\n }\n /** @type {Tokenizer} */\n\n function tokenizeNonLazyLine(effects, ok, nok) {\n const self = this\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return lineStart\n }\n /** @type {State} */\n\n function lineStart(code) {\n return self.parser.lazy[self.now().line] ? nok(code) : ok(code)\n }\n }\n /** @type {Tokenizer} */\n\n function tokenizeClosingFence(effects, ok, nok) {\n let size = 0\n return factorySpace(\n effects,\n closingSequenceStart,\n 'linePrefix',\n this.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )\n /** @type {State} */\n\n function closingSequenceStart(code) {\n effects.enter('codeFencedFence')\n effects.enter('codeFencedFenceSequence')\n return closingSequence(code)\n }\n /** @type {State} */\n\n function closingSequence(code) {\n if (code === marker) {\n effects.consume(code)\n size++\n return closingSequence\n }\n\n if (size < sizeOpen) return nok(code)\n effects.exit('codeFencedFenceSequence')\n return factorySpace(effects, closingSequenceEnd, 'whitespace')(code)\n }\n /** @type {State} */\n\n function closingSequenceEnd(code) {\n if (code === null || markdownLineEnding(code)) {\n effects.exit('codeFencedFence')\n return ok(code)\n }\n\n return nok(code)\n }\n }\n}\n","/// <reference lib=\"dom\" />\n\n/* eslint-env browser */\n\nconst element = document.createElement('i')\n\n/**\n * @param {string} value\n * @returns {string|false}\n */\nexport function decodeNamedCharacterReference(value) {\n const characterReference = '&' + value + ';'\n element.innerHTML = characterReference\n const char = element.textContent\n\n // Some named character references do not require the closing semicolon\n // (`¬`, for instance), which leads to situations where parsing the assumed\n // named reference of `¬it;` will result in the string `¬it;`.\n // When we encounter a trailing semicolon after parsing, and the character\n // reference to decode was not a semicolon (`;`), we can assume that the\n // matching was not complete.\n // @ts-expect-error: TypeScript is wrong that `textContent` on elements can\n // yield `null`.\n if (char.charCodeAt(char.length - 1) === 59 /* `;` */ && value !== 'semi') {\n return false\n }\n\n // If the decoded string is equal to the input, the character reference was\n // not valid.\n // @ts-expect-error: TypeScript is wrong that `textContent` on elements can\n // yield `null`.\n return char === characterReference ? false : char\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {\n asciiAlphanumeric,\n asciiDigit,\n asciiHexDigit\n} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const characterReference = {\n name: 'characterReference',\n tokenize: tokenizeCharacterReference\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeCharacterReference(effects, ok, nok) {\n const self = this\n let size = 0\n /** @type {number} */\n\n let max\n /** @type {(code: Code) => code is number} */\n\n let test\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('characterReference')\n effects.enter('characterReferenceMarker')\n effects.consume(code)\n effects.exit('characterReferenceMarker')\n return open\n }\n /** @type {State} */\n\n function open(code) {\n if (code === 35) {\n effects.enter('characterReferenceMarkerNumeric')\n effects.consume(code)\n effects.exit('characterReferenceMarkerNumeric')\n return numeric\n }\n\n effects.enter('characterReferenceValue')\n max = 31\n test = asciiAlphanumeric\n return value(code)\n }\n /** @type {State} */\n\n function numeric(code) {\n if (code === 88 || code === 120) {\n effects.enter('characterReferenceMarkerHexadecimal')\n effects.consume(code)\n effects.exit('characterReferenceMarkerHexadecimal')\n effects.enter('characterReferenceValue')\n max = 6\n test = asciiHexDigit\n return value\n }\n\n effects.enter('characterReferenceValue')\n max = 7\n test = asciiDigit\n return value(code)\n }\n /** @type {State} */\n\n function value(code) {\n /** @type {Token} */\n let token\n\n if (code === 59 && size) {\n token = effects.exit('characterReferenceValue')\n\n if (\n test === asciiAlphanumeric &&\n !decodeNamedCharacterReference(self.sliceSerialize(token))\n ) {\n return nok(code)\n }\n\n effects.enter('characterReferenceMarker')\n effects.consume(code)\n effects.exit('characterReferenceMarker')\n effects.exit('characterReference')\n return ok\n }\n\n if (test(code) && size++ < max) {\n effects.consume(code)\n return value\n }\n\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {asciiPunctuation} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const characterEscape = {\n name: 'characterEscape',\n tokenize: tokenizeCharacterEscape\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeCharacterEscape(effects, ok, nok) {\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('characterEscape')\n effects.enter('escapeMarker')\n effects.consume(code)\n effects.exit('escapeMarker')\n return open\n }\n /** @type {State} */\n\n function open(code) {\n if (asciiPunctuation(code)) {\n effects.enter('characterEscapeValue')\n effects.consume(code)\n effects.exit('characterEscapeValue')\n effects.exit('characterEscape')\n return ok\n }\n\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const lineEnding = {\n name: 'lineEnding',\n tokenize: tokenizeLineEnding\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeLineEnding(effects, ok) {\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(effects, ok, 'linePrefix')\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {factoryDestination} from 'micromark-factory-destination'\nimport {factoryLabel} from 'micromark-factory-label'\nimport {factoryTitle} from 'micromark-factory-title'\nimport {factoryWhitespace} from 'micromark-factory-whitespace'\nimport {markdownLineEndingOrSpace} from 'micromark-util-character'\nimport {push, splice} from 'micromark-util-chunked'\nimport {normalizeIdentifier} from 'micromark-util-normalize-identifier'\nimport {resolveAll} from 'micromark-util-resolve-all'\n\n/** @type {Construct} */\nexport const labelEnd = {\n name: 'labelEnd',\n tokenize: tokenizeLabelEnd,\n resolveTo: resolveToLabelEnd,\n resolveAll: resolveAllLabelEnd\n}\n/** @type {Construct} */\n\nconst resourceConstruct = {\n tokenize: tokenizeResource\n}\n/** @type {Construct} */\n\nconst fullReferenceConstruct = {\n tokenize: tokenizeFullReference\n}\n/** @type {Construct} */\n\nconst collapsedReferenceConstruct = {\n tokenize: tokenizeCollapsedReference\n}\n/** @type {Resolver} */\n\nfunction resolveAllLabelEnd(events) {\n let index = -1\n /** @type {Token} */\n\n let token\n\n while (++index < events.length) {\n token = events[index][1]\n\n if (\n token.type === 'labelImage' ||\n token.type === 'labelLink' ||\n token.type === 'labelEnd'\n ) {\n // Remove the marker.\n events.splice(index + 1, token.type === 'labelImage' ? 4 : 2)\n token.type = 'data'\n index++\n }\n }\n\n return events\n}\n/** @type {Resolver} */\n\nfunction resolveToLabelEnd(events, context) {\n let index = events.length\n let offset = 0\n /** @type {Token} */\n\n let token\n /** @type {number|undefined} */\n\n let open\n /** @type {number|undefined} */\n\n let close\n /** @type {Event[]} */\n\n let media // Find an opening.\n\n while (index--) {\n token = events[index][1]\n\n if (open) {\n // If we see another link, or inactive link label, we’ve been here before.\n if (\n token.type === 'link' ||\n (token.type === 'labelLink' && token._inactive)\n ) {\n break\n } // Mark other link openings as inactive, as we can’t have links in\n // links.\n\n if (events[index][0] === 'enter' && token.type === 'labelLink') {\n token._inactive = true\n }\n } else if (close) {\n if (\n events[index][0] === 'enter' &&\n (token.type === 'labelImage' || token.type === 'labelLink') &&\n !token._balanced\n ) {\n open = index\n\n if (token.type !== 'labelLink') {\n offset = 2\n break\n }\n }\n } else if (token.type === 'labelEnd') {\n close = index\n }\n }\n\n const group = {\n type: events[open][1].type === 'labelLink' ? 'link' : 'image',\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n }\n const label = {\n type: 'label',\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[close][1].end)\n }\n const text = {\n type: 'labelText',\n start: Object.assign({}, events[open + offset + 2][1].end),\n end: Object.assign({}, events[close - 2][1].start)\n }\n media = [\n ['enter', group, context],\n ['enter', label, context]\n ] // Opening marker.\n\n media = push(media, events.slice(open + 1, open + offset + 3)) // Text open.\n\n media = push(media, [['enter', text, context]]) // Between.\n\n media = push(\n media,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + offset + 4, close - 3),\n context\n )\n ) // Text close, marker close, label close.\n\n media = push(media, [\n ['exit', text, context],\n events[close - 2],\n events[close - 1],\n ['exit', label, context]\n ]) // Reference, resource, or so.\n\n media = push(media, events.slice(close + 1)) // Media close.\n\n media = push(media, [['exit', group, context]])\n splice(events, open, events.length, media)\n return events\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeLabelEnd(effects, ok, nok) {\n const self = this\n let index = self.events.length\n /** @type {Token} */\n\n let labelStart\n /** @type {boolean} */\n\n let defined // Find an opening.\n\n while (index--) {\n if (\n (self.events[index][1].type === 'labelImage' ||\n self.events[index][1].type === 'labelLink') &&\n !self.events[index][1]._balanced\n ) {\n labelStart = self.events[index][1]\n break\n }\n }\n\n return start\n /** @type {State} */\n\n function start(code) {\n if (!labelStart) {\n return nok(code)\n } // It’s a balanced bracket, but contains a link.\n\n if (labelStart._inactive) return balanced(code)\n defined = self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize({\n start: labelStart.end,\n end: self.now()\n })\n )\n )\n effects.enter('labelEnd')\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelEnd')\n return afterLabelEnd\n }\n /** @type {State} */\n\n function afterLabelEnd(code) {\n // Resource: `[asd](fgh)`.\n if (code === 40) {\n return effects.attempt(\n resourceConstruct,\n ok,\n defined ? ok : balanced\n )(code)\n } // Collapsed (`[asd][]`) or full (`[asd][fgh]`) reference?\n\n if (code === 91) {\n return effects.attempt(\n fullReferenceConstruct,\n ok,\n defined\n ? effects.attempt(collapsedReferenceConstruct, ok, balanced)\n : balanced\n )(code)\n } // Shortcut reference: `[asd]`?\n\n return defined ? ok(code) : balanced(code)\n }\n /** @type {State} */\n\n function balanced(code) {\n labelStart._balanced = true\n return nok(code)\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeResource(effects, ok, nok) {\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('resource')\n effects.enter('resourceMarker')\n effects.consume(code)\n effects.exit('resourceMarker')\n return factoryWhitespace(effects, open)\n }\n /** @type {State} */\n\n function open(code) {\n if (code === 41) {\n return end(code)\n }\n\n return factoryDestination(\n effects,\n destinationAfter,\n nok,\n 'resourceDestination',\n 'resourceDestinationLiteral',\n 'resourceDestinationLiteralMarker',\n 'resourceDestinationRaw',\n 'resourceDestinationString',\n 32\n )(code)\n }\n /** @type {State} */\n\n function destinationAfter(code) {\n return markdownLineEndingOrSpace(code)\n ? factoryWhitespace(effects, between)(code)\n : end(code)\n }\n /** @type {State} */\n\n function between(code) {\n if (code === 34 || code === 39 || code === 40) {\n return factoryTitle(\n effects,\n factoryWhitespace(effects, end),\n nok,\n 'resourceTitle',\n 'resourceTitleMarker',\n 'resourceTitleString'\n )(code)\n }\n\n return end(code)\n }\n /** @type {State} */\n\n function end(code) {\n if (code === 41) {\n effects.enter('resourceMarker')\n effects.consume(code)\n effects.exit('resourceMarker')\n effects.exit('resource')\n return ok\n }\n\n return nok(code)\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeFullReference(effects, ok, nok) {\n const self = this\n return start\n /** @type {State} */\n\n function start(code) {\n return factoryLabel.call(\n self,\n effects,\n afterLabel,\n nok,\n 'reference',\n 'referenceMarker',\n 'referenceString'\n )(code)\n }\n /** @type {State} */\n\n function afterLabel(code) {\n return self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n )\n )\n ? ok(code)\n : nok(code)\n }\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeCollapsedReference(effects, ok, nok) {\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('reference')\n effects.enter('referenceMarker')\n effects.consume(code)\n effects.exit('referenceMarker')\n return open\n }\n /** @type {State} */\n\n function open(code) {\n if (code === 93) {\n effects.enter('referenceMarker')\n effects.consume(code)\n effects.exit('referenceMarker')\n effects.exit('reference')\n return ok\n }\n\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {\n markdownLineEndingOrSpace,\n unicodePunctuation,\n unicodeWhitespace\n} from 'micromark-util-character'\n\n/**\n * Classify whether a character code represents whitespace, punctuation, or\n * something else.\n *\n * Used for attention (emphasis, strong), whose sequences can open or close\n * based on the class of surrounding characters.\n *\n * Note that eof (`null`) is seen as whitespace.\n *\n * @param {Code} code\n * @returns {number|undefined}\n */\nexport function classifyCharacter(code) {\n if (\n code === null ||\n markdownLineEndingOrSpace(code) ||\n unicodeWhitespace(code)\n ) {\n return 1\n }\n\n if (unicodePunctuation(code)) {\n return 2\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').Code} Code\n * @typedef {import('micromark-util-types').Point} Point\n */\nimport {push, splice} from 'micromark-util-chunked'\nimport {classifyCharacter} from 'micromark-util-classify-character'\nimport {resolveAll} from 'micromark-util-resolve-all'\n\n/** @type {Construct} */\nexport const attention = {\n name: 'attention',\n tokenize: tokenizeAttention,\n resolveAll: resolveAllAttention\n}\n/**\n * Take all events and resolve attention to emphasis or strong.\n *\n * @type {Resolver}\n */\n\nfunction resolveAllAttention(events, context) {\n let index = -1\n /** @type {number} */\n\n let open\n /** @type {Token} */\n\n let group\n /** @type {Token} */\n\n let text\n /** @type {Token} */\n\n let openingSequence\n /** @type {Token} */\n\n let closingSequence\n /** @type {number} */\n\n let use\n /** @type {Event[]} */\n\n let nextEvents\n /** @type {number} */\n\n let offset // Walk through all events.\n //\n // Note: performance of this is fine on an mb of normal markdown, but it’s\n // a bottleneck for malicious stuff.\n\n while (++index < events.length) {\n // Find a token that can close.\n if (\n events[index][0] === 'enter' &&\n events[index][1].type === 'attentionSequence' &&\n events[index][1]._close\n ) {\n open = index // Now walk back to find an opener.\n\n while (open--) {\n // Find a token that can open the closer.\n if (\n events[open][0] === 'exit' &&\n events[open][1].type === 'attentionSequence' &&\n events[open][1]._open && // If the markers are the same:\n context.sliceSerialize(events[open][1]).charCodeAt(0) ===\n context.sliceSerialize(events[index][1]).charCodeAt(0)\n ) {\n // If the opening can close or the closing can open,\n // and the close size *is not* a multiple of three,\n // but the sum of the opening and closing size *is* multiple of three,\n // then don’t match.\n if (\n (events[open][1]._close || events[index][1]._open) &&\n (events[index][1].end.offset - events[index][1].start.offset) % 3 &&\n !(\n (events[open][1].end.offset -\n events[open][1].start.offset +\n events[index][1].end.offset -\n events[index][1].start.offset) %\n 3\n )\n ) {\n continue\n } // Number of markers to use from the sequence.\n\n use =\n events[open][1].end.offset - events[open][1].start.offset > 1 &&\n events[index][1].end.offset - events[index][1].start.offset > 1\n ? 2\n : 1\n const start = Object.assign({}, events[open][1].end)\n const end = Object.assign({}, events[index][1].start)\n movePoint(start, -use)\n movePoint(end, use)\n openingSequence = {\n type: use > 1 ? 'strongSequence' : 'emphasisSequence',\n start,\n end: Object.assign({}, events[open][1].end)\n }\n closingSequence = {\n type: use > 1 ? 'strongSequence' : 'emphasisSequence',\n start: Object.assign({}, events[index][1].start),\n end\n }\n text = {\n type: use > 1 ? 'strongText' : 'emphasisText',\n start: Object.assign({}, events[open][1].end),\n end: Object.assign({}, events[index][1].start)\n }\n group = {\n type: use > 1 ? 'strong' : 'emphasis',\n start: Object.assign({}, openingSequence.start),\n end: Object.assign({}, closingSequence.end)\n }\n events[open][1].end = Object.assign({}, openingSequence.start)\n events[index][1].start = Object.assign({}, closingSequence.end)\n nextEvents = [] // If there are more markers in the opening, add them before.\n\n if (events[open][1].end.offset - events[open][1].start.offset) {\n nextEvents = push(nextEvents, [\n ['enter', events[open][1], context],\n ['exit', events[open][1], context]\n ])\n } // Opening.\n\n nextEvents = push(nextEvents, [\n ['enter', group, context],\n ['enter', openingSequence, context],\n ['exit', openingSequence, context],\n ['enter', text, context]\n ]) // Between.\n\n nextEvents = push(\n nextEvents,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + 1, index),\n context\n )\n ) // Closing.\n\n nextEvents = push(nextEvents, [\n ['exit', text, context],\n ['enter', closingSequence, context],\n ['exit', closingSequence, context],\n ['exit', group, context]\n ]) // If there are more markers in the closing, add them after.\n\n if (events[index][1].end.offset - events[index][1].start.offset) {\n offset = 2\n nextEvents = push(nextEvents, [\n ['enter', events[index][1], context],\n ['exit', events[index][1], context]\n ])\n } else {\n offset = 0\n }\n\n splice(events, open - 1, index - open + 3, nextEvents)\n index = open + nextEvents.length - offset - 2\n break\n }\n }\n }\n } // Remove remaining sequences.\n\n index = -1\n\n while (++index < events.length) {\n if (events[index][1].type === 'attentionSequence') {\n events[index][1].type = 'data'\n }\n }\n\n return events\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeAttention(effects, ok) {\n const attentionMarkers = this.parser.constructs.attentionMarkers.null\n const previous = this.previous\n const before = classifyCharacter(previous)\n /** @type {NonNullable<Code>} */\n\n let marker\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('attentionSequence')\n marker = code\n return sequence(code)\n }\n /** @type {State} */\n\n function sequence(code) {\n if (code === marker) {\n effects.consume(code)\n return sequence\n }\n\n const token = effects.exit('attentionSequence')\n const after = classifyCharacter(code)\n const open =\n !after || (after === 2 && before) || attentionMarkers.includes(code)\n const close =\n !before || (before === 2 && after) || attentionMarkers.includes(previous)\n token._open = Boolean(marker === 42 ? open : open && (before || !close))\n token._close = Boolean(marker === 42 ? close : close && (after || !open))\n return ok(code)\n }\n}\n/**\n * Move a point a bit.\n *\n * Note: `move` only works inside lines! It’s not possible to move past other\n * chunks (replacement characters, tabs, or line endings).\n *\n * @param {Point} point\n * @param {number} offset\n * @returns {void}\n */\n\nfunction movePoint(point, offset) {\n point.column += offset\n point.offset += offset\n point._bufferIndex += offset\n}\n","/**\n * @typedef {import('micromark-util-types').Extension} Extension\n */\nimport {\n attention,\n autolink,\n blockQuote,\n characterEscape,\n characterReference,\n codeFenced,\n codeIndented,\n codeText,\n definition,\n hardBreakEscape,\n headingAtx,\n htmlFlow,\n htmlText,\n labelEnd,\n labelStartImage,\n labelStartLink,\n lineEnding,\n list,\n setextUnderline,\n thematicBreak\n} from 'micromark-core-commonmark'\nimport {resolver as resolveText} from './initialize/text.js'\n/** @type {Extension['document']} */\n\nexport const document = {\n [42]: list,\n [43]: list,\n [45]: list,\n [48]: list,\n [49]: list,\n [50]: list,\n [51]: list,\n [52]: list,\n [53]: list,\n [54]: list,\n [55]: list,\n [56]: list,\n [57]: list,\n [62]: blockQuote\n}\n/** @type {Extension['contentInitial']} */\n\nexport const contentInitial = {\n [91]: definition\n}\n/** @type {Extension['flowInitial']} */\n\nexport const flowInitial = {\n [-2]: codeIndented,\n [-1]: codeIndented,\n [32]: codeIndented\n}\n/** @type {Extension['flow']} */\n\nexport const flow = {\n [35]: headingAtx,\n [42]: thematicBreak,\n [45]: [setextUnderline, thematicBreak],\n [60]: htmlFlow,\n [61]: setextUnderline,\n [95]: thematicBreak,\n [96]: codeFenced,\n [126]: codeFenced\n}\n/** @type {Extension['string']} */\n\nexport const string = {\n [38]: characterReference,\n [92]: characterEscape\n}\n/** @type {Extension['text']} */\n\nexport const text = {\n [-5]: lineEnding,\n [-4]: lineEnding,\n [-3]: lineEnding,\n [33]: labelStartImage,\n [38]: characterReference,\n [42]: attention,\n [60]: [autolink, htmlText],\n [91]: labelStartLink,\n [92]: [hardBreakEscape, characterEscape],\n [93]: labelEnd,\n [95]: attention,\n [96]: codeText\n}\n/** @type {Extension['insideSpan']} */\n\nexport const insideSpan = {\n null: [attention, resolveText]\n}\n/** @type {Extension['attentionMarkers']} */\n\nexport const attentionMarkers = {\n null: [42, 95]\n}\n/** @type {Extension['disable']} */\n\nexport const disable = {\n null: []\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {labelEnd} from './label-end.js'\n/** @type {Construct} */\n\nexport const labelStartImage = {\n name: 'labelStartImage',\n tokenize: tokenizeLabelStartImage,\n resolveAll: labelEnd.resolveAll\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeLabelStartImage(effects, ok, nok) {\n const self = this\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('labelImage')\n effects.enter('labelImageMarker')\n effects.consume(code)\n effects.exit('labelImageMarker')\n return open\n }\n /** @type {State} */\n\n function open(code) {\n if (code === 91) {\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelImage')\n return after\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function after(code) {\n /* To do: remove in the future once we’ve switched from\n * `micromark-extension-footnote` to `micromark-extension-gfm-footnote`,\n * which doesn’t need this */\n\n /* Hidden footnotes hook */\n\n /* c8 ignore next 3 */\n return code === 94 && '_hiddenFootnoteSupport' in self.parser.constructs\n ? nok(code)\n : ok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {\n asciiAlpha,\n asciiAlphanumeric,\n asciiAtext,\n asciiControl\n} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const autolink = {\n name: 'autolink',\n tokenize: tokenizeAutolink\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeAutolink(effects, ok, nok) {\n let size = 1\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('autolink')\n effects.enter('autolinkMarker')\n effects.consume(code)\n effects.exit('autolinkMarker')\n effects.enter('autolinkProtocol')\n return open\n }\n /** @type {State} */\n\n function open(code) {\n if (asciiAlpha(code)) {\n effects.consume(code)\n return schemeOrEmailAtext\n }\n\n return asciiAtext(code) ? emailAtext(code) : nok(code)\n }\n /** @type {State} */\n\n function schemeOrEmailAtext(code) {\n return code === 43 || code === 45 || code === 46 || asciiAlphanumeric(code)\n ? schemeInsideOrEmailAtext(code)\n : emailAtext(code)\n }\n /** @type {State} */\n\n function schemeInsideOrEmailAtext(code) {\n if (code === 58) {\n effects.consume(code)\n return urlInside\n }\n\n if (\n (code === 43 || code === 45 || code === 46 || asciiAlphanumeric(code)) &&\n size++ < 32\n ) {\n effects.consume(code)\n return schemeInsideOrEmailAtext\n }\n\n return emailAtext(code)\n }\n /** @type {State} */\n\n function urlInside(code) {\n if (code === 62) {\n effects.exit('autolinkProtocol')\n return end(code)\n }\n\n if (code === null || code === 32 || code === 60 || asciiControl(code)) {\n return nok(code)\n }\n\n effects.consume(code)\n return urlInside\n }\n /** @type {State} */\n\n function emailAtext(code) {\n if (code === 64) {\n effects.consume(code)\n size = 0\n return emailAtSignOrDot\n }\n\n if (asciiAtext(code)) {\n effects.consume(code)\n return emailAtext\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function emailAtSignOrDot(code) {\n return asciiAlphanumeric(code) ? emailLabel(code) : nok(code)\n }\n /** @type {State} */\n\n function emailLabel(code) {\n if (code === 46) {\n effects.consume(code)\n size = 0\n return emailAtSignOrDot\n }\n\n if (code === 62) {\n // Exit, then change the type.\n effects.exit('autolinkProtocol').type = 'autolinkEmail'\n return end(code)\n }\n\n return emailValue(code)\n }\n /** @type {State} */\n\n function emailValue(code) {\n if ((code === 45 || asciiAlphanumeric(code)) && size++ < 63) {\n effects.consume(code)\n return code === 45 ? emailValue : emailLabel\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function end(code) {\n effects.enter('autolinkMarker')\n effects.consume(code)\n effects.exit('autolinkMarker')\n effects.exit('autolink')\n return ok\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n * @typedef {import('micromark-util-types').Code} Code\n */\nimport {factorySpace} from 'micromark-factory-space'\nimport {\n asciiAlpha,\n asciiAlphanumeric,\n markdownLineEnding,\n markdownLineEndingOrSpace,\n markdownSpace\n} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const htmlText = {\n name: 'htmlText',\n tokenize: tokenizeHtmlText\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeHtmlText(effects, ok, nok) {\n const self = this\n /** @type {NonNullable<Code>|undefined} */\n\n let marker\n /** @type {string} */\n\n let buffer\n /** @type {number} */\n\n let index\n /** @type {State} */\n\n let returnState\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('htmlText')\n effects.enter('htmlTextData')\n effects.consume(code)\n return open\n }\n /** @type {State} */\n\n function open(code) {\n if (code === 33) {\n effects.consume(code)\n return declarationOpen\n }\n\n if (code === 47) {\n effects.consume(code)\n return tagCloseStart\n }\n\n if (code === 63) {\n effects.consume(code)\n return instruction\n }\n\n if (asciiAlpha(code)) {\n effects.consume(code)\n return tagOpen\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function declarationOpen(code) {\n if (code === 45) {\n effects.consume(code)\n return commentOpen\n }\n\n if (code === 91) {\n effects.consume(code)\n buffer = 'CDATA['\n index = 0\n return cdataOpen\n }\n\n if (asciiAlpha(code)) {\n effects.consume(code)\n return declaration\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function commentOpen(code) {\n if (code === 45) {\n effects.consume(code)\n return commentStart\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function commentStart(code) {\n if (code === null || code === 62) {\n return nok(code)\n }\n\n if (code === 45) {\n effects.consume(code)\n return commentStartDash\n }\n\n return comment(code)\n }\n /** @type {State} */\n\n function commentStartDash(code) {\n if (code === null || code === 62) {\n return nok(code)\n }\n\n return comment(code)\n }\n /** @type {State} */\n\n function comment(code) {\n if (code === null) {\n return nok(code)\n }\n\n if (code === 45) {\n effects.consume(code)\n return commentClose\n }\n\n if (markdownLineEnding(code)) {\n returnState = comment\n return atLineEnding(code)\n }\n\n effects.consume(code)\n return comment\n }\n /** @type {State} */\n\n function commentClose(code) {\n if (code === 45) {\n effects.consume(code)\n return end\n }\n\n return comment(code)\n }\n /** @type {State} */\n\n function cdataOpen(code) {\n if (code === buffer.charCodeAt(index++)) {\n effects.consume(code)\n return index === buffer.length ? cdata : cdataOpen\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function cdata(code) {\n if (code === null) {\n return nok(code)\n }\n\n if (code === 93) {\n effects.consume(code)\n return cdataClose\n }\n\n if (markdownLineEnding(code)) {\n returnState = cdata\n return atLineEnding(code)\n }\n\n effects.consume(code)\n return cdata\n }\n /** @type {State} */\n\n function cdataClose(code) {\n if (code === 93) {\n effects.consume(code)\n return cdataEnd\n }\n\n return cdata(code)\n }\n /** @type {State} */\n\n function cdataEnd(code) {\n if (code === 62) {\n return end(code)\n }\n\n if (code === 93) {\n effects.consume(code)\n return cdataEnd\n }\n\n return cdata(code)\n }\n /** @type {State} */\n\n function declaration(code) {\n if (code === null || code === 62) {\n return end(code)\n }\n\n if (markdownLineEnding(code)) {\n returnState = declaration\n return atLineEnding(code)\n }\n\n effects.consume(code)\n return declaration\n }\n /** @type {State} */\n\n function instruction(code) {\n if (code === null) {\n return nok(code)\n }\n\n if (code === 63) {\n effects.consume(code)\n return instructionClose\n }\n\n if (markdownLineEnding(code)) {\n returnState = instruction\n return atLineEnding(code)\n }\n\n effects.consume(code)\n return instruction\n }\n /** @type {State} */\n\n function instructionClose(code) {\n return code === 62 ? end(code) : instruction(code)\n }\n /** @type {State} */\n\n function tagCloseStart(code) {\n if (asciiAlpha(code)) {\n effects.consume(code)\n return tagClose\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function tagClose(code) {\n if (code === 45 || asciiAlphanumeric(code)) {\n effects.consume(code)\n return tagClose\n }\n\n return tagCloseBetween(code)\n }\n /** @type {State} */\n\n function tagCloseBetween(code) {\n if (markdownLineEnding(code)) {\n returnState = tagCloseBetween\n return atLineEnding(code)\n }\n\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagCloseBetween\n }\n\n return end(code)\n }\n /** @type {State} */\n\n function tagOpen(code) {\n if (code === 45 || asciiAlphanumeric(code)) {\n effects.consume(code)\n return tagOpen\n }\n\n if (code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function tagOpenBetween(code) {\n if (code === 47) {\n effects.consume(code)\n return end\n }\n\n if (code === 58 || code === 95 || asciiAlpha(code)) {\n effects.consume(code)\n return tagOpenAttributeName\n }\n\n if (markdownLineEnding(code)) {\n returnState = tagOpenBetween\n return atLineEnding(code)\n }\n\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenBetween\n }\n\n return end(code)\n }\n /** @type {State} */\n\n function tagOpenAttributeName(code) {\n if (\n code === 45 ||\n code === 46 ||\n code === 58 ||\n code === 95 ||\n asciiAlphanumeric(code)\n ) {\n effects.consume(code)\n return tagOpenAttributeName\n }\n\n return tagOpenAttributeNameAfter(code)\n }\n /** @type {State} */\n\n function tagOpenAttributeNameAfter(code) {\n if (code === 61) {\n effects.consume(code)\n return tagOpenAttributeValueBefore\n }\n\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeNameAfter\n return atLineEnding(code)\n }\n\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenAttributeNameAfter\n }\n\n return tagOpenBetween(code)\n }\n /** @type {State} */\n\n function tagOpenAttributeValueBefore(code) {\n if (\n code === null ||\n code === 60 ||\n code === 61 ||\n code === 62 ||\n code === 96\n ) {\n return nok(code)\n }\n\n if (code === 34 || code === 39) {\n effects.consume(code)\n marker = code\n return tagOpenAttributeValueQuoted\n }\n\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeValueBefore\n return atLineEnding(code)\n }\n\n if (markdownSpace(code)) {\n effects.consume(code)\n return tagOpenAttributeValueBefore\n }\n\n effects.consume(code)\n marker = undefined\n return tagOpenAttributeValueUnquoted\n }\n /** @type {State} */\n\n function tagOpenAttributeValueQuoted(code) {\n if (code === marker) {\n effects.consume(code)\n return tagOpenAttributeValueQuotedAfter\n }\n\n if (code === null) {\n return nok(code)\n }\n\n if (markdownLineEnding(code)) {\n returnState = tagOpenAttributeValueQuoted\n return atLineEnding(code)\n }\n\n effects.consume(code)\n return tagOpenAttributeValueQuoted\n }\n /** @type {State} */\n\n function tagOpenAttributeValueQuotedAfter(code) {\n if (code === 62 || code === 47 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n\n return nok(code)\n }\n /** @type {State} */\n\n function tagOpenAttributeValueUnquoted(code) {\n if (\n code === null ||\n code === 34 ||\n code === 39 ||\n code === 60 ||\n code === 61 ||\n code === 96\n ) {\n return nok(code)\n }\n\n if (code === 62 || markdownLineEndingOrSpace(code)) {\n return tagOpenBetween(code)\n }\n\n effects.consume(code)\n return tagOpenAttributeValueUnquoted\n } // We can’t have blank lines in content, so no need to worry about empty\n // tokens.\n\n /** @type {State} */\n\n function atLineEnding(code) {\n effects.exit('htmlTextData')\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return factorySpace(\n effects,\n afterPrefix,\n 'linePrefix',\n self.parser.constructs.disable.null.includes('codeIndented')\n ? undefined\n : 4\n )\n }\n /** @type {State} */\n\n function afterPrefix(code) {\n effects.enter('htmlTextData')\n return returnState(code)\n }\n /** @type {State} */\n\n function end(code) {\n if (code === 62) {\n effects.consume(code)\n effects.exit('htmlTextData')\n effects.exit('htmlText')\n return ok\n }\n\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {labelEnd} from './label-end.js'\n/** @type {Construct} */\n\nexport const labelStartLink = {\n name: 'labelStartLink',\n tokenize: tokenizeLabelStartLink,\n resolveAll: labelEnd.resolveAll\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeLabelStartLink(effects, ok, nok) {\n const self = this\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('labelLink')\n effects.enter('labelMarker')\n effects.consume(code)\n effects.exit('labelMarker')\n effects.exit('labelLink')\n return after\n }\n /** @type {State} */\n\n function after(code) {\n /* To do: remove in the future once we’ve switched from\n * `micromark-extension-footnote` to `micromark-extension-gfm-footnote`,\n * which doesn’t need this */\n\n /* Hidden footnotes hook. */\n\n /* c8 ignore next 3 */\n return code === 94 && '_hiddenFootnoteSupport' in self.parser.constructs\n ? nok(code)\n : ok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').State} State\n */\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const hardBreakEscape = {\n name: 'hardBreakEscape',\n tokenize: tokenizeHardBreakEscape\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeHardBreakEscape(effects, ok, nok) {\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('hardBreakEscape')\n effects.enter('escapeMarker')\n effects.consume(code)\n return open\n }\n /** @type {State} */\n\n function open(code) {\n if (markdownLineEnding(code)) {\n effects.exit('escapeMarker')\n effects.exit('hardBreakEscape')\n return ok(code)\n }\n\n return nok(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Construct} Construct\n * @typedef {import('micromark-util-types').Resolver} Resolver\n * @typedef {import('micromark-util-types').Tokenizer} Tokenizer\n * @typedef {import('micromark-util-types').Previous} Previous\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').State} State\n */\nimport {markdownLineEnding} from 'micromark-util-character'\n\n/** @type {Construct} */\nexport const codeText = {\n name: 'codeText',\n tokenize: tokenizeCodeText,\n resolve: resolveCodeText,\n previous\n}\n/** @type {Resolver} */\n\nfunction resolveCodeText(events) {\n let tailExitIndex = events.length - 4\n let headEnterIndex = 3\n /** @type {number} */\n\n let index\n /** @type {number|undefined} */\n\n let enter // If we start and end with an EOL or a space.\n\n if (\n (events[headEnterIndex][1].type === 'lineEnding' ||\n events[headEnterIndex][1].type === 'space') &&\n (events[tailExitIndex][1].type === 'lineEnding' ||\n events[tailExitIndex][1].type === 'space')\n ) {\n index = headEnterIndex // And we have data.\n\n while (++index < tailExitIndex) {\n if (events[index][1].type === 'codeTextData') {\n // Then we have padding.\n events[headEnterIndex][1].type = 'codeTextPadding'\n events[tailExitIndex][1].type = 'codeTextPadding'\n headEnterIndex += 2\n tailExitIndex -= 2\n break\n }\n }\n } // Merge adjacent spaces and data.\n\n index = headEnterIndex - 1\n tailExitIndex++\n\n while (++index <= tailExitIndex) {\n if (enter === undefined) {\n if (index !== tailExitIndex && events[index][1].type !== 'lineEnding') {\n enter = index\n }\n } else if (\n index === tailExitIndex ||\n events[index][1].type === 'lineEnding'\n ) {\n events[enter][1].type = 'codeTextData'\n\n if (index !== enter + 2) {\n events[enter][1].end = events[index - 1][1].end\n events.splice(enter + 2, index - enter - 2)\n tailExitIndex -= index - enter - 2\n index = enter + 2\n }\n\n enter = undefined\n }\n }\n\n return events\n}\n/** @type {Previous} */\n\nfunction previous(code) {\n // If there is a previous code, there will always be a tail.\n return (\n code !== 96 ||\n this.events[this.events.length - 1][1].type === 'characterEscape'\n )\n}\n/** @type {Tokenizer} */\n\nfunction tokenizeCodeText(effects, ok, nok) {\n const self = this\n let sizeOpen = 0\n /** @type {number} */\n\n let size\n /** @type {Token} */\n\n let token\n return start\n /** @type {State} */\n\n function start(code) {\n effects.enter('codeText')\n effects.enter('codeTextSequence')\n return openingSequence(code)\n }\n /** @type {State} */\n\n function openingSequence(code) {\n if (code === 96) {\n effects.consume(code)\n sizeOpen++\n return openingSequence\n }\n\n effects.exit('codeTextSequence')\n return gap(code)\n }\n /** @type {State} */\n\n function gap(code) {\n // EOF.\n if (code === null) {\n return nok(code)\n } // Closing fence?\n // Could also be data.\n\n if (code === 96) {\n token = effects.enter('codeTextSequence')\n size = 0\n return closingSequence(code)\n } // Tabs don’t work, and virtual spaces don’t make sense.\n\n if (code === 32) {\n effects.enter('space')\n effects.consume(code)\n effects.exit('space')\n return gap\n }\n\n if (markdownLineEnding(code)) {\n effects.enter('lineEnding')\n effects.consume(code)\n effects.exit('lineEnding')\n return gap\n } // Data.\n\n effects.enter('codeTextData')\n return data(code)\n } // In code.\n\n /** @type {State} */\n\n function data(code) {\n if (\n code === null ||\n code === 32 ||\n code === 96 ||\n markdownLineEnding(code)\n ) {\n effects.exit('codeTextData')\n return gap(code)\n }\n\n effects.consume(code)\n return data\n } // Closing fence.\n\n /** @type {State} */\n\n function closingSequence(code) {\n // More.\n if (code === 96) {\n effects.consume(code)\n size++\n return closingSequence\n } // Done!\n\n if (size === sizeOpen) {\n effects.exit('codeTextSequence')\n effects.exit('codeText')\n return ok(code)\n } // More or less accents: mark as data.\n\n token.type = 'codeTextData'\n return data(code)\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Encoding} Encoding\n * @typedef {import('micromark-util-types').Value} Value\n * @typedef {import('micromark-util-types').Chunk} Chunk\n * @typedef {import('micromark-util-types').Code} Code\n */\n\n/**\n * @callback Preprocessor\n * @param {Value} value\n * @param {Encoding} [encoding]\n * @param {boolean} [end=false]\n * @returns {Array<Chunk>}\n */\nconst search = /[\\0\\t\\n\\r]/g\n/**\n * @returns {Preprocessor}\n */\n\nexport function preprocess() {\n let column = 1\n let buffer = ''\n /** @type {boolean|undefined} */\n\n let start = true\n /** @type {boolean|undefined} */\n\n let atCarriageReturn\n return preprocessor\n /** @type {Preprocessor} */\n\n function preprocessor(value, encoding, end) {\n /** @type {Array<Chunk>} */\n const chunks = []\n /** @type {RegExpMatchArray|null} */\n\n let match\n /** @type {number} */\n\n let next\n /** @type {number} */\n\n let startPosition\n /** @type {number} */\n\n let endPosition\n /** @type {Code} */\n\n let code // @ts-expect-error `Buffer` does allow an encoding.\n\n value = buffer + value.toString(encoding)\n startPosition = 0\n buffer = ''\n\n if (start) {\n if (value.charCodeAt(0) === 65279) {\n startPosition++\n }\n\n start = undefined\n }\n\n while (startPosition < value.length) {\n search.lastIndex = startPosition\n match = search.exec(value)\n endPosition =\n match && match.index !== undefined ? match.index : value.length\n code = value.charCodeAt(endPosition)\n\n if (!match) {\n buffer = value.slice(startPosition)\n break\n }\n\n if (code === 10 && startPosition === endPosition && atCarriageReturn) {\n chunks.push(-3)\n atCarriageReturn = undefined\n } else {\n if (atCarriageReturn) {\n chunks.push(-5)\n atCarriageReturn = undefined\n }\n\n if (startPosition < endPosition) {\n chunks.push(value.slice(startPosition, endPosition))\n column += endPosition - startPosition\n }\n\n switch (code) {\n case 0: {\n chunks.push(65533)\n column++\n break\n }\n\n case 9: {\n next = Math.ceil(column / 4) * 4\n chunks.push(-2)\n\n while (column++ < next) chunks.push(-1)\n\n break\n }\n\n case 10: {\n chunks.push(-4)\n column = 1\n break\n }\n\n default: {\n atCarriageReturn = true\n column = 1\n }\n }\n }\n\n startPosition = endPosition + 1\n }\n\n if (end) {\n if (atCarriageReturn) chunks.push(-5)\n if (buffer) chunks.push(buffer)\n chunks.push(null)\n }\n\n return chunks\n }\n}\n","/**\n * Turn the number (in string form as either hexa- or plain decimal) coming from\n * a numeric character reference into a character.\n *\n * @param {string} value\n * Value to decode.\n * @param {number} base\n * Numeric base.\n * @returns {string}\n */\nexport function decodeNumericCharacterReference(value, base) {\n const code = Number.parseInt(value, base)\n\n if (\n // C0 except for HT, LF, FF, CR, space\n code < 9 ||\n code === 11 ||\n (code > 13 && code < 32) || // Control character (DEL) of the basic block and C1 controls.\n (code > 126 && code < 160) || // Lone high surrogates and low surrogates.\n (code > 55295 && code < 57344) || // Noncharacters.\n (code > 64975 && code < 65008) ||\n (code & 65535) === 65535 ||\n (code & 65535) === 65534 || // Out of range\n code > 1114111\n ) {\n return '\\uFFFD'\n }\n\n return String.fromCharCode(code)\n}\n","import {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {decodeNumericCharacterReference} from 'micromark-util-decode-numeric-character-reference'\nconst characterEscapeOrReference =\n /\\\\([!-/:-@[-`{-~])|&(#(?:\\d{1,7}|x[\\da-f]{1,6})|[\\da-z]{1,31});/gi\n/**\n * Utility to decode markdown strings (which occur in places such as fenced\n * code info strings, destinations, labels, and titles).\n * The “string” content type allows character escapes and -references.\n * This decodes those.\n *\n * @param {string} value\n * @returns {string}\n */\n\nexport function decodeString(value) {\n return value.replace(characterEscapeOrReference, decode)\n}\n/**\n * @param {string} $0\n * @param {string} $1\n * @param {string} $2\n * @returns {string}\n */\n\nfunction decode($0, $1, $2) {\n if ($1) {\n // Escape.\n return $1\n } // Reference.\n\n const head = $2.charCodeAt(0)\n\n if (head === 35) {\n const head = $2.charCodeAt(1)\n const hex = head === 120 || head === 88\n return decodeNumericCharacterReference($2.slice(hex ? 2 : 1), hex ? 16 : 10)\n }\n\n return decodeNamedCharacterReference($2) || $0\n}\n","/**\n * @typedef {import('micromark-util-types').Encoding} Encoding\n * @typedef {import('micromark-util-types').Event} Event\n * @typedef {import('micromark-util-types').ParseOptions} ParseOptions\n * @typedef {import('micromark-util-types').Token} Token\n * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext\n * @typedef {import('micromark-util-types').Value} Value\n *\n * @typedef {import('unist').Parent} UnistParent\n * @typedef {import('unist').Point} Point\n *\n * @typedef {import('mdast').PhrasingContent} PhrasingContent\n * @typedef {import('mdast').StaticPhrasingContent} StaticPhrasingContent\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Break} Break\n * @typedef {import('mdast').Blockquote} Blockquote\n * @typedef {import('mdast').Code} Code\n * @typedef {import('mdast').Definition} Definition\n * @typedef {import('mdast').Emphasis} Emphasis\n * @typedef {import('mdast').Heading} Heading\n * @typedef {import('mdast').HTML} HTML\n * @typedef {import('mdast').Image} Image\n * @typedef {import('mdast').ImageReference} ImageReference\n * @typedef {import('mdast').InlineCode} InlineCode\n * @typedef {import('mdast').Link} Link\n * @typedef {import('mdast').LinkReference} LinkReference\n * @typedef {import('mdast').List} List\n * @typedef {import('mdast').ListItem} ListItem\n * @typedef {import('mdast').Paragraph} Paragraph\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').Strong} Strong\n * @typedef {import('mdast').Text} Text\n * @typedef {import('mdast').ThematicBreak} ThematicBreak\n * @typedef {import('mdast').ReferenceType} ReferenceType\n * @typedef {import('../index.js').CompileData} CompileData\n */\n\n/**\n * @typedef {Root | Content} Node\n * @typedef {Extract<Node, UnistParent>} Parent\n *\n * @typedef {Omit<UnistParent, 'type' | 'children'> & {type: 'fragment', children: Array<PhrasingContent>}} Fragment\n */\n\n/**\n * @callback Transform\n * Extra transform, to change the AST afterwards.\n * @param {Root} tree\n * Tree to transform.\n * @returns {Root | undefined | null | void}\n * New tree or nothing (in which case the current tree is used).\n *\n * @callback Handle\n * Handle a token.\n * @param {CompileContext} this\n * Context.\n * @param {Token} token\n * Current token.\n * @returns {void}\n * Nothing.\n *\n * @typedef {Record<string, Handle>} Handles\n * Token types mapping to handles\n *\n * @callback OnEnterError\n * Handle the case where the `right` token is open, but it is closed (by the\n * `left` token) or because we reached the end of the document.\n * @param {Omit<CompileContext, 'sliceSerialize'>} this\n * Context.\n * @param {Token | undefined} left\n * Left token.\n * @param {Token} right\n * Right token.\n * @returns {void}\n * Nothing.\n *\n * @callback OnExitError\n * Handle the case where the `right` token is open but it is closed by\n * exiting the `left` token.\n * @param {Omit<CompileContext, 'sliceSerialize'>} this\n * Context.\n * @param {Token} left\n * Left token.\n * @param {Token} right\n * Right token.\n * @returns {void}\n * Nothing.\n *\n * @typedef {[Token, OnEnterError | undefined]} TokenTuple\n * Open token on the stack, with an optional error handler for when\n * that token isn’t closed properly.\n */\n\n/**\n * @typedef Config\n * Configuration.\n *\n * We have our defaults, but extensions will add more.\n * @property {Array<string>} canContainEols\n * Token types where line endings are used.\n * @property {Handles} enter\n * Opening handles.\n * @property {Handles} exit\n * Closing handles.\n * @property {Array<Transform>} transforms\n * Tree transforms.\n *\n * @typedef {Partial<Config>} Extension\n * Change how markdown tokens from micromark are turned into mdast.\n *\n * @typedef CompileContext\n * mdast compiler context.\n * @property {Array<Node | Fragment>} stack\n * Stack of nodes.\n * @property {Array<TokenTuple>} tokenStack\n * Stack of tokens.\n * @property {<Key extends keyof CompileData>(key: Key) => CompileData[Key]} getData\n * Get data from the key/value store.\n * @property {<Key extends keyof CompileData>(key: Key, value?: CompileData[Key]) => void} setData\n * Set data into the key/value store.\n * @property {(this: CompileContext) => void} buffer\n * Capture some of the output data.\n * @property {(this: CompileContext) => string} resume\n * Stop capturing and access the output data.\n * @property {<Kind extends Node>(this: CompileContext, node: Kind, token: Token, onError?: OnEnterError) => Kind} enter\n * Enter a token.\n * @property {(this: CompileContext, token: Token, onError?: OnExitError) => Node} exit\n * Exit a token.\n * @property {TokenizeContext['sliceSerialize']} sliceSerialize\n * Get the string value of a token.\n * @property {Config} config\n * Configuration.\n *\n * @typedef FromMarkdownOptions\n * Configuration for how to build mdast.\n * @property {Array<Extension | Array<Extension>> | null | undefined} [mdastExtensions]\n * Extensions for this utility to change how tokens are turned into a tree.\n *\n * @typedef {ParseOptions & FromMarkdownOptions} Options\n * Configuration.\n */\n\n// To do: micromark: create a registry of tokens?\n// To do: next major: don’t return given `Node` from `enter`.\n// To do: next major: remove setter/getter.\n\nimport {toString} from 'mdast-util-to-string'\nimport {parse} from 'micromark/lib/parse.js'\nimport {preprocess} from 'micromark/lib/preprocess.js'\nimport {postprocess} from 'micromark/lib/postprocess.js'\nimport {decodeNumericCharacterReference} from 'micromark-util-decode-numeric-character-reference'\nimport {decodeString} from 'micromark-util-decode-string'\nimport {normalizeIdentifier} from 'micromark-util-normalize-identifier'\nimport {decodeNamedCharacterReference} from 'decode-named-character-reference'\nimport {stringifyPosition} from 'unist-util-stringify-position'\nconst own = {}.hasOwnProperty\n\n/**\n * @param value\n * Markdown to parse.\n * @param encoding\n * Character encoding for when `value` is `Buffer`.\n * @param options\n * Configuration.\n * @returns\n * mdast tree.\n */\nexport const fromMarkdown =\n /**\n * @type {(\n * ((value: Value, encoding: Encoding, options?: Options | null | undefined) => Root) &\n * ((value: Value, options?: Options | null | undefined) => Root)\n * )}\n */\n\n /**\n * @param {Value} value\n * @param {Encoding | Options | null | undefined} [encoding]\n * @param {Options | null | undefined} [options]\n * @returns {Root}\n */\n function (value, encoding, options) {\n if (typeof encoding !== 'string') {\n options = encoding\n encoding = undefined\n }\n return compiler(options)(\n postprocess(\n // @ts-expect-error: micromark types need to accept `null`.\n parse(options).document().write(preprocess()(value, encoding, true))\n )\n )\n }\n\n/**\n * Note this compiler only understand complete buffering, not streaming.\n *\n * @param {Options | null | undefined} [options]\n */\nfunction compiler(options) {\n /** @type {Config} */\n const config = {\n transforms: [],\n canContainEols: ['emphasis', 'fragment', 'heading', 'paragraph', 'strong'],\n enter: {\n autolink: opener(link),\n autolinkProtocol: onenterdata,\n autolinkEmail: onenterdata,\n atxHeading: opener(heading),\n blockQuote: opener(blockQuote),\n characterEscape: onenterdata,\n characterReference: onenterdata,\n codeFenced: opener(codeFlow),\n codeFencedFenceInfo: buffer,\n codeFencedFenceMeta: buffer,\n codeIndented: opener(codeFlow, buffer),\n codeText: opener(codeText, buffer),\n codeTextData: onenterdata,\n data: onenterdata,\n codeFlowValue: onenterdata,\n definition: opener(definition),\n definitionDestinationString: buffer,\n definitionLabelString: buffer,\n definitionTitleString: buffer,\n emphasis: opener(emphasis),\n hardBreakEscape: opener(hardBreak),\n hardBreakTrailing: opener(hardBreak),\n htmlFlow: opener(html, buffer),\n htmlFlowData: onenterdata,\n htmlText: opener(html, buffer),\n htmlTextData: onenterdata,\n image: opener(image),\n label: buffer,\n link: opener(link),\n listItem: opener(listItem),\n listItemValue: onenterlistitemvalue,\n listOrdered: opener(list, onenterlistordered),\n listUnordered: opener(list),\n paragraph: opener(paragraph),\n reference: onenterreference,\n referenceString: buffer,\n resourceDestinationString: buffer,\n resourceTitleString: buffer,\n setextHeading: opener(heading),\n strong: opener(strong),\n thematicBreak: opener(thematicBreak)\n },\n exit: {\n atxHeading: closer(),\n atxHeadingSequence: onexitatxheadingsequence,\n autolink: closer(),\n autolinkEmail: onexitautolinkemail,\n autolinkProtocol: onexitautolinkprotocol,\n blockQuote: closer(),\n characterEscapeValue: onexitdata,\n characterReferenceMarkerHexadecimal: onexitcharacterreferencemarker,\n characterReferenceMarkerNumeric: onexitcharacterreferencemarker,\n characterReferenceValue: onexitcharacterreferencevalue,\n codeFenced: closer(onexitcodefenced),\n codeFencedFence: onexitcodefencedfence,\n codeFencedFenceInfo: onexitcodefencedfenceinfo,\n codeFencedFenceMeta: onexitcodefencedfencemeta,\n codeFlowValue: onexitdata,\n codeIndented: closer(onexitcodeindented),\n codeText: closer(onexitcodetext),\n codeTextData: onexitdata,\n data: onexitdata,\n definition: closer(),\n definitionDestinationString: onexitdefinitiondestinationstring,\n definitionLabelString: onexitdefinitionlabelstring,\n definitionTitleString: onexitdefinitiontitlestring,\n emphasis: closer(),\n hardBreakEscape: closer(onexithardbreak),\n hardBreakTrailing: closer(onexithardbreak),\n htmlFlow: closer(onexithtmlflow),\n htmlFlowData: onexitdata,\n htmlText: closer(onexithtmltext),\n htmlTextData: onexitdata,\n image: closer(onexitimage),\n label: onexitlabel,\n labelText: onexitlabeltext,\n lineEnding: onexitlineending,\n link: closer(onexitlink),\n listItem: closer(),\n listOrdered: closer(),\n listUnordered: closer(),\n paragraph: closer(),\n referenceString: onexitreferencestring,\n resourceDestinationString: onexitresourcedestinationstring,\n resourceTitleString: onexitresourcetitlestring,\n resource: onexitresource,\n setextHeading: closer(onexitsetextheading),\n setextHeadingLineSequence: onexitsetextheadinglinesequence,\n setextHeadingText: onexitsetextheadingtext,\n strong: closer(),\n thematicBreak: closer()\n }\n }\n configure(config, (options || {}).mdastExtensions || [])\n\n /** @type {CompileData} */\n const data = {}\n return compile\n\n /**\n * Turn micromark events into an mdast tree.\n *\n * @param {Array<Event>} events\n * Events.\n * @returns {Root}\n * mdast tree.\n */\n function compile(events) {\n /** @type {Root} */\n let tree = {\n type: 'root',\n children: []\n }\n /** @type {Omit<CompileContext, 'sliceSerialize'>} */\n const context = {\n stack: [tree],\n tokenStack: [],\n config,\n enter,\n exit,\n buffer,\n resume,\n setData,\n getData\n }\n /** @type {Array<number>} */\n const listStack = []\n let index = -1\n while (++index < events.length) {\n // We preprocess lists to add `listItem` tokens, and to infer whether\n // items the list itself are spread out.\n if (\n events[index][1].type === 'listOrdered' ||\n events[index][1].type === 'listUnordered'\n ) {\n if (events[index][0] === 'enter') {\n listStack.push(index)\n } else {\n const tail = listStack.pop()\n index = prepareList(events, tail, index)\n }\n }\n }\n index = -1\n while (++index < events.length) {\n const handler = config[events[index][0]]\n if (own.call(handler, events[index][1].type)) {\n handler[events[index][1].type].call(\n Object.assign(\n {\n sliceSerialize: events[index][2].sliceSerialize\n },\n context\n ),\n events[index][1]\n )\n }\n }\n\n // Handle tokens still being open.\n if (context.tokenStack.length > 0) {\n const tail = context.tokenStack[context.tokenStack.length - 1]\n const handler = tail[1] || defaultOnError\n handler.call(context, undefined, tail[0])\n }\n\n // Figure out `root` position.\n tree.position = {\n start: point(\n events.length > 0\n ? events[0][1].start\n : {\n line: 1,\n column: 1,\n offset: 0\n }\n ),\n end: point(\n events.length > 0\n ? events[events.length - 2][1].end\n : {\n line: 1,\n column: 1,\n offset: 0\n }\n )\n }\n\n // Call transforms.\n index = -1\n while (++index < config.transforms.length) {\n tree = config.transforms[index](tree) || tree\n }\n return tree\n }\n\n /**\n * @param {Array<Event>} events\n * @param {number} start\n * @param {number} length\n * @returns {number}\n */\n function prepareList(events, start, length) {\n let index = start - 1\n let containerBalance = -1\n let listSpread = false\n /** @type {Token | undefined} */\n let listItem\n /** @type {number | undefined} */\n let lineIndex\n /** @type {number | undefined} */\n let firstBlankLineIndex\n /** @type {boolean | undefined} */\n let atMarker\n while (++index <= length) {\n const event = events[index]\n if (\n event[1].type === 'listUnordered' ||\n event[1].type === 'listOrdered' ||\n event[1].type === 'blockQuote'\n ) {\n if (event[0] === 'enter') {\n containerBalance++\n } else {\n containerBalance--\n }\n atMarker = undefined\n } else if (event[1].type === 'lineEndingBlank') {\n if (event[0] === 'enter') {\n if (\n listItem &&\n !atMarker &&\n !containerBalance &&\n !firstBlankLineIndex\n ) {\n firstBlankLineIndex = index\n }\n atMarker = undefined\n }\n } else if (\n event[1].type === 'linePrefix' ||\n event[1].type === 'listItemValue' ||\n event[1].type === 'listItemMarker' ||\n event[1].type === 'listItemPrefix' ||\n event[1].type === 'listItemPrefixWhitespace'\n ) {\n // Empty.\n } else {\n atMarker = undefined\n }\n if (\n (!containerBalance &&\n event[0] === 'enter' &&\n event[1].type === 'listItemPrefix') ||\n (containerBalance === -1 &&\n event[0] === 'exit' &&\n (event[1].type === 'listUnordered' ||\n event[1].type === 'listOrdered'))\n ) {\n if (listItem) {\n let tailIndex = index\n lineIndex = undefined\n while (tailIndex--) {\n const tailEvent = events[tailIndex]\n if (\n tailEvent[1].type === 'lineEnding' ||\n tailEvent[1].type === 'lineEndingBlank'\n ) {\n if (tailEvent[0] === 'exit') continue\n if (lineIndex) {\n events[lineIndex][1].type = 'lineEndingBlank'\n listSpread = true\n }\n tailEvent[1].type = 'lineEnding'\n lineIndex = tailIndex\n } else if (\n tailEvent[1].type === 'linePrefix' ||\n tailEvent[1].type === 'blockQuotePrefix' ||\n tailEvent[1].type === 'blockQuotePrefixWhitespace' ||\n tailEvent[1].type === 'blockQuoteMarker' ||\n tailEvent[1].type === 'listItemIndent'\n ) {\n // Empty\n } else {\n break\n }\n }\n if (\n firstBlankLineIndex &&\n (!lineIndex || firstBlankLineIndex < lineIndex)\n ) {\n // @ts-expect-error Patched.\n listItem._spread = true\n }\n\n // Fix position.\n listItem.end = Object.assign(\n {},\n lineIndex ? events[lineIndex][1].start : event[1].end\n )\n events.splice(lineIndex || index, 0, ['exit', listItem, event[2]])\n index++\n length++\n }\n\n // Create a new list item.\n if (event[1].type === 'listItemPrefix') {\n listItem = {\n type: 'listItem',\n // @ts-expect-error Patched\n _spread: false,\n start: Object.assign({}, event[1].start)\n }\n // @ts-expect-error: `listItem` is most definitely defined, TS...\n events.splice(index, 0, ['enter', listItem, event[2]])\n index++\n length++\n firstBlankLineIndex = undefined\n atMarker = true\n }\n }\n }\n\n // @ts-expect-error Patched.\n events[start][1]._spread = listSpread\n return length\n }\n\n /**\n * Set data.\n *\n * @template {keyof CompileData} Key\n * Field type.\n * @param {Key} key\n * Key of field.\n * @param {CompileData[Key]} [value]\n * New value.\n * @returns {void}\n * Nothing.\n */\n function setData(key, value) {\n data[key] = value\n }\n\n /**\n * Get data.\n *\n * @template {keyof CompileData} Key\n * Field type.\n * @param {Key} key\n * Key of field.\n * @returns {CompileData[Key]}\n * Value.\n */\n function getData(key) {\n return data[key]\n }\n\n /**\n * Create an opener handle.\n *\n * @param {(token: Token) => Node} create\n * Create a node.\n * @param {Handle} [and]\n * Optional function to also run.\n * @returns {Handle}\n * Handle.\n */\n function opener(create, and) {\n return open\n\n /**\n * @this {CompileContext}\n * @param {Token} token\n * @returns {void}\n */\n function open(token) {\n enter.call(this, create(token), token)\n if (and) and.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * @returns {void}\n */\n function buffer() {\n this.stack.push({\n type: 'fragment',\n children: []\n })\n }\n\n /**\n * @template {Node} Kind\n * Node type.\n * @this {CompileContext}\n * Context.\n * @param {Kind} node\n * Node to enter.\n * @param {Token} token\n * Corresponding token.\n * @param {OnEnterError | undefined} [errorHandler]\n * Handle the case where this token is open, but it is closed by something else.\n * @returns {Kind}\n * The given node.\n */\n function enter(node, token, errorHandler) {\n const parent = this.stack[this.stack.length - 1]\n // @ts-expect-error: Assume `Node` can exist as a child of `parent`.\n parent.children.push(node)\n this.stack.push(node)\n this.tokenStack.push([token, errorHandler])\n // @ts-expect-error: `end` will be patched later.\n node.position = {\n start: point(token.start)\n }\n return node\n }\n\n /**\n * Create a closer handle.\n *\n * @param {Handle} [and]\n * Optional function to also run.\n * @returns {Handle}\n * Handle.\n */\n function closer(and) {\n return close\n\n /**\n * @this {CompileContext}\n * @param {Token} token\n * @returns {void}\n */\n function close(token) {\n if (and) and.call(this, token)\n exit.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * Context.\n * @param {Token} token\n * Corresponding token.\n * @param {OnExitError | undefined} [onExitError]\n * Handle the case where another token is open.\n * @returns {Node}\n * The closed node.\n */\n function exit(token, onExitError) {\n const node = this.stack.pop()\n const open = this.tokenStack.pop()\n if (!open) {\n throw new Error(\n 'Cannot close `' +\n token.type +\n '` (' +\n stringifyPosition({\n start: token.start,\n end: token.end\n }) +\n '): it’s not open'\n )\n } else if (open[0].type !== token.type) {\n if (onExitError) {\n onExitError.call(this, token, open[0])\n } else {\n const handler = open[1] || defaultOnError\n handler.call(this, token, open[0])\n }\n }\n node.position.end = point(token.end)\n return node\n }\n\n /**\n * @this {CompileContext}\n * @returns {string}\n */\n function resume() {\n return toString(this.stack.pop())\n }\n\n //\n // Handlers.\n //\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onenterlistordered() {\n setData('expectingFirstListItemValue', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onenterlistitemvalue(token) {\n if (getData('expectingFirstListItemValue')) {\n const ancestor = this.stack[this.stack.length - 2]\n ancestor.start = Number.parseInt(this.sliceSerialize(token), 10)\n setData('expectingFirstListItemValue')\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfenceinfo() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.lang = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfencemeta() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.meta = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefencedfence() {\n // Exit if this is the closing fence.\n if (getData('flowCodeInside')) return\n this.buffer()\n setData('flowCodeInside', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodefenced() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data.replace(/^(\\r?\\n|\\r)|(\\r?\\n|\\r)$/g, '')\n setData('flowCodeInside')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcodeindented() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data.replace(/(\\r?\\n|\\r)$/g, '')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitionlabelstring(token) {\n const label = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.label = label\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase()\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitiontitlestring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.title = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitdefinitiondestinationstring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.url = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitatxheadingsequence(token) {\n const node = this.stack[this.stack.length - 1]\n if (!node.depth) {\n const depth = this.sliceSerialize(token).length\n node.depth = depth\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheadingtext() {\n setData('setextHeadingSlurpLineEnding', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheadinglinesequence(token) {\n const node = this.stack[this.stack.length - 1]\n node.depth = this.sliceSerialize(token).charCodeAt(0) === 61 ? 1 : 2\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitsetextheading() {\n setData('setextHeadingSlurpLineEnding')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onenterdata(token) {\n const node = this.stack[this.stack.length - 1]\n let tail = node.children[node.children.length - 1]\n if (!tail || tail.type !== 'text') {\n // Add a new text node.\n tail = text()\n // @ts-expect-error: we’ll add `end` later.\n tail.position = {\n start: point(token.start)\n }\n // @ts-expect-error: Assume `parent` accepts `text`.\n node.children.push(tail)\n }\n this.stack.push(tail)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitdata(token) {\n const tail = this.stack.pop()\n tail.value += this.sliceSerialize(token)\n tail.position.end = point(token.end)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlineending(token) {\n const context = this.stack[this.stack.length - 1]\n // If we’re at a hard break, include the line ending in there.\n if (getData('atHardBreak')) {\n const tail = context.children[context.children.length - 1]\n tail.position.end = point(token.end)\n setData('atHardBreak')\n return\n }\n if (\n !getData('setextHeadingSlurpLineEnding') &&\n config.canContainEols.includes(context.type)\n ) {\n onenterdata.call(this, token)\n onexitdata.call(this, token)\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithardbreak() {\n setData('atHardBreak', true)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithtmlflow() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexithtmltext() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitcodetext() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.value = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlink() {\n const node = this.stack[this.stack.length - 1]\n // Note: there are also `identifier` and `label` fields on this link node!\n // These are used / cleaned here.\n\n // To do: clean.\n if (getData('inReference')) {\n /** @type {ReferenceType} */\n const referenceType = getData('referenceType') || 'shortcut'\n node.type += 'Reference'\n // @ts-expect-error: mutate.\n node.referenceType = referenceType\n // @ts-expect-error: mutate.\n delete node.url\n delete node.title\n } else {\n // @ts-expect-error: mutate.\n delete node.identifier\n // @ts-expect-error: mutate.\n delete node.label\n }\n setData('referenceType')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitimage() {\n const node = this.stack[this.stack.length - 1]\n // Note: there are also `identifier` and `label` fields on this link node!\n // These are used / cleaned here.\n\n // To do: clean.\n if (getData('inReference')) {\n /** @type {ReferenceType} */\n const referenceType = getData('referenceType') || 'shortcut'\n node.type += 'Reference'\n // @ts-expect-error: mutate.\n node.referenceType = referenceType\n // @ts-expect-error: mutate.\n delete node.url\n delete node.title\n } else {\n // @ts-expect-error: mutate.\n delete node.identifier\n // @ts-expect-error: mutate.\n delete node.label\n }\n setData('referenceType')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlabeltext(token) {\n const string = this.sliceSerialize(token)\n const ancestor = this.stack[this.stack.length - 2]\n // @ts-expect-error: stash this on the node, as it might become a reference\n // later.\n ancestor.label = decodeString(string)\n // @ts-expect-error: same as above.\n ancestor.identifier = normalizeIdentifier(string).toLowerCase()\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitlabel() {\n const fragment = this.stack[this.stack.length - 1]\n const value = this.resume()\n const node = this.stack[this.stack.length - 1]\n // Assume a reference.\n setData('inReference', true)\n if (node.type === 'link') {\n /** @type {Array<StaticPhrasingContent>} */\n // @ts-expect-error: Assume static phrasing content.\n const children = fragment.children\n node.children = children\n } else {\n node.alt = value\n }\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresourcedestinationstring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.url = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresourcetitlestring() {\n const data = this.resume()\n const node = this.stack[this.stack.length - 1]\n node.title = data\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitresource() {\n setData('inReference')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onenterreference() {\n setData('referenceType', 'collapsed')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitreferencestring(token) {\n const label = this.resume()\n const node = this.stack[this.stack.length - 1]\n // @ts-expect-error: stash this on the node, as it might become a reference\n // later.\n node.label = label\n // @ts-expect-error: same as above.\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase()\n setData('referenceType', 'full')\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n\n function onexitcharacterreferencemarker(token) {\n setData('characterReferenceType', token.type)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitcharacterreferencevalue(token) {\n const data = this.sliceSerialize(token)\n const type = getData('characterReferenceType')\n /** @type {string} */\n let value\n if (type) {\n value = decodeNumericCharacterReference(\n data,\n type === 'characterReferenceMarkerNumeric' ? 10 : 16\n )\n setData('characterReferenceType')\n } else {\n const result = decodeNamedCharacterReference(data)\n value = result\n }\n const tail = this.stack.pop()\n tail.value += value\n tail.position.end = point(token.end)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitautolinkprotocol(token) {\n onexitdata.call(this, token)\n const node = this.stack[this.stack.length - 1]\n node.url = this.sliceSerialize(token)\n }\n\n /**\n * @this {CompileContext}\n * @type {Handle}\n */\n function onexitautolinkemail(token) {\n onexitdata.call(this, token)\n const node = this.stack[this.stack.length - 1]\n node.url = 'mailto:' + this.sliceSerialize(token)\n }\n\n //\n // Creaters.\n //\n\n /** @returns {Blockquote} */\n function blockQuote() {\n return {\n type: 'blockquote',\n children: []\n }\n }\n\n /** @returns {Code} */\n function codeFlow() {\n return {\n type: 'code',\n lang: null,\n meta: null,\n value: ''\n }\n }\n\n /** @returns {InlineCode} */\n function codeText() {\n return {\n type: 'inlineCode',\n value: ''\n }\n }\n\n /** @returns {Definition} */\n function definition() {\n return {\n type: 'definition',\n identifier: '',\n label: null,\n title: null,\n url: ''\n }\n }\n\n /** @returns {Emphasis} */\n function emphasis() {\n return {\n type: 'emphasis',\n children: []\n }\n }\n\n /** @returns {Heading} */\n function heading() {\n // @ts-expect-error `depth` will be set later.\n return {\n type: 'heading',\n depth: undefined,\n children: []\n }\n }\n\n /** @returns {Break} */\n function hardBreak() {\n return {\n type: 'break'\n }\n }\n\n /** @returns {HTML} */\n function html() {\n return {\n type: 'html',\n value: ''\n }\n }\n\n /** @returns {Image} */\n function image() {\n return {\n type: 'image',\n title: null,\n url: '',\n alt: null\n }\n }\n\n /** @returns {Link} */\n function link() {\n return {\n type: 'link',\n title: null,\n url: '',\n children: []\n }\n }\n\n /**\n * @param {Token} token\n * @returns {List}\n */\n function list(token) {\n return {\n type: 'list',\n ordered: token.type === 'listOrdered',\n start: null,\n // @ts-expect-error Patched.\n spread: token._spread,\n children: []\n }\n }\n\n /**\n * @param {Token} token\n * @returns {ListItem}\n */\n function listItem(token) {\n return {\n type: 'listItem',\n // @ts-expect-error Patched.\n spread: token._spread,\n checked: null,\n children: []\n }\n }\n\n /** @returns {Paragraph} */\n function paragraph() {\n return {\n type: 'paragraph',\n children: []\n }\n }\n\n /** @returns {Strong} */\n function strong() {\n return {\n type: 'strong',\n children: []\n }\n }\n\n /** @returns {Text} */\n function text() {\n return {\n type: 'text',\n value: ''\n }\n }\n\n /** @returns {ThematicBreak} */\n function thematicBreak() {\n return {\n type: 'thematicBreak'\n }\n }\n}\n\n/**\n * Copy a point-like value.\n *\n * @param {Point} d\n * Point-like value.\n * @returns {Point}\n * unist point.\n */\nfunction point(d) {\n return {\n line: d.line,\n column: d.column,\n offset: d.offset\n }\n}\n\n/**\n * @param {Config} combined\n * @param {Array<Extension | Array<Extension>>} extensions\n * @returns {void}\n */\nfunction configure(combined, extensions) {\n let index = -1\n while (++index < extensions.length) {\n const value = extensions[index]\n if (Array.isArray(value)) {\n configure(combined, value)\n } else {\n extension(combined, value)\n }\n }\n}\n\n/**\n * @param {Config} combined\n * @param {Extension} extension\n * @returns {void}\n */\nfunction extension(combined, extension) {\n /** @type {keyof Extension} */\n let key\n for (key in extension) {\n if (own.call(extension, key)) {\n if (key === 'canContainEols') {\n const right = extension[key]\n if (right) {\n combined[key].push(...right)\n }\n } else if (key === 'transforms') {\n const right = extension[key]\n if (right) {\n combined[key].push(...right)\n }\n } else if (key === 'enter' || key === 'exit') {\n const right = extension[key]\n if (right) {\n Object.assign(combined[key], right)\n }\n }\n }\n }\n}\n\n/** @type {OnEnterError} */\nfunction defaultOnError(left, right) {\n if (left) {\n throw new Error(\n 'Cannot close `' +\n left.type +\n '` (' +\n stringifyPosition({\n start: left.start,\n end: left.end\n }) +\n '): a different token (`' +\n right.type +\n '`, ' +\n stringifyPosition({\n start: right.start,\n end: right.end\n }) +\n ') is open'\n )\n } else {\n throw new Error(\n 'Cannot close document, a token (`' +\n right.type +\n '`, ' +\n stringifyPosition({\n start: right.start,\n end: right.end\n }) +\n ') is still open'\n )\n }\n}\n","/**\n * @typedef {import('micromark-util-types').Event} Event\n */\nimport {subtokenize} from 'micromark-util-subtokenize'\n/**\n * @param {Array<Event>} events\n * @returns {Array<Event>}\n */\n\nexport function postprocess(events) {\n while (!subtokenize(events)) {\n // Empty\n }\n\n return events\n}\n","/**\n * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct\n * @typedef {import('micromark-util-types').FullNormalizedExtension} FullNormalizedExtension\n * @typedef {import('micromark-util-types').ParseOptions} ParseOptions\n * @typedef {import('micromark-util-types').ParseContext} ParseContext\n * @typedef {import('micromark-util-types').Create} Create\n */\nimport {combineExtensions} from 'micromark-util-combine-extensions'\nimport {content} from './initialize/content.js'\nimport {document} from './initialize/document.js'\nimport {flow} from './initialize/flow.js'\nimport {text, string} from './initialize/text.js'\nimport {createTokenizer} from './create-tokenizer.js'\nimport * as defaultConstructs from './constructs.js'\n/**\n * @param {ParseOptions} [options]\n * @returns {ParseContext}\n */\n\nexport function parse(options = {}) {\n /** @type {FullNormalizedExtension} */\n // @ts-expect-error `defaultConstructs` is full, so the result will be too.\n const constructs = combineExtensions(\n // @ts-expect-error Same as above.\n [defaultConstructs].concat(options.extensions || [])\n )\n /** @type {ParseContext} */\n\n const parser = {\n defined: [],\n lazy: {},\n constructs,\n content: create(content),\n document: create(document),\n flow: create(flow),\n string: create(string),\n text: create(text)\n }\n return parser\n /**\n * @param {InitialConstruct} initial\n */\n\n function create(initial) {\n return creator\n /** @type {Create} */\n\n function creator(from) {\n return createTokenizer(parser, initial, from)\n }\n }\n}\n","import remarkParse from './lib/index.js'\n\nexport default remarkParse\n","/**\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast-util-from-markdown').Options} Options\n */\n\nimport {fromMarkdown} from 'mdast-util-from-markdown'\n\n/** @type {import('unified').Plugin<[Options?] | void[], string, Root>} */\nexport default function remarkParse(options) {\n /** @type {import('unified').ParserFunction<Root>} */\n const parser = (doc) => {\n // Assume options.\n const settings = /** @type {Options} */ (this.data('settings'))\n\n return fromMarkdown(\n doc,\n Object.assign({}, settings, options, {\n // Note: these options are not in the readme.\n // The goal is for them to be set by plugins on `data` instead of being\n // passed by users.\n extensions: this.data('micromarkExtensions') || [],\n mdastExtensions: this.data('fromMarkdownExtensions') || []\n })\n )\n }\n\n Object.assign(this, {Parser: parser})\n}\n","import {asciiAlphanumeric} from 'micromark-util-character'\nimport {encode} from 'micromark-util-encode'\n\n/**\n * Make a value safe for injection as a URL.\n *\n * This encodes unsafe characters with percent-encoding and skips already\n * encoded sequences (see `normalizeUri` below).\n * Further unsafe characters are encoded as character references (see\n * `micromark-util-encode`).\n *\n * Then, a regex of allowed protocols can be given, in which case the URL is\n * sanitized.\n * For example, `/^(https?|ircs?|mailto|xmpp)$/i` can be used for `a[href]`,\n * or `/^https?$/i` for `img[src]`.\n * If the URL includes an unknown protocol (one not matched by `protocol`, such\n * as a dangerous example, `javascript:`), the value is ignored.\n *\n * @param {string|undefined} url\n * @param {RegExp} [protocol]\n * @returns {string}\n */\nexport function sanitizeUri(url, protocol) {\n const value = encode(normalizeUri(url || ''))\n\n if (!protocol) {\n return value\n }\n\n const colon = value.indexOf(':')\n const questionMark = value.indexOf('?')\n const numberSign = value.indexOf('#')\n const slash = value.indexOf('/')\n\n if (\n // If there is no protocol, it’s relative.\n colon < 0 || // If the first colon is after a `?`, `#`, or `/`, it’s not a protocol.\n (slash > -1 && colon > slash) ||\n (questionMark > -1 && colon > questionMark) ||\n (numberSign > -1 && colon > numberSign) || // It is a protocol, it should be allowed.\n protocol.test(value.slice(0, colon))\n ) {\n return value\n }\n\n return ''\n}\n/**\n * Normalize a URL (such as used in definitions).\n *\n * Encode unsafe characters with percent-encoding, skipping already encoded\n * sequences.\n *\n * @param {string} value\n * @returns {string}\n */\n\nexport function normalizeUri(value) {\n /** @type {Array<string>} */\n const result = []\n let index = -1\n let start = 0\n let skip = 0\n\n while (++index < value.length) {\n const code = value.charCodeAt(index)\n /** @type {string} */\n\n let replace = '' // A correct percent encoded value.\n\n if (\n code === 37 &&\n asciiAlphanumeric(value.charCodeAt(index + 1)) &&\n asciiAlphanumeric(value.charCodeAt(index + 2))\n ) {\n skip = 2\n } // ASCII.\n else if (code < 128) {\n if (!/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(code))) {\n replace = String.fromCharCode(code)\n }\n } // Astral.\n else if (code > 55295 && code < 57344) {\n const next = value.charCodeAt(index + 1) // A correct surrogate pair.\n\n if (code < 56320 && next > 56319 && next < 57344) {\n replace = String.fromCharCode(code, next)\n skip = 1\n } // Lone surrogate.\n else {\n replace = '\\uFFFD'\n }\n } // Unicode.\n else {\n replace = String.fromCharCode(code)\n }\n\n if (replace) {\n result.push(value.slice(start, index), encodeURIComponent(replace))\n start = index + skip + 1\n replace = ''\n }\n\n if (skip) {\n index += skip\n skip = 0\n }\n }\n\n return result.join('') + value.slice(start)\n}\n","/**\n * @typedef {import('mdast').FootnoteReference} FootnoteReference\n * @typedef {import('hast').Element} Element\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `footnoteReference` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {FootnoteReference} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function footnoteReference(state, node) {\n const id = String(node.identifier).toUpperCase()\n const safeId = normalizeUri(id.toLowerCase())\n const index = state.footnoteOrder.indexOf(id)\n /** @type {number} */\n let counter\n\n if (index === -1) {\n state.footnoteOrder.push(id)\n state.footnoteCounts[id] = 1\n counter = state.footnoteOrder.length\n } else {\n state.footnoteCounts[id]++\n counter = index + 1\n }\n\n const reuseCounter = state.footnoteCounts[id]\n\n /** @type {Element} */\n const link = {\n type: 'element',\n tagName: 'a',\n properties: {\n href: '#' + state.clobberPrefix + 'fn-' + safeId,\n id:\n state.clobberPrefix +\n 'fnref-' +\n safeId +\n (reuseCounter > 1 ? '-' + reuseCounter : ''),\n dataFootnoteRef: true,\n ariaDescribedBy: ['footnote-label']\n },\n children: [{type: 'text', value: String(counter)}]\n }\n state.patch(node, link)\n\n /** @type {Element} */\n const sup = {\n type: 'element',\n tagName: 'sup',\n properties: {},\n children: [link]\n }\n state.patch(node, sup)\n return state.applyData(node, sup)\n}\n","/**\n * @typedef {import('hast').ElementContent} ElementContent\n *\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Reference} Reference\n * @typedef {import('mdast').Root} Root\n *\n * @typedef {import('./state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract<Nodes, Reference>} References\n */\n\n// To do: next major: always return array.\n\n/**\n * Return the content of a reference without definition as plain text.\n *\n * @param {State} state\n * Info passed around.\n * @param {References} node\n * Reference node (image, link).\n * @returns {ElementContent | Array<ElementContent>}\n * hast content.\n */\nexport function revert(state, node) {\n const subtype = node.referenceType\n let suffix = ']'\n\n if (subtype === 'collapsed') {\n suffix += '[]'\n } else if (subtype === 'full') {\n suffix += '[' + (node.label || node.identifier) + ']'\n }\n\n if (node.type === 'imageReference') {\n return {type: 'text', value: '![' + node.alt + suffix}\n }\n\n const contents = state.all(node)\n const head = contents[0]\n\n if (head && head.type === 'text') {\n head.value = '[' + head.value\n } else {\n contents.unshift({type: 'text', value: '['})\n }\n\n const tail = contents[contents.length - 1]\n\n if (tail && tail.type === 'text') {\n tail.value += suffix\n } else {\n contents.push({type: 'text', value: suffix})\n }\n\n return contents\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').ListItem} ListItem\n * @typedef {import('mdast').Parent} Parent\n * @typedef {import('mdast').Root} Root\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract<Nodes, Parent>} Parents\n */\n\n/**\n * Turn an mdast `listItem` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {ListItem} node\n * mdast node.\n * @param {Parents | null | undefined} parent\n * Parent of `node`.\n * @returns {Element}\n * hast node.\n */\nexport function listItem(state, node, parent) {\n const results = state.all(node)\n const loose = parent ? listLoose(parent) : listItemLoose(node)\n /** @type {Properties} */\n const properties = {}\n /** @type {Array<ElementContent>} */\n const children = []\n\n if (typeof node.checked === 'boolean') {\n const head = results[0]\n /** @type {Element} */\n let paragraph\n\n if (head && head.type === 'element' && head.tagName === 'p') {\n paragraph = head\n } else {\n paragraph = {type: 'element', tagName: 'p', properties: {}, children: []}\n results.unshift(paragraph)\n }\n\n if (paragraph.children.length > 0) {\n paragraph.children.unshift({type: 'text', value: ' '})\n }\n\n paragraph.children.unshift({\n type: 'element',\n tagName: 'input',\n properties: {type: 'checkbox', checked: node.checked, disabled: true},\n children: []\n })\n\n // According to github-markdown-css, this class hides bullet.\n // See: <https://github.com/sindresorhus/github-markdown-css>.\n properties.className = ['task-list-item']\n }\n\n let index = -1\n\n while (++index < results.length) {\n const child = results[index]\n\n // Add eols before nodes, except if this is a loose, first paragraph.\n if (\n loose ||\n index !== 0 ||\n child.type !== 'element' ||\n child.tagName !== 'p'\n ) {\n children.push({type: 'text', value: '\\n'})\n }\n\n if (child.type === 'element' && child.tagName === 'p' && !loose) {\n children.push(...child.children)\n } else {\n children.push(child)\n }\n }\n\n const tail = results[results.length - 1]\n\n // Add a final eol.\n if (tail && (loose || tail.type !== 'element' || tail.tagName !== 'p')) {\n children.push({type: 'text', value: '\\n'})\n }\n\n /** @type {Element} */\n const result = {type: 'element', tagName: 'li', properties, children}\n state.patch(node, result)\n return state.applyData(node, result)\n}\n\n/**\n * @param {Parents} node\n * @return {Boolean}\n */\nfunction listLoose(node) {\n let loose = false\n if (node.type === 'list') {\n loose = node.spread || false\n const children = node.children\n let index = -1\n\n while (!loose && ++index < children.length) {\n loose = listItemLoose(children[index])\n }\n }\n\n return loose\n}\n\n/**\n * @param {ListItem} node\n * @return {Boolean}\n */\nfunction listItemLoose(node) {\n const spread = node.spread\n\n return spread === undefined || spread === null\n ? node.children.length > 1\n : spread\n}\n","/**\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Point} Point\n */\n\n/**\n * @typedef NodeLike\n * @property {string} type\n * @property {PositionLike | null | undefined} [position]\n *\n * @typedef PositionLike\n * @property {PointLike | null | undefined} [start]\n * @property {PointLike | null | undefined} [end]\n *\n * @typedef PointLike\n * @property {number | null | undefined} [line]\n * @property {number | null | undefined} [column]\n * @property {number | null | undefined} [offset]\n */\n\n/**\n * Get the starting point of `node`.\n *\n * @param node\n * Node.\n * @returns\n * Point.\n */\nexport const pointStart = point('start')\n\n/**\n * Get the ending point of `node`.\n *\n * @param node\n * Node.\n * @returns\n * Point.\n */\nexport const pointEnd = point('end')\n\n/**\n * Get the positional info of `node`.\n *\n * @param {NodeLike | Node | null | undefined} [node]\n * Node.\n * @returns {Position}\n * Position.\n */\nexport function position(node) {\n return {start: pointStart(node), end: pointEnd(node)}\n}\n\n/**\n * Get the positional info of `node`.\n *\n * @param {'start' | 'end'} type\n * Side.\n * @returns\n * Getter.\n */\nfunction point(type) {\n return point\n\n /**\n * Get the point info of `node` at a bound side.\n *\n * @param {NodeLike | Node | null | undefined} [node]\n * @returns {Point}\n */\n function point(node) {\n const point = (node && node.position && node.position[type]) || {}\n\n // To do: next major: don’t return points when invalid.\n return {\n // @ts-expect-error: in practice, null is allowed.\n line: point.line || null,\n // @ts-expect-error: in practice, null is allowed.\n column: point.column || null,\n // @ts-expect-error: in practice, null is allowed.\n offset: point.offset > -1 ? point.offset : null\n }\n }\n}\n","const tab = 9 /* `\\t` */\nconst space = 32 /* ` ` */\n\n/**\n * Remove initial and final spaces and tabs at the line breaks in `value`.\n * Does not trim initial and final spaces and tabs of the value itself.\n *\n * @param {string} value\n * Value to trim.\n * @returns {string}\n * Trimmed value.\n */\nexport function trimLines(value) {\n const source = String(value)\n const search = /\\r?\\n|\\r/g\n let match = search.exec(source)\n let last = 0\n /** @type {Array<string>} */\n const lines = []\n\n while (match) {\n lines.push(\n trimLine(source.slice(last, match.index), last > 0, true),\n match[0]\n )\n\n last = match.index + match[0].length\n match = search.exec(source)\n }\n\n lines.push(trimLine(source.slice(last), last > 0, false))\n\n return lines.join('')\n}\n\n/**\n * @param {string} value\n * Line to trim.\n * @param {boolean} start\n * Whether to trim the start of the line.\n * @param {boolean} end\n * Whether to trim the end of the line.\n * @returns {string}\n * Trimmed line.\n */\nfunction trimLine(value, start, end) {\n let startIndex = 0\n let endIndex = value.length\n\n if (start) {\n let code = value.codePointAt(startIndex)\n\n while (code === tab || code === space) {\n startIndex++\n code = value.codePointAt(startIndex)\n }\n }\n\n if (end) {\n let code = value.codePointAt(endIndex - 1)\n\n while (code === tab || code === space) {\n endIndex--\n code = value.codePointAt(endIndex - 1)\n }\n }\n\n return endIndex > startIndex ? value.slice(startIndex, endIndex) : ''\n}\n","import {blockquote} from './blockquote.js'\nimport {hardBreak} from './break.js'\nimport {code} from './code.js'\nimport {strikethrough} from './delete.js'\nimport {emphasis} from './emphasis.js'\nimport {footnoteReference} from './footnote-reference.js'\nimport {footnote} from './footnote.js'\nimport {heading} from './heading.js'\nimport {html} from './html.js'\nimport {imageReference} from './image-reference.js'\nimport {image} from './image.js'\nimport {inlineCode} from './inline-code.js'\nimport {linkReference} from './link-reference.js'\nimport {link} from './link.js'\nimport {listItem} from './list-item.js'\nimport {list} from './list.js'\nimport {paragraph} from './paragraph.js'\nimport {root} from './root.js'\nimport {strong} from './strong.js'\nimport {table} from './table.js'\nimport {tableRow} from './table-row.js'\nimport {tableCell} from './table-cell.js'\nimport {text} from './text.js'\nimport {thematicBreak} from './thematic-break.js'\n\n/**\n * Default handlers for nodes.\n */\nexport const handlers = {\n blockquote,\n break: hardBreak,\n code,\n delete: strikethrough,\n emphasis,\n footnoteReference,\n footnote,\n heading,\n html,\n imageReference,\n image,\n inlineCode,\n linkReference,\n link,\n listItem,\n list,\n paragraph,\n root,\n strong,\n table,\n tableCell,\n tableRow,\n text,\n thematicBreak,\n toml: ignore,\n yaml: ignore,\n definition: ignore,\n footnoteDefinition: ignore\n}\n\n// Return nothing for nodes that are ignored.\nfunction ignore() {\n // To do: next major: return `undefined`.\n return null\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Blockquote} Blockquote\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `blockquote` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Blockquote} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function blockquote(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'blockquote',\n properties: {},\n children: state.wrap(state.all(node), true)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Text} Text\n * @typedef {import('mdast').Break} Break\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `break` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Break} node\n * mdast node.\n * @returns {Array<Element | Text>}\n * hast element content.\n */\nexport function hardBreak(state, node) {\n /** @type {Element} */\n const result = {type: 'element', tagName: 'br', properties: {}, children: []}\n state.patch(node, result)\n return [state.applyData(node, result), {type: 'text', value: '\\n'}]\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Code} Code\n * @typedef {import('../state.js').State} State\n\n */\n\n/**\n * Turn an mdast `code` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Code} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function code(state, node) {\n const value = node.value ? node.value + '\\n' : ''\n // To do: next major, use `node.lang` w/o regex, the splitting’s been going\n // on for years in remark now.\n const lang = node.lang ? node.lang.match(/^[^ \\t]+(?=[ \\t]|$)/) : null\n /** @type {Properties} */\n const properties = {}\n\n if (lang) {\n properties.className = ['language-' + lang]\n }\n\n // Create `<code>`.\n /** @type {Element} */\n let result = {\n type: 'element',\n tagName: 'code',\n properties,\n children: [{type: 'text', value}]\n }\n\n if (node.meta) {\n result.data = {meta: node.meta}\n }\n\n state.patch(node, result)\n result = state.applyData(node, result)\n\n // Create `<pre>`.\n result = {type: 'element', tagName: 'pre', properties: {}, children: [result]}\n state.patch(node, result)\n return result\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Delete} Delete\n * @typedef {import('../state.js').State} State\n\n */\n\n/**\n * Turn an mdast `delete` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Delete} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function strikethrough(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'del',\n properties: {},\n children: state.all(node)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Emphasis} Emphasis\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `emphasis` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Emphasis} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function emphasis(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'em',\n properties: {},\n children: state.all(node)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Footnote} Footnote\n * @typedef {import('../state.js').State} State\n */\n\nimport {footnoteReference} from './footnote-reference.js'\n\n// To do: when both:\n// * <https://github.com/micromark/micromark-extension-footnote>\n// * <https://github.com/syntax-tree/mdast-util-footnote>\n// …are archived, remove this (also from mdast).\n// These inline notes are not used in GFM.\n\n/**\n * Turn an mdast `footnote` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Footnote} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function footnote(state, node) {\n const footnoteById = state.footnoteById\n let no = 1\n\n while (no in footnoteById) no++\n\n const identifier = String(no)\n\n footnoteById[identifier] = {\n type: 'footnoteDefinition',\n identifier,\n children: [{type: 'paragraph', children: node.children}],\n position: node.position\n }\n\n return footnoteReference(state, {\n type: 'footnoteReference',\n identifier,\n position: node.position\n })\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Heading} Heading\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `heading` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Heading} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function heading(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'h' + node.depth,\n properties: {},\n children: state.all(node)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').HTML} Html\n * @typedef {import('../state.js').State} State\n * @typedef {import('../../index.js').Raw} Raw\n */\n\n/**\n * Turn an mdast `html` node into hast (`raw` node in dangerous mode, otherwise\n * nothing).\n *\n * @param {State} state\n * Info passed around.\n * @param {Html} node\n * mdast node.\n * @returns {Raw | Element | null}\n * hast node.\n */\nexport function html(state, node) {\n if (state.dangerous) {\n /** @type {Raw} */\n const result = {type: 'raw', value: node.value}\n state.patch(node, result)\n return state.applyData(node, result)\n }\n\n // To do: next major: return `undefined`.\n return null\n}\n","/**\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').ImageReference} ImageReference\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\nimport {revert} from '../revert.js'\n\n/**\n * Turn an mdast `imageReference` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {ImageReference} node\n * mdast node.\n * @returns {ElementContent | Array<ElementContent>}\n * hast node.\n */\nexport function imageReference(state, node) {\n const def = state.definition(node.identifier)\n\n if (!def) {\n return revert(state, node)\n }\n\n /** @type {Properties} */\n const properties = {src: normalizeUri(def.url || ''), alt: node.alt}\n\n if (def.title !== null && def.title !== undefined) {\n properties.title = def.title\n }\n\n /** @type {Element} */\n const result = {type: 'element', tagName: 'img', properties, children: []}\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Image} Image\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `image` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Image} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function image(state, node) {\n /** @type {Properties} */\n const properties = {src: normalizeUri(node.url)}\n\n if (node.alt !== null && node.alt !== undefined) {\n properties.alt = node.alt\n }\n\n if (node.title !== null && node.title !== undefined) {\n properties.title = node.title\n }\n\n /** @type {Element} */\n const result = {type: 'element', tagName: 'img', properties, children: []}\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Text} Text\n * @typedef {import('mdast').InlineCode} InlineCode\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `inlineCode` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {InlineCode} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function inlineCode(state, node) {\n /** @type {Text} */\n const text = {type: 'text', value: node.value.replace(/\\r?\\n|\\r/g, ' ')}\n state.patch(node, text)\n\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'code',\n properties: {},\n children: [text]\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').LinkReference} LinkReference\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\nimport {revert} from '../revert.js'\n\n/**\n * Turn an mdast `linkReference` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {LinkReference} node\n * mdast node.\n * @returns {ElementContent | Array<ElementContent>}\n * hast node.\n */\nexport function linkReference(state, node) {\n const def = state.definition(node.identifier)\n\n if (!def) {\n return revert(state, node)\n }\n\n /** @type {Properties} */\n const properties = {href: normalizeUri(def.url || '')}\n\n if (def.title !== null && def.title !== undefined) {\n properties.title = def.title\n }\n\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'a',\n properties,\n children: state.all(node)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').Link} Link\n * @typedef {import('../state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Turn an mdast `link` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Link} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function link(state, node) {\n /** @type {Properties} */\n const properties = {href: normalizeUri(node.url)}\n\n if (node.title !== null && node.title !== undefined) {\n properties.title = node.title\n }\n\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'a',\n properties,\n children: state.all(node)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('mdast').List} List\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `list` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {List} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function list(state, node) {\n /** @type {Properties} */\n const properties = {}\n const results = state.all(node)\n let index = -1\n\n if (typeof node.start === 'number' && node.start !== 1) {\n properties.start = node.start\n }\n\n // Like GitHub, add a class for custom styling.\n while (++index < results.length) {\n const child = results[index]\n\n if (\n child.type === 'element' &&\n child.tagName === 'li' &&\n child.properties &&\n Array.isArray(child.properties.className) &&\n child.properties.className.includes('task-list-item')\n ) {\n properties.className = ['contains-task-list']\n break\n }\n }\n\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: node.ordered ? 'ol' : 'ul',\n properties,\n children: state.wrap(results, true)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Paragraph} Paragraph\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `paragraph` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Paragraph} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function paragraph(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'p',\n properties: {},\n children: state.all(node)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('mdast').Root} MdastRoot\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `root` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {MdastRoot} node\n * mdast node.\n * @returns {HastRoot | HastElement}\n * hast node.\n */\nexport function root(state, node) {\n /** @type {HastRoot} */\n const result = {type: 'root', children: state.wrap(state.all(node))}\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Strong} Strong\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `strong` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Strong} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function strong(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'strong',\n properties: {},\n children: state.all(node)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').Table} Table\n * @typedef {import('../state.js').State} State\n */\n\nimport {pointStart, pointEnd} from 'unist-util-position'\n\n/**\n * Turn an mdast `table` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {Table} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function table(state, node) {\n const rows = state.all(node)\n const firstRow = rows.shift()\n /** @type {Array<Element>} */\n const tableContent = []\n\n if (firstRow) {\n /** @type {Element} */\n const head = {\n type: 'element',\n tagName: 'thead',\n properties: {},\n children: state.wrap([firstRow], true)\n }\n state.patch(node.children[0], head)\n tableContent.push(head)\n }\n\n if (rows.length > 0) {\n /** @type {Element} */\n const body = {\n type: 'element',\n tagName: 'tbody',\n properties: {},\n children: state.wrap(rows, true)\n }\n\n const start = pointStart(node.children[1])\n const end = pointEnd(node.children[node.children.length - 1])\n if (start.line && end.line) body.position = {start, end}\n tableContent.push(body)\n }\n\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'table',\n properties: {},\n children: state.wrap(tableContent, true)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').TableCell} TableCell\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `tableCell` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {TableCell} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function tableCell(state, node) {\n // Note: this function is normally not called: see `table-row` for how rows\n // and their cells are compiled.\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'td', // Assume body cell.\n properties: {},\n children: state.all(node)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Properties} Properties\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n * @typedef {import('mdast').Content} Content\n * @typedef {import('mdast').Parent} Parent\n * @typedef {import('mdast').Root} Root\n * @typedef {import('mdast').TableRow} TableRow\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * @typedef {Root | Content} Nodes\n * @typedef {Extract<Nodes, Parent>} Parents\n */\n\n/**\n * Turn an mdast `tableRow` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {TableRow} node\n * mdast node.\n * @param {Parents | null | undefined} parent\n * Parent of `node`.\n * @returns {Element}\n * hast node.\n */\nexport function tableRow(state, node, parent) {\n const siblings = parent ? parent.children : undefined\n // Generate a body row when without parent.\n const rowIndex = siblings ? siblings.indexOf(node) : 1\n const tagName = rowIndex === 0 ? 'th' : 'td'\n const align = parent && parent.type === 'table' ? parent.align : undefined\n const length = align ? align.length : node.children.length\n let cellIndex = -1\n /** @type {Array<ElementContent>} */\n const cells = []\n\n while (++cellIndex < length) {\n // Note: can also be undefined.\n const cell = node.children[cellIndex]\n /** @type {Properties} */\n const properties = {}\n const alignValue = align ? align[cellIndex] : undefined\n\n if (alignValue) {\n properties.align = alignValue\n }\n\n /** @type {Element} */\n let result = {type: 'element', tagName, properties, children: []}\n\n if (cell) {\n result.children = state.all(cell)\n state.patch(cell, result)\n result = state.applyData(node, result)\n }\n\n cells.push(result)\n }\n\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'tr',\n properties: {},\n children: state.wrap(cells, true)\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('hast').Text} HastText\n * @typedef {import('mdast').Text} MdastText\n * @typedef {import('../state.js').State} State\n */\n\nimport {trimLines} from 'trim-lines'\n\n/**\n * Turn an mdast `text` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {MdastText} node\n * mdast node.\n * @returns {HastText | HastElement}\n * hast node.\n */\nexport function text(state, node) {\n /** @type {HastText} */\n const result = {type: 'text', value: trimLines(String(node.value))}\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('mdast').ThematicBreak} ThematicBreak\n * @typedef {import('../state.js').State} State\n */\n\n/**\n * Turn an mdast `thematicBreak` node into hast.\n *\n * @param {State} state\n * Info passed around.\n * @param {ThematicBreak} node\n * mdast node.\n * @returns {Element}\n * hast node.\n */\nexport function thematicBreak(state, node) {\n /** @type {Element} */\n const result = {\n type: 'element',\n tagName: 'hr',\n properties: {},\n children: []\n }\n state.patch(node, result)\n return state.applyData(node, result)\n}\n","/**\n * @typedef {import('hast').Content} HastContent\n * @typedef {import('hast').Element} HastElement\n * @typedef {import('hast').ElementContent} HastElementContent\n * @typedef {import('hast').Properties} HastProperties\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('hast').Text} HastText\n *\n * @typedef {import('mdast').Content} MdastContent\n * @typedef {import('mdast').Definition} MdastDefinition\n * @typedef {import('mdast').FootnoteDefinition} MdastFootnoteDefinition\n * @typedef {import('mdast').Parent} MdastParent\n * @typedef {import('mdast').Root} MdastRoot\n */\n\n/**\n * @typedef {HastRoot | HastContent} HastNodes\n * @typedef {MdastRoot | MdastContent} MdastNodes\n * @typedef {Extract<MdastNodes, MdastParent>} MdastParents\n *\n * @typedef EmbeddedHastFields\n * hast fields.\n * @property {string | null | undefined} [hName]\n * Generate a specific element with this tag name instead.\n * @property {HastProperties | null | undefined} [hProperties]\n * Generate an element with these properties instead.\n * @property {Array<HastElementContent> | null | undefined} [hChildren]\n * Generate an element with this content instead.\n *\n * @typedef {Record<string, unknown> & EmbeddedHastFields} MdastData\n * mdast data with embedded hast fields.\n *\n * @typedef {MdastNodes & {data?: MdastData | null | undefined}} MdastNodeWithData\n * mdast node with embedded hast data.\n *\n * @typedef PointLike\n * Point-like value.\n * @property {number | null | undefined} [line]\n * Line.\n * @property {number | null | undefined} [column]\n * Column.\n * @property {number | null | undefined} [offset]\n * Offset.\n *\n * @typedef PositionLike\n * Position-like value.\n * @property {PointLike | null | undefined} [start]\n * Point-like value.\n * @property {PointLike | null | undefined} [end]\n * Point-like value.\n *\n * @callback Handler\n * Handle a node.\n * @param {State} state\n * Info passed around.\n * @param {any} node\n * mdast node to handle.\n * @param {MdastParents | null | undefined} parent\n * Parent of `node`.\n * @returns {HastElementContent | Array<HastElementContent> | null | undefined}\n * hast node.\n *\n * @callback HFunctionProps\n * Signature of `state` for when props are passed.\n * @param {MdastNodes | PositionLike | null | undefined} node\n * mdast node or unist position.\n * @param {string} tagName\n * HTML tag name.\n * @param {HastProperties} props\n * Properties.\n * @param {Array<HastElementContent> | null | undefined} [children]\n * hast content.\n * @returns {HastElement}\n * Compiled element.\n *\n * @callback HFunctionNoProps\n * Signature of `state` for when no props are passed.\n * @param {MdastNodes | PositionLike | null | undefined} node\n * mdast node or unist position.\n * @param {string} tagName\n * HTML tag name.\n * @param {Array<HastElementContent> | null | undefined} [children]\n * hast content.\n * @returns {HastElement}\n * Compiled element.\n *\n * @typedef HFields\n * Info on `state`.\n * @property {boolean} dangerous\n * Whether HTML is allowed.\n * @property {string} clobberPrefix\n * Prefix to use to prevent DOM clobbering.\n * @property {string} footnoteLabel\n * Label to use to introduce the footnote section.\n * @property {string} footnoteLabelTagName\n * HTML used for the footnote label.\n * @property {HastProperties} footnoteLabelProperties\n * Properties on the HTML tag used for the footnote label.\n * @property {string} footnoteBackLabel\n * Label to use from backreferences back to their footnote call.\n * @property {(identifier: string) => MdastDefinition | null} definition\n * Definition cache.\n * @property {Record<string, MdastFootnoteDefinition>} footnoteById\n * Footnote definitions by their identifier.\n * @property {Array<string>} footnoteOrder\n * Identifiers of order when footnote calls first appear in tree order.\n * @property {Record<string, number>} footnoteCounts\n * Counts for how often the same footnote was called.\n * @property {Handlers} handlers\n * Applied handlers.\n * @property {Handler} unknownHandler\n * Handler for any none not in `passThrough` or otherwise handled.\n * @property {(from: MdastNodes, node: HastNodes) => void} patch\n * Copy a node’s positional info.\n * @property {<Type extends HastNodes>(from: MdastNodes, to: Type) => Type | HastElement} applyData\n * Honor the `data` of `from`, and generate an element instead of `node`.\n * @property {(node: MdastNodes, parent: MdastParents | null | undefined) => HastElementContent | Array<HastElementContent> | null | undefined} one\n * Transform an mdast node to hast.\n * @property {(node: MdastNodes) => Array<HastElementContent>} all\n * Transform the children of an mdast parent to hast.\n * @property {<Type extends HastContent>(nodes: Array<Type>, loose?: boolean | null | undefined) => Array<Type | HastText>} wrap\n * Wrap `nodes` with line endings between each node, adds initial/final line endings when `loose`.\n * @property {(left: MdastNodeWithData | PositionLike | null | undefined, right: HastElementContent) => HastElementContent} augment\n * Like `state` but lower-level and usable on non-elements.\n * Deprecated: use `patch` and `applyData`.\n * @property {Array<string>} passThrough\n * List of node types to pass through untouched (except for their children).\n *\n * @typedef Options\n * Configuration (optional).\n * @property {boolean | null | undefined} [allowDangerousHtml=false]\n * Whether to persist raw HTML in markdown in the hast tree.\n * @property {string | null | undefined} [clobberPrefix='user-content-']\n * Prefix to use before the `id` attribute on footnotes to prevent it from\n * *clobbering*.\n * @property {string | null | undefined} [footnoteBackLabel='Back to content']\n * Label to use from backreferences back to their footnote call (affects\n * screen readers).\n * @property {string | null | undefined} [footnoteLabel='Footnotes']\n * Label to use for the footnotes section (affects screen readers).\n * @property {HastProperties | null | undefined} [footnoteLabelProperties={className: ['sr-only']}]\n * Properties to use on the footnote label (note that `id: 'footnote-label'`\n * is always added as footnote calls use it with `aria-describedby` to\n * provide an accessible label).\n * @property {string | null | undefined} [footnoteLabelTagName='h2']\n * Tag name to use for the footnote label.\n * @property {Handlers | null | undefined} [handlers]\n * Extra handlers for nodes.\n * @property {Array<string> | null | undefined} [passThrough]\n * List of custom mdast node types to pass through (keep) in hast (note that\n * the node itself is passed, but eventual children are transformed).\n * @property {Handler | null | undefined} [unknownHandler]\n * Handler for all unknown nodes.\n *\n * @typedef {Record<string, Handler>} Handlers\n * Handle nodes.\n *\n * @typedef {HFunctionProps & HFunctionNoProps & HFields} State\n * Info passed around.\n */\n\nimport {visit} from 'unist-util-visit'\nimport {position, pointStart, pointEnd} from 'unist-util-position'\nimport {generated} from 'unist-util-generated'\nimport {definitions} from 'mdast-util-definitions'\nimport {handlers} from './handlers/index.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * Create `state` from an mdast tree.\n *\n * @param {MdastNodes} tree\n * mdast node to transform.\n * @param {Options | null | undefined} [options]\n * Configuration.\n * @returns {State}\n * `state` function.\n */\nexport function createState(tree, options) {\n const settings = options || {}\n const dangerous = settings.allowDangerousHtml || false\n /** @type {Record<string, MdastFootnoteDefinition>} */\n const footnoteById = {}\n\n // To do: next major: add `options` to state, remove:\n // `dangerous`, `clobberPrefix`, `footnoteLabel`, `footnoteLabelTagName`,\n // `footnoteLabelProperties`, `footnoteBackLabel`, `passThrough`,\n // `unknownHandler`.\n\n // To do: next major: move to `state.options.allowDangerousHtml`.\n state.dangerous = dangerous\n // To do: next major: move to `state.options`.\n state.clobberPrefix =\n settings.clobberPrefix === undefined || settings.clobberPrefix === null\n ? 'user-content-'\n : settings.clobberPrefix\n // To do: next major: move to `state.options`.\n state.footnoteLabel = settings.footnoteLabel || 'Footnotes'\n // To do: next major: move to `state.options`.\n state.footnoteLabelTagName = settings.footnoteLabelTagName || 'h2'\n // To do: next major: move to `state.options`.\n state.footnoteLabelProperties = settings.footnoteLabelProperties || {\n className: ['sr-only']\n }\n // To do: next major: move to `state.options`.\n state.footnoteBackLabel = settings.footnoteBackLabel || 'Back to content'\n // To do: next major: move to `state.options`.\n state.unknownHandler = settings.unknownHandler\n // To do: next major: move to `state.options`.\n state.passThrough = settings.passThrough\n\n state.handlers = {...handlers, ...settings.handlers}\n\n // To do: next major: replace utility with `definitionById` object, so we\n // only walk once (as we need footnotes too).\n state.definition = definitions(tree)\n state.footnoteById = footnoteById\n /** @type {Array<string>} */\n state.footnoteOrder = []\n /** @type {Record<string, number>} */\n state.footnoteCounts = {}\n\n state.patch = patch\n state.applyData = applyData\n state.one = oneBound\n state.all = allBound\n state.wrap = wrap\n // To do: next major: remove `augment`.\n state.augment = augment\n\n visit(tree, 'footnoteDefinition', (definition) => {\n const id = String(definition.identifier).toUpperCase()\n\n // Mimick CM behavior of link definitions.\n // See: <https://github.com/syntax-tree/mdast-util-definitions/blob/8290999/index.js#L26>.\n if (!own.call(footnoteById, id)) {\n footnoteById[id] = definition\n }\n })\n\n // @ts-expect-error Hush, it’s fine!\n return state\n\n /**\n * Finalise the created `right`, a hast node, from `left`, an mdast node.\n *\n * @param {MdastNodeWithData | PositionLike | null | undefined} left\n * @param {HastElementContent} right\n * @returns {HastElementContent}\n */\n /* c8 ignore start */\n // To do: next major: remove.\n function augment(left, right) {\n // Handle `data.hName`, `data.hProperties, `data.hChildren`.\n if (left && 'data' in left && left.data) {\n /** @type {MdastData} */\n const data = left.data\n\n if (data.hName) {\n if (right.type !== 'element') {\n right = {\n type: 'element',\n tagName: '',\n properties: {},\n children: []\n }\n }\n\n right.tagName = data.hName\n }\n\n if (right.type === 'element' && data.hProperties) {\n right.properties = {...right.properties, ...data.hProperties}\n }\n\n if ('children' in right && right.children && data.hChildren) {\n right.children = data.hChildren\n }\n }\n\n if (left) {\n const ctx = 'type' in left ? left : {position: left}\n\n if (!generated(ctx)) {\n // @ts-expect-error: fine.\n right.position = {start: pointStart(ctx), end: pointEnd(ctx)}\n }\n }\n\n return right\n }\n /* c8 ignore stop */\n\n /**\n * Create an element for `node`.\n *\n * @type {HFunctionProps}\n */\n /* c8 ignore start */\n // To do: next major: remove.\n function state(node, tagName, props, children) {\n if (Array.isArray(props)) {\n children = props\n props = {}\n }\n\n // @ts-expect-error augmenting an element yields an element.\n return augment(node, {\n type: 'element',\n tagName,\n properties: props || {},\n children: children || []\n })\n }\n /* c8 ignore stop */\n\n /**\n * Transform an mdast node into a hast node.\n *\n * @param {MdastNodes} node\n * mdast node.\n * @param {MdastParents | null | undefined} [parent]\n * Parent of `node`.\n * @returns {HastElementContent | Array<HastElementContent> | null | undefined}\n * Resulting hast node.\n */\n function oneBound(node, parent) {\n // @ts-expect-error: that’s a state :)\n return one(state, node, parent)\n }\n\n /**\n * Transform the children of an mdast node into hast nodes.\n *\n * @param {MdastNodes} parent\n * mdast node to compile\n * @returns {Array<HastElementContent>}\n * Resulting hast nodes.\n */\n function allBound(parent) {\n // @ts-expect-error: that’s a state :)\n return all(state, parent)\n }\n}\n\n/**\n * Copy a node’s positional info.\n *\n * @param {MdastNodes} from\n * mdast node to copy from.\n * @param {HastNodes} to\n * hast node to copy into.\n * @returns {void}\n * Nothing.\n */\nfunction patch(from, to) {\n if (from.position) to.position = position(from)\n}\n\n/**\n * Honor the `data` of `from` and maybe generate an element instead of `to`.\n *\n * @template {HastNodes} Type\n * Node type.\n * @param {MdastNodes} from\n * mdast node to use data from.\n * @param {Type} to\n * hast node to change.\n * @returns {Type | HastElement}\n * Nothing.\n */\nfunction applyData(from, to) {\n /** @type {Type | HastElement} */\n let result = to\n\n // Handle `data.hName`, `data.hProperties, `data.hChildren`.\n if (from && from.data) {\n const hName = from.data.hName\n const hChildren = from.data.hChildren\n const hProperties = from.data.hProperties\n\n if (typeof hName === 'string') {\n // Transforming the node resulted in an element with a different name\n // than wanted:\n if (result.type === 'element') {\n result.tagName = hName\n }\n // Transforming the node resulted in a non-element, which happens for\n // raw, text, and root nodes (unless custom handlers are passed).\n // The intent is likely to keep the content around (otherwise: pass\n // `hChildren`).\n else {\n result = {\n type: 'element',\n tagName: hName,\n properties: {},\n children: []\n }\n\n // To do: next major: take the children from the `root`, or inject the\n // raw/text/comment or so into the element?\n // if ('children' in node) {\n // // @ts-expect-error: assume `children` are allowed in elements.\n // result.children = node.children\n // } else {\n // // @ts-expect-error: assume `node` is allowed in elements.\n // result.children.push(node)\n // }\n }\n }\n\n if (result.type === 'element' && hProperties) {\n result.properties = {...result.properties, ...hProperties}\n }\n\n if (\n 'children' in result &&\n result.children &&\n hChildren !== null &&\n hChildren !== undefined\n ) {\n // @ts-expect-error: assume valid children are defined.\n result.children = hChildren\n }\n }\n\n return result\n}\n\n/**\n * Transform an mdast node into a hast node.\n *\n * @param {State} state\n * Info passed around.\n * @param {MdastNodes} node\n * mdast node.\n * @param {MdastParents | null | undefined} [parent]\n * Parent of `node`.\n * @returns {HastElementContent | Array<HastElementContent> | null | undefined}\n * Resulting hast node.\n */\n// To do: next major: do not expose, keep bound.\nexport function one(state, node, parent) {\n const type = node && node.type\n\n // Fail on non-nodes.\n if (!type) {\n throw new Error('Expected node, got `' + node + '`')\n }\n\n if (own.call(state.handlers, type)) {\n return state.handlers[type](state, node, parent)\n }\n\n if (state.passThrough && state.passThrough.includes(type)) {\n // To do: next major: deep clone.\n // @ts-expect-error: types of passed through nodes are expected to be added manually.\n return 'children' in node ? {...node, children: all(state, node)} : node\n }\n\n if (state.unknownHandler) {\n return state.unknownHandler(state, node, parent)\n }\n\n return defaultUnknownHandler(state, node)\n}\n\n/**\n * Transform the children of an mdast node into hast nodes.\n *\n * @param {State} state\n * Info passed around.\n * @param {MdastNodes} parent\n * mdast node to compile\n * @returns {Array<HastElementContent>}\n * Resulting hast nodes.\n */\n// To do: next major: do not expose, keep bound.\nexport function all(state, parent) {\n /** @type {Array<HastElementContent>} */\n const values = []\n\n if ('children' in parent) {\n const nodes = parent.children\n let index = -1\n while (++index < nodes.length) {\n const result = one(state, nodes[index], parent)\n\n // To do: see if we van clean this? Can we merge texts?\n if (result) {\n if (index && nodes[index - 1].type === 'break') {\n if (!Array.isArray(result) && result.type === 'text') {\n result.value = result.value.replace(/^\\s+/, '')\n }\n\n if (!Array.isArray(result) && result.type === 'element') {\n const head = result.children[0]\n\n if (head && head.type === 'text') {\n head.value = head.value.replace(/^\\s+/, '')\n }\n }\n }\n\n if (Array.isArray(result)) {\n values.push(...result)\n } else {\n values.push(result)\n }\n }\n }\n }\n\n return values\n}\n\n/**\n * Transform an unknown node.\n *\n * @param {State} state\n * Info passed around.\n * @param {MdastNodes} node\n * Unknown mdast node.\n * @returns {HastText | HastElement}\n * Resulting hast node.\n */\nfunction defaultUnknownHandler(state, node) {\n const data = node.data || {}\n /** @type {HastText | HastElement} */\n const result =\n 'value' in node &&\n !(own.call(data, 'hProperties') || own.call(data, 'hChildren'))\n ? {type: 'text', value: node.value}\n : {\n type: 'element',\n tagName: 'div',\n properties: {},\n children: all(state, node)\n }\n\n state.patch(node, result)\n return state.applyData(node, result)\n}\n\n/**\n * Wrap `nodes` with line endings between each node.\n *\n * @template {HastContent} Type\n * Node type.\n * @param {Array<Type>} nodes\n * List of nodes to wrap.\n * @param {boolean | null | undefined} [loose=false]\n * Whether to add line endings at start and end.\n * @returns {Array<Type | HastText>}\n * Wrapped nodes.\n */\nexport function wrap(nodes, loose) {\n /** @type {Array<Type | HastText>} */\n const result = []\n let index = -1\n\n if (loose) {\n result.push({type: 'text', value: '\\n'})\n }\n\n while (++index < nodes.length) {\n if (index) result.push({type: 'text', value: '\\n'})\n result.push(nodes[index])\n }\n\n if (loose && nodes.length > 0) {\n result.push({type: 'text', value: '\\n'})\n }\n\n return result\n}\n","/**\n * @typedef {import('hast').Content} HastContent\n * @typedef {import('hast').Root} HastRoot\n *\n * @typedef {import('mdast').Content} MdastContent\n * @typedef {import('mdast').Root} MdastRoot\n *\n * @typedef {import('./state.js').Options} Options\n */\n\n/**\n * @typedef {HastRoot | HastContent} HastNodes\n * @typedef {MdastRoot | MdastContent} MdastNodes\n */\n\nimport {footer} from './footer.js'\nimport {createState} from './state.js'\n\n/**\n * Transform mdast to hast.\n *\n * ##### Notes\n *\n * ###### HTML\n *\n * Raw HTML is available in mdast as `html` nodes and can be embedded in hast\n * as semistandard `raw` nodes.\n * Most utilities ignore `raw` nodes but two notable ones don’t:\n *\n * * `hast-util-to-html` also has an option `allowDangerousHtml` which will\n * output the raw HTML.\n * This is typically discouraged as noted by the option name but is useful\n * if you completely trust authors\n * * `hast-util-raw` can handle the raw embedded HTML strings by parsing them\n * into standard hast nodes (`element`, `text`, etc).\n * This is a heavy task as it needs a full HTML parser, but it is the only\n * way to support untrusted content\n *\n * ###### Footnotes\n *\n * Many options supported here relate to footnotes.\n * Footnotes are not specified by CommonMark, which we follow by default.\n * They are supported by GitHub, so footnotes can be enabled in markdown with\n * `mdast-util-gfm`.\n *\n * The options `footnoteBackLabel` and `footnoteLabel` define natural language\n * that explains footnotes, which is hidden for sighted users but shown to\n * assistive technology.\n * When your page is not in English, you must define translated values.\n *\n * Back references use ARIA attributes, but the section label itself uses a\n * heading that is hidden with an `sr-only` class.\n * To show it to sighted users, define different attributes in\n * `footnoteLabelProperties`.\n *\n * ###### Clobbering\n *\n * Footnotes introduces a problem, as it links footnote calls to footnote\n * definitions on the page through `id` attributes generated from user content,\n * which results in DOM clobbering.\n *\n * DOM clobbering is this:\n *\n * ```html\n * <p id=x></p>\n * <script>alert(x) // `x` now refers to the DOM `p#x` element</script>\n * ```\n *\n * Elements by their ID are made available by browsers on the `window` object,\n * which is a security risk.\n * Using a prefix solves this problem.\n *\n * More information on how to handle clobbering and the prefix is explained in\n * Example: headings (DOM clobbering) in `rehype-sanitize`.\n *\n * ###### Unknown nodes\n *\n * Unknown nodes are nodes with a type that isn’t in `handlers` or `passThrough`.\n * The default behavior for unknown nodes is:\n *\n * * when the node has a `value` (and doesn’t have `data.hName`,\n * `data.hProperties`, or `data.hChildren`, see later), create a hast `text`\n * node\n * * otherwise, create a `<div>` element (which could be changed with\n * `data.hName`), with its children mapped from mdast to hast as well\n *\n * This behavior can be changed by passing an `unknownHandler`.\n *\n * @param {MdastNodes} tree\n * mdast tree.\n * @param {Options | null | undefined} [options]\n * Configuration.\n * @returns {HastNodes | null | undefined}\n * hast tree.\n */\n// To do: next major: always return a single `root`.\nexport function toHast(tree, options) {\n const state = createState(tree, options)\n const node = state.one(tree, null)\n const foot = footer(state)\n\n if (foot) {\n // @ts-expect-error If there’s a footer, there were definitions, meaning block\n // content.\n // So assume `node` is a parent node.\n node.children.push({type: 'text', value: '\\n'}, foot)\n }\n\n // To do: next major: always return root?\n return Array.isArray(node) ? {type: 'root', children: node} : node\n}\n","/**\n * @typedef PointLike\n * @property {number | null | undefined} [line]\n * @property {number | null | undefined} [column]\n * @property {number | null | undefined} [offset]\n *\n * @typedef PositionLike\n * @property {PointLike | null | undefined} [start]\n * @property {PointLike | null | undefined} [end]\n *\n * @typedef NodeLike\n * @property {PositionLike | null | undefined} [position]\n */\n\n/**\n * Check if `node` is generated.\n *\n * @param {NodeLike | null | undefined} [node]\n * Node to check.\n * @returns {boolean}\n * Whether `node` is generated (does not have positional info).\n */\nexport function generated(node) {\n return (\n !node ||\n !node.position ||\n !node.position.start ||\n !node.position.start.line ||\n !node.position.start.column ||\n !node.position.end ||\n !node.position.end.line ||\n !node.position.end.column\n )\n}\n","/**\n * @typedef {import('hast').Element} Element\n * @typedef {import('hast').ElementContent} ElementContent\n *\n * @typedef {import('./state.js').State} State\n */\n\nimport {normalizeUri} from 'micromark-util-sanitize-uri'\n\n/**\n * Generate a hast footer for called footnote definitions.\n *\n * @param {State} state\n * Info passed around.\n * @returns {Element | undefined}\n * `section` element or `undefined`.\n */\nexport function footer(state) {\n /** @type {Array<ElementContent>} */\n const listItems = []\n let index = -1\n\n while (++index < state.footnoteOrder.length) {\n const def = state.footnoteById[state.footnoteOrder[index]]\n\n if (!def) {\n continue\n }\n\n const content = state.all(def)\n const id = String(def.identifier).toUpperCase()\n const safeId = normalizeUri(id.toLowerCase())\n let referenceIndex = 0\n /** @type {Array<ElementContent>} */\n const backReferences = []\n\n while (++referenceIndex <= state.footnoteCounts[id]) {\n /** @type {Element} */\n const backReference = {\n type: 'element',\n tagName: 'a',\n properties: {\n href:\n '#' +\n state.clobberPrefix +\n 'fnref-' +\n safeId +\n (referenceIndex > 1 ? '-' + referenceIndex : ''),\n dataFootnoteBackref: true,\n className: ['data-footnote-backref'],\n ariaLabel: state.footnoteBackLabel\n },\n children: [{type: 'text', value: '↩'}]\n }\n\n if (referenceIndex > 1) {\n backReference.children.push({\n type: 'element',\n tagName: 'sup',\n children: [{type: 'text', value: String(referenceIndex)}]\n })\n }\n\n if (backReferences.length > 0) {\n backReferences.push({type: 'text', value: ' '})\n }\n\n backReferences.push(backReference)\n }\n\n const tail = content[content.length - 1]\n\n if (tail && tail.type === 'element' && tail.tagName === 'p') {\n const tailTail = tail.children[tail.children.length - 1]\n if (tailTail && tailTail.type === 'text') {\n tailTail.value += ' '\n } else {\n tail.children.push({type: 'text', value: ' '})\n }\n\n tail.children.push(...backReferences)\n } else {\n content.push(...backReferences)\n }\n\n /** @type {Element} */\n const listItem = {\n type: 'element',\n tagName: 'li',\n properties: {id: state.clobberPrefix + 'fn-' + safeId},\n children: state.wrap(content, true)\n }\n\n state.patch(def, listItem)\n\n listItems.push(listItem)\n }\n\n if (listItems.length === 0) {\n return\n }\n\n return {\n type: 'element',\n tagName: 'section',\n properties: {dataFootnotes: true, className: ['footnotes']},\n children: [\n {\n type: 'element',\n tagName: state.footnoteLabelTagName,\n properties: {\n // To do: use structured clone.\n ...JSON.parse(JSON.stringify(state.footnoteLabelProperties)),\n id: 'footnote-label'\n },\n children: [{type: 'text', value: state.footnoteLabel}]\n },\n {type: 'text', value: '\\n'},\n {\n type: 'element',\n tagName: 'ol',\n properties: {},\n children: state.wrap(listItems, true)\n },\n {type: 'text', value: '\\n'}\n ]\n }\n}\n","/**\n * @typedef {import('hast').Root} HastRoot\n * @typedef {import('mdast').Root} MdastRoot\n * @typedef {import('mdast-util-to-hast').Options} Options\n * @typedef {import('unified').Processor<any, any, any, any>} Processor\n *\n * @typedef {import('mdast-util-to-hast')} DoNotTouchAsThisImportIncludesRawInTree\n */\n\nimport {toHast} from 'mdast-util-to-hast'\n\n// Note: the `<MdastRoot, HastRoot>` overload doesn’t seem to work :'(\n\n/**\n * Plugin that turns markdown into HTML to support rehype.\n *\n * * If a destination processor is given, that processor runs with a new HTML\n * (hast) tree (bridge-mode).\n * As the given processor runs with a hast tree, and rehype plugins support\n * hast, that means rehype plugins can be used with the given processor.\n * The hast tree is discarded in the end.\n * It’s highly unlikely that you want to do this.\n * * The common case is to not pass a destination processor, in which case the\n * current processor continues running with a new HTML (hast) tree\n * (mutate-mode).\n * As the current processor continues with a hast tree, and rehype plugins\n * support hast, that means rehype plugins can be used after\n * `remark-rehype`.\n * It’s likely that this is what you want to do.\n *\n * @param destination\n * Optional unified processor.\n * @param options\n * Options passed to `mdast-util-to-hast`.\n */\nconst remarkRehype =\n /** @type {(import('unified').Plugin<[Processor, Options?]|[null|undefined, Options?]|[Options]|[], MdastRoot>)} */\n (\n function (destination, options) {\n return destination && 'run' in destination\n ? bridge(destination, options)\n : mutate(destination || options)\n }\n )\n\nexport default remarkRehype\n\n/**\n * Bridge-mode.\n * Runs the destination with the new hast tree.\n *\n * @type {import('unified').Plugin<[Processor, Options?], MdastRoot>}\n */\nfunction bridge(destination, options) {\n return (node, file, next) => {\n destination.run(toHast(node, options), file, (error) => {\n next(error)\n })\n }\n}\n\n/**\n * Mutate-mode.\n * Further plugins run on the hast tree.\n *\n * @type {import('unified').Plugin<[Options?]|void[], MdastRoot, HastRoot>}\n */\nfunction mutate(options) {\n // @ts-expect-error: assume a corresponding node is returned by `toHast`.\n return (node) => toHast(node, options)\n}\n","/**\n * Parse space-separated tokens to an array of strings.\n *\n * @param {string} value\n * Space-separated tokens.\n * @returns {Array<string>}\n * List of tokens.\n */\nexport function parse(value) {\n const input = String(value || '').trim()\n return input ? input.split(/[ \\t\\n\\r\\f]+/g) : []\n}\n\n/**\n * Serialize an array of strings as space separated-tokens.\n *\n * @param {Array<string|number>} values\n * List of tokens.\n * @returns {string}\n * Space-separated tokens.\n */\nexport function stringify(values) {\n return values.join(' ').trim()\n}\n","/**\n * Throw a given error.\n *\n * @param {Error|null|undefined} [error]\n * Maybe error.\n * @returns {asserts error is null|undefined}\n */\nexport function bail(error) {\n if (error) {\n throw error\n }\n}\n","export default function isPlainObject(value) {\n\tif (typeof value !== 'object' || value === null) {\n\t\treturn false;\n\t}\n\n\tconst prototype = Object.getPrototypeOf(value);\n\treturn (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in value) && !(Symbol.iterator in value);\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Point} Point\n * @typedef {object & {type: string, position?: Position | undefined}} NodeLike\n */\n\nimport {stringifyPosition} from 'unist-util-stringify-position'\n\n/**\n * Message.\n */\nexport class VFileMessage extends Error {\n /**\n * Create a message for `reason` at `place` from `origin`.\n *\n * When an error is passed in as `reason`, the `stack` is copied.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n *\n * > 👉 **Note**: you should use markdown.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns\n * Instance of `VFileMessage`.\n */\n // To do: next major: expose `undefined` everywhere instead of `null`.\n constructor(reason, place, origin) {\n /** @type {[string | null, string | null]} */\n const parts = [null, null]\n /** @type {Position} */\n let position = {\n // @ts-expect-error: we always follows the structure of `position`.\n start: {line: null, column: null},\n // @ts-expect-error: \"\n end: {line: null, column: null}\n }\n\n super()\n\n if (typeof place === 'string') {\n origin = place\n place = undefined\n }\n\n if (typeof origin === 'string') {\n const index = origin.indexOf(':')\n\n if (index === -1) {\n parts[1] = origin\n } else {\n parts[0] = origin.slice(0, index)\n parts[1] = origin.slice(index + 1)\n }\n }\n\n if (place) {\n // Node.\n if ('type' in place || 'position' in place) {\n if (place.position) {\n // To do: next major: deep clone.\n // @ts-expect-error: looks like a position.\n position = place.position\n }\n }\n // Position.\n else if ('start' in place || 'end' in place) {\n // @ts-expect-error: looks like a position.\n // To do: next major: deep clone.\n position = place\n }\n // Point.\n else if ('line' in place || 'column' in place) {\n // To do: next major: deep clone.\n position.start = place\n }\n }\n\n // Fields from `Error`.\n /**\n * Serialized positional info of error.\n *\n * On normal errors, this would be something like `ParseError`, buit in\n * `VFile` messages we use this space to show where an error happened.\n */\n this.name = stringifyPosition(place) || '1:1'\n\n /**\n * Reason for message.\n *\n * @type {string}\n */\n this.message = typeof reason === 'object' ? reason.message : reason\n\n /**\n * Stack of message.\n *\n * This is used by normal errors to show where something happened in\n * programming code, irrelevant for `VFile` messages,\n *\n * @type {string}\n */\n this.stack = ''\n\n if (typeof reason === 'object' && reason.stack) {\n this.stack = reason.stack\n }\n\n /**\n * Reason for message.\n *\n * > 👉 **Note**: you should use markdown.\n *\n * @type {string}\n */\n this.reason = this.message\n\n /* eslint-disable no-unused-expressions */\n /**\n * State of problem.\n *\n * * `true` — marks associated file as no longer processable (error)\n * * `false` — necessitates a (potential) change (warning)\n * * `null | undefined` — for things that might not need changing (info)\n *\n * @type {boolean | null | undefined}\n */\n this.fatal\n\n /**\n * Starting line of error.\n *\n * @type {number | null}\n */\n this.line = position.start.line\n\n /**\n * Starting column of error.\n *\n * @type {number | null}\n */\n this.column = position.start.column\n\n /**\n * Full unist position.\n *\n * @type {Position | null}\n */\n this.position = position\n\n /**\n * Namespace of message (example: `'my-package'`).\n *\n * @type {string | null}\n */\n this.source = parts[0]\n\n /**\n * Category of message (example: `'my-rule'`).\n *\n * @type {string | null}\n */\n this.ruleId = parts[1]\n\n /**\n * Path of a file (used throughout the `VFile` ecosystem).\n *\n * @type {string | null}\n */\n this.file\n\n // The following fields are “well known”.\n // Not standard.\n // Feel free to add other non-standard fields to your messages.\n\n /**\n * Specify the source value that’s being reported, which is deemed\n * incorrect.\n *\n * @type {string | null}\n */\n this.actual\n\n /**\n * Suggest acceptable values that can be used instead of `actual`.\n *\n * @type {Array<string> | null}\n */\n this.expected\n\n /**\n * Link to docs for the message.\n *\n * > 👉 **Note**: this must be an absolute URL that can be passed as `x`\n * > to `new URL(x)`.\n *\n * @type {string | null}\n */\n this.url\n\n /**\n * Long form description of the message (you should use markdown).\n *\n * @type {string | null}\n */\n this.note\n /* eslint-enable no-unused-expressions */\n }\n}\n\nVFileMessage.prototype.file = ''\nVFileMessage.prototype.name = ''\nVFileMessage.prototype.reason = ''\nVFileMessage.prototype.message = ''\nVFileMessage.prototype.stack = ''\nVFileMessage.prototype.fatal = null\nVFileMessage.prototype.column = null\nVFileMessage.prototype.line = null\nVFileMessage.prototype.source = null\nVFileMessage.prototype.ruleId = null\nVFileMessage.prototype.position = null\n","// A derivative work based on:\n// <https://github.com/browserify/path-browserify>.\n// Which is licensed:\n//\n// MIT License\n//\n// Copyright (c) 2013 James Halliday\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy of\n// this software and associated documentation files (the \"Software\"), to deal in\n// the Software without restriction, including without limitation the rights to\n// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n// the Software, and to permit persons to whom the Software is furnished to do so,\n// subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in all\n// copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n// A derivative work based on:\n//\n// Parts of that are extracted from Node’s internal `path` module:\n// <https://github.com/nodejs/node/blob/master/lib/path.js>.\n// Which is licensed:\n//\n// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nexport const path = {basename, dirname, extname, join, sep: '/'}\n\n/* eslint-disable max-depth, complexity */\n\n/**\n * Get the basename from a path.\n *\n * @param {string} path\n * File path.\n * @param {string | undefined} [ext]\n * Extension to strip.\n * @returns {string}\n * Stem or basename.\n */\nfunction basename(path, ext) {\n if (ext !== undefined && typeof ext !== 'string') {\n throw new TypeError('\"ext\" argument must be a string')\n }\n\n assertPath(path)\n let start = 0\n let end = -1\n let index = path.length\n /** @type {boolean | undefined} */\n let seenNonSlash\n\n if (ext === undefined || ext.length === 0 || ext.length > path.length) {\n while (index--) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (seenNonSlash) {\n start = index + 1\n break\n }\n } else if (end < 0) {\n // We saw the first non-path separator, mark this as the end of our\n // path component.\n seenNonSlash = true\n end = index + 1\n }\n }\n\n return end < 0 ? '' : path.slice(start, end)\n }\n\n if (ext === path) {\n return ''\n }\n\n let firstNonSlashEnd = -1\n let extIndex = ext.length - 1\n\n while (index--) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (seenNonSlash) {\n start = index + 1\n break\n }\n } else {\n if (firstNonSlashEnd < 0) {\n // We saw the first non-path separator, remember this index in case\n // we need it if the extension ends up not matching.\n seenNonSlash = true\n firstNonSlashEnd = index + 1\n }\n\n if (extIndex > -1) {\n // Try to match the explicit extension.\n if (path.charCodeAt(index) === ext.charCodeAt(extIndex--)) {\n if (extIndex < 0) {\n // We matched the extension, so mark this as the end of our path\n // component\n end = index\n }\n } else {\n // Extension does not match, so our result is the entire path\n // component\n extIndex = -1\n end = firstNonSlashEnd\n }\n }\n }\n }\n\n if (start === end) {\n end = firstNonSlashEnd\n } else if (end < 0) {\n end = path.length\n }\n\n return path.slice(start, end)\n}\n\n/**\n * Get the dirname from a path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * File path.\n */\nfunction dirname(path) {\n assertPath(path)\n\n if (path.length === 0) {\n return '.'\n }\n\n let end = -1\n let index = path.length\n /** @type {boolean | undefined} */\n let unmatchedSlash\n\n // Prefix `--` is important to not run on `0`.\n while (--index) {\n if (path.charCodeAt(index) === 47 /* `/` */) {\n if (unmatchedSlash) {\n end = index\n break\n }\n } else if (!unmatchedSlash) {\n // We saw the first non-path separator\n unmatchedSlash = true\n }\n }\n\n return end < 0\n ? path.charCodeAt(0) === 47 /* `/` */\n ? '/'\n : '.'\n : end === 1 && path.charCodeAt(0) === 47 /* `/` */\n ? '//'\n : path.slice(0, end)\n}\n\n/**\n * Get an extname from a path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * Extname.\n */\nfunction extname(path) {\n assertPath(path)\n\n let index = path.length\n\n let end = -1\n let startPart = 0\n let startDot = -1\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find.\n let preDotState = 0\n /** @type {boolean | undefined} */\n let unmatchedSlash\n\n while (index--) {\n const code = path.charCodeAt(index)\n\n if (code === 47 /* `/` */) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now.\n if (unmatchedSlash) {\n startPart = index + 1\n break\n }\n\n continue\n }\n\n if (end < 0) {\n // We saw the first non-path separator, mark this as the end of our\n // extension.\n unmatchedSlash = true\n end = index + 1\n }\n\n if (code === 46 /* `.` */) {\n // If this is our first dot, mark it as the start of our extension.\n if (startDot < 0) {\n startDot = index\n } else if (preDotState !== 1) {\n preDotState = 1\n }\n } else if (startDot > -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension.\n preDotState = -1\n }\n }\n\n if (\n startDot < 0 ||\n end < 0 ||\n // We saw a non-dot character immediately before the dot.\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly `..`.\n (preDotState === 1 && startDot === end - 1 && startDot === startPart + 1)\n ) {\n return ''\n }\n\n return path.slice(startDot, end)\n}\n\n/**\n * Join segments from a path.\n *\n * @param {Array<string>} segments\n * Path segments.\n * @returns {string}\n * File path.\n */\nfunction join(...segments) {\n let index = -1\n /** @type {string | undefined} */\n let joined\n\n while (++index < segments.length) {\n assertPath(segments[index])\n\n if (segments[index]) {\n joined =\n joined === undefined ? segments[index] : joined + '/' + segments[index]\n }\n }\n\n return joined === undefined ? '.' : normalize(joined)\n}\n\n/**\n * Normalize a basic file path.\n *\n * @param {string} path\n * File path.\n * @returns {string}\n * File path.\n */\n// Note: `normalize` is not exposed as `path.normalize`, so some code is\n// manually removed from it.\nfunction normalize(path) {\n assertPath(path)\n\n const absolute = path.charCodeAt(0) === 47 /* `/` */\n\n // Normalize the path according to POSIX rules.\n let value = normalizeString(path, !absolute)\n\n if (value.length === 0 && !absolute) {\n value = '.'\n }\n\n if (value.length > 0 && path.charCodeAt(path.length - 1) === 47 /* / */) {\n value += '/'\n }\n\n return absolute ? '/' + value : value\n}\n\n/**\n * Resolve `.` and `..` elements in a path with directory names.\n *\n * @param {string} path\n * File path.\n * @param {boolean} allowAboveRoot\n * Whether `..` can move above root.\n * @returns {string}\n * File path.\n */\nfunction normalizeString(path, allowAboveRoot) {\n let result = ''\n let lastSegmentLength = 0\n let lastSlash = -1\n let dots = 0\n let index = -1\n /** @type {number | undefined} */\n let code\n /** @type {number} */\n let lastSlashIndex\n\n while (++index <= path.length) {\n if (index < path.length) {\n code = path.charCodeAt(index)\n } else if (code === 47 /* `/` */) {\n break\n } else {\n code = 47 /* `/` */\n }\n\n if (code === 47 /* `/` */) {\n if (lastSlash === index - 1 || dots === 1) {\n // Empty.\n } else if (lastSlash !== index - 1 && dots === 2) {\n if (\n result.length < 2 ||\n lastSegmentLength !== 2 ||\n result.charCodeAt(result.length - 1) !== 46 /* `.` */ ||\n result.charCodeAt(result.length - 2) !== 46 /* `.` */\n ) {\n if (result.length > 2) {\n lastSlashIndex = result.lastIndexOf('/')\n\n if (lastSlashIndex !== result.length - 1) {\n if (lastSlashIndex < 0) {\n result = ''\n lastSegmentLength = 0\n } else {\n result = result.slice(0, lastSlashIndex)\n lastSegmentLength = result.length - 1 - result.lastIndexOf('/')\n }\n\n lastSlash = index\n dots = 0\n continue\n }\n } else if (result.length > 0) {\n result = ''\n lastSegmentLength = 0\n lastSlash = index\n dots = 0\n continue\n }\n }\n\n if (allowAboveRoot) {\n result = result.length > 0 ? result + '/..' : '..'\n lastSegmentLength = 2\n }\n } else {\n if (result.length > 0) {\n result += '/' + path.slice(lastSlash + 1, index)\n } else {\n result = path.slice(lastSlash + 1, index)\n }\n\n lastSegmentLength = index - lastSlash - 1\n }\n\n lastSlash = index\n dots = 0\n } else if (code === 46 /* `.` */ && dots > -1) {\n dots++\n } else {\n dots = -1\n }\n }\n\n return result\n}\n\n/**\n * Make sure `path` is a string.\n *\n * @param {string} path\n * File path.\n * @returns {asserts path is string}\n * Nothing.\n */\nfunction assertPath(path) {\n if (typeof path !== 'string') {\n throw new TypeError(\n 'Path must be a string. Received ' + JSON.stringify(path)\n )\n }\n}\n\n/* eslint-enable max-depth, complexity */\n","// Somewhat based on:\n// <https://github.com/defunctzombie/node-process/blob/master/browser.js>.\n// But I don’t think one tiny line of code can be copyrighted. 😅\nexport const proc = {cwd}\n\nfunction cwd() {\n return '/'\n}\n","/**\n * @typedef URL\n * @property {string} hash\n * @property {string} host\n * @property {string} hostname\n * @property {string} href\n * @property {string} origin\n * @property {string} password\n * @property {string} pathname\n * @property {string} port\n * @property {string} protocol\n * @property {string} search\n * @property {any} searchParams\n * @property {string} username\n * @property {() => string} toString\n * @property {() => string} toJSON\n */\n\n/**\n * Check if `fileUrlOrPath` looks like a URL.\n *\n * @param {unknown} fileUrlOrPath\n * File path or URL.\n * @returns {fileUrlOrPath is URL}\n * Whether it’s a URL.\n */\n// From: <https://github.com/nodejs/node/blob/fcf8ba4/lib/internal/url.js#L1501>\nexport function isUrl(fileUrlOrPath) {\n return (\n fileUrlOrPath !== null &&\n typeof fileUrlOrPath === 'object' &&\n // @ts-expect-error: indexable.\n fileUrlOrPath.href &&\n // @ts-expect-error: indexable.\n fileUrlOrPath.origin\n )\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Position} Position\n * @typedef {import('unist').Point} Point\n * @typedef {import('./minurl.shared.js').URL} URL\n * @typedef {import('../index.js').Data} Data\n * @typedef {import('../index.js').Value} Value\n */\n\n/**\n * @typedef {Record<string, unknown> & {type: string, position?: Position | undefined}} NodeLike\n *\n * @typedef {'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'base64url' | 'latin1' | 'binary' | 'hex'} BufferEncoding\n * Encodings supported by the buffer class.\n *\n * This is a copy of the types from Node, copied to prevent Node globals from\n * being needed.\n * Copied from: <https://github.com/DefinitelyTyped/DefinitelyTyped/blob/90a4ec8/types/node/buffer.d.ts#L170>\n *\n * @typedef {Options | URL | Value | VFile} Compatible\n * Things that can be passed to the constructor.\n *\n * @typedef VFileCoreOptions\n * Set multiple values.\n * @property {Value | null | undefined} [value]\n * Set `value`.\n * @property {string | null | undefined} [cwd]\n * Set `cwd`.\n * @property {Array<string> | null | undefined} [history]\n * Set `history`.\n * @property {URL | string | null | undefined} [path]\n * Set `path`.\n * @property {string | null | undefined} [basename]\n * Set `basename`.\n * @property {string | null | undefined} [stem]\n * Set `stem`.\n * @property {string | null | undefined} [extname]\n * Set `extname`.\n * @property {string | null | undefined} [dirname]\n * Set `dirname`.\n * @property {Data | null | undefined} [data]\n * Set `data`.\n *\n * @typedef Map\n * Raw source map.\n *\n * See:\n * <https://github.com/mozilla/source-map/blob/58819f0/source-map.d.ts#L15-L23>.\n * @property {number} version\n * Which version of the source map spec this map is following.\n * @property {Array<string>} sources\n * An array of URLs to the original source files.\n * @property {Array<string>} names\n * An array of identifiers which can be referenced by individual mappings.\n * @property {string | undefined} [sourceRoot]\n * The URL root from which all sources are relative.\n * @property {Array<string> | undefined} [sourcesContent]\n * An array of contents of the original source files.\n * @property {string} mappings\n * A string of base64 VLQs which contain the actual mappings.\n * @property {string} file\n * The generated file this source map is associated with.\n *\n * @typedef {{[key: string]: unknown} & VFileCoreOptions} Options\n * Configuration.\n *\n * A bunch of keys that will be shallow copied over to the new file.\n *\n * @typedef {Record<string, unknown>} ReporterSettings\n * Configuration for reporters.\n */\n\n/**\n * @template {ReporterSettings} Settings\n * Options type.\n * @callback Reporter\n * Type for a reporter.\n * @param {Array<VFile>} files\n * Files to report.\n * @param {Settings} options\n * Configuration.\n * @returns {string}\n * Report.\n */\n\nimport bufferLike from 'is-buffer'\nimport {VFileMessage} from 'vfile-message'\nimport {path} from './minpath.js'\nimport {proc} from './minproc.js'\nimport {urlToPath, isUrl} from './minurl.js'\n\n/**\n * Order of setting (least specific to most), we need this because otherwise\n * `{stem: 'a', path: '~/b.js'}` would throw, as a path is needed before a\n * stem can be set.\n *\n * @type {Array<'basename' | 'dirname' | 'extname' | 'history' | 'path' | 'stem'>}\n */\nconst order = ['history', 'path', 'basename', 'stem', 'extname', 'dirname']\n\nexport class VFile {\n /**\n * Create a new virtual file.\n *\n * `options` is treated as:\n *\n * * `string` or `Buffer` — `{value: options}`\n * * `URL` — `{path: options}`\n * * `VFile` — shallow copies its data over to the new file\n * * `object` — all fields are shallow copied over to the new file\n *\n * Path related fields are set in the following order (least specific to\n * most specific): `history`, `path`, `basename`, `stem`, `extname`,\n * `dirname`.\n *\n * You cannot set `dirname` or `extname` without setting either `history`,\n * `path`, `basename`, or `stem` too.\n *\n * @param {Compatible | null | undefined} [value]\n * File value.\n * @returns\n * New instance.\n */\n constructor(value) {\n /** @type {Options | VFile} */\n let options\n\n if (!value) {\n options = {}\n } else if (typeof value === 'string' || buffer(value)) {\n options = {value}\n } else if (isUrl(value)) {\n options = {path: value}\n } else {\n options = value\n }\n\n /**\n * Place to store custom information (default: `{}`).\n *\n * It’s OK to store custom data directly on the file but moving it to\n * `data` is recommended.\n *\n * @type {Data}\n */\n this.data = {}\n\n /**\n * List of messages associated with the file.\n *\n * @type {Array<VFileMessage>}\n */\n this.messages = []\n\n /**\n * List of filepaths the file moved between.\n *\n * The first is the original path and the last is the current path.\n *\n * @type {Array<string>}\n */\n this.history = []\n\n /**\n * Base of `path` (default: `process.cwd()` or `'/'` in browsers).\n *\n * @type {string}\n */\n this.cwd = proc.cwd()\n\n /* eslint-disable no-unused-expressions */\n /**\n * Raw value.\n *\n * @type {Value}\n */\n this.value\n\n // The below are non-standard, they are “well-known”.\n // As in, used in several tools.\n\n /**\n * Whether a file was saved to disk.\n *\n * This is used by vfile reporters.\n *\n * @type {boolean}\n */\n this.stored\n\n /**\n * Custom, non-string, compiled, representation.\n *\n * This is used by unified to store non-string results.\n * One example is when turning markdown into React nodes.\n *\n * @type {unknown}\n */\n this.result\n\n /**\n * Source map.\n *\n * This type is equivalent to the `RawSourceMap` type from the `source-map`\n * module.\n *\n * @type {Map | null | undefined}\n */\n this.map\n /* eslint-enable no-unused-expressions */\n\n // Set path related properties in the correct order.\n let index = -1\n\n while (++index < order.length) {\n const prop = order[index]\n\n // Note: we specifically use `in` instead of `hasOwnProperty` to accept\n // `vfile`s too.\n if (\n prop in options &&\n options[prop] !== undefined &&\n options[prop] !== null\n ) {\n // @ts-expect-error: TS doesn’t understand basic reality.\n this[prop] = prop === 'history' ? [...options[prop]] : options[prop]\n }\n }\n\n /** @type {string} */\n let prop\n\n // Set non-path related properties.\n for (prop in options) {\n // @ts-expect-error: fine to set other things.\n if (!order.includes(prop)) {\n // @ts-expect-error: fine to set other things.\n this[prop] = options[prop]\n }\n }\n }\n\n /**\n * Get the full path (example: `'~/index.min.js'`).\n *\n * @returns {string}\n */\n get path() {\n return this.history[this.history.length - 1]\n }\n\n /**\n * Set the full path (example: `'~/index.min.js'`).\n *\n * Cannot be nullified.\n * You can set a file URL (a `URL` object with a `file:` protocol) which will\n * be turned into a path with `url.fileURLToPath`.\n *\n * @param {string | URL} path\n */\n set path(path) {\n if (isUrl(path)) {\n path = urlToPath(path)\n }\n\n assertNonEmpty(path, 'path')\n\n if (this.path !== path) {\n this.history.push(path)\n }\n }\n\n /**\n * Get the parent path (example: `'~'`).\n */\n get dirname() {\n return typeof this.path === 'string' ? path.dirname(this.path) : undefined\n }\n\n /**\n * Set the parent path (example: `'~'`).\n *\n * Cannot be set if there’s no `path` yet.\n */\n set dirname(dirname) {\n assertPath(this.basename, 'dirname')\n this.path = path.join(dirname || '', this.basename)\n }\n\n /**\n * Get the basename (including extname) (example: `'index.min.js'`).\n */\n get basename() {\n return typeof this.path === 'string' ? path.basename(this.path) : undefined\n }\n\n /**\n * Set basename (including extname) (`'index.min.js'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be nullified (use `file.path = file.dirname` instead).\n */\n set basename(basename) {\n assertNonEmpty(basename, 'basename')\n assertPart(basename, 'basename')\n this.path = path.join(this.dirname || '', basename)\n }\n\n /**\n * Get the extname (including dot) (example: `'.js'`).\n */\n get extname() {\n return typeof this.path === 'string' ? path.extname(this.path) : undefined\n }\n\n /**\n * Set the extname (including dot) (example: `'.js'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be set if there’s no `path` yet.\n */\n set extname(extname) {\n assertPart(extname, 'extname')\n assertPath(this.dirname, 'extname')\n\n if (extname) {\n if (extname.charCodeAt(0) !== 46 /* `.` */) {\n throw new Error('`extname` must start with `.`')\n }\n\n if (extname.includes('.', 1)) {\n throw new Error('`extname` cannot contain multiple dots')\n }\n }\n\n this.path = path.join(this.dirname, this.stem + (extname || ''))\n }\n\n /**\n * Get the stem (basename w/o extname) (example: `'index.min'`).\n */\n get stem() {\n return typeof this.path === 'string'\n ? path.basename(this.path, this.extname)\n : undefined\n }\n\n /**\n * Set the stem (basename w/o extname) (example: `'index.min'`).\n *\n * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\\'`\n * on windows).\n * Cannot be nullified (use `file.path = file.dirname` instead).\n */\n set stem(stem) {\n assertNonEmpty(stem, 'stem')\n assertPart(stem, 'stem')\n this.path = path.join(this.dirname || '', stem + (this.extname || ''))\n }\n\n /**\n * Serialize the file.\n *\n * @param {BufferEncoding | null | undefined} [encoding='utf8']\n * Character encoding to understand `value` as when it’s a `Buffer`\n * (default: `'utf8'`).\n * @returns {string}\n * Serialized file.\n */\n toString(encoding) {\n return (this.value || '').toString(encoding || undefined)\n }\n\n /**\n * Create a warning message associated with the file.\n *\n * Its `fatal` is set to `false` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {VFileMessage}\n * Message.\n */\n message(reason, place, origin) {\n const message = new VFileMessage(reason, place, origin)\n\n if (this.path) {\n message.name = this.path + ':' + message.name\n message.file = this.path\n }\n\n message.fatal = false\n\n this.messages.push(message)\n\n return message\n }\n\n /**\n * Create an info message associated with the file.\n *\n * Its `fatal` is set to `null` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {VFileMessage}\n * Message.\n */\n info(reason, place, origin) {\n const message = this.message(reason, place, origin)\n\n message.fatal = null\n\n return message\n }\n\n /**\n * Create a fatal error associated with the file.\n *\n * Its `fatal` is set to `true` and `file` is set to the current file path.\n * Its added to `file.messages`.\n *\n * > 👉 **Note**: a fatal error means that a file is no longer processable.\n *\n * @param {string | Error | VFileMessage} reason\n * Reason for message, uses the stack and message of the error if given.\n * @param {Node | NodeLike | Position | Point | null | undefined} [place]\n * Place in file where the message occurred.\n * @param {string | null | undefined} [origin]\n * Place in code where the message originates (example:\n * `'my-package:my-rule'` or `'my-rule'`).\n * @returns {never}\n * Message.\n * @throws {VFileMessage}\n * Message.\n */\n fail(reason, place, origin) {\n const message = this.message(reason, place, origin)\n\n message.fatal = true\n\n throw message\n }\n}\n\n/**\n * Assert that `part` is not a path (as in, does not contain `path.sep`).\n *\n * @param {string | null | undefined} part\n * File path part.\n * @param {string} name\n * Part name.\n * @returns {void}\n * Nothing.\n */\nfunction assertPart(part, name) {\n if (part && part.includes(path.sep)) {\n throw new Error(\n '`' + name + '` cannot be a path: did not expect `' + path.sep + '`'\n )\n }\n}\n\n/**\n * Assert that `part` is not empty.\n *\n * @param {string | undefined} part\n * Thing.\n * @param {string} name\n * Part name.\n * @returns {asserts part is string}\n * Nothing.\n */\nfunction assertNonEmpty(part, name) {\n if (!part) {\n throw new Error('`' + name + '` cannot be empty')\n }\n}\n\n/**\n * Assert `path` exists.\n *\n * @param {string | undefined} path\n * Path.\n * @param {string} name\n * Dependency name.\n * @returns {asserts path is string}\n * Nothing.\n */\nfunction assertPath(path, name) {\n if (!path) {\n throw new Error('Setting `' + name + '` requires `path` to be set too')\n }\n}\n\n/**\n * Assert `value` is a buffer.\n *\n * @param {unknown} value\n * thing.\n * @returns {value is Buffer}\n * Whether `value` is a Node.js buffer.\n */\nfunction buffer(value) {\n return bufferLike(value)\n}\n","/// <reference lib=\"dom\" />\n\nimport {isUrl} from './minurl.shared.js'\n\n// See: <https://github.com/nodejs/node/blob/fcf8ba4/lib/internal/url.js>\n\n/**\n * @param {string | URL} path\n * File URL.\n * @returns {string}\n * File URL.\n */\nexport function urlToPath(path) {\n if (typeof path === 'string') {\n path = new URL(path)\n } else if (!isUrl(path)) {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'The \"path\" argument must be of type string or an instance of URL. Received `' +\n path +\n '`'\n )\n error.code = 'ERR_INVALID_ARG_TYPE'\n throw error\n }\n\n if (path.protocol !== 'file:') {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError('The URL must be of scheme file')\n error.code = 'ERR_INVALID_URL_SCHEME'\n throw error\n }\n\n return getPathFromURLPosix(path)\n}\n\n/**\n * Get a path from a POSIX URL.\n *\n * @param {URL} url\n * URL.\n * @returns {string}\n * File path.\n */\nfunction getPathFromURLPosix(url) {\n if (url.hostname !== '') {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'File URL host must be \"localhost\" or empty on darwin'\n )\n error.code = 'ERR_INVALID_FILE_URL_HOST'\n throw error\n }\n\n const pathname = url.pathname\n let index = -1\n\n while (++index < pathname.length) {\n if (\n pathname.charCodeAt(index) === 37 /* `%` */ &&\n pathname.charCodeAt(index + 1) === 50 /* `2` */\n ) {\n const third = pathname.charCodeAt(index + 2)\n if (third === 70 /* `F` */ || third === 102 /* `f` */) {\n /** @type {NodeJS.ErrnoException} */\n const error = new TypeError(\n 'File URL path must not include encoded / characters'\n )\n error.code = 'ERR_INVALID_FILE_URL_PATH'\n throw error\n }\n }\n }\n\n return decodeURIComponent(pathname)\n}\n\nexport {isUrl} from './minurl.shared.js'\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('vfile').VFileCompatible} VFileCompatible\n * @typedef {import('vfile').VFileValue} VFileValue\n * @typedef {import('..').Processor} Processor\n * @typedef {import('..').Plugin} Plugin\n * @typedef {import('..').Preset} Preset\n * @typedef {import('..').Pluggable} Pluggable\n * @typedef {import('..').PluggableList} PluggableList\n * @typedef {import('..').Transformer} Transformer\n * @typedef {import('..').Parser} Parser\n * @typedef {import('..').Compiler} Compiler\n * @typedef {import('..').RunCallback} RunCallback\n * @typedef {import('..').ProcessCallback} ProcessCallback\n *\n * @typedef Context\n * @property {Node} tree\n * @property {VFile} file\n */\n\nimport {bail} from 'bail'\nimport isBuffer from 'is-buffer'\nimport extend from 'extend'\nimport isPlainObj from 'is-plain-obj'\nimport {trough} from 'trough'\nimport {VFile} from 'vfile'\n\n// Expose a frozen processor.\nexport const unified = base().freeze()\n\nconst own = {}.hasOwnProperty\n\n// Function to create the first processor.\n/**\n * @returns {Processor}\n */\nfunction base() {\n const transformers = trough()\n /** @type {Processor['attachers']} */\n const attachers = []\n /** @type {Record<string, unknown>} */\n let namespace = {}\n /** @type {boolean|undefined} */\n let frozen\n let freezeIndex = -1\n\n // Data management.\n // @ts-expect-error: overloads are handled.\n processor.data = data\n processor.Parser = undefined\n processor.Compiler = undefined\n\n // Lock.\n processor.freeze = freeze\n\n // Plugins.\n processor.attachers = attachers\n // @ts-expect-error: overloads are handled.\n processor.use = use\n\n // API.\n processor.parse = parse\n processor.stringify = stringify\n // @ts-expect-error: overloads are handled.\n processor.run = run\n processor.runSync = runSync\n // @ts-expect-error: overloads are handled.\n processor.process = process\n processor.processSync = processSync\n\n // Expose.\n return processor\n\n // Create a new processor based on the processor in the current scope.\n /** @type {Processor} */\n function processor() {\n const destination = base()\n let index = -1\n\n while (++index < attachers.length) {\n destination.use(...attachers[index])\n }\n\n destination.data(extend(true, {}, namespace))\n\n return destination\n }\n\n /**\n * @param {string|Record<string, unknown>} [key]\n * @param {unknown} [value]\n * @returns {unknown}\n */\n function data(key, value) {\n if (typeof key === 'string') {\n // Set `key`.\n if (arguments.length === 2) {\n assertUnfrozen('data', frozen)\n namespace[key] = value\n return processor\n }\n\n // Get `key`.\n return (own.call(namespace, key) && namespace[key]) || null\n }\n\n // Set space.\n if (key) {\n assertUnfrozen('data', frozen)\n namespace = key\n return processor\n }\n\n // Get space.\n return namespace\n }\n\n /** @type {Processor['freeze']} */\n function freeze() {\n if (frozen) {\n return processor\n }\n\n while (++freezeIndex < attachers.length) {\n const [attacher, ...options] = attachers[freezeIndex]\n\n if (options[0] === false) {\n continue\n }\n\n if (options[0] === true) {\n options[0] = undefined\n }\n\n /** @type {Transformer|void} */\n const transformer = attacher.call(processor, ...options)\n\n if (typeof transformer === 'function') {\n transformers.use(transformer)\n }\n }\n\n frozen = true\n freezeIndex = Number.POSITIVE_INFINITY\n\n return processor\n }\n\n /**\n * @param {Pluggable|null|undefined} [value]\n * @param {...unknown} options\n * @returns {Processor}\n */\n function use(value, ...options) {\n /** @type {Record<string, unknown>|undefined} */\n let settings\n\n assertUnfrozen('use', frozen)\n\n if (value === null || value === undefined) {\n // Empty.\n } else if (typeof value === 'function') {\n addPlugin(value, ...options)\n } else if (typeof value === 'object') {\n if (Array.isArray(value)) {\n addList(value)\n } else {\n addPreset(value)\n }\n } else {\n throw new TypeError('Expected usable value, not `' + value + '`')\n }\n\n if (settings) {\n namespace.settings = Object.assign(namespace.settings || {}, settings)\n }\n\n return processor\n\n /**\n * @param {import('..').Pluggable<unknown[]>} value\n * @returns {void}\n */\n function add(value) {\n if (typeof value === 'function') {\n addPlugin(value)\n } else if (typeof value === 'object') {\n if (Array.isArray(value)) {\n const [plugin, ...options] = value\n addPlugin(plugin, ...options)\n } else {\n addPreset(value)\n }\n } else {\n throw new TypeError('Expected usable value, not `' + value + '`')\n }\n }\n\n /**\n * @param {Preset} result\n * @returns {void}\n */\n function addPreset(result) {\n addList(result.plugins)\n\n if (result.settings) {\n settings = Object.assign(settings || {}, result.settings)\n }\n }\n\n /**\n * @param {PluggableList|null|undefined} [plugins]\n * @returns {void}\n */\n function addList(plugins) {\n let index = -1\n\n if (plugins === null || plugins === undefined) {\n // Empty.\n } else if (Array.isArray(plugins)) {\n while (++index < plugins.length) {\n const thing = plugins[index]\n add(thing)\n }\n } else {\n throw new TypeError('Expected a list of plugins, not `' + plugins + '`')\n }\n }\n\n /**\n * @param {Plugin} plugin\n * @param {...unknown} [value]\n * @returns {void}\n */\n function addPlugin(plugin, value) {\n let index = -1\n /** @type {Processor['attachers'][number]|undefined} */\n let entry\n\n while (++index < attachers.length) {\n if (attachers[index][0] === plugin) {\n entry = attachers[index]\n break\n }\n }\n\n if (entry) {\n if (isPlainObj(entry[1]) && isPlainObj(value)) {\n value = extend(true, entry[1], value)\n }\n\n entry[1] = value\n } else {\n // @ts-expect-error: fine.\n attachers.push([...arguments])\n }\n }\n }\n\n /** @type {Processor['parse']} */\n function parse(doc) {\n processor.freeze()\n const file = vfile(doc)\n const Parser = processor.Parser\n assertParser('parse', Parser)\n\n if (newable(Parser, 'parse')) {\n // @ts-expect-error: `newable` checks this.\n return new Parser(String(file), file).parse()\n }\n\n // @ts-expect-error: `newable` checks this.\n return Parser(String(file), file) // eslint-disable-line new-cap\n }\n\n /** @type {Processor['stringify']} */\n function stringify(node, doc) {\n processor.freeze()\n const file = vfile(doc)\n const Compiler = processor.Compiler\n assertCompiler('stringify', Compiler)\n assertNode(node)\n\n if (newable(Compiler, 'compile')) {\n // @ts-expect-error: `newable` checks this.\n return new Compiler(node, file).compile()\n }\n\n // @ts-expect-error: `newable` checks this.\n return Compiler(node, file) // eslint-disable-line new-cap\n }\n\n /**\n * @param {Node} node\n * @param {VFileCompatible|RunCallback} [doc]\n * @param {RunCallback} [callback]\n * @returns {Promise<Node>|void}\n */\n function run(node, doc, callback) {\n assertNode(node)\n processor.freeze()\n\n if (!callback && typeof doc === 'function') {\n callback = doc\n doc = undefined\n }\n\n if (!callback) {\n return new Promise(executor)\n }\n\n executor(null, callback)\n\n /**\n * @param {null|((node: Node) => void)} resolve\n * @param {(error: Error) => void} reject\n * @returns {void}\n */\n function executor(resolve, reject) {\n // @ts-expect-error: `doc` can’t be a callback anymore, we checked.\n transformers.run(node, vfile(doc), done)\n\n /**\n * @param {Error|null} error\n * @param {Node} tree\n * @param {VFile} file\n * @returns {void}\n */\n function done(error, tree, file) {\n tree = tree || node\n if (error) {\n reject(error)\n } else if (resolve) {\n resolve(tree)\n } else {\n // @ts-expect-error: `callback` is defined if `resolve` is not.\n callback(null, tree, file)\n }\n }\n }\n }\n\n /** @type {Processor['runSync']} */\n function runSync(node, file) {\n /** @type {Node|undefined} */\n let result\n /** @type {boolean|undefined} */\n let complete\n\n processor.run(node, file, done)\n\n assertDone('runSync', 'run', complete)\n\n // @ts-expect-error: we either bailed on an error or have a tree.\n return result\n\n /**\n * @param {Error|null} [error]\n * @param {Node} [tree]\n * @returns {void}\n */\n function done(error, tree) {\n bail(error)\n result = tree\n complete = true\n }\n }\n\n /**\n * @param {VFileCompatible} doc\n * @param {ProcessCallback} [callback]\n * @returns {Promise<VFile>|undefined}\n */\n function process(doc, callback) {\n processor.freeze()\n assertParser('process', processor.Parser)\n assertCompiler('process', processor.Compiler)\n\n if (!callback) {\n return new Promise(executor)\n }\n\n executor(null, callback)\n\n /**\n * @param {null|((file: VFile) => void)} resolve\n * @param {(error?: Error|null|undefined) => void} reject\n * @returns {void}\n */\n function executor(resolve, reject) {\n const file = vfile(doc)\n\n processor.run(processor.parse(file), file, (error, tree, file) => {\n if (error || !tree || !file) {\n done(error)\n } else {\n /** @type {unknown} */\n const result = processor.stringify(tree, file)\n\n if (result === undefined || result === null) {\n // Empty.\n } else if (looksLikeAVFileValue(result)) {\n file.value = result\n } else {\n file.result = result\n }\n\n done(error, file)\n }\n })\n\n /**\n * @param {Error|null|undefined} [error]\n * @param {VFile|undefined} [file]\n * @returns {void}\n */\n function done(error, file) {\n if (error || !file) {\n reject(error)\n } else if (resolve) {\n resolve(file)\n } else {\n // @ts-expect-error: `callback` is defined if `resolve` is not.\n callback(null, file)\n }\n }\n }\n }\n\n /** @type {Processor['processSync']} */\n function processSync(doc) {\n /** @type {boolean|undefined} */\n let complete\n\n processor.freeze()\n assertParser('processSync', processor.Parser)\n assertCompiler('processSync', processor.Compiler)\n\n const file = vfile(doc)\n\n processor.process(file, done)\n\n assertDone('processSync', 'process', complete)\n\n return file\n\n /**\n * @param {Error|null|undefined} [error]\n * @returns {void}\n */\n function done(error) {\n complete = true\n bail(error)\n }\n }\n}\n\n/**\n * Check if `value` is a constructor.\n *\n * @param {unknown} value\n * @param {string} name\n * @returns {boolean}\n */\nfunction newable(value, name) {\n return (\n typeof value === 'function' &&\n // Prototypes do exist.\n // type-coverage:ignore-next-line\n value.prototype &&\n // A function with keys in its prototype is probably a constructor.\n // Classes’ prototype methods are not enumerable, so we check if some value\n // exists in the prototype.\n // type-coverage:ignore-next-line\n (keys(value.prototype) || name in value.prototype)\n )\n}\n\n/**\n * Check if `value` is an object with keys.\n *\n * @param {Record<string, unknown>} value\n * @returns {boolean}\n */\nfunction keys(value) {\n /** @type {string} */\n let key\n\n for (key in value) {\n if (own.call(value, key)) {\n return true\n }\n }\n\n return false\n}\n\n/**\n * Assert a parser is available.\n *\n * @param {string} name\n * @param {unknown} value\n * @returns {asserts value is Parser}\n */\nfunction assertParser(name, value) {\n if (typeof value !== 'function') {\n throw new TypeError('Cannot `' + name + '` without `Parser`')\n }\n}\n\n/**\n * Assert a compiler is available.\n *\n * @param {string} name\n * @param {unknown} value\n * @returns {asserts value is Compiler}\n */\nfunction assertCompiler(name, value) {\n if (typeof value !== 'function') {\n throw new TypeError('Cannot `' + name + '` without `Compiler`')\n }\n}\n\n/**\n * Assert the processor is not frozen.\n *\n * @param {string} name\n * @param {unknown} frozen\n * @returns {asserts frozen is false}\n */\nfunction assertUnfrozen(name, frozen) {\n if (frozen) {\n throw new Error(\n 'Cannot call `' +\n name +\n '` on a frozen processor.\\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.'\n )\n }\n}\n\n/**\n * Assert `node` is a unist node.\n *\n * @param {unknown} node\n * @returns {asserts node is Node}\n */\nfunction assertNode(node) {\n // `isPlainObj` unfortunately uses `any` instead of `unknown`.\n // type-coverage:ignore-next-line\n if (!isPlainObj(node) || typeof node.type !== 'string') {\n throw new TypeError('Expected node, got `' + node + '`')\n // Fine.\n }\n}\n\n/**\n * Assert that `complete` is `true`.\n *\n * @param {string} name\n * @param {string} asyncName\n * @param {unknown} complete\n * @returns {asserts complete is true}\n */\nfunction assertDone(name, asyncName, complete) {\n if (!complete) {\n throw new Error(\n '`' + name + '` finished async. Use `' + asyncName + '` instead'\n )\n }\n}\n\n/**\n * @param {VFileCompatible} [value]\n * @returns {VFile}\n */\nfunction vfile(value) {\n return looksLikeAVFile(value) ? value : new VFile(value)\n}\n\n/**\n * @param {VFileCompatible} [value]\n * @returns {value is VFile}\n */\nfunction looksLikeAVFile(value) {\n return Boolean(\n value &&\n typeof value === 'object' &&\n 'message' in value &&\n 'messages' in value\n )\n}\n\n/**\n * @param {unknown} [value]\n * @returns {value is VFileValue}\n */\nfunction looksLikeAVFileValue(value) {\n return typeof value === 'string' || isBuffer(value)\n}\n","/**\n * @typedef {(error?: Error|null|undefined, ...output: Array<any>) => void} Callback\n * @typedef {(...input: Array<any>) => any} Middleware\n *\n * @typedef {(...input: Array<any>) => void} Run\n * Call all middleware.\n * @typedef {(fn: Middleware) => Pipeline} Use\n * Add `fn` (middleware) to the list.\n * @typedef {{run: Run, use: Use}} Pipeline\n * Middleware.\n */\n\n/**\n * Create new middleware.\n *\n * @returns {Pipeline}\n */\nexport function trough() {\n /** @type {Array<Middleware>} */\n const fns = []\n /** @type {Pipeline} */\n const pipeline = {run, use}\n\n return pipeline\n\n /** @type {Run} */\n function run(...values) {\n let middlewareIndex = -1\n /** @type {Callback} */\n const callback = values.pop()\n\n if (typeof callback !== 'function') {\n throw new TypeError('Expected function as last argument, not ' + callback)\n }\n\n next(null, ...values)\n\n /**\n * Run the next `fn`, or we’re done.\n *\n * @param {Error|null|undefined} error\n * @param {Array<any>} output\n */\n function next(error, ...output) {\n const fn = fns[++middlewareIndex]\n let index = -1\n\n if (error) {\n callback(error)\n return\n }\n\n // Copy non-nullish input into values.\n while (++index < values.length) {\n if (output[index] === null || output[index] === undefined) {\n output[index] = values[index]\n }\n }\n\n // Save the newly created `output` for the next call.\n values = output\n\n // Next or done.\n if (fn) {\n wrap(fn, next)(...output)\n } else {\n callback(null, ...output)\n }\n }\n }\n\n /** @type {Use} */\n function use(middelware) {\n if (typeof middelware !== 'function') {\n throw new TypeError(\n 'Expected `middelware` to be a function, not ' + middelware\n )\n }\n\n fns.push(middelware)\n return pipeline\n }\n}\n\n/**\n * Wrap `middleware`.\n * Can be sync or async; return a promise, receive a callback, or return new\n * values and errors.\n *\n * @param {Middleware} middleware\n * @param {Callback} callback\n */\nexport function wrap(middleware, callback) {\n /** @type {boolean} */\n let called\n\n return wrapped\n\n /**\n * Call `middleware`.\n * @this {any}\n * @param {Array<any>} parameters\n * @returns {void}\n */\n function wrapped(...parameters) {\n const fnExpectsCallback = middleware.length > parameters.length\n /** @type {any} */\n let result\n\n if (fnExpectsCallback) {\n parameters.push(done)\n }\n\n try {\n result = middleware.apply(this, parameters)\n } catch (error) {\n const exception = /** @type {Error} */ (error)\n\n // Well, this is quite the pickle.\n // `middleware` received a callback and called it synchronously, but that\n // threw an error.\n // The only thing left to do is to throw the thing instead.\n if (fnExpectsCallback && called) {\n throw exception\n }\n\n return done(exception)\n }\n\n if (!fnExpectsCallback) {\n if (result instanceof Promise) {\n result.then(then, done)\n } else if (result instanceof Error) {\n done(result)\n } else {\n then(result)\n }\n }\n }\n\n /**\n * Call `callback`, only once.\n * @type {Callback}\n */\n function done(error, ...output) {\n if (!called) {\n called = true\n callback(error, ...output)\n }\n }\n\n /**\n * Call `done` with one value.\n *\n * @param {any} [value]\n */\n function then(value) {\n done(null, value)\n }\n}\n","/**\n * @typedef {import('unist').Node} Node\n */\n\n/**\n * @typedef {Array<Node> | string} ChildrenOrValue\n * List to use as `children` or value to use as `value`.\n *\n * @typedef {Record<string, unknown>} Props\n * Other fields to add to the node.\n */\n\n/**\n * Build a node.\n *\n * @param type\n * Node type.\n * @param props\n * Fields assigned to node.\n * @param value\n * Children of node or value of `node` (cast to string).\n * @returns\n * Built node.\n */\nexport const u =\n /**\n * @type {(\n * (<T extends string>(type: T) => {type: T}) &\n * (<T extends string, P extends Props>(type: T, props: P) => {type: T} & P) &\n * (<T extends string>(type: T, value: string) => {type: T, value: string}) &\n * (<T extends string, P extends Props>(type: T, props: P, value: string) => {type: T, value: string} & P) &\n * (<T extends string, C extends Array<Node>>(type: T, children: C) => {type: T, children: C}) &\n * (<T extends string, P extends Props, C extends Array<Node>>(type: T, props: P, children: C) => {type: T, children: C} & P)\n * )}\n */\n (\n /**\n * @param {string} type\n * @param {Props | ChildrenOrValue | null | undefined} [props]\n * @param {ChildrenOrValue | null | undefined} [value]\n * @returns {Node}\n */\n function (type, props, value) {\n /** @type {Node} */\n const node = {type: String(type)}\n\n if (\n (value === undefined || value === null) &&\n (typeof props === 'string' || Array.isArray(props))\n ) {\n value = props\n } else {\n Object.assign(node, props)\n }\n\n if (Array.isArray(value)) {\n // @ts-expect-error: create a parent.\n node.children = value\n } else if (value !== undefined && value !== null) {\n // @ts-expect-error: create a literal.\n node.value = String(value)\n }\n\n return node\n }\n )\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Point} Point\n * @typedef {import('unist').Position} Position\n */\n\n/**\n * @typedef NodeLike\n * @property {string} type\n * @property {PositionLike | null | undefined} [position]\n *\n * @typedef PositionLike\n * @property {PointLike | null | undefined} [start]\n * @property {PointLike | null | undefined} [end]\n *\n * @typedef PointLike\n * @property {number | null | undefined} [line]\n * @property {number | null | undefined} [column]\n * @property {number | null | undefined} [offset]\n */\n\n/**\n * Serialize the positional info of a point, position (start and end points),\n * or node.\n *\n * @param {Node | NodeLike | Position | PositionLike | Point | PointLike | null | undefined} [value]\n * Node, position, or point.\n * @returns {string}\n * Pretty printed positional info of a node (`string`).\n *\n * In the format of a range `ls:cs-le:ce` (when given `node` or `position`)\n * or a point `l:c` (when given `point`), where `l` stands for line, `c` for\n * column, `s` for `start`, and `e` for end.\n * An empty string (`''`) is returned if the given value is neither `node`,\n * `position`, nor `point`.\n */\nexport function stringifyPosition(value) {\n // Nothing.\n if (!value || typeof value !== 'object') {\n return ''\n }\n\n // Node.\n if ('position' in value || 'type' in value) {\n return position(value.position)\n }\n\n // Position.\n if ('start' in value || 'end' in value) {\n return position(value)\n }\n\n // Point.\n if ('line' in value || 'column' in value) {\n return point(value)\n }\n\n // ?\n return ''\n}\n\n/**\n * @param {Point | PointLike | null | undefined} point\n * @returns {string}\n */\nfunction point(point) {\n return index(point && point.line) + ':' + index(point && point.column)\n}\n\n/**\n * @param {Position | PositionLike | null | undefined} pos\n * @returns {string}\n */\nfunction position(pos) {\n return point(pos && pos.start) + '-' + point(pos && pos.end)\n}\n\n/**\n * @param {number | null | undefined} value\n * @returns {number}\n */\nfunction index(value) {\n return value && typeof value === 'number' ? value : 1\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n */\n\n/**\n * @typedef {Record<string, unknown>} Props\n * @typedef {null | undefined | string | Props | TestFunctionAnything | Array<string | Props | TestFunctionAnything>} Test\n * Check for an arbitrary node, unaware of TypeScript inferral.\n *\n * @callback TestFunctionAnything\n * Check if a node passes a test, unaware of TypeScript inferral.\n * @param {unknown} this\n * The given context.\n * @param {Node} node\n * A node.\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {boolean | void}\n * Whether this node passes the test.\n */\n\n/**\n * @template {Node} Kind\n * Node type.\n * @typedef {Kind['type'] | Partial<Kind> | TestFunctionPredicate<Kind> | Array<Kind['type'] | Partial<Kind> | TestFunctionPredicate<Kind>>} PredicateTest\n * Check for a node that can be inferred by TypeScript.\n */\n\n/**\n * Check if a node passes a certain test.\n *\n * @template {Node} Kind\n * Node type.\n * @callback TestFunctionPredicate\n * Complex test function for a node that can be inferred by TypeScript.\n * @param {Node} node\n * A node.\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {node is Kind}\n * Whether this node passes the test.\n */\n\n/**\n * @callback AssertAnything\n * Check that an arbitrary value is a node, unaware of TypeScript inferral.\n * @param {unknown} [node]\n * Anything (typically a node).\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {boolean}\n * Whether this is a node and passes a test.\n */\n\n/**\n * Check if a node is a node and passes a certain node test.\n *\n * @template {Node} Kind\n * Node type.\n * @callback AssertPredicate\n * Check that an arbitrary value is a specific node, aware of TypeScript.\n * @param {unknown} [node]\n * Anything (typically a node).\n * @param {number | null | undefined} [index]\n * The node’s position in its parent.\n * @param {Parent | null | undefined} [parent]\n * The node’s parent.\n * @returns {node is Kind}\n * Whether this is a node and passes a test.\n */\n\n/**\n * Check if `node` is a `Node` and whether it passes the given test.\n *\n * @param node\n * Thing to check, typically `Node`.\n * @param test\n * A check for a specific node.\n * @param index\n * The node’s position in its parent.\n * @param parent\n * The node’s parent.\n * @returns\n * Whether `node` is a node and passes a test.\n */\nexport const is =\n /**\n * @type {(\n * (() => false) &\n * (<Kind extends Node = Node>(node: unknown, test: PredicateTest<Kind>, index: number, parent: Parent, context?: unknown) => node is Kind) &\n * (<Kind extends Node = Node>(node: unknown, test: PredicateTest<Kind>, index?: null | undefined, parent?: null | undefined, context?: unknown) => node is Kind) &\n * ((node: unknown, test: Test, index: number, parent: Parent, context?: unknown) => boolean) &\n * ((node: unknown, test?: Test, index?: null | undefined, parent?: null | undefined, context?: unknown) => boolean)\n * )}\n */\n (\n /**\n * @param {unknown} [node]\n * @param {Test} [test]\n * @param {number | null | undefined} [index]\n * @param {Parent | null | undefined} [parent]\n * @param {unknown} [context]\n * @returns {boolean}\n */\n // eslint-disable-next-line max-params\n function is(node, test, index, parent, context) {\n const check = convert(test)\n\n if (\n index !== undefined &&\n index !== null &&\n (typeof index !== 'number' ||\n index < 0 ||\n index === Number.POSITIVE_INFINITY)\n ) {\n throw new Error('Expected positive finite index')\n }\n\n if (\n parent !== undefined &&\n parent !== null &&\n (!is(parent) || !parent.children)\n ) {\n throw new Error('Expected parent node')\n }\n\n if (\n (parent === undefined || parent === null) !==\n (index === undefined || index === null)\n ) {\n throw new Error('Expected both parent and index')\n }\n\n // @ts-expect-error Looks like a node.\n return node && node.type && typeof node.type === 'string'\n ? Boolean(check.call(context, node, index, parent))\n : false\n }\n )\n\n/**\n * Generate an assertion from a test.\n *\n * Useful if you’re going to test many nodes, for example when creating a\n * utility where something else passes a compatible test.\n *\n * The created function is a bit faster because it expects valid input only:\n * a `node`, `index`, and `parent`.\n *\n * @param test\n * * when nullish, checks if `node` is a `Node`.\n * * when `string`, works like passing `(node) => node.type === test`.\n * * when `function` checks if function passed the node is true.\n * * when `object`, checks that all keys in test are in node, and that they have (strictly) equal values.\n * * when `array`, checks if any one of the subtests pass.\n * @returns\n * An assertion.\n */\nexport const convert =\n /**\n * @type {(\n * (<Kind extends Node>(test: PredicateTest<Kind>) => AssertPredicate<Kind>) &\n * ((test?: Test) => AssertAnything)\n * )}\n */\n (\n /**\n * @param {Test} [test]\n * @returns {AssertAnything}\n */\n function (test) {\n if (test === undefined || test === null) {\n return ok\n }\n\n if (typeof test === 'string') {\n return typeFactory(test)\n }\n\n if (typeof test === 'object') {\n return Array.isArray(test) ? anyFactory(test) : propsFactory(test)\n }\n\n if (typeof test === 'function') {\n return castFactory(test)\n }\n\n throw new Error('Expected function, string, or object as test')\n }\n )\n\n/**\n * @param {Array<string | Props | TestFunctionAnything>} tests\n * @returns {AssertAnything}\n */\nfunction anyFactory(tests) {\n /** @type {Array<AssertAnything>} */\n const checks = []\n let index = -1\n\n while (++index < tests.length) {\n checks[index] = convert(tests[index])\n }\n\n return castFactory(any)\n\n /**\n * @this {unknown}\n * @param {Array<unknown>} parameters\n * @returns {boolean}\n */\n function any(...parameters) {\n let index = -1\n\n while (++index < checks.length) {\n if (checks[index].call(this, ...parameters)) return true\n }\n\n return false\n }\n}\n\n/**\n * Turn an object into a test for a node with a certain fields.\n *\n * @param {Props} check\n * @returns {AssertAnything}\n */\nfunction propsFactory(check) {\n return castFactory(all)\n\n /**\n * @param {Node} node\n * @returns {boolean}\n */\n function all(node) {\n /** @type {string} */\n let key\n\n for (key in check) {\n // @ts-expect-error: hush, it sure works as an index.\n if (node[key] !== check[key]) return false\n }\n\n return true\n }\n}\n\n/**\n * Turn a string into a test for a node with a certain type.\n *\n * @param {string} check\n * @returns {AssertAnything}\n */\nfunction typeFactory(check) {\n return castFactory(type)\n\n /**\n * @param {Node} node\n */\n function type(node) {\n return node && node.type === check\n }\n}\n\n/**\n * Turn a custom test into a test for a node that passes that test.\n *\n * @param {TestFunctionAnything} check\n * @returns {AssertAnything}\n */\nfunction castFactory(check) {\n return assertion\n\n /**\n * @this {unknown}\n * @param {unknown} node\n * @param {Array<unknown>} parameters\n * @returns {boolean}\n */\n function assertion(node, ...parameters) {\n return Boolean(\n node &&\n typeof node === 'object' &&\n 'type' in node &&\n // @ts-expect-error: fine.\n Boolean(check.call(this, node, ...parameters))\n )\n }\n}\n\nfunction ok() {\n return true\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n * @typedef {import('unist-util-is').Test} Test\n */\n\n/**\n * @typedef {boolean | 'skip'} Action\n * Union of the action types.\n *\n * @typedef {number} Index\n * Move to the sibling at `index` next (after node itself is completely\n * traversed).\n *\n * Useful if mutating the tree, such as removing the node the visitor is\n * currently on, or any of its previous siblings.\n * Results less than 0 or greater than or equal to `children.length` stop\n * traversing the parent.\n *\n * @typedef {[(Action | null | undefined | void)?, (Index | null | undefined)?]} ActionTuple\n * List with one or two values, the first an action, the second an index.\n *\n * @typedef {Action | ActionTuple | Index | null | undefined | void} VisitorResult\n * Any value that can be returned from a visitor.\n */\n\n/**\n * @template {Node} [Visited=Node]\n * Visited node type.\n * @template {Parent} [Ancestor=Parent]\n * Ancestor type.\n * @callback Visitor\n * Handle a node (matching `test`, if given).\n *\n * Visitors are free to transform `node`.\n * They can also transform the parent of node (the last of `ancestors`).\n *\n * Replacing `node` itself, if `SKIP` is not returned, still causes its\n * descendants to be walked (which is a bug).\n *\n * When adding or removing previous siblings of `node` (or next siblings, in\n * case of reverse), the `Visitor` should return a new `Index` to specify the\n * sibling to traverse after `node` is traversed.\n * Adding or removing next siblings of `node` (or previous siblings, in case\n * of reverse) is handled as expected without needing to return a new `Index`.\n *\n * Removing the children property of an ancestor still results in them being\n * traversed.\n * @param {Visited} node\n * Found node.\n * @param {Array<Ancestor>} ancestors\n * Ancestors of `node`.\n * @returns {VisitorResult}\n * What to do next.\n *\n * An `Index` is treated as a tuple of `[CONTINUE, Index]`.\n * An `Action` is treated as a tuple of `[Action]`.\n *\n * Passing a tuple back only makes sense if the `Action` is `SKIP`.\n * When the `Action` is `EXIT`, that action can be returned.\n * When the `Action` is `CONTINUE`, `Index` can be returned.\n */\n\n/**\n * @template {Node} [Tree=Node]\n * Tree type.\n * @template {Test} [Check=string]\n * Test type.\n * @typedef {Visitor<import('./complex-types.js').Matches<import('./complex-types.js').InclusiveDescendant<Tree>, Check>, Extract<import('./complex-types.js').InclusiveDescendant<Tree>, Parent>>} BuildVisitor\n * Build a typed `Visitor` function from a tree and a test.\n *\n * It will infer which values are passed as `node` and which as `parents`.\n */\n\nimport {convert} from 'unist-util-is'\nimport {color} from './color.js'\n\n/**\n * Continue traversing as normal.\n */\nexport const CONTINUE = true\n\n/**\n * Stop traversing immediately.\n */\nexport const EXIT = false\n\n/**\n * Do not traverse this node’s children.\n */\nexport const SKIP = 'skip'\n\n/**\n * Visit nodes, with ancestral information.\n *\n * This algorithm performs *depth-first* *tree traversal* in *preorder*\n * (**NLR**) or if `reverse` is given, in *reverse preorder* (**NRL**).\n *\n * You can choose for which nodes `visitor` is called by passing a `test`.\n * For complex tests, you should test yourself in `visitor`, as it will be\n * faster and will have improved type information.\n *\n * Walking the tree is an intensive task.\n * Make use of the return values of the visitor when possible.\n * Instead of walking a tree multiple times, walk it once, use `unist-util-is`\n * to check if a node matches, and then perform different operations.\n *\n * You can change the tree.\n * See `Visitor` for more info.\n *\n * @param tree\n * Tree to traverse.\n * @param test\n * `unist-util-is`-compatible test\n * @param visitor\n * Handle each node.\n * @param reverse\n * Traverse in reverse preorder (NRL) instead of the default preorder (NLR).\n * @returns\n * Nothing.\n */\nexport const visitParents =\n /**\n * @type {(\n * (<Tree extends Node, Check extends Test>(tree: Tree, test: Check, visitor: BuildVisitor<Tree, Check>, reverse?: boolean | null | undefined) => void) &\n * (<Tree extends Node>(tree: Tree, visitor: BuildVisitor<Tree>, reverse?: boolean | null | undefined) => void)\n * )}\n */\n (\n /**\n * @param {Node} tree\n * @param {Test} test\n * @param {Visitor<Node>} visitor\n * @param {boolean | null | undefined} [reverse]\n * @returns {void}\n */\n function (tree, test, visitor, reverse) {\n if (typeof test === 'function' && typeof visitor !== 'function') {\n reverse = visitor\n // @ts-expect-error no visitor given, so `visitor` is test.\n visitor = test\n test = null\n }\n\n const is = convert(test)\n const step = reverse ? -1 : 1\n\n factory(tree, undefined, [])()\n\n /**\n * @param {Node} node\n * @param {number | undefined} index\n * @param {Array<Parent>} parents\n */\n function factory(node, index, parents) {\n /** @type {Record<string, unknown>} */\n // @ts-expect-error: hush\n const value = node && typeof node === 'object' ? node : {}\n\n if (typeof value.type === 'string') {\n const name =\n // `hast`\n typeof value.tagName === 'string'\n ? value.tagName\n : // `xast`\n typeof value.name === 'string'\n ? value.name\n : undefined\n\n Object.defineProperty(visit, 'name', {\n value:\n 'node (' + color(node.type + (name ? '<' + name + '>' : '')) + ')'\n })\n }\n\n return visit\n\n function visit() {\n /** @type {ActionTuple} */\n let result = []\n /** @type {ActionTuple} */\n let subresult\n /** @type {number} */\n let offset\n /** @type {Array<Parent>} */\n let grandparents\n\n if (!test || is(node, index, parents[parents.length - 1] || null)) {\n result = toResult(visitor(node, parents))\n\n if (result[0] === EXIT) {\n return result\n }\n }\n\n // @ts-expect-error looks like a parent.\n if (node.children && result[0] !== SKIP) {\n // @ts-expect-error looks like a parent.\n offset = (reverse ? node.children.length : -1) + step\n // @ts-expect-error looks like a parent.\n grandparents = parents.concat(node)\n\n // @ts-expect-error looks like a parent.\n while (offset > -1 && offset < node.children.length) {\n // @ts-expect-error looks like a parent.\n subresult = factory(node.children[offset], offset, grandparents)()\n\n if (subresult[0] === EXIT) {\n return subresult\n }\n\n offset =\n typeof subresult[1] === 'number' ? subresult[1] : offset + step\n }\n }\n\n return result\n }\n }\n }\n )\n\n/**\n * Turn a return value into a clean result.\n *\n * @param {VisitorResult} value\n * Valid return values from visitors.\n * @returns {ActionTuple}\n * Clean result.\n */\nfunction toResult(value) {\n if (Array.isArray(value)) {\n return value\n }\n\n if (typeof value === 'number') {\n return [CONTINUE, value]\n }\n\n return [value]\n}\n","/**\n * @typedef {import('unist').Node} Node\n * @typedef {import('unist').Parent} Parent\n * @typedef {import('unist-util-is').Test} Test\n * @typedef {import('unist-util-visit-parents').VisitorResult} VisitorResult\n */\n\n/**\n * Check if `Child` can be a child of `Ancestor`.\n *\n * Returns the ancestor when `Child` can be a child of `Ancestor`, or returns\n * `never`.\n *\n * @template {Node} Ancestor\n * Node type.\n * @template {Node} Child\n * Node type.\n * @typedef {(\n * Ancestor extends Parent\n * ? Child extends Ancestor['children'][number]\n * ? Ancestor\n * : never\n * : never\n * )} ParentsOf\n */\n\n/**\n * @template {Node} [Visited=Node]\n * Visited node type.\n * @template {Parent} [Ancestor=Parent]\n * Ancestor type.\n * @callback Visitor\n * Handle a node (matching `test`, if given).\n *\n * Visitors are free to transform `node`.\n * They can also transform `parent`.\n *\n * Replacing `node` itself, if `SKIP` is not returned, still causes its\n * descendants to be walked (which is a bug).\n *\n * When adding or removing previous siblings of `node` (or next siblings, in\n * case of reverse), the `Visitor` should return a new `Index` to specify the\n * sibling to traverse after `node` is traversed.\n * Adding or removing next siblings of `node` (or previous siblings, in case\n * of reverse) is handled as expected without needing to return a new `Index`.\n *\n * Removing the children property of `parent` still results in them being\n * traversed.\n * @param {Visited} node\n * Found node.\n * @param {Visited extends Node ? number | null : never} index\n * Index of `node` in `parent`.\n * @param {Ancestor extends Node ? Ancestor | null : never} parent\n * Parent of `node`.\n * @returns {VisitorResult}\n * What to do next.\n *\n * An `Index` is treated as a tuple of `[CONTINUE, Index]`.\n * An `Action` is treated as a tuple of `[Action]`.\n *\n * Passing a tuple back only makes sense if the `Action` is `SKIP`.\n * When the `Action` is `EXIT`, that action can be returned.\n * When the `Action` is `CONTINUE`, `Index` can be returned.\n */\n\n/**\n * Build a typed `Visitor` function from a node and all possible parents.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} Visited\n * Node type.\n * @template {Parent} Ancestor\n * Parent type.\n * @typedef {Visitor<Visited, ParentsOf<Ancestor, Visited>>} BuildVisitorFromMatch\n */\n\n/**\n * Build a typed `Visitor` function from a list of descendants and a test.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} Descendant\n * Node type.\n * @template {Test} Check\n * Test type.\n * @typedef {(\n * BuildVisitorFromMatch<\n * import('unist-util-visit-parents/complex-types.js').Matches<Descendant, Check>,\n * Extract<Descendant, Parent>\n * >\n * )} BuildVisitorFromDescendants\n */\n\n/**\n * Build a typed `Visitor` function from a tree and a test.\n *\n * It will infer which values are passed as `node` and which as `parent`.\n *\n * @template {Node} [Tree=Node]\n * Node type.\n * @template {Test} [Check=string]\n * Test type.\n * @typedef {(\n * BuildVisitorFromDescendants<\n * import('unist-util-visit-parents/complex-types.js').InclusiveDescendant<Tree>,\n * Check\n * >\n * )} BuildVisitor\n */\n\nimport {visitParents} from 'unist-util-visit-parents'\n\n/**\n * Visit nodes.\n *\n * This algorithm performs *depth-first* *tree traversal* in *preorder*\n * (**NLR**) or if `reverse` is given, in *reverse preorder* (**NRL**).\n *\n * You can choose for which nodes `visitor` is called by passing a `test`.\n * For complex tests, you should test yourself in `visitor`, as it will be\n * faster and will have improved type information.\n *\n * Walking the tree is an intensive task.\n * Make use of the return values of the visitor when possible.\n * Instead of walking a tree multiple times, walk it once, use `unist-util-is`\n * to check if a node matches, and then perform different operations.\n *\n * You can change the tree.\n * See `Visitor` for more info.\n *\n * @param tree\n * Tree to traverse.\n * @param test\n * `unist-util-is`-compatible test\n * @param visitor\n * Handle each node.\n * @param reverse\n * Traverse in reverse preorder (NRL) instead of the default preorder (NLR).\n * @returns\n * Nothing.\n */\nexport const visit =\n /**\n * @type {(\n * (<Tree extends Node, Check extends Test>(tree: Tree, test: Check, visitor: BuildVisitor<Tree, Check>, reverse?: boolean | null | undefined) => void) &\n * (<Tree extends Node>(tree: Tree, visitor: BuildVisitor<Tree>, reverse?: boolean | null | undefined) => void)\n * )}\n */\n (\n /**\n * @param {Node} tree\n * @param {Test} test\n * @param {Visitor} visitor\n * @param {boolean | null | undefined} [reverse]\n * @returns {void}\n */\n function (tree, test, visitor, reverse) {\n if (typeof test === 'function' && typeof visitor !== 'function') {\n reverse = visitor\n visitor = test\n test = null\n }\n\n visitParents(tree, test, overload, reverse)\n\n /**\n * @param {Node} node\n * @param {Array<Parent>} parents\n */\n function overload(node, parents) {\n const parent = parents[parents.length - 1]\n return visitor(\n node,\n parent ? parent.children.indexOf(node) : null,\n parent\n )\n }\n }\n )\n\nexport {CONTINUE, EXIT, SKIP} from 'unist-util-visit-parents'\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 9098;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t9098: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], () => (__webpack_require__(95754)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","visit","hasOwnProperty","Object","prototype","hastCssPropertyMap","align","valign","height","width","visitor","node","hastName","tagName","call","undefined","properties","appendStyle","property","value","prevStyle","style","trim","test","nextStyle","module","exports","convert","Boolean","type","typeFactory","ok","anyFactory","matchesFactory","Error","key","tests","checks","results","length","index","convertAll","apply","this","arguments","visitParents","CONTINUE","SKIP","EXIT","tree","reverse","is","one","parents","subresult","result","toResult","children","step","all","concat","parent","indexOf","e","self","t","n","d","Z","c","i","r","o","a","s","l","name","components","NcButton","default","AlertCircle","Check","inheritAttrs","props","String","required","validator","includes","label","labelOutside","labelVisible","placeholder","showTrailingButton","trailingButtonLabel","success","error","helperText","disabled","inputClass","emits","computed","computedId","$attrs","id","inputName","hasLeadingIcon","$slots","hasTrailingIcon","hasPlaceholder","computedPlaceholder","isValidLabel","console","warn","methods","handleInput","$emit","target","handleTrailingButtonClick","x","_self","_c","staticClass","class","attrs","for","_v","_s","_e","_g","_b","ref","domProps","on","input","$listeners","directives","rawName","expression","_t","click","scopedSlots","_u","fn","proxy","size","$","u","Symbol","iterator","constructor","p","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","A","forEach","m","getOwnPropertyDescriptors","defineProperties","defineProperty","toPrimitive","TypeError","configurable","writable","h","Array","isArray","f","from","toString","slice","v","g","DotsHorizontal","NcPopover","open","forceMenu","forceTitle","menuTitle","primary","defaultIcon","ariaLabel","ariaHidden","placement","boundariesElement","Element","document","querySelector","container","inline","Number","data","opened","focusIndex","randomId","triggerBtnType","watch","isValidSingleAction","componentOptions","Ctor","extendOptions","tag","openMenu","closeMenu","$refs","popover","clearFocusTrap","returnFocus","menuButton","$el","focus","onOpen","$nextTick","focusFirstAction","onMouseFocusAction","activeElement","closest","menu","querySelectorAll","focusAction","onKeydown","keyCode","shiftKey","focusPreviousAction","focusNextAction","focusLastAction","preventDefault","removeCurrentActive","classList","remove","add","preventIfEvent","stopPropagation","onFocus","onBlur","render","util","C","b","y","w","k","_","S","icon","propsData","B","listeners","j","text","E","N","P","title","blur","slot","delay","handleResize","shown","boundary","popoverBaseClass","setReturnFocus","show","hide","tabindex","keydown","mousemove","role","map","z","styleTagTransform","setAttributes","insert","bind","domAPI","insertStyleElement","locals","O","D","T","I","L","G","asyncIterator","toStringTag","create","arg","wrap","getPrototypeOf","_invoke","resolve","__await","then","done","method","delegate","sent","_sent","dispatchException","abrupt","return","resultName","next","nextLoc","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","completion","reset","isNaN","displayName","isGeneratorFunction","mark","setPrototypeOf","__proto__","awrap","AsyncIterator","async","Promise","pop","values","prev","charAt","stop","rval","complete","finish","catch","delegateYield","getBuilder","persist","build","setItem","ClickOutside","vOnClickOutside","NcLoadingIcon","NcPopoverMenu","mixins","iQ","url","iconClass","user","showUserStatus","showUserStatusCompact","preloadedUserStatus","isGuest","allowPlaceholder","disableTooltip","disableMenu","tooltipMessage","isNoUser","menuPosition","menuContainer","avatarUrlLoaded","avatarSrcSetLoaded","userDoesNotExist","isAvatarLoaded","isMenuLoaded","contactsMenuLoading","contactsMenuActions","contactsMenuOpenState","avatarAriaLabel","hasMenu","hasStatus","status","userStatus","canDisplayUserStatus","showUserStatusIconOnAvatar","getUserIdentifier","isDisplayNameDefined","isUserDefined","isUrlDefined","getCurrentUser","uid","shouldShowPlaceholder","avatarStyle","lineHeight","fontSize","Math","round","initialsWrapperStyle","backgroundColor","initialsStyle","color","tooltip","initials","fromCodePoint","codePointAt","toUpperCase","href","hyperlink","longtext","message","createTextNode","createElement","appendChild","innerHTML","loadAvatarUrl","mounted","subscribe","fetchUserStatus","handleUserStatusUpdated","beforeDestroy","unsubscribe","handlePopoverAfterShow","popoverMenu","getElementsByTagName","handlePopoverAfterHide","main","userId","toggleMenu","fetchContactsMenu","encodeURIComponent","post","generateUrl","topAction","actions","t0","updateImageIfValid","avatarUrlGenerator","join","window","getComputedStyle","body","getPropertyValue","oc_userconfig","avatar","version","getItem","Image","onload","onerror","debug","srcset","src","M","F","U","R","_k","alt","nativeType","wide","to","exact","navigate","isActive","isExactActive","custom","NcHighlight","search","needsTruncate","split","min","floor","part1","part2","highlight1","highlight2","start","end","highlight","description","hasTitle","hasDescription","action","ranges","reduce","sort","max","chunks","svg","cleanSvg","beforeMount","sanitizeSVG","NcAvatar","NcIconSvgWrapper","subtitle","iconSvg","iconTitle","avatarSize","noMargin","margin","hasIcon","hasIconSvg","isValidSubtitle","isSizeBigEnough","cssVars","appearance","colors","viewBox","fill","K","Date","setTimeout","pause","clearTimeout","clear","getTimeLeft","getStateRunning","NcActions","ChevronLeft","ChevronRight","Close","Pause","Play","hasPrevious","hasNext","outTransition","enableSlideshow","slideshowDelay","slideshowPaused","enableSwipe","spreadNavigation","canClose","dark","closeButtonContained","additionalTrapElements","inlineActions","mc","playing","slideshowTimeout","iconSize","focusTrap","randId","internalShow","showModal","modalTransitionName","playPauseTitle","cssVariables","closeButtonAriaLabel","prevButtonAriaLabel","nextButtonAriaLabel","mask","updateContainerElements","addEventListener","handleKeydown","removeEventListener","off","destroy","useFocusTrap","handleSwipe","insertBefore","lastChild","destroyed","previous","resetSlideshow","close","togglePlayPause","handleSlideshow","clearSlideshowTimeout","createFocusTrap","allowOutsideClick","trapStack","activate","deactivate","q","W","Y","V","appear","modifiers","auto","stroke","cx","cy","mousedown","currentTarget","invisible","H","NcEllipsisedOption","NcListItemIcon","VueMultiselect","closeOnSelect","multiple","limit","trackBy","options","userSelect","loading","autoLimit","tagWidth","elWidth","ariaExpanded","maxOptions","limitString","localValue","get","set","willCloseOnSelect","updateWidth","getOptionLabel","formatLimitTitle","offsetWidth","$scopedSlots","option","_l","model","callback","Dropdown","HTMLElement","SVGElement","popperContent","$focusTrap","escapeDeactivates","afterShow","afterHide","distance","item","random","iconIsUrl","URL","NcPopoverMenuItem","download","rel","active","submit","checked","_i","change","$set","_q","composing","NcInputField","ArrowRight","Undo","trailingButtonIcon","clearTextLabel","$props","themes","html","VTooltip","toLowerCase","match","replace","parseInt","getGettextBuilder","detectLocale","locale","translations","Actions","Activities","Choose","Custom","Favorite","Flags","Global","Next","Objects","Open","Previous","Search","Settings","Submit","Symbols","items","pluralId","msgid","msgid_plural","msgstr","addTranslation","ngettext","gettext","getCapabilities","user_status","enabled","generateOcsUrl","ocs","response","isMobile","created","handleWindowResize","documentElement","clientWidth","RegExp","defaultProtocol","className","attributes","setAttribute","assign","_nc_focus_trap","sources","names","mappings","sourcesContent","sourceRoot","__esModule","hash","needQuotes","btoa","unescape","JSON","stringify","identifier","base","css","media","sourceMap","supports","layer","references","updater","byIndex","splice","update","HTMLIFrameElement","contentDocument","head","nc","parentNode","removeChild","styleSheet","cssText","firstChild","iconUrl","source","avatarUrl","getAvatarUrl","mentionText","contenteditable","backgroundImage","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","beforeCreate","baseURI","location","NcCustomPickerRenderResult","ht","NcReferenceList","NcReferencePicker","ge","NcReferencePickerModal","Pe","NcReferenceWidget","NcRichText","dt","NcSearch","Ae","anyLinkProviderId","Me","getLinkWithPicker","Ge","getProvider","Bt","getProviders","jt","isCustomPickerElementRegistered","ft","isWidgetRegistered","registerCustomPickerElement","vt","registerWidget","renderCustomPickerElement","gt","renderWidget","searchProvider","Nt","sortProviders","Et","_vue_richtext_widgets","onDestroy","richObjectType","richObject","accessible","_registerWidget","reference","compact","hasCustomWidget","noAccess","descriptionStyle","display","lineClamp","webkitLineClamp","compactLink","openGraphObject","link","startsWith","substring","observer","ResizeObserver","contentRect","observe","disconnect","customWidget","thumb","referenceData","isVisible","displayedReferences","firstReference","fetch","exec","autolink","useMarkdown","flat","component","Q","J","X","tt","et","nt","it","rt","referenceLimit","markdownCssClasses","ol","ul","li","strong","em","h1","h2","h3","h4","h5","h6","hr","table","pre","code","blockquote","renderPlaintext","context","renderMarkdown","unified","use","handlers","prefix","processSync","ot","at","st","lt","ct","ut","_vue_richtext_custom_picker_elements","mt","element","object","providerId","_registerCustomPickerElement","Ct","provider","isRegistered","renderResult","renderElement","domElement","_isVue","$on","onSubmit","onCancel","detail","bt","yt","wt","xt","kt","St","icon_url","imagePath","find","_vue_richtext_reference_providers","search_providers_ids","_vue_richtext_reference_provider_timestamps","order","loadState","Pt","zt","Ot","Dt","Tt","It","Lt","Gt","Mt","Ft","NcMultiselect","NcEmptyContent","LinkVariantIcon","selectedProvider","query","multiselectPlaceholder","isLink","$t","onProviderSelected","Ut","Rt","Zt","qt","Wt","Yt","NcTextField","inputValue","abortController","inputPlaceholder","isLinkValid","onClear","onInput","abort","updateReference","AbortController","signal","Vt","Ht","Kt","nativeOn","keyup","Qt","Jt","Xt","entry","te","ee","ne","rounded","thumbnailUrl","subline","ie","re","oe","ae","se","le","ce","DotsHorizontalIcon","MagnifyIcon","NcSearchResult","showEmptyContent","searchPlaceholder","searchQuery","selectedResult","resultsBySearchProvider","searching","searchingMoreOf","mySearchPlaceholder","searchProviderIds","rawLinkEntry","formattedSearchResults","resourceUrl","isRawLink","entries","isCustomGroupTitle","isPaginated","isMore","isLoading","resetResults","cancelSearchRequests","onSearchInput","updateSearch","onSelectResultSelected","searchMoreOf","searchProviders","searchOneProvider","cursor","allSettled","reason","term","ue","de","pe","me","providerList","standardLinkInput","searchInput","customElement","he","NcCustomPickerElement","NcProviderList","NcRawLinkInput","initialProvider","focusOnCreate","MODES","mode","pickerWrapperStyle","onEscapePressed","deselectProvider","cancelProviderSelection","cancelCustomElement","cancelSearch","cancelRawLinkInput","submitLink","timestamp","now","put","fe","ve","cancel","Ce","be","ye","we","xe","ke","Se","NcModal","ArrowLeftIcon","CloseIcon","isInsideViewer","backButtonTitle","closeButtonTitle","closeButtonLabel","isProviderSelected","showBackButton","modalSize","showModalTitle","modalTitle","modal_content","emit","onProviderSelect","onBackClicked","referencePicker","Be","je","Ee","Ne","ze","Oe","De","Te","Ie","$e","Le","append","extend","$mount","$destroy","previewUrl","OC","MimeType","getIconUrl","mimetype","fileSize","Util","humanFileSize","fileMtime","relativeModifiedDate","mtime","filePath","path","filePreview","filePreviewClass","fileId","img","err","OCA","Viewer","mimetypes","_vm","$event","openFilePicker","onWindowClick","contains","dialogs","filepicker","file","Files","getClient","getFileInfo","_status","fileInfo","FilePickerType","picker","fileLink","protocol","host","Vue","el","_ref","FileWidget","_ref2","vueElement","FileReferencePickerElement","___CSS_LOADER_EXPORT___","hasOwn","toStr","gOPD","arr","isPlainObject","obj","hasOwnConstructor","hasIsPrototypeOf","setProperty","newValue","getProperty","copy","copyIsArray","clone","deep","COMMENT_REGEX","NEWLINE_REGEX","WHITESPACE_REGEX","PROPERTY_REGEX","COLON_REGEX","VALUE_REGEX","SEMICOLON_REGEX","TRIM_REGEX","EMPTY_STRING","str","lineno","column","updatePosition","lines","lastIndexOf","position","line","Position","whitespace","content","errorsList","msg","filename","silent","comments","rules","comment","pos","declaration","prop","val","ret","decl","decls","declarations","parse","StyleToObject","output","hasIterator","len","isBuffer","fillColor","own","definitions","cache","definition","clean","asciiAlpha","regexCheck","asciiDigit","asciiHexDigit","asciiAlphanumeric","asciiPunctuation","asciiAtext","asciiControl","markdownLineEndingOrSpace","markdownLineEnding","markdownSpace","unicodeWhitespace","unicodePunctuation","regex","fromCharCode","Schema","normal","space","merge","normalize","Info","attribute","boolean","booleanish","overloadedBoolean","number","commaSeparated","spaceSeparated","commaOrSpaceSeparated","mustUseProperty","defined","powers","increment","DefinedInfo","super","check","info","transform","xlink","xLinkActuate","xLinkArcRole","xLinkHref","xLinkRole","xLinkShow","xLinkTitle","xLinkType","xml","xmlLang","xmlBase","xmlSpace","caseSensitiveTransform","caseInsensitiveTransform","xmlns","xmlnsxlink","xmlnsXLink","aria","ariaActiveDescendant","ariaAtomic","ariaAutoComplete","ariaBusy","ariaChecked","ariaColCount","ariaColIndex","ariaColSpan","ariaControls","ariaCurrent","ariaDescribedBy","ariaDetails","ariaDisabled","ariaDropEffect","ariaErrorMessage","ariaFlowTo","ariaGrabbed","ariaHasPopup","ariaInvalid","ariaKeyShortcuts","ariaLabelledBy","ariaLevel","ariaLive","ariaModal","ariaMultiLine","ariaMultiSelectable","ariaOrientation","ariaOwns","ariaPlaceholder","ariaPosInSet","ariaPressed","ariaReadOnly","ariaRelevant","ariaRequired","ariaRoleDescription","ariaRowCount","ariaRowIndex","ariaRowSpan","ariaSelected","ariaSetSize","ariaSort","ariaValueMax","ariaValueMin","ariaValueNow","ariaValueText","acceptcharset","classname","htmlfor","httpequiv","abbr","accept","acceptCharset","accessKey","allow","allowFullScreen","allowPaymentRequest","allowUserMedia","as","autoCapitalize","autoComplete","autoFocus","autoPlay","capture","charSet","cite","cols","colSpan","contentEditable","controls","controlsList","coords","crossOrigin","dateTime","decoding","defer","dir","dirName","draggable","encType","enterKeyHint","form","formAction","formEncType","formMethod","formNoValidate","formTarget","headers","hidden","high","hrefLang","htmlFor","httpEquiv","imageSizes","imageSrcSet","inputMode","integrity","isMap","itemId","itemProp","itemRef","itemScope","itemType","kind","lang","language","list","loop","low","manifest","maxLength","minLength","muted","nonce","noModule","noValidate","onAbort","onAfterPrint","onAuxClick","onBeforeMatch","onBeforePrint","onBeforeUnload","onCanPlay","onCanPlayThrough","onChange","onClick","onClose","onContextLost","onContextMenu","onContextRestored","onCopy","onCueChange","onCut","onDblClick","onDrag","onDragEnd","onDragEnter","onDragExit","onDragLeave","onDragOver","onDragStart","onDrop","onDurationChange","onEmptied","onEnded","onError","onFormData","onHashChange","onInvalid","onKeyDown","onKeyPress","onKeyUp","onLanguageChange","onLoad","onLoadedData","onLoadedMetadata","onLoadEnd","onLoadStart","onMessage","onMessageError","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onOffline","onOnline","onPageHide","onPageShow","onPaste","onPause","onPlay","onPlaying","onPopState","onProgress","onRateChange","onRejectionHandled","onReset","onResize","onScroll","onScrollEnd","onSecurityPolicyViolation","onSeeked","onSeeking","onSelect","onSlotChange","onStalled","onStorage","onSuspend","onTimeUpdate","onToggle","onUnhandledRejection","onUnload","onVolumeChange","onWaiting","onWheel","optimum","pattern","ping","playsInline","poster","preload","readOnly","referrerPolicy","reversed","rows","rowSpan","sandbox","scope","scoped","seamless","selected","shape","sizes","span","spellCheck","srcDoc","srcLang","srcSet","tabIndex","translate","typeMustMatch","useMap","aLink","archive","axis","background","bgColor","border","borderColor","bottomMargin","cellPadding","cellSpacing","char","charOff","classId","codeBase","codeType","declare","event","face","frame","frameBorder","hSpace","leftMargin","longDesc","lowSrc","marginHeight","marginWidth","noResize","noHref","noShade","noWrap","profile","prompt","rev","rightMargin","scheme","scrolling","standby","summary","topMargin","valueType","vAlign","vLink","vSpace","allowTransparency","autoCorrect","autoSave","disablePictureInPicture","disableRemotePlayback","security","unselectable","accentHeight","alignmentBaseline","arabicForm","baselineShift","capHeight","clipPath","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","dataType","dominantBaseline","enableBackground","fillOpacity","fillRule","floodColor","floodOpacity","fontFamily","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","horizAdvX","horizOriginX","horizOriginY","imageRendering","letterSpacing","lightingColor","markerEnd","markerMid","markerStart","navDown","navDownLeft","navDownRight","navLeft","navNext","navPrev","navRight","navUp","navUpLeft","navUpRight","onActivate","onBegin","onEnd","onFocusIn","onFocusOut","onMouseWheel","onRepeat","onShow","onZoom","overlinePosition","overlineThickness","paintOrder","panose1","pointerEvents","renderingIntent","shapeRendering","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","strokeDashArray","strokeDashOffset","strokeLineCap","strokeLineJoin","strokeMiterLimit","strokeOpacity","strokeWidth","textAnchor","textDecoration","textRendering","typeOf","underlinePosition","underlineThickness","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","vHanging","vIdeographic","vMathematical","vectorEffect","vertAdvY","vertOriginX","vertOriginY","wordSpacing","writingMode","xHeight","playbackOrder","timelineBegin","about","accumulate","additive","alphabetic","amplitude","ascent","attributeName","attributeType","azimuth","bandwidth","baseFrequency","baseProfile","bbox","begin","bias","by","calcMode","clip","clipPathUnits","contentScriptType","contentStyleType","defaultAction","descent","diffuseConstant","direction","dur","divisor","dx","dy","edgeMode","editable","elevation","exponent","externalResourcesRequired","filterRes","filterUnits","focusable","focusHighlight","format","fr","fx","fy","g1","g2","glyphRef","gradientTransform","gradientUnits","handler","hanging","hatchContentUnits","hatchUnits","ideographic","initialVisibility","in","in2","intercept","k1","k2","k3","k4","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","kerning","lengthAdjust","limitingConeAngle","local","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","mathematical","mediaCharacterEncoding","mediaContentEncodings","mediaSize","mediaTime","numOctaves","offset","opacity","operator","orient","orientation","origin","overflow","overlay","pathLength","patternContentUnits","patternTransform","patternUnits","phase","pitch","points","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","propagate","radius","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","requiredFonts","requiredFormats","resource","restart","rotate","rx","ry","scale","seed","side","slope","snapshotTime","specularConstant","specularExponent","spreadMethod","spacing","startOffset","stdDeviation","stemh","stemv","stitchTiles","string","surfaceScale","syncBehavior","syncBehaviorDefault","syncMaster","syncTolerance","syncToleranceDefault","systemLanguage","tableValues","targetX","targetY","textLength","transformBehavior","u1","u2","unicode","viewTarget","visibility","widths","x1","x2","xChannelSelector","y1","y2","yChannelSelector","zoomAndPan","valid","dash","cap","kebab","$0","camelcase","hastToReact","webNamespaces","mathml","toH","react","vue","vd","vdom","schema","hyperscript","state","parentSchema","nodes","addAttribute","namespace","Type","rest","dashes","subprop","settings","padRight","padLeft","$1","error_","parseStyle","tableElements","Set","rehypeReact","fixTableCellAlign","has","child","thing","passNode","Compiler","Fragment","remarkBreaks","lastIndex","ABSOLUTE_URL_REGEX","WINDOWS_PATH_REGEX","defaultTarget","defaultRel","defaultProtocols","remarkExternalLinks","protocols","contentProperties","ctx","hProperties","hName","hChildren","emptyOptions","includeImageAlt","includeHtml","parameters","chunkStart","unshift","syntaxExtension","extension","hook","left","right","constructs","existing","before","factorySpace","effects","POSITIVE_INFINITY","enter","consume","exit","tokenize","contentStart","attempt","parser","contentInitial","lineStart","token","contentType","stack","childFlow","childToken","lineStartOffset","continued","containerState","continuation","documentContinue","checkNewContainers","_closeFlow","closeFlow","indexBeforeExits","events","point","indexBeforeFlow","exitContainers","documentContinued","currentConstruct","concrete","flowStart","interrupt","_gfmTableDynamicInterruptHack","containerConstruct","thereIsANewContainer","thereIsNoNewContainer","lazy","containerContinue","flow","_tokenizer","flowContinue","writeToChild","eof","stream","sliceStream","defineSkip","write","seen","nok","disable","null","blankLine","partial","subtokenize","jumps","lineIndex","otherIndex","otherEvent","subevents","more","_isInFirstContentOfListItem","subcontent","_container","eventIndex","startPosition","startPositions","tokenizer","childEvents","gaps","current","adjust","breaks","_gfmTasklistFirstContentOfListItem","contentEnd","continuationConstruct","contentContinue","prefixed","tail","sliceSerialize","initial","flowInitial","afterConstruct","resolver","resolveAll","createResolver","initializeFactory","field","notText","atBreak","resolveAllLineSuffixes","extraResolver","tabs","bufferIndex","chunk","charCodeAt","_index","_bufferIndex","called","createTokenizer","initialize","columnStart","resolveAllConstructs","consumed","accountForPotentialSkip","fields","constructFactory","construct","addResult","onsuccessfulcheck","expandTabs","atTab","serializeChunks","chunkIndex","go","expectedCode","startIndex","startBufferIndex","endIndex","endBufferIndex","view","sliceChunks","restore","onreturn","returnState","bogusState","listOfConstructs","constructIndex","handleListOfConstructs","def","handleConstruct","startPoint","startPrevious","startCurrentConstruct","startEventsIndex","startStack","store","resolveTo","thematicBreak","marker","sequence","initialSize","atMarker","inside","onBlank","listItemPrefixWhitespaceConstruct","endOfPrefix","otherPrefix","initialBlankLine","furtherBlankLines","notInCurrentItem","indentConstruct","blockQuote","after","factoryDestination","literalType","literalMarkerType","rawType","stringType","balance","destinationEnclosedBefore","destinationRaw","destinationEnclosed","destinationEnclosedEscape","destinationRawEscape","factoryLabel","markerType","labelEscape","factoryTitle","atFirstTitleBreak","atTitleBreak","titleEscape","factoryWhitespace","normalizeIdentifier","labelAfter","titleConstruct","codeIndented","afterStartPrefix","afterPrefix","indentedContent","headingAtx","fenceOpenInside","headingBreak","setextUnderline","paragraph","closingSequence","closingSequenceEnd","heading","htmlBlockNames","htmlRawNames","htmlFlow","startTag","buffer","declarationStart","tagCloseStart","continuationDeclarationInside","commentOpenInside","cdataOpenInside","basicSelfClosing","completeAttributeNameBefore","completeClosingTagAfter","completeEnd","completeAttributeName","completeAttributeNameAfter","completeAttributeValueBefore","completeAttributeValueQuoted","completeAttributeValueUnquoted","completeAttributeValueQuotedAfter","completeAfter","continuationCommentInside","continuationRawTagOpen","continuationClose","continuationCharacterDataInside","continuationAtLineEnding","nextBlankConstruct","htmlContinueStart","htmlLineEnd","continuationRawEndTag","codeFenced","closingFenceConstruct","sizeOpen","nonLazyLine","initialPrefix","sequenceOpen","infoOpen","openAfter","infoAfter","meta","decodeNamedCharacterReference","characterReference","textContent","numeric","characterEscape","lineEnding","labelEnd","labelStart","_balanced","_inactive","balanced","afterLabelEnd","resourceConstruct","fullReferenceConstruct","collapsedReferenceConstruct","group","insideSpan","destinationAfter","between","afterLabel","classifyCharacter","attention","attentionMarkers","_open","_close","openingSequence","nextEvents","movePoint","schemeOrEmailAtext","emailAtext","schemeInsideOrEmailAtext","urlInside","emailAtSignOrDot","emailLabel","emailValue","declarationOpen","instruction","tagOpen","commentOpen","cdataOpen","commentStart","commentStartDash","commentClose","atLineEnding","cdata","cdataClose","cdataEnd","instructionClose","tagClose","tagCloseBetween","tagOpenBetween","tagOpenAttributeName","tagOpenAttributeNameAfter","tagOpenAttributeValueBefore","tagOpenAttributeValueQuoted","tagOpenAttributeValueUnquoted","tagOpenAttributeValueQuotedAfter","gap","tailExitIndex","headEnterIndex","decodeNumericCharacterReference","characterEscapeOrReference","decode","$2","hex","fromMarkdown","encoding","config","transforms","canContainEols","opener","autolinkProtocol","onenterdata","autolinkEmail","atxHeading","codeFlow","codeFencedFenceInfo","codeFencedFenceMeta","codeText","codeTextData","codeFlowValue","definitionDestinationString","definitionLabelString","definitionTitleString","emphasis","hardBreakEscape","hardBreak","hardBreakTrailing","htmlFlowData","htmlText","htmlTextData","image","listItem","spread","_spread","listItemValue","getData","setData","listOrdered","listUnordered","referenceString","resourceDestinationString","resourceTitleString","setextHeading","closer","atxHeadingSequence","depth","onexitdata","characterEscapeValue","characterReferenceMarkerHexadecimal","onexitcharacterreferencemarker","characterReferenceMarkerNumeric","characterReferenceValue","resume","codeFencedFence","onexithardbreak","referenceType","fragment","labelText","ancestor","decodeString","setextHeadingLineSequence","setextHeadingText","configure","mdastExtensions","tokenStack","listStack","prepareList","defaultOnError","firstBlankLineIndex","containerBalance","listSpread","tailIndex","tailEvent","and","errorHandler","onExitError","ordered","compiler","postprocess","extensions","combineExtensions","atCarriageReturn","endPosition","ceil","preprocess","combined","Parser","doc","normalizeUri","skip","footnoteReference","safeId","footnoteOrder","counter","footnoteCounts","reuseCounter","clobberPrefix","dataFootnoteRef","patch","sup","applyData","revert","subtype","suffix","contents","listItemLoose","pointStart","pointEnd","tab","trimLines","last","trimLine","break","delete","footnote","footnoteById","no","dangerous","imageReference","inlineCode","linkReference","loose","listLoose","root","firstRow","shift","tableContent","tableCell","tableRow","siblings","cellIndex","cells","cell","alignValue","toml","ignore","yaml","footnoteDefinition","passThrough","unknownHandler","defaultUnknownHandler","toHast","allowDangerousHtml","footnoteLabel","footnoteLabelTagName","footnoteLabelProperties","footnoteBackLabel","augment","createState","foot","listItems","referenceIndex","backReferences","backReference","dataFootnoteBackref","tailTail","dataFootnotes","footer","destination","run","bridge","mutate","bail","VFileMessage","place","parts","fatal","ruleId","actual","expected","note","basename","ext","assertPath","seenNonSlash","firstNonSlashEnd","extIndex","dirname","unmatchedSlash","extname","startPart","startDot","preDotState","segments","joined","absolute","allowAboveRoot","lastSlashIndex","lastSegmentLength","lastSlash","dots","normalizeString","sep","proc","isUrl","fileUrlOrPath","VFile","messages","history","cwd","stored","hostname","pathname","third","decodeURIComponent","getPathFromURLPosix","urlToPath","assertNonEmpty","assertPart","stem","fail","part","transformers","fns","pipeline","middlewareIndex","middleware","fnExpectsCallback","middelware","trough","attachers","frozen","freezeIndex","processor","assertUnfrozen","freeze","attacher","transformer","addPlugin","addList","addPreset","plugin","plugins","vfile","assertParser","newable","assertCompiler","assertNode","compile","executor","reject","runSync","assertDone","process","asyncName","looksLikeAVFile","stringifyPosition","castFactory","propsFactory","factory","grandparents","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","chunkIds","priority","notFulfilled","Infinity","fulfilled","every","getter","globalThis","Function","nmd","paths","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
|