{"version":3,"file":"settings-apps-view-7418.js?v=cc1086de731088155216","mappings":"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","sources":["webpack:///nextcloud/apps/settings/src/components/AppDetails.vue?vue&type=style&index=0&id=5be7cbf9&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/settings/src/components/AppList.vue?vue&type=style&index=0&id=62f0f115&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/AppList/AppItem.vue?vue&type=style&index=0&id=79bd4dc4&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/settings/src/components/Markdown.vue?vue&type=style&index=0&id=ffd9a2d6&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/settings/src/views/Apps.vue?vue&type=style&index=0&id=2f31fb7f&prod&lang=scss&scoped=true","webpack://nextcloud/./apps/settings/src/views/Apps.vue?8e68","webpack:///nextcloud/node_modules/vue-material-design-icons/StarShooting.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/StarShooting.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/StarShooting.vue?ea51","webpack:///nextcloud/node_modules/vue-material-design-icons/StarShooting.vue?vue&type=template&id=2796c6f2","webpack://nextcloud/./apps/settings/src/components/AppList.vue?ee21","webpack:///nextcloud/apps/settings/src/components/AppList/AppScore.vue","webpack:///nextcloud/apps/settings/src/components/AppList/AppScore.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/AppList/AppScore.vue?26fd","webpack://nextcloud/./apps/settings/src/components/AppList/AppScore.vue?1c98","webpack:///nextcloud/apps/settings/src/service/rebuild-navigation.js","webpack:///nextcloud/apps/settings/src/mixins/AppManagement.js","webpack:///nextcloud/apps/settings/src/components/SvgFilterMixin.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/settings/src/components/SvgFilterMixin.vue","webpack://nextcloud/./apps/settings/src/components/SvgFilterMixin.vue?5bcd","webpack:///nextcloud/apps/settings/src/components/AppList/AppItem.vue","webpack:///nextcloud/apps/settings/src/components/AppList/AppItem.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/AppList/AppItem.vue?829c","webpack://nextcloud/./apps/settings/src/components/AppList/AppItem.vue?a9a1","webpack://nextcloud/./apps/settings/src/components/AppList/AppItem.vue?af1e","webpack://nextcloud/./apps/settings/src/components/PrefixMixin.vue?c564","webpack:///nextcloud/apps/settings/src/components/PrefixMixin.vue","webpack:///nextcloud/apps/settings/src/components/AppList.vue","webpack:///nextcloud/apps/settings/src/components/AppList.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/AppList.vue?9a5a","webpack://nextcloud/./apps/settings/src/components/AppList.vue?8acf","webpack://nextcloud/./apps/settings/src/components/AppDetails.vue?7e45","webpack:///nextcloud/node_modules/marked/lib/marked.esm.js","webpack:///nextcloud/apps/settings/src/components/Markdown.vue","webpack:///nextcloud/apps/settings/src/components/Markdown.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/Markdown.vue?8506","webpack://nextcloud/./apps/settings/src/components/Markdown.vue?26cf","webpack://nextcloud/./apps/settings/src/components/Markdown.vue?d299","webpack:///nextcloud/apps/settings/src/components/AppDetails.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/settings/src/components/AppDetails.vue","webpack://nextcloud/./apps/settings/src/components/AppDetails.vue?db88","webpack://nextcloud/./apps/settings/src/components/AppDetails.vue?2807","webpack:///nextcloud/apps/settings/src/views/Apps.vue","webpack:///nextcloud/apps/settings/src/views/Apps.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/views/Apps.vue?5545","webpack://nextcloud/./apps/settings/src/views/Apps.vue?7b97","webpack:///nextcloud/node_modules/vue-localstorage/dist/vue-local-storage.js"],"sourcesContent":["// 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, `.app-details[data-v-5be7cbf9]{padding:20px}.app-details__actions-manage[data-v-5be7cbf9]{display:flex}.app-details__actions-manage input[data-v-5be7cbf9]{flex:0 1 auto;min-width:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-details__dependencies[data-v-5be7cbf9]{opacity:.7}.app-details__documentation[data-v-5be7cbf9]{padding-top:20px}.app-details__documentation a.appslink[data-v-5be7cbf9]{display:block}.app-details__description[data-v-5be7cbf9]{padding-top:20px}.force[data-v-5be7cbf9]{color:var(--color-error);border-color:var(--color-error);background:var(--color-main-background)}.force[data-v-5be7cbf9]:hover,.force[data-v-5be7cbf9]:active{color:var(--color-main-background);border-color:var(--color-error) !important;background:var(--color-error)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/AppDetails.vue\"],\"names\":[],\"mappings\":\"AACA,8BACC,YAAA,CAIC,8CAEC,YAAA,CACA,oDACC,aAAA,CACA,WAAA,CACA,sBAAA,CACA,kBAAA,CACA,eAAA,CAIH,4CACC,UAAA,CAED,6CACC,gBAAA,CACA,wDACC,aAAA,CAGF,2CACC,gBAAA,CAIF,wBACC,wBAAA,CACA,+BAAA,CACA,uCAAA,CAED,6DAEC,kCAAA,CACA,0CAAA,CACA,6BAAA\",\"sourcesContent\":[\"\\n.app-details {\\n\\tpadding: 20px;\\n\\n\\t&__actions {\\n\\t\\t// app management\\n\\t\\t&-manage {\\n\\t\\t\\t// if too many, shrink them and ellipsis\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tinput {\\n\\t\\t\\t\\tflex: 0 1 auto;\\n\\t\\t\\t\\tmin-width: 0;\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\t&__dependencies {\\n\\t\\topacity: .7;\\n\\t}\\n\\t&__documentation {\\n\\t\\tpadding-top: 20px;\\n\\t\\ta.appslink {\\n\\t\\t\\tdisplay: block;\\n\\t\\t}\\n\\t}\\n\\t&__description {\\n\\t\\tpadding-top: 20px;\\n\\t}\\n}\\n\\n.force {\\n\\tcolor: var(--color-error);\\n\\tborder-color: var(--color-error);\\n\\tbackground: var(--color-main-background);\\n}\\n.force:hover,\\n.force:active {\\n\\tcolor: var(--color-main-background);\\n\\tborder-color: var(--color-error) !important;\\n\\tbackground: var(--color-error);\\n}\\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, `.app-bundle-heading[data-v-62f0f115]{display:flex;align-items:center;margin:20px 10px 20px 0}.app-bundle-header[data-v-62f0f115]{margin:0 10px 0 50px;font-weight:bold;font-size:20px;line-height:30px;color:var(--color-text-light)}.apps-store-view[data-v-62f0f115]{display:flex;flex-wrap:wrap}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/AppList.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,YAAA,CACA,kBAAA,CACA,uBAAA,CAED,oCACC,oBAAA,CACA,gBAAA,CACA,cAAA,CACA,gBAAA,CACA,6BAAA,CAED,kCACC,YAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n.app-bundle-heading {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tmargin: 20px 10px 20px 0;\\n}\\n.app-bundle-header {\\n\\tmargin: 0 10px 0 50px;\\n\\tfont-weight: bold;\\n\\tfont-size: 20px;\\n\\tline-height: 30px;\\n\\tcolor: var(--color-text-light);\\n}\\n.apps-store-view {\\n\\tdisplay: flex;\\n\\tflex-wrap: wrap;\\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, `.app-icon[data-v-79bd4dc4]{filter:var(--background-invert-if-bright)}.app-image img[data-v-79bd4dc4]{width:100%}.app-name--link[data-v-79bd4dc4]::after{content:\"\";position:absolute;top:0;left:0;right:0;bottom:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/AppList/AppItem.vue\"],\"names\":[],\"mappings\":\"AACA,2BACC,yCAAA,CAGD,gCACC,UAAA,CAGD,wCACE,UAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA\",\"sourcesContent\":[\"\\n.app-icon {\\n\\tfilter: var(--background-invert-if-bright);\\n}\\n\\n.app-image img {\\n\\twidth: 100%;\\n}\\n\\n.app-name--link::after {\\n content: '';\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n}\\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, `.settings-markdown[data-v-ffd9a2d6] h1,.settings-markdown[data-v-ffd9a2d6] h2,.settings-markdown[data-v-ffd9a2d6] h3,.settings-markdown[data-v-ffd9a2d6] h4,.settings-markdown[data-v-ffd9a2d6] h5,.settings-markdown[data-v-ffd9a2d6] h6{font-weight:600;line-height:120%;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}.settings-markdown[data-v-ffd9a2d6] h1{font-size:36px;margin-top:48px}.settings-markdown[data-v-ffd9a2d6] h2{font-size:28px;margin-top:48px}.settings-markdown[data-v-ffd9a2d6] h3{font-size:24px}.settings-markdown[data-v-ffd9a2d6] h4{font-size:21px}.settings-markdown[data-v-ffd9a2d6] h5{font-size:17px}.settings-markdown[data-v-ffd9a2d6] h6{font-size:var(--default-font-size)}.settings-markdown[data-v-ffd9a2d6] pre{white-space:pre;overflow-x:auto;background-color:var(--color-background-dark);border-radius:var(--border-radius);padding:1em 1.3em;margin-bottom:1em}.settings-markdown[data-v-ffd9a2d6] p code{background-color:var(--color-background-dark);border-radius:var(--border-radius);padding:.1em .3em}.settings-markdown[data-v-ffd9a2d6] li{position:relative}.settings-markdown[data-v-ffd9a2d6] ul,.settings-markdown[data-v-ffd9a2d6] ol{padding-left:10px;margin-left:10px}.settings-markdown[data-v-ffd9a2d6] ul li{list-style-type:disc}.settings-markdown[data-v-ffd9a2d6] ul>li>ul>li{list-style-type:circle}.settings-markdown[data-v-ffd9a2d6] ul>li>ul>li ul li{list-style-type:square}.settings-markdown[data-v-ffd9a2d6] blockquote{padding-left:1em;border-left:4px solid var(--color-primary-element);color:var(--color-text-maxcontrast);margin-left:0;margin-right:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Markdown.vue\"],\"names\":[],\"mappings\":\"AAGA,0OAMC,eAAA,CACA,gBAAA,CACA,eAAA,CACA,kBAAA,CACA,4BAAA,CAGD,uCACC,cAAA,CACA,eAAA,CAGD,uCACC,cAAA,CACA,eAAA,CAGD,uCACC,cAAA,CAGD,uCACC,cAAA,CAGD,uCACC,cAAA,CAGD,uCACC,kCAAA,CAGD,wCACC,eAAA,CACA,eAAA,CACA,6CAAA,CACA,kCAAA,CACA,iBAAA,CACA,iBAAA,CAGD,2CACC,6CAAA,CACA,kCAAA,CACA,iBAAA,CAGD,uCACC,iBAAA,CAGD,8EACC,iBAAA,CACA,gBAAA,CAGD,0CACC,oBAAA,CAGD,gDACC,sBAAA,CAGD,sDACC,sBAAA,CAGD,+CACC,gBAAA,CACA,kDAAA,CACA,mCAAA,CACA,aAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n.settings-markdown::v-deep {\\n\\nh1,\\nh2,\\nh3,\\nh4,\\nh5,\\nh6 {\\n\\tfont-weight: 600;\\n\\tline-height: 120%;\\n\\tmargin-top: 24px;\\n\\tmargin-bottom: 12px;\\n\\tcolor: var(--color-main-text);\\n}\\n\\nh1 {\\n\\tfont-size: 36px;\\n\\tmargin-top: 48px;\\n}\\n\\nh2 {\\n\\tfont-size: 28px;\\n\\tmargin-top: 48px;\\n}\\n\\nh3 {\\n\\tfont-size: 24px;\\n}\\n\\nh4 {\\n\\tfont-size: 21px;\\n}\\n\\nh5 {\\n\\tfont-size: 17px;\\n}\\n\\nh6 {\\n\\tfont-size: var(--default-font-size);\\n}\\n\\npre {\\n\\twhite-space: pre;\\n\\toverflow-x: auto;\\n\\tbackground-color: var(--color-background-dark);\\n\\tborder-radius: var(--border-radius);\\n\\tpadding: 1em 1.3em;\\n\\tmargin-bottom: 1em;\\n}\\n\\np code {\\n\\tbackground-color: var(--color-background-dark);\\n\\tborder-radius: var(--border-radius);\\n\\tpadding: .1em .3em;\\n}\\n\\nli {\\n\\tposition: relative;\\n}\\n\\nul, ol {\\n\\tpadding-left: 10px;\\n\\tmargin-left: 10px;\\n}\\n\\nul li {\\n\\tlist-style-type: disc;\\n}\\n\\nul > li > ul > li {\\n\\tlist-style-type: circle;\\n}\\n\\nul > li > ul > li ul li {\\n\\tlist-style-type: square;\\n}\\n\\nblockquote {\\n\\tpadding-left: 1em;\\n\\tborder-left: 4px solid var(--color-primary-element);\\n\\tcolor: var(--color-text-maxcontrast);\\n\\tmargin-left: 0;\\n\\tmargin-right: 0;\\n}\\n\\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, `.app-sidebar[data-v-2f31fb7f]:not(.app-sidebar--without-background) :not(.app-sidebar-header--compact) .app-sidebar-header__figure{background-size:cover}.app-sidebar[data-v-2f31fb7f]:not(.app-sidebar--without-background) .app-sidebar-header--compact .app-sidebar-header__figure{background-size:32px;filter:var(--background-invert-if-bright)}.app-sidebar[data-v-2f31fb7f] .app-sidebar-header__description .app-version{padding-left:10px}.app-sidebar[data-v-2f31fb7f].app-sidebar--without-background .app-sidebar-header__figure{display:flex;align-items:center;justify-content:center}.app-sidebar[data-v-2f31fb7f].app-sidebar--without-background .app-sidebar-header__figure--default-app-icon{width:32px;height:32px;background-size:32px}.app-sidebar[data-v-2f31fb7f] .app-sidebar-header__desc .app-sidebar-header__subtitle{overflow:visible !important;height:auto;white-space:normal !important;line-height:16px}.app-sidebar[data-v-2f31fb7f] .app-sidebar-header__action{margin:0 20px}.app-sidebar[data-v-2f31fb7f] .app-sidebar-header__action input{margin:3px}.app-navigation[data-v-2f31fb7f] button.app-navigation-toggle{top:8px;right:-8px}.app-sidebar-tabs__release h2[data-v-2f31fb7f]{border-bottom:1px solid var(--color-border)}.app-sidebar-tabs__release[data-v-2f31fb7f] h3{font-size:20px}.app-sidebar-tabs__release[data-v-2f31fb7f] h4{font-size:17px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/views/Apps.vue\"],\"names\":[],\"mappings\":\"AAIE,mIACC,qBAAA,CAGD,6HACC,oBAAA,CAEA,yCAAA,CAKD,4EACC,iBAAA,CAMD,0FACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,4GACC,UAAA,CACA,WAAA,CACA,oBAAA,CAQF,sFACC,2BAAA,CACA,WAAA,CACA,6BAAA,CACA,gBAAA,CAIF,0DAEC,aAAA,CACA,gEACC,UAAA,CAMH,8DACC,OAAA,CACA,UAAA,CAIA,+CACC,2CAAA,CAKA,+CACC,cAAA,CAED,+CACC,cAAA\",\"sourcesContent\":[\"\\n.app-sidebar::v-deep {\\n\\t&:not(.app-sidebar--without-background) {\\n\\t\\t// with full screenshot, let's fill the figure\\n\\t\\t:not(.app-sidebar-header--compact) .app-sidebar-header__figure {\\n\\t\\t\\tbackground-size: cover;\\n\\t\\t}\\n\\t\\t// revert sidebar app icon so it is black\\n\\t\\t.app-sidebar-header--compact .app-sidebar-header__figure {\\n\\t\\t\\tbackground-size: 32px;\\n\\n\\t\\t\\tfilter: var(--background-invert-if-bright);\\n\\t\\t}\\n\\t}\\n\\n\\t.app-sidebar-header__description {\\n\\t\\t.app-version {\\n\\t\\t\\tpadding-left: 10px;\\n\\t\\t}\\n\\t}\\n\\n\\t// default icon slot styling\\n\\t&.app-sidebar--without-background {\\n\\t\\t.app-sidebar-header__figure {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t\\t&--default-app-icon {\\n\\t\\t\\t\\twidth: 32px;\\n\\t\\t\\t\\theight: 32px;\\n\\t\\t\\t\\tbackground-size: 32px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// TODO: migrate to components\\n\\t.app-sidebar-header__desc {\\n\\t\\t// allow multi line subtitle for the license\\n\\t\\t.app-sidebar-header__subtitle {\\n\\t\\t\\toverflow: visible !important;\\n\\t\\t\\theight: auto;\\n\\t\\t\\twhite-space: normal !important;\\n\\t\\t\\tline-height: 16px;\\n\\t\\t}\\n\\t}\\n\\n\\t.app-sidebar-header__action {\\n\\t\\t// align with tab content\\n\\t\\tmargin: 0 20px;\\n\\t\\tinput {\\n\\t\\t\\tmargin: 3px;\\n\\t\\t}\\n\\t}\\n}\\n\\n// Align the appNavigation toggle with the apps header toolbar\\n.app-navigation::v-deep button.app-navigation-toggle {\\n\\ttop: 8px;\\n\\tright: -8px;\\n}\\n\\n.app-sidebar-tabs__release {\\n\\th2 {\\n\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t}\\n\\n\\t// Overwrite changelog heading styles\\n\\t::v-deep {\\n\\t\\th3 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t}\\n\\t\\th4 {\\n\\t\\t\\tfont-size: 17px;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcContent',{class:{ 'with-app-sidebar': _vm.app},attrs:{\"app-name\":\"settings\"}},[_c('NcAppNavigation',{class:{ 'icon-loading': _vm.loading },scopedSlots:_vm._u([{key:\"list\",fn:function(){return [_c('NcAppNavigationItem',{attrs:{\"id\":\"app-category-your-apps\",\"to\":{ name: 'apps' },\"exact\":true,\"icon\":\"icon-category-installed\",\"name\":_vm.t('settings', 'Your apps')}}),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"id\":\"app-category-enabled\",\"to\":{ name: 'apps-category', params: { category: 'enabled' } },\"icon\":\"icon-category-enabled\",\"name\":_vm.$options.APPS_SECTION_ENUM.enabled}}),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"id\":\"app-category-disabled\",\"to\":{ name: 'apps-category', params: { category: 'disabled' } },\"icon\":\"icon-category-disabled\",\"name\":_vm.$options.APPS_SECTION_ENUM.disabled}}),_vm._v(\" \"),(_vm.updateCount > 0)?_c('NcAppNavigationItem',{attrs:{\"id\":\"app-category-updates\",\"to\":{ name: 'apps-category', params: { category: 'updates' } },\"icon\":\"icon-download\",\"name\":_vm.$options.APPS_SECTION_ENUM.updates},scopedSlots:_vm._u([{key:\"counter\",fn:function(){return [_c('NcCounterBubble',[_vm._v(_vm._s(_vm.updateCount))])]},proxy:true}],null,false,54487302)}):_vm._e(),_vm._v(\" \"),(_vm.isSubscribed)?_c('NcAppNavigationItem',{attrs:{\"id\":\"app-category-supported\",\"to\":{ name: 'apps-category', params: { category: 'supported' } },\"name\":_vm.$options.APPS_SECTION_ENUM.supported},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconStarShooting',{attrs:{\"size\":20}})]},proxy:true}],null,false,704374136)}):_vm._e(),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"id\":\"app-category-your-bundles\",\"to\":{ name: 'apps-category', params: { category: 'app-bundles' } },\"icon\":\"icon-category-app-bundles\",\"name\":_vm.$options.APPS_SECTION_ENUM['app-bundles']}}),_vm._v(\" \"),_c('NcAppNavigationSpacer'),_vm._v(\" \"),(_vm.settings.appstoreEnabled)?[_c('NcAppNavigationItem',{attrs:{\"id\":\"app-category-featured\",\"to\":{ name: 'apps-category', params: { category: 'featured' } },\"icon\":\"icon-favorite\",\"name\":_vm.$options.APPS_SECTION_ENUM.featured}}),_vm._v(\" \"),_vm._l((_vm.categories),function(cat){return _c('NcAppNavigationItem',{key:'icon-category-' + cat.ident,attrs:{\"icon\":'icon-category-' + cat.ident,\"to\":{\n\t\t\t\t\t\tname: 'apps-category',\n\t\t\t\t\t\tparams: { category: cat.ident },\n\t\t\t\t\t},\"name\":cat.displayName}})})]:_vm._e(),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"id\":\"app-developer-docs\",\"name\":_vm.t('settings', 'Developer documentation') + ' ↗'},on:{\"click\":_vm.openDeveloperDocumentation}})]},proxy:true}])}),_vm._v(\" \"),_c('NcAppContent',{staticClass:\"app-settings-content\",class:{ 'icon-loading': _vm.loadingList }},[_c('AppList',{attrs:{\"category\":_vm.category,\"app\":_vm.app,\"search\":_vm.searchQuery}})],1),_vm._v(\" \"),(_vm.id && _vm.app)?_c('NcAppSidebar',_vm._b({class:{'app-sidebar--without-background': !_vm.appSidebar.background},on:{\"close\":_vm.hideAppDetails},scopedSlots:_vm._u([(!_vm.appSidebar.background)?{key:\"header\",fn:function(){return [_c('div',{staticClass:\"app-sidebar-header__figure--default-app-icon icon-settings-dark\"})]},proxy:true}:null,{key:\"description\",fn:function(){return [(_vm.app.level === 300 || _vm.app.level === 200 || _vm.hasRating)?_c('div',{staticClass:\"app-level\"},[(_vm.app.level === 300)?_c('span',{staticClass:\"supported icon-checkmark-color\",attrs:{\"title\":_vm.t('settings', 'This app is supported via your current Nextcloud subscription.')}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Supported')))]):_vm._e(),_vm._v(\" \"),(_vm.app.level === 200)?_c('span',{staticClass:\"official icon-checkmark\",attrs:{\"title\":_vm.t('settings', 'Featured apps are developed by and within the community. They offer central functionality and are ready for production use.')}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Featured')))]):_vm._e(),_vm._v(\" \"),(_vm.hasRating)?_c('AppScore',{attrs:{\"score\":_vm.app.appstoreData.ratingOverall}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"app-version\"},[_c('p',[_vm._v(_vm._s(_vm.app.version))])])]},proxy:true}],null,true)},'NcAppSidebar',_vm.appSidebar,false),[_vm._v(\" \"),_vm._v(\" \"),_c('NcAppSidebarTab',{attrs:{\"id\":\"desc\",\"icon\":\"icon-category-office\",\"name\":_vm.t('settings', 'Details'),\"order\":0}},[_c('AppDetails',{attrs:{\"app\":_vm.app}})],1),_vm._v(\" \"),(_vm.app.appstoreData && _vm.app.releases[0].translations.en.changelog)?_c('NcAppSidebarTab',{attrs:{\"id\":\"desca\",\"icon\":\"icon-category-organization\",\"name\":_vm.t('settings', 'Changelog'),\"order\":1}},_vm._l((_vm.app.releases),function(release){return _c('div',{key:release.version,staticClass:\"app-sidebar-tabs__release\"},[_c('h2',[_vm._v(_vm._s(release.version))]),_vm._v(\" \"),(_vm.changelog(release))?_c('Markdown',{attrs:{\"text\":_vm.changelog(release)}}):_vm._e()],1)}),0):_vm._e()],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./StarShooting.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./StarShooting.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./StarShooting.vue?vue&type=template&id=2796c6f2\"\nimport script from \"./StarShooting.vue?vue&type=script&lang=js\"\nexport * from \"./StarShooting.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 star-shooting-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\":\"M18.09 11.77L19.56 18.1L14 14.74L8.44 18.1L9.9 11.77L5 7.5L11.47 6.96L14 1L16.53 6.96L23 7.5L18.09 11.77M2 12.43C2.19 12.43 2.38 12.37 2.55 12.26L5.75 10.15L4.18 8.79L1.45 10.59C.989 10.89 .861 11.5 1.16 12C1.36 12.27 1.68 12.43 2 12.43M1.16 21.55C1.36 21.84 1.68 22 2 22C2.19 22 2.38 21.95 2.55 21.84L6.66 19.13L7 17.76L7.31 16.31L1.45 20.16C.989 20.47 .861 21.09 1.16 21.55M1.45 15.38C.989 15.68 .861 16.3 1.16 16.76C1.36 17.06 1.68 17.21 2 17.21C2.19 17.21 2.38 17.16 2.55 17.05L7.97 13.5L8.24 12.31L7.32 11.5L1.45 15.38Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app-content-inner\"}},[_c('div',{staticClass:\"apps-list\",class:{installed: (_vm.useBundleView || _vm.useListView), store: _vm.useAppStoreView},attrs:{\"id\":\"apps-list\"}},[(_vm.useListView)?[(_vm.showUpdateAll)?_c('div',{staticClass:\"toolbar\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.n('settings', '%n app has an update available', '%n apps have an update available', _vm.counter))+\"\\n\\t\\t\\t\\t\"),(_vm.showUpdateAll)?_c('NcButton',{attrs:{\"id\":\"app-list-update-all\",\"type\":\"primary\"},on:{\"click\":_vm.updateAll}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.n('settings', 'Update', 'Update all', _vm.counter))+\"\\n\\t\\t\\t\\t\")]):_vm._e()],1):_vm._e(),_vm._v(\" \"),(!_vm.showUpdateAll)?_c('div',{staticClass:\"toolbar\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'All apps are up-to-date.'))+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('transition-group',{staticClass:\"apps-list-container\",attrs:{\"name\":\"app-list\",\"tag\":\"table\"}},[_c('tr',{key:\"app-list-view-header\",staticClass:\"apps-header\"},[_c('th',{staticClass:\"app-image\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Icon')))])]),_vm._v(\" \"),_c('th',{staticClass:\"app-name\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Name')))])]),_vm._v(\" \"),_c('th',{staticClass:\"app-version\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Version')))])]),_vm._v(\" \"),_c('th',{staticClass:\"app-level\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Level')))])]),_vm._v(\" \"),_c('th',{staticClass:\"actions\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Actions')))])])]),_vm._v(\" \"),_vm._l((_vm.apps),function(app){return _c('AppItem',{key:app.id,attrs:{\"app\":app,\"category\":_vm.category}})})],2)]:_vm._e(),_vm._v(\" \"),(_vm.useBundleView)?_c('table',{staticClass:\"apps-list-container\"},[_c('tr',{key:\"app-list-view-header\",staticClass:\"apps-header\"},[_c('th',{staticClass:\"app-image\",attrs:{\"id\":\"app-table-col-icon\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Icon')))])]),_vm._v(\" \"),_c('th',{staticClass:\"app-name\",attrs:{\"id\":\"app-table-col-name\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Name')))])]),_vm._v(\" \"),_c('th',{staticClass:\"app-version\",attrs:{\"id\":\"app-table-col-version\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Version')))])]),_vm._v(\" \"),_c('th',{staticClass:\"app-level\",attrs:{\"id\":\"app-table-col-level\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Level')))])]),_vm._v(\" \"),_c('th',{staticClass:\"actions\",attrs:{\"id\":\"app-table-col-actions\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Actions')))])])]),_vm._v(\" \"),_vm._l((_vm.bundles),function(bundle){return [_c('tr',{key:bundle.id},[_c('th',{attrs:{\"id\":`app-table-rowgroup-${bundle.id}`,\"colspan\":\"5\",\"scope\":\"rowgroup\"}},[_c('div',{staticClass:\"app-bundle-heading\"},[_c('span',{staticClass:\"app-bundle-header\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(bundle.name)+\"\\n\\t\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"secondary\"},on:{\"click\":function($event){return _vm.toggleBundle(bundle.id)}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', _vm.bundleToggleText(bundle.id)))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])],1)])]),_vm._v(\" \"),_vm._l((_vm.bundleApps(bundle.id)),function(app){return _c('AppItem',{key:bundle.id + app.id,attrs:{\"use-bundle-view\":true,\"headers\":`app-table-rowgroup-${bundle.id}`,\"app\":app,\"category\":_vm.category}})})]})],2):_vm._e(),_vm._v(\" \"),(_vm.useAppStoreView)?_c('ul',{staticClass:\"apps-store-view\"},_vm._l((_vm.apps),function(app){return _c('AppItem',{key:app.id,attrs:{\"app\":app,\"category\":_vm.category,\"list-view\":false}})}),1):_vm._e()],2),_vm._v(\" \"),_c('div',{staticClass:\"apps-list installed\",attrs:{\"id\":\"apps-list-search\"}},[_c('div',{staticClass:\"apps-list-container\"},[(_vm.search !== '' && _vm.searchApps.length > 0)?[_c('div',{staticClass:\"section\"},[_c('div'),_vm._v(\" \"),_c('td',{attrs:{\"colspan\":\"5\"}},[_c('h2',[_vm._v(_vm._s(_vm.t('settings', 'Results from other categories')))])])]),_vm._v(\" \"),_vm._l((_vm.searchApps),function(app){return _c('AppItem',{key:app.id,attrs:{\"app\":app,\"category\":_vm.category}})})]:_vm._e()],2)]),_vm._v(\" \"),(_vm.search !== '' && !_vm.loading && _vm.searchApps.length === 0 && _vm.apps.length === 0)?_c('div',{staticClass:\"emptycontent emptycontent-search\",attrs:{\"id\":\"apps-list-empty\"}},[_c('div',{staticClass:\"icon-settings-dark\",attrs:{\"id\":\"app-list-empty-icon\"}}),_vm._v(\" \"),_c('h2',[_vm._v(_vm._s(_vm.t('settings', 'No apps found for your version')))])]):_vm._e(),_vm._v(\" \"),_c('div',{attrs:{\"id\":\"searchresults\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppScore.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!./AppScore.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AppScore.vue?vue&type=template&id=d50ef390\"\nimport script from \"./AppScore.vue?vue&type=script&lang=js\"\nexport * from \"./AppScore.vue?vue&type=script&lang=js\"\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 null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('img',{staticClass:\"app-score-image\",attrs:{\"src\":_vm.scoreImage,\"alt\":_vm.t('settings', 'Rating: {score}/10', {score:_vm.appScore})}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport { emit } from '@nextcloud/event-bus'\n\nexport default () => {\n\treturn axios.get(generateOcsUrl('core/navigation', 2) + '/apps?format=json')\n\t\t.then(({ data }) => {\n\t\t\tif (data.ocs.meta.statuscode !== 200) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\temit('nextcloud:app-menu.refresh', { apps: data.ocs.data })\n\t\t\twindow.dispatchEvent(new Event('resize'))\n\t\t})\n}\n","/**\n * @copyright Copyright (c) 2019 Julius Härtl \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport { showError } from '@nextcloud/dialogs'\nimport rebuildNavigation from '../service/rebuild-navigation.js'\n\nexport default {\n\tcomputed: {\n\t\tappGroups() {\n\t\t\treturn this.app.groups.map(group => { return { id: group, name: group } })\n\t\t},\n\t\tinstalling() {\n\t\t\treturn this.$store.getters.loading('install')\n\t\t},\n\t\tisLoading() {\n\t\t\treturn this.app && this.$store.getters.loading(this.app.id)\n\t\t},\n\t\tenableButtonText() {\n\t\t\tif (this.app.needsDownload) {\n\t\t\t\treturn t('settings', 'Download and enable')\n\t\t\t}\n\t\t\treturn t('settings', 'Enable')\n\t\t},\n\t\tforceEnableButtonText() {\n\t\t\tif (this.app.needsDownload) {\n\t\t\t\treturn t('settings', 'Allow untested app')\n\t\t\t}\n\t\t\treturn t('settings', 'Allow untested app')\n\t\t},\n\t\tenableButtonTooltip() {\n\t\t\tif (this.app.needsDownload) {\n\t\t\t\treturn t('settings', 'The app will be downloaded from the App Store')\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tforceEnableButtonTooltip() {\n\t\t\tconst base = t('settings', 'This app is not marked as compatible with your Nextcloud version. If you continue you will still be able to install the app. Note that the app might not work as expected.')\n\t\t\tif (this.app.needsDownload) {\n\t\t\t\treturn base + ' ' + t('settings', 'The app will be downloaded from the App Store')\n\t\t\t}\n\t\t\treturn base\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tgroupCheckedAppsData: false,\n\t\t}\n\t},\n\n\tmounted() {\n\t\tif (this.app && this.app.groups && this.app.groups.length > 0) {\n\t\t\tthis.groupCheckedAppsData = true\n\t\t}\n\t},\n\n\tmethods: {\n\t\tasyncFindGroup(query) {\n\t\t\treturn this.$store.dispatch('getGroups', { search: query, limit: 5, offset: 0 })\n\t\t},\n\t\tisLimitedToGroups(app) {\n\t\t\tif (this.app.groups.length || this.groupCheckedAppsData) {\n\t\t\t\treturn true\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tsetGroupLimit() {\n\t\t\tif (!this.groupCheckedAppsData) {\n\t\t\t\tthis.$store.dispatch('enableApp', { appId: this.app.id, groups: [] })\n\t\t\t}\n\t\t},\n\t\tcanLimitToGroups(app) {\n\t\t\tif ((app.types && app.types.includes('filesystem'))\n\t\t\t\t\t|| app.types.includes('prelogin')\n\t\t\t\t\t|| app.types.includes('authentication')\n\t\t\t\t\t|| app.types.includes('logging')\n\t\t\t\t\t|| app.types.includes('prevent_group_restriction')) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\treturn true\n\t\t},\n\t\taddGroupLimitation(groupArray) {\n\t\t\tconst group = groupArray.pop()\n\t\t\tconst groups = this.app.groups.concat([]).concat([group.id])\n\t\t\tthis.$store.dispatch('enableApp', { appId: this.app.id, groups })\n\t\t},\n\t\tremoveGroupLimitation(group) {\n\t\t\tconst currentGroups = this.app.groups.concat([])\n\t\t\tconst index = currentGroups.indexOf(group.id)\n\t\t\tif (index > -1) {\n\t\t\t\tcurrentGroups.splice(index, 1)\n\t\t\t}\n\t\t\tthis.$store.dispatch('enableApp', { appId: this.app.id, groups: currentGroups })\n\t\t},\n\t\tforceEnable(appId) {\n\t\t\tthis.$store.dispatch('forceEnableApp', { appId, groups: [] })\n\t\t\t\t.then((response) => { rebuildNavigation() })\n\t\t\t\t.catch((error) => { showError(error) })\n\t\t},\n\t\tenable(appId) {\n\t\t\tthis.$store.dispatch('enableApp', { appId, groups: [] })\n\t\t\t\t.then((response) => { rebuildNavigation() })\n\t\t\t\t.catch((error) => { showError(error) })\n\t\t},\n\t\tdisable(appId) {\n\t\t\tthis.$store.dispatch('disableApp', { appId })\n\t\t\t\t.then((response) => { rebuildNavigation() })\n\t\t\t\t.catch((error) => { showError(error) })\n\t\t},\n\t\tremove(appId) {\n\t\t\tthis.$store.dispatch('uninstallApp', { appId })\n\t\t\t\t.then((response) => { rebuildNavigation() })\n\t\t\t\t.catch((error) => { showError(error) })\n\t\t},\n\t\tinstall(appId) {\n\t\t\tthis.$store.dispatch('enableApp', { appId })\n\t\t\t\t.then((response) => { rebuildNavigation() })\n\t\t\t\t.catch((error) => { showError(error) })\n\t\t},\n\t\tupdate(appId) {\n\t\t\tthis.$store.dispatch('updateApp', { appId })\n\t\t\t\t.then((response) => { rebuildNavigation() })\n\t\t\t\t.catch((error) => { showError(error) })\n\t\t},\n\t},\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SvgFilterMixin.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!./SvgFilterMixin.vue?vue&type=script&lang=js\"","\n\n\n","var render, staticRenderFns\nimport script from \"./SvgFilterMixin.vue?vue&type=script&lang=js\"\nexport * from \"./SvgFilterMixin.vue?vue&type=script&lang=js\"\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 null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppItem.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!./AppItem.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!./AppItem.vue?vue&type=style&index=0&id=79bd4dc4&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!./AppItem.vue?vue&type=style&index=0&id=79bd4dc4&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AppItem.vue?vue&type=template&id=79bd4dc4&scoped=true\"\nimport script from \"./AppItem.vue?vue&type=script&lang=js\"\nexport * from \"./AppItem.vue?vue&type=script&lang=js\"\nimport style0 from \"./AppItem.vue?vue&type=style&index=0&id=79bd4dc4&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 \"79bd4dc4\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c(_vm.listView ? `tr` : `li`,{tag:\"component\",staticClass:\"section\",class:{ selected: _vm.isSelected }},[_c(_vm.dataItemTag,{tag:\"component\",staticClass:\"app-image app-image-icon\",attrs:{\"headers\":_vm.getDataItemHeaders(`app-table-col-icon`)}},[((_vm.listView && !_vm.app.preview) || (!_vm.listView && !_vm.screenshotLoaded))?_c('div',{staticClass:\"icon-settings-dark\"}):(_vm.listView && _vm.app.preview)?_c('svg',{attrs:{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"0 0 32 32\"}},[_c('image',{staticClass:\"app-icon\",attrs:{\"x\":\"0\",\"y\":\"0\",\"width\":\"32\",\"height\":\"32\",\"preserveAspectRatio\":\"xMinYMin meet\",\"xlink:href\":_vm.app.preview}})]):_vm._e(),_vm._v(\" \"),(!_vm.listView && _vm.app.screenshot && _vm.screenshotLoaded)?_c('img',{attrs:{\"src\":_vm.app.screenshot,\"alt\":\"\"}}):_vm._e()]),_vm._v(\" \"),_c(_vm.dataItemTag,{tag:\"component\",staticClass:\"app-name\",attrs:{\"headers\":_vm.getDataItemHeaders(`app-table-col-name`)}},[_c('router-link',{staticClass:\"app-name--link\",attrs:{\"to\":{ name: 'apps-details',\tparams: { category: _vm.category, id: _vm.app.id }},\"aria-label\":_vm.t('settings', 'Show details for {appName} app', { appName:_vm.app.name })}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.app.name)+\"\\n\\t\\t\")])],1),_vm._v(\" \"),(!_vm.listView)?_c(_vm.dataItemTag,{tag:\"component\",staticClass:\"app-summary\",attrs:{\"headers\":_vm.getDataItemHeaders(`app-version`)}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.app.summary)+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.listView)?_c(_vm.dataItemTag,{tag:\"component\",staticClass:\"app-version\",attrs:{\"headers\":_vm.getDataItemHeaders(`app-table-col-version`)}},[(_vm.app.version)?_c('span',[_vm._v(_vm._s(_vm.app.version))]):(_vm.app.appstoreData.releases[0].version)?_c('span',[_vm._v(_vm._s(_vm.app.appstoreData.releases[0].version))]):_vm._e()]):_vm._e(),_vm._v(\" \"),_c(_vm.dataItemTag,{tag:\"component\",staticClass:\"app-level\",attrs:{\"headers\":_vm.getDataItemHeaders(`app-table-col-level`)}},[(_vm.app.level === 300)?_c('span',{staticClass:\"supported icon-checkmark-color\",attrs:{\"title\":_vm.t('settings', 'This app is supported via your current Nextcloud subscription.'),\"aria-label\":_vm.t('settings', 'This app is supported via your current Nextcloud subscription.')}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Supported')))]):_vm._e(),_vm._v(\" \"),(_vm.app.level === 200)?_c('span',{staticClass:\"official icon-checkmark\",attrs:{\"title\":_vm.t('settings', 'Featured apps are developed by and within the community. They offer central functionality and are ready for production use.'),\"aria-label\":_vm.t('settings', 'Featured apps are developed by and within the community. They offer central functionality and are ready for production use.')}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Featured')))]):_vm._e(),_vm._v(\" \"),(_vm.hasRating && !_vm.listView)?_c('AppScore',{attrs:{\"score\":_vm.app.score}}):_vm._e()],1),_vm._v(\" \"),_c(_vm.dataItemTag,{tag:\"component\",staticClass:\"actions\",attrs:{\"headers\":_vm.getDataItemHeaders(`app-table-col-actions`)}},[(_vm.app.error)?_c('div',{staticClass:\"warning\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.app.error)+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.isLoading)?_c('div',{staticClass:\"icon icon-loading-small\"}):_vm._e(),_vm._v(\" \"),(_vm.app.update)?_c('NcButton',{attrs:{\"type\":\"primary\",\"disabled\":_vm.installing || _vm.isLoading},on:{\"click\":function($event){$event.stopPropagation();return _vm.update(_vm.app.id)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Update to {update}', {update:_vm.app.update}))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.app.canUnInstall)?_c('NcButton',{staticClass:\"uninstall\",attrs:{\"type\":\"tertiary\",\"disabled\":_vm.installing || _vm.isLoading},on:{\"click\":function($event){$event.stopPropagation();return _vm.remove(_vm.app.id)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Remove'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.app.active)?_c('NcButton',{attrs:{\"disabled\":_vm.installing || _vm.isLoading},on:{\"click\":function($event){$event.stopPropagation();return _vm.disable(_vm.app.id)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings','Disable'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.app.active && (_vm.app.canInstall || _vm.app.isCompatible))?_c('NcButton',{attrs:{\"title\":_vm.enableButtonTooltip,\"aria-label\":_vm.enableButtonTooltip,\"type\":\"primary\",\"disabled\":!_vm.app.canInstall || _vm.installing || _vm.isLoading},on:{\"click\":function($event){$event.stopPropagation();return _vm.enable(_vm.app.id)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.enableButtonText)+\"\\n\\t\\t\")]):(!_vm.app.active)?_c('NcButton',{attrs:{\"title\":_vm.forceEnableButtonTooltip,\"aria-label\":_vm.forceEnableButtonTooltip,\"type\":\"secondary\",\"disabled\":_vm.installing || _vm.isLoading},on:{\"click\":function($event){$event.stopPropagation();return _vm.forceEnable(_vm.app.id)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.forceEnableButtonText)+\"\\n\\t\\t\")]):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render, staticRenderFns\nimport script from \"./PrefixMixin.vue?vue&type=script&lang=js\"\nexport * from \"./PrefixMixin.vue?vue&type=script&lang=js\"\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 null,\n null\n \n)\n\nexport default component.exports","\n\n\n","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppList.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!./AppList.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!./AppList.vue?vue&type=style&index=0&id=62f0f115&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!./AppList.vue?vue&type=style&index=0&id=62f0f115&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AppList.vue?vue&type=template&id=62f0f115&scoped=true\"\nimport script from \"./AppList.vue?vue&type=script&lang=js\"\nexport * from \"./AppList.vue?vue&type=script&lang=js\"\nimport style0 from \"./AppList.vue?vue&type=style&index=0&id=62f0f115&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 \"62f0f115\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"app-details\"},[_c('div',{staticClass:\"app-details__actions\"},[(_vm.app.active && _vm.canLimitToGroups(_vm.app))?_c('div',{staticClass:\"app-details__actions-groups\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.groupCheckedAppsData),expression:\"groupCheckedAppsData\"}],staticClass:\"groups-enable__checkbox checkbox\",attrs:{\"id\":_vm.prefix('groups_enable', _vm.app.id),\"type\":\"checkbox\"},domProps:{\"value\":_vm.app.id,\"checked\":Array.isArray(_vm.groupCheckedAppsData)?_vm._i(_vm.groupCheckedAppsData,_vm.app.id)>-1:(_vm.groupCheckedAppsData)},on:{\"change\":[function($event){var $$a=_vm.groupCheckedAppsData,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=_vm.app.id,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.groupCheckedAppsData=$$a.concat([$$v]))}else{$$i>-1&&(_vm.groupCheckedAppsData=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.groupCheckedAppsData=$$c}},_vm.setGroupLimit]}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":_vm.prefix('groups_enable', _vm.app.id)}},[_vm._v(_vm._s(_vm.t('settings', 'Limit to groups')))]),_vm._v(\" \"),_c('input',{staticClass:\"group_select\",attrs:{\"type\":\"hidden\",\"title\":_vm.t('settings', 'All'),\"value\":\"\"}}),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"limitToGroups\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Limit app usage to groups')))])]),_vm._v(\" \"),(_vm.isLimitedToGroups(_vm.app))?_c('NcSelect',{attrs:{\"input-id\":\"limitToGroups\",\"options\":_vm.groups,\"value\":_vm.appGroups,\"limit\":5,\"label\":\"name\",\"multiple\":true,\"close-on-select\":false},on:{\"option:selected\":_vm.addGroupLimitation,\"option:deselected\":_vm.removeGroupLimitation,\"search\":_vm.asyncFindGroup}},[_c('span',{attrs:{\"slot\":\"noResult\"},slot:\"noResult\"},[_vm._v(_vm._s(_vm.t('settings', 'No results')))])]):_vm._e()],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"app-details__actions-manage\"},[(_vm.app.update)?_c('input',{staticClass:\"update primary\",attrs:{\"type\":\"button\",\"value\":_vm.t('settings', 'Update to {version}', { version: _vm.app.update }),\"disabled\":_vm.installing || _vm.isLoading},on:{\"click\":function($event){return _vm.update(_vm.app.id)}}}):_vm._e(),_vm._v(\" \"),(_vm.app.canUnInstall)?_c('input',{staticClass:\"uninstall\",attrs:{\"type\":\"button\",\"value\":_vm.t('settings', 'Remove'),\"disabled\":_vm.installing || _vm.isLoading},on:{\"click\":function($event){return _vm.remove(_vm.app.id)}}}):_vm._e(),_vm._v(\" \"),(_vm.app.active)?_c('input',{staticClass:\"enable\",attrs:{\"type\":\"button\",\"value\":_vm.t('settings','Disable'),\"disabled\":_vm.installing || _vm.isLoading},on:{\"click\":function($event){return _vm.disable(_vm.app.id)}}}):_vm._e(),_vm._v(\" \"),(!_vm.app.active && (_vm.app.canInstall || _vm.app.isCompatible))?_c('input',{staticClass:\"enable primary\",attrs:{\"title\":_vm.enableButtonTooltip,\"aria-label\":_vm.enableButtonTooltip,\"type\":\"button\",\"value\":_vm.enableButtonText,\"disabled\":!_vm.app.canInstall || _vm.installing || _vm.isLoading},on:{\"click\":function($event){return _vm.enable(_vm.app.id)}}}):(!_vm.app.active && !_vm.app.canInstall)?_c('input',{staticClass:\"enable force\",attrs:{\"title\":_vm.forceEnableButtonTooltip,\"aria-label\":_vm.forceEnableButtonTooltip,\"type\":\"button\",\"value\":_vm.forceEnableButtonText,\"disabled\":_vm.installing || _vm.isLoading},on:{\"click\":function($event){return _vm.forceEnable(_vm.app.id)}}}):_vm._e()])]),_vm._v(\" \"),_c('ul',{staticClass:\"app-details__dependencies\"},[(_vm.app.missingMinOwnCloudVersion)?_c('li',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'This app has no minimum Nextcloud version assigned. This will be an error in the future.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.app.missingMaxOwnCloudVersion)?_c('li',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'This app has no maximum Nextcloud version assigned. This will be an error in the future.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.app.canInstall)?_c('li',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'This app cannot be installed because the following dependencies are not fulfilled:'))+\"\\n\\t\\t\\t\"),_c('ul',{staticClass:\"missing-dependencies\"},_vm._l((_vm.app.missingDependencies),function(dep,index){return _c('li',{key:index},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(dep)+\"\\n\\t\\t\\t\\t\")])}),0)]):_vm._e()]),_vm._v(\" \"),_c('p',{staticClass:\"app-details__documentation\"},[(!_vm.app.internal)?_c('a',{staticClass:\"appslink\",attrs:{\"href\":_vm.appstoreUrl,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(_vm._s(_vm.t('settings', 'View in store'))+\" ↗\")]):_vm._e(),_vm._v(\" \"),(_vm.app.website)?_c('a',{staticClass:\"appslink\",attrs:{\"href\":_vm.app.website,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(_vm._s(_vm.t('settings', 'Visit website'))+\" ↗\")]):_vm._e(),_vm._v(\" \"),(_vm.app.bugs)?_c('a',{staticClass:\"appslink\",attrs:{\"href\":_vm.app.bugs,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(_vm._s(_vm.t('settings', 'Report a bug'))+\" ↗\")]):_vm._e(),_vm._v(\" \"),(_vm.app.documentation && _vm.app.documentation.user)?_c('a',{staticClass:\"appslink\",attrs:{\"href\":_vm.app.documentation.user,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(_vm._s(_vm.t('settings', 'User documentation'))+\" ↗\")]):_vm._e(),_vm._v(\" \"),(_vm.app.documentation && _vm.app.documentation.admin)?_c('a',{staticClass:\"appslink\",attrs:{\"href\":_vm.app.documentation.admin,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(_vm._s(_vm.t('settings', 'Admin documentation'))+\" ↗\")]):_vm._e(),_vm._v(\" \"),(_vm.app.documentation && _vm.app.documentation.developer)?_c('a',{staticClass:\"appslink\",attrs:{\"href\":_vm.app.documentation.developer,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(_vm._s(_vm.t('settings', 'Developer documentation'))+\" ↗\")]):_vm._e()]),_vm._v(\" \"),_c('Markdown',{staticClass:\"app-details__description\",attrs:{\"text\":_vm.app.description}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * marked v9.1.5 - a markdown parser\n * Copyright (c) 2011-2023, Christopher Jeffrey. (MIT Licensed)\n * https://github.com/markedjs/marked\n */\n\n/**\n * DO NOT EDIT THIS FILE\n * The code in this file is generated from files in ./src/\n */\n\n/**\n * Gets the original marked default options.\n */\nfunction _getDefaults() {\n return {\n async: false,\n breaks: false,\n extensions: null,\n gfm: true,\n hooks: null,\n pedantic: false,\n renderer: null,\n silent: false,\n tokenizer: null,\n walkTokens: null\n };\n}\nlet _defaults = _getDefaults();\nfunction changeDefaults(newDefaults) {\n _defaults = newDefaults;\n}\n\n/**\n * Helpers\n */\nconst escapeTest = /[&<>\"']/;\nconst escapeReplace = new RegExp(escapeTest.source, 'g');\nconst escapeTestNoEncode = /[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/;\nconst escapeReplaceNoEncode = new RegExp(escapeTestNoEncode.source, 'g');\nconst escapeReplacements = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n};\nconst getEscapeReplacement = (ch) => escapeReplacements[ch];\nfunction escape(html, encode) {\n if (encode) {\n if (escapeTest.test(html)) {\n return html.replace(escapeReplace, getEscapeReplacement);\n }\n }\n else {\n if (escapeTestNoEncode.test(html)) {\n return html.replace(escapeReplaceNoEncode, getEscapeReplacement);\n }\n }\n return html;\n}\nconst unescapeTest = /&(#(?:\\d+)|(?:#x[0-9A-Fa-f]+)|(?:\\w+));?/ig;\nfunction unescape(html) {\n // explicitly match decimal, hex, and named HTML entities\n return html.replace(unescapeTest, (_, n) => {\n n = n.toLowerCase();\n if (n === 'colon')\n return ':';\n if (n.charAt(0) === '#') {\n return n.charAt(1) === 'x'\n ? String.fromCharCode(parseInt(n.substring(2), 16))\n : String.fromCharCode(+n.substring(1));\n }\n return '';\n });\n}\nconst caret = /(^|[^\\[])\\^/g;\nfunction edit(regex, opt) {\n regex = typeof regex === 'string' ? regex : regex.source;\n opt = opt || '';\n const obj = {\n replace: (name, val) => {\n val = typeof val === 'object' && 'source' in val ? val.source : val;\n val = val.replace(caret, '$1');\n regex = regex.replace(name, val);\n return obj;\n },\n getRegex: () => {\n return new RegExp(regex, opt);\n }\n };\n return obj;\n}\nfunction cleanUrl(href) {\n try {\n href = encodeURI(href).replace(/%25/g, '%');\n }\n catch (e) {\n return null;\n }\n return href;\n}\nconst noopTest = { exec: () => null };\nfunction splitCells(tableRow, count) {\n // ensure that every cell-delimiting pipe has a space\n // before it to distinguish it from an escaped pipe\n const row = tableRow.replace(/\\|/g, (match, offset, str) => {\n let escaped = false;\n let curr = offset;\n while (--curr >= 0 && str[curr] === '\\\\')\n escaped = !escaped;\n if (escaped) {\n // odd number of slashes means | is escaped\n // so we leave it alone\n return '|';\n }\n else {\n // add space before unescaped |\n return ' |';\n }\n }), cells = row.split(/ \\|/);\n let i = 0;\n // First/last cell in a row cannot be empty if it has no leading/trailing pipe\n if (!cells[0].trim()) {\n cells.shift();\n }\n if (cells.length > 0 && !cells[cells.length - 1].trim()) {\n cells.pop();\n }\n if (count) {\n if (cells.length > count) {\n cells.splice(count);\n }\n else {\n while (cells.length < count)\n cells.push('');\n }\n }\n for (; i < cells.length; i++) {\n // leading or trailing whitespace is ignored per the gfm spec\n cells[i] = cells[i].trim().replace(/\\\\\\|/g, '|');\n }\n return cells;\n}\n/**\n * Remove trailing 'c's. Equivalent to str.replace(/c*$/, '').\n * /c*$/ is vulnerable to REDOS.\n *\n * @param str\n * @param c\n * @param invert Remove suffix of non-c chars instead. Default falsey.\n */\nfunction rtrim(str, c, invert) {\n const l = str.length;\n if (l === 0) {\n return '';\n }\n // Length of suffix matching the invert condition.\n let suffLen = 0;\n // Step left until we fail to match the invert condition.\n while (suffLen < l) {\n const currChar = str.charAt(l - suffLen - 1);\n if (currChar === c && !invert) {\n suffLen++;\n }\n else if (currChar !== c && invert) {\n suffLen++;\n }\n else {\n break;\n }\n }\n return str.slice(0, l - suffLen);\n}\nfunction findClosingBracket(str, b) {\n if (str.indexOf(b[1]) === -1) {\n return -1;\n }\n let level = 0;\n for (let i = 0; i < str.length; i++) {\n if (str[i] === '\\\\') {\n i++;\n }\n else if (str[i] === b[0]) {\n level++;\n }\n else if (str[i] === b[1]) {\n level--;\n if (level < 0) {\n return i;\n }\n }\n }\n return -1;\n}\n\nfunction outputLink(cap, link, raw, lexer) {\n const href = link.href;\n const title = link.title ? escape(link.title) : null;\n const text = cap[1].replace(/\\\\([\\[\\]])/g, '$1');\n if (cap[0].charAt(0) !== '!') {\n lexer.state.inLink = true;\n const token = {\n type: 'link',\n raw,\n href,\n title,\n text,\n tokens: lexer.inlineTokens(text)\n };\n lexer.state.inLink = false;\n return token;\n }\n return {\n type: 'image',\n raw,\n href,\n title,\n text: escape(text)\n };\n}\nfunction indentCodeCompensation(raw, text) {\n const matchIndentToCode = raw.match(/^(\\s+)(?:```)/);\n if (matchIndentToCode === null) {\n return text;\n }\n const indentToCode = matchIndentToCode[1];\n return text\n .split('\\n')\n .map(node => {\n const matchIndentInNode = node.match(/^\\s+/);\n if (matchIndentInNode === null) {\n return node;\n }\n const [indentInNode] = matchIndentInNode;\n if (indentInNode.length >= indentToCode.length) {\n return node.slice(indentToCode.length);\n }\n return node;\n })\n .join('\\n');\n}\n/**\n * Tokenizer\n */\nclass _Tokenizer {\n options;\n // TODO: Fix this rules type\n rules;\n lexer;\n constructor(options) {\n this.options = options || _defaults;\n }\n space(src) {\n const cap = this.rules.block.newline.exec(src);\n if (cap && cap[0].length > 0) {\n return {\n type: 'space',\n raw: cap[0]\n };\n }\n }\n code(src) {\n const cap = this.rules.block.code.exec(src);\n if (cap) {\n const text = cap[0].replace(/^ {1,4}/gm, '');\n return {\n type: 'code',\n raw: cap[0],\n codeBlockStyle: 'indented',\n text: !this.options.pedantic\n ? rtrim(text, '\\n')\n : text\n };\n }\n }\n fences(src) {\n const cap = this.rules.block.fences.exec(src);\n if (cap) {\n const raw = cap[0];\n const text = indentCodeCompensation(raw, cap[3] || '');\n return {\n type: 'code',\n raw,\n lang: cap[2] ? cap[2].trim().replace(this.rules.inline._escapes, '$1') : cap[2],\n text\n };\n }\n }\n heading(src) {\n const cap = this.rules.block.heading.exec(src);\n if (cap) {\n let text = cap[2].trim();\n // remove trailing #s\n if (/#$/.test(text)) {\n const trimmed = rtrim(text, '#');\n if (this.options.pedantic) {\n text = trimmed.trim();\n }\n else if (!trimmed || / $/.test(trimmed)) {\n // CommonMark requires space before trailing #s\n text = trimmed.trim();\n }\n }\n return {\n type: 'heading',\n raw: cap[0],\n depth: cap[1].length,\n text,\n tokens: this.lexer.inline(text)\n };\n }\n }\n hr(src) {\n const cap = this.rules.block.hr.exec(src);\n if (cap) {\n return {\n type: 'hr',\n raw: cap[0]\n };\n }\n }\n blockquote(src) {\n const cap = this.rules.block.blockquote.exec(src);\n if (cap) {\n const text = rtrim(cap[0].replace(/^ *>[ \\t]?/gm, ''), '\\n');\n const top = this.lexer.state.top;\n this.lexer.state.top = true;\n const tokens = this.lexer.blockTokens(text);\n this.lexer.state.top = top;\n return {\n type: 'blockquote',\n raw: cap[0],\n tokens,\n text\n };\n }\n }\n list(src) {\n let cap = this.rules.block.list.exec(src);\n if (cap) {\n let bull = cap[1].trim();\n const isordered = bull.length > 1;\n const list = {\n type: 'list',\n raw: '',\n ordered: isordered,\n start: isordered ? +bull.slice(0, -1) : '',\n loose: false,\n items: []\n };\n bull = isordered ? `\\\\d{1,9}\\\\${bull.slice(-1)}` : `\\\\${bull}`;\n if (this.options.pedantic) {\n bull = isordered ? bull : '[*+-]';\n }\n // Get next list item\n const itemRegex = new RegExp(`^( {0,3}${bull})((?:[\\t ][^\\\\n]*)?(?:\\\\n|$))`);\n let raw = '';\n let itemContents = '';\n let endsWithBlankLine = false;\n // Check if current bullet point can start a new List Item\n while (src) {\n let endEarly = false;\n if (!(cap = itemRegex.exec(src))) {\n break;\n }\n if (this.rules.block.hr.test(src)) { // End list if bullet was actually HR (possibly move into itemRegex?)\n break;\n }\n raw = cap[0];\n src = src.substring(raw.length);\n let line = cap[2].split('\\n', 1)[0].replace(/^\\t+/, (t) => ' '.repeat(3 * t.length));\n let nextLine = src.split('\\n', 1)[0];\n let indent = 0;\n if (this.options.pedantic) {\n indent = 2;\n itemContents = line.trimStart();\n }\n else {\n indent = cap[2].search(/[^ ]/); // Find first non-space char\n indent = indent > 4 ? 1 : indent; // Treat indented code blocks (> 4 spaces) as having only 1 indent\n itemContents = line.slice(indent);\n indent += cap[1].length;\n }\n let blankLine = false;\n if (!line && /^ *$/.test(nextLine)) { // Items begin with at most one blank line\n raw += nextLine + '\\n';\n src = src.substring(nextLine.length + 1);\n endEarly = true;\n }\n if (!endEarly) {\n const nextBulletRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}(?:[*+-]|\\\\d{1,9}[.)])((?:[ \\t][^\\\\n]*)?(?:\\\\n|$))`);\n const hrRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$)`);\n const fencesBeginRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}(?:\\`\\`\\`|~~~)`);\n const headingBeginRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}#`);\n // Check if following lines should be included in List Item\n while (src) {\n const rawLine = src.split('\\n', 1)[0];\n nextLine = rawLine;\n // Re-align to follow commonmark nesting rules\n if (this.options.pedantic) {\n nextLine = nextLine.replace(/^ {1,4}(?=( {4})*[^ ])/g, ' ');\n }\n // End list item if found code fences\n if (fencesBeginRegex.test(nextLine)) {\n break;\n }\n // End list item if found start of new heading\n if (headingBeginRegex.test(nextLine)) {\n break;\n }\n // End list item if found start of new bullet\n if (nextBulletRegex.test(nextLine)) {\n break;\n }\n // Horizontal rule found\n if (hrRegex.test(src)) {\n break;\n }\n if (nextLine.search(/[^ ]/) >= indent || !nextLine.trim()) { // Dedent if possible\n itemContents += '\\n' + nextLine.slice(indent);\n }\n else {\n // not enough indentation\n if (blankLine) {\n break;\n }\n // paragraph continuation unless last line was a different block level element\n if (line.search(/[^ ]/) >= 4) { // indented code block\n break;\n }\n if (fencesBeginRegex.test(line)) {\n break;\n }\n if (headingBeginRegex.test(line)) {\n break;\n }\n if (hrRegex.test(line)) {\n break;\n }\n itemContents += '\\n' + nextLine;\n }\n if (!blankLine && !nextLine.trim()) { // Check if current line is blank\n blankLine = true;\n }\n raw += rawLine + '\\n';\n src = src.substring(rawLine.length + 1);\n line = nextLine.slice(indent);\n }\n }\n if (!list.loose) {\n // If the previous item ended with a blank line, the list is loose\n if (endsWithBlankLine) {\n list.loose = true;\n }\n else if (/\\n *\\n *$/.test(raw)) {\n endsWithBlankLine = true;\n }\n }\n let istask = null;\n let ischecked;\n // Check for task list items\n if (this.options.gfm) {\n istask = /^\\[[ xX]\\] /.exec(itemContents);\n if (istask) {\n ischecked = istask[0] !== '[ ] ';\n itemContents = itemContents.replace(/^\\[[ xX]\\] +/, '');\n }\n }\n list.items.push({\n type: 'list_item',\n raw,\n task: !!istask,\n checked: ischecked,\n loose: false,\n text: itemContents,\n tokens: []\n });\n list.raw += raw;\n }\n // Do not consume newlines at end of final item. Alternatively, make itemRegex *start* with any newlines to simplify/speed up endsWithBlankLine logic\n list.items[list.items.length - 1].raw = raw.trimEnd();\n list.items[list.items.length - 1].text = itemContents.trimEnd();\n list.raw = list.raw.trimEnd();\n // Item child tokens handled here at end because we needed to have the final item to trim it first\n for (let i = 0; i < list.items.length; i++) {\n this.lexer.state.top = false;\n list.items[i].tokens = this.lexer.blockTokens(list.items[i].text, []);\n if (!list.loose) {\n // Check if list should be loose\n const spacers = list.items[i].tokens.filter(t => t.type === 'space');\n const hasMultipleLineBreaks = spacers.length > 0 && spacers.some(t => /\\n.*\\n/.test(t.raw));\n list.loose = hasMultipleLineBreaks;\n }\n }\n // Set all items to loose if list is loose\n if (list.loose) {\n for (let i = 0; i < list.items.length; i++) {\n list.items[i].loose = true;\n }\n }\n return list;\n }\n }\n html(src) {\n const cap = this.rules.block.html.exec(src);\n if (cap) {\n const token = {\n type: 'html',\n block: true,\n raw: cap[0],\n pre: cap[1] === 'pre' || cap[1] === 'script' || cap[1] === 'style',\n text: cap[0]\n };\n return token;\n }\n }\n def(src) {\n const cap = this.rules.block.def.exec(src);\n if (cap) {\n const tag = cap[1].toLowerCase().replace(/\\s+/g, ' ');\n const href = cap[2] ? cap[2].replace(/^<(.*)>$/, '$1').replace(this.rules.inline._escapes, '$1') : '';\n const title = cap[3] ? cap[3].substring(1, cap[3].length - 1).replace(this.rules.inline._escapes, '$1') : cap[3];\n return {\n type: 'def',\n tag,\n raw: cap[0],\n href,\n title\n };\n }\n }\n table(src) {\n const cap = this.rules.block.table.exec(src);\n if (cap) {\n if (!/[:|]/.test(cap[2])) {\n // delimiter row must have a pipe (|) or colon (:) otherwise it is a setext heading\n return;\n }\n const item = {\n type: 'table',\n raw: cap[0],\n header: splitCells(cap[1]).map(c => {\n return { text: c, tokens: [] };\n }),\n align: cap[2].replace(/^\\||\\| *$/g, '').split('|'),\n rows: cap[3] && cap[3].trim() ? cap[3].replace(/\\n[ \\t]*$/, '').split('\\n') : []\n };\n if (item.header.length === item.align.length) {\n let l = item.align.length;\n let i, j, k, row;\n for (i = 0; i < l; i++) {\n const align = item.align[i];\n if (align) {\n if (/^ *-+: *$/.test(align)) {\n item.align[i] = 'right';\n }\n else if (/^ *:-+: *$/.test(align)) {\n item.align[i] = 'center';\n }\n else if (/^ *:-+ *$/.test(align)) {\n item.align[i] = 'left';\n }\n else {\n item.align[i] = null;\n }\n }\n }\n l = item.rows.length;\n for (i = 0; i < l; i++) {\n item.rows[i] = splitCells(item.rows[i], item.header.length).map(c => {\n return { text: c, tokens: [] };\n });\n }\n // parse child tokens inside headers and cells\n // header child tokens\n l = item.header.length;\n for (j = 0; j < l; j++) {\n item.header[j].tokens = this.lexer.inline(item.header[j].text);\n }\n // cell child tokens\n l = item.rows.length;\n for (j = 0; j < l; j++) {\n row = item.rows[j];\n for (k = 0; k < row.length; k++) {\n row[k].tokens = this.lexer.inline(row[k].text);\n }\n }\n return item;\n }\n }\n }\n lheading(src) {\n const cap = this.rules.block.lheading.exec(src);\n if (cap) {\n return {\n type: 'heading',\n raw: cap[0],\n depth: cap[2].charAt(0) === '=' ? 1 : 2,\n text: cap[1],\n tokens: this.lexer.inline(cap[1])\n };\n }\n }\n paragraph(src) {\n const cap = this.rules.block.paragraph.exec(src);\n if (cap) {\n const text = cap[1].charAt(cap[1].length - 1) === '\\n'\n ? cap[1].slice(0, -1)\n : cap[1];\n return {\n type: 'paragraph',\n raw: cap[0],\n text,\n tokens: this.lexer.inline(text)\n };\n }\n }\n text(src) {\n const cap = this.rules.block.text.exec(src);\n if (cap) {\n return {\n type: 'text',\n raw: cap[0],\n text: cap[0],\n tokens: this.lexer.inline(cap[0])\n };\n }\n }\n escape(src) {\n const cap = this.rules.inline.escape.exec(src);\n if (cap) {\n return {\n type: 'escape',\n raw: cap[0],\n text: escape(cap[1])\n };\n }\n }\n tag(src) {\n const cap = this.rules.inline.tag.exec(src);\n if (cap) {\n if (!this.lexer.state.inLink && /^/i.test(cap[0])) {\n this.lexer.state.inLink = false;\n }\n if (!this.lexer.state.inRawBlock && /^<(pre|code|kbd|script)(\\s|>)/i.test(cap[0])) {\n this.lexer.state.inRawBlock = true;\n }\n else if (this.lexer.state.inRawBlock && /^<\\/(pre|code|kbd|script)(\\s|>)/i.test(cap[0])) {\n this.lexer.state.inRawBlock = false;\n }\n return {\n type: 'html',\n raw: cap[0],\n inLink: this.lexer.state.inLink,\n inRawBlock: this.lexer.state.inRawBlock,\n block: false,\n text: cap[0]\n };\n }\n }\n link(src) {\n const cap = this.rules.inline.link.exec(src);\n if (cap) {\n const trimmedUrl = cap[2].trim();\n if (!this.options.pedantic && /^$/.test(trimmedUrl))) {\n return;\n }\n // ending angle bracket cannot be escaped\n const rtrimSlash = rtrim(trimmedUrl.slice(0, -1), '\\\\');\n if ((trimmedUrl.length - rtrimSlash.length) % 2 === 0) {\n return;\n }\n }\n else {\n // find closing parenthesis\n const lastParenIndex = findClosingBracket(cap[2], '()');\n if (lastParenIndex > -1) {\n const start = cap[0].indexOf('!') === 0 ? 5 : 4;\n const linkLen = start + cap[1].length + lastParenIndex;\n cap[2] = cap[2].substring(0, lastParenIndex);\n cap[0] = cap[0].substring(0, linkLen).trim();\n cap[3] = '';\n }\n }\n let href = cap[2];\n let title = '';\n if (this.options.pedantic) {\n // split pedantic href and title\n const link = /^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/.exec(href);\n if (link) {\n href = link[1];\n title = link[3];\n }\n }\n else {\n title = cap[3] ? cap[3].slice(1, -1) : '';\n }\n href = href.trim();\n if (/^$/.test(trimmedUrl))) {\n // pedantic allows starting angle bracket without ending angle bracket\n href = href.slice(1);\n }\n else {\n href = href.slice(1, -1);\n }\n }\n return outputLink(cap, {\n href: href ? href.replace(this.rules.inline._escapes, '$1') : href,\n title: title ? title.replace(this.rules.inline._escapes, '$1') : title\n }, cap[0], this.lexer);\n }\n }\n reflink(src, links) {\n let cap;\n if ((cap = this.rules.inline.reflink.exec(src))\n || (cap = this.rules.inline.nolink.exec(src))) {\n let link = (cap[2] || cap[1]).replace(/\\s+/g, ' ');\n link = links[link.toLowerCase()];\n if (!link) {\n const text = cap[0].charAt(0);\n return {\n type: 'text',\n raw: text,\n text\n };\n }\n return outputLink(cap, link, cap[0], this.lexer);\n }\n }\n emStrong(src, maskedSrc, prevChar = '') {\n let match = this.rules.inline.emStrong.lDelim.exec(src);\n if (!match)\n return;\n // _ can't be between two alphanumerics. \\p{L}\\p{N} includes non-english alphabet/numbers as well\n if (match[3] && prevChar.match(/[\\p{L}\\p{N}]/u))\n return;\n const nextChar = match[1] || match[2] || '';\n if (!nextChar || !prevChar || this.rules.inline.punctuation.exec(prevChar)) {\n // unicode Regex counts emoji as 1 char; spread into array for proper count (used multiple times below)\n const lLength = [...match[0]].length - 1;\n let rDelim, rLength, delimTotal = lLength, midDelimTotal = 0;\n const endReg = match[0][0] === '*' ? this.rules.inline.emStrong.rDelimAst : this.rules.inline.emStrong.rDelimUnd;\n endReg.lastIndex = 0;\n // Clip maskedSrc to same section of string as src (move to lexer?)\n maskedSrc = maskedSrc.slice(-1 * src.length + lLength);\n while ((match = endReg.exec(maskedSrc)) != null) {\n rDelim = match[1] || match[2] || match[3] || match[4] || match[5] || match[6];\n if (!rDelim)\n continue; // skip single * in __abc*abc__\n rLength = [...rDelim].length;\n if (match[3] || match[4]) { // found another Left Delim\n delimTotal += rLength;\n continue;\n }\n else if (match[5] || match[6]) { // either Left or Right Delim\n if (lLength % 3 && !((lLength + rLength) % 3)) {\n midDelimTotal += rLength;\n continue; // CommonMark Emphasis Rules 9-10\n }\n }\n delimTotal -= rLength;\n if (delimTotal > 0)\n continue; // Haven't found enough closing delimiters\n // Remove extra characters. *a*** -> *a*\n rLength = Math.min(rLength, rLength + delimTotal + midDelimTotal);\n // char length can be >1 for unicode characters;\n const lastCharLength = [...match[0]][0].length;\n const raw = src.slice(0, lLength + match.index + lastCharLength + rLength);\n // Create `em` if smallest delimiter has odd char count. *a***\n if (Math.min(lLength, rLength) % 2) {\n const text = raw.slice(1, -1);\n return {\n type: 'em',\n raw,\n text,\n tokens: this.lexer.inlineTokens(text)\n };\n }\n // Create 'strong' if smallest delimiter has even char count. **a***\n const text = raw.slice(2, -2);\n return {\n type: 'strong',\n raw,\n text,\n tokens: this.lexer.inlineTokens(text)\n };\n }\n }\n }\n codespan(src) {\n const cap = this.rules.inline.code.exec(src);\n if (cap) {\n let text = cap[2].replace(/\\n/g, ' ');\n const hasNonSpaceChars = /[^ ]/.test(text);\n const hasSpaceCharsOnBothEnds = /^ /.test(text) && / $/.test(text);\n if (hasNonSpaceChars && hasSpaceCharsOnBothEnds) {\n text = text.substring(1, text.length - 1);\n }\n text = escape(text, true);\n return {\n type: 'codespan',\n raw: cap[0],\n text\n };\n }\n }\n br(src) {\n const cap = this.rules.inline.br.exec(src);\n if (cap) {\n return {\n type: 'br',\n raw: cap[0]\n };\n }\n }\n del(src) {\n const cap = this.rules.inline.del.exec(src);\n if (cap) {\n return {\n type: 'del',\n raw: cap[0],\n text: cap[2],\n tokens: this.lexer.inlineTokens(cap[2])\n };\n }\n }\n autolink(src) {\n const cap = this.rules.inline.autolink.exec(src);\n if (cap) {\n let text, href;\n if (cap[2] === '@') {\n text = escape(cap[1]);\n href = 'mailto:' + text;\n }\n else {\n text = escape(cap[1]);\n href = text;\n }\n return {\n type: 'link',\n raw: cap[0],\n text,\n href,\n tokens: [\n {\n type: 'text',\n raw: text,\n text\n }\n ]\n };\n }\n }\n url(src) {\n let cap;\n if (cap = this.rules.inline.url.exec(src)) {\n let text, href;\n if (cap[2] === '@') {\n text = escape(cap[0]);\n href = 'mailto:' + text;\n }\n else {\n // do extended autolink path validation\n let prevCapZero;\n do {\n prevCapZero = cap[0];\n cap[0] = this.rules.inline._backpedal.exec(cap[0])[0];\n } while (prevCapZero !== cap[0]);\n text = escape(cap[0]);\n if (cap[1] === 'www.') {\n href = 'http://' + cap[0];\n }\n else {\n href = cap[0];\n }\n }\n return {\n type: 'link',\n raw: cap[0],\n text,\n href,\n tokens: [\n {\n type: 'text',\n raw: text,\n text\n }\n ]\n };\n }\n }\n inlineText(src) {\n const cap = this.rules.inline.text.exec(src);\n if (cap) {\n let text;\n if (this.lexer.state.inRawBlock) {\n text = cap[0];\n }\n else {\n text = escape(cap[0]);\n }\n return {\n type: 'text',\n raw: cap[0],\n text\n };\n }\n }\n}\n\n/**\n * Block-Level Grammar\n */\n// Not all rules are defined in the object literal\n// @ts-expect-error\nconst block = {\n newline: /^(?: *(?:\\n|$))+/,\n code: /^( {4}[^\\n]+(?:\\n(?: *(?:\\n|$))*)?)+/,\n fences: /^ {0,3}(`{3,}(?=[^`\\n]*(?:\\n|$))|~{3,})([^\\n]*)(?:\\n|$)(?:|([\\s\\S]*?)(?:\\n|$))(?: {0,3}\\1[~`]* *(?=\\n|$)|$)/,\n hr: /^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/,\n heading: /^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/,\n blockquote: /^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/,\n list: /^( {0,3}bull)([ \\t][^\\n]+?)?(?:\\n|$)/,\n html: '^ {0,3}(?:' // optional indentation\n + '<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:[^\\\\n]*\\\\n+|$)' // (1)\n + '|comment[^\\\\n]*(\\\\n+|$)' // (2)\n + '|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)' // (3)\n + '|\\\\n*|$)' // (4)\n + '|\\\\n*|$)' // (5)\n + '|)[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$)' // (6)\n + '|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$)' // (7) open tag\n + '|(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$)' // (7) closing tag\n + ')',\n def: /^ {0,3}\\[(label)\\]: *(?:\\n *)?([^<\\s][^\\s]*|<.*?>)(?:(?: +(?:\\n *)?| *\\n *)(title))? *(?:\\n+|$)/,\n table: noopTest,\n lheading: /^(?!bull )((?:.|\\n(?!\\s*?\\n|bull ))+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,\n // regex template, placeholders will be replaced according to different paragraph\n // interruption rules of commonmark and the original markdown spec:\n _paragraph: /^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/,\n text: /^[^\\n]+/\n};\nblock._label = /(?!\\s*\\])(?:\\\\.|[^\\[\\]\\\\])+/;\nblock._title = /(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/;\nblock.def = edit(block.def)\n .replace('label', block._label)\n .replace('title', block._title)\n .getRegex();\nblock.bullet = /(?:[*+-]|\\d{1,9}[.)])/;\nblock.listItemStart = edit(/^( *)(bull) */)\n .replace('bull', block.bullet)\n .getRegex();\nblock.list = edit(block.list)\n .replace(/bull/g, block.bullet)\n .replace('hr', '\\\\n+(?=\\\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$))')\n .replace('def', '\\\\n+(?=' + block.def.source + ')')\n .getRegex();\nblock._tag = 'address|article|aside|base|basefont|blockquote|body|caption'\n + '|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption'\n + '|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe'\n + '|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option'\n + '|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr'\n + '|track|ul';\nblock._comment = /|$)/;\nblock.html = edit(block.html, 'i')\n .replace('comment', block._comment)\n .replace('tag', block._tag)\n .replace('attribute', / +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/)\n .getRegex();\nblock.lheading = edit(block.lheading)\n .replace(/bull/g, block.bullet) // lists can interrupt\n .getRegex();\nblock.paragraph = edit(block._paragraph)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6}(?:\\\\s|$)')\n .replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs\n .replace('|table', '')\n .replace('blockquote', ' {0,3}>')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', ')|<(?:script|pre|style|textarea|!--)')\n .replace('tag', block._tag) // pars can be interrupted by type (6) html blocks\n .getRegex();\nblock.blockquote = edit(block.blockquote)\n .replace('paragraph', block.paragraph)\n .getRegex();\n/**\n * Normal Block Grammar\n */\nblock.normal = { ...block };\n/**\n * GFM Block Grammar\n */\nblock.gfm = {\n ...block.normal,\n table: '^ *([^\\\\n ].*)\\\\n' // Header\n + ' {0,3}((?:\\\\| *)?:?-+:? *(?:\\\\| *:?-+:? *)*(?:\\\\| *)?)' // Align\n + '(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)' // Cells\n};\nblock.gfm.table = edit(block.gfm.table)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6}(?:\\\\s|$)')\n .replace('blockquote', ' {0,3}>')\n .replace('code', ' {4}[^\\\\n]')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', ')|<(?:script|pre|style|textarea|!--)')\n .replace('tag', block._tag) // tables can be interrupted by type (6) html blocks\n .getRegex();\nblock.gfm.paragraph = edit(block._paragraph)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6}(?:\\\\s|$)')\n .replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs\n .replace('table', block.gfm.table) // interrupt paragraphs with table\n .replace('blockquote', ' {0,3}>')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', ')|<(?:script|pre|style|textarea|!--)')\n .replace('tag', block._tag) // pars can be interrupted by type (6) html blocks\n .getRegex();\n/**\n * Pedantic grammar (original John Gruber's loose markdown specification)\n */\nblock.pedantic = {\n ...block.normal,\n html: edit('^ *(?:comment *(?:\\\\n|\\\\s*$)'\n + '|<(tag)[\\\\s\\\\S]+? *(?:\\\\n{2,}|\\\\s*$)' // closed tag\n + '|\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))')\n .replace('comment', block._comment)\n .replace(/tag/g, '(?!(?:'\n + 'a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub'\n + '|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)'\n + '\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b')\n .getRegex(),\n def: /^ *\\[([^\\]]+)\\]: *]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,\n heading: /^(#{1,6})(.*)(?:\\n+|$)/,\n fences: noopTest,\n lheading: /^(.+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,\n paragraph: edit(block.normal._paragraph)\n .replace('hr', block.hr)\n .replace('heading', ' *#{1,6} *[^\\n]')\n .replace('lheading', block.lheading)\n .replace('blockquote', ' {0,3}>')\n .replace('|fences', '')\n .replace('|list', '')\n .replace('|html', '')\n .getRegex()\n};\n/**\n * Inline-Level Grammar\n */\n// Not all rules are defined in the object literal\n// @ts-expect-error\nconst inline = {\n escape: /^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,\n autolink: /^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/,\n url: noopTest,\n tag: '^comment'\n + '|^' // self-closing tag\n + '|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>' // open tag\n + '|^<\\\\?[\\\\s\\\\S]*?\\\\?>' // processing instruction, e.g. \n + '|^' // declaration, e.g. \n + '|^',\n link: /^!?\\[(label)\\]\\(\\s*(href)(?:\\s+(title))?\\s*\\)/,\n reflink: /^!?\\[(label)\\]\\[(ref)\\]/,\n nolink: /^!?\\[(ref)\\](?:\\[\\])?/,\n reflinkSearch: 'reflink|nolink(?!\\\\()',\n emStrong: {\n lDelim: /^(?:\\*+(?:((?!\\*)[punct])|[^\\s*]))|^_+(?:((?!_)[punct])|([^\\s_]))/,\n // (1) and (2) can only be a Right Delimiter. (3) and (4) can only be Left. (5) and (6) can be either Left or Right.\n // | Skip orphan inside strong | Consume to delim | (1) #*** | (2) a***#, a*** | (3) #***a, ***a | (4) ***# | (5) #***# | (6) a***a\n rDelimAst: /^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])/,\n rDelimUnd: /^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])/ // ^- Not allowed for _\n },\n code: /^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,\n br: /^( {2,}|\\\\)\\n(?!\\s*$)/,\n del: noopTest,\n text: /^(`+|[^`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\`^|~';\ninline.punctuation = edit(inline.punctuation, 'u').replace(/punctuation/g, inline._punctuation).getRegex();\n// sequences em should skip over [title](link), `code`, \ninline.blockSkip = /\\[[^[\\]]*?\\]\\([^\\(\\)]*?\\)|`[^`]*?`|<[^<>]*?>/g;\ninline.anyPunctuation = /\\\\[punct]/g;\ninline._escapes = /\\\\([punct])/g;\ninline._comment = edit(block._comment).replace('(?:-->|$)', '-->').getRegex();\ninline.emStrong.lDelim = edit(inline.emStrong.lDelim, 'u')\n .replace(/punct/g, inline._punctuation)\n .getRegex();\ninline.emStrong.rDelimAst = edit(inline.emStrong.rDelimAst, 'gu')\n .replace(/punct/g, inline._punctuation)\n .getRegex();\ninline.emStrong.rDelimUnd = edit(inline.emStrong.rDelimUnd, 'gu')\n .replace(/punct/g, inline._punctuation)\n .getRegex();\ninline.anyPunctuation = edit(inline.anyPunctuation, 'gu')\n .replace(/punct/g, inline._punctuation)\n .getRegex();\ninline._escapes = edit(inline._escapes, 'gu')\n .replace(/punct/g, inline._punctuation)\n .getRegex();\ninline._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;\ninline._email = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;\ninline.autolink = edit(inline.autolink)\n .replace('scheme', inline._scheme)\n .replace('email', inline._email)\n .getRegex();\ninline._attribute = /\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/;\ninline.tag = edit(inline.tag)\n .replace('comment', inline._comment)\n .replace('attribute', inline._attribute)\n .getRegex();\ninline._label = /(?:\\[(?:\\\\.|[^\\[\\]\\\\])*\\]|\\\\.|`[^`]*`|[^\\[\\]\\\\`])*?/;\ninline._href = /<(?:\\\\.|[^\\n<>\\\\])+>|[^\\s\\x00-\\x1f]*/;\ninline._title = /\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/;\ninline.link = edit(inline.link)\n .replace('label', inline._label)\n .replace('href', inline._href)\n .replace('title', inline._title)\n .getRegex();\ninline.reflink = edit(inline.reflink)\n .replace('label', inline._label)\n .replace('ref', block._label)\n .getRegex();\ninline.nolink = edit(inline.nolink)\n .replace('ref', block._label)\n .getRegex();\ninline.reflinkSearch = edit(inline.reflinkSearch, 'g')\n .replace('reflink', inline.reflink)\n .replace('nolink', inline.nolink)\n .getRegex();\n/**\n * Normal Inline Grammar\n */\ninline.normal = { ...inline };\n/**\n * Pedantic Inline Grammar\n */\ninline.pedantic = {\n ...inline.normal,\n strong: {\n start: /^__|\\*\\*/,\n middle: /^__(?=\\S)([\\s\\S]*?\\S)__(?!_)|^\\*\\*(?=\\S)([\\s\\S]*?\\S)\\*\\*(?!\\*)/,\n endAst: /\\*\\*(?!\\*)/g,\n endUnd: /__(?!_)/g\n },\n em: {\n start: /^_|\\*/,\n middle: /^()\\*(?=\\S)([\\s\\S]*?\\S)\\*(?!\\*)|^_(?=\\S)([\\s\\S]*?\\S)_(?!_)/,\n endAst: /\\*(?!\\*)/g,\n endUnd: /_(?!_)/g\n },\n link: edit(/^!?\\[(label)\\]\\((.*?)\\)/)\n .replace('label', inline._label)\n .getRegex(),\n reflink: edit(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/)\n .replace('label', inline._label)\n .getRegex()\n};\n/**\n * GFM Inline Grammar\n */\ninline.gfm = {\n ...inline.normal,\n escape: edit(inline.escape).replace('])', '~|])').getRegex(),\n _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,\n url: /^((?:ftp|https?):\\/\\/|www\\.)(?:[a-zA-Z0-9\\-]+\\.?)+[^\\s<]*|^email/,\n _backpedal: /(?:[^?!.,:;*_'\"~()&]+|\\([^)]*\\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'\"~)]+(?!$))+/,\n del: /^(~~?)(?=[^\\s~])([\\s\\S]*?[^\\s~])\\1(?=[^~]|$)/,\n text: /^([`~]+|[^`~])(?:(?= {2,}\\n)|(?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)|[\\s\\S]*?(?:(?=[\\\\ {\n return leading + ' '.repeat(tabs.length);\n });\n }\n let token;\n let lastToken;\n let cutSrc;\n let lastParagraphClipped;\n while (src) {\n if (this.options.extensions\n && this.options.extensions.block\n && this.options.extensions.block.some((extTokenizer) => {\n if (token = extTokenizer.call({ lexer: this }, src, tokens)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n return true;\n }\n return false;\n })) {\n continue;\n }\n // newline\n if (token = this.tokenizer.space(src)) {\n src = src.substring(token.raw.length);\n if (token.raw.length === 1 && tokens.length > 0) {\n // if there's a single \\n as a spacer, it's terminating the last line,\n // so move it there so that we don't get unnecessary paragraph tags\n tokens[tokens.length - 1].raw += '\\n';\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n // code\n if (token = this.tokenizer.code(src)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n // An indented code block cannot interrupt a paragraph.\n if (lastToken && (lastToken.type === 'paragraph' || lastToken.type === 'text')) {\n lastToken.raw += '\\n' + token.raw;\n lastToken.text += '\\n' + token.text;\n this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n // fences\n if (token = this.tokenizer.fences(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // heading\n if (token = this.tokenizer.heading(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // hr\n if (token = this.tokenizer.hr(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // blockquote\n if (token = this.tokenizer.blockquote(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // list\n if (token = this.tokenizer.list(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // html\n if (token = this.tokenizer.html(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // def\n if (token = this.tokenizer.def(src)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n if (lastToken && (lastToken.type === 'paragraph' || lastToken.type === 'text')) {\n lastToken.raw += '\\n' + token.raw;\n lastToken.text += '\\n' + token.raw;\n this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text;\n }\n else if (!this.tokens.links[token.tag]) {\n this.tokens.links[token.tag] = {\n href: token.href,\n title: token.title\n };\n }\n continue;\n }\n // table (gfm)\n if (token = this.tokenizer.table(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // lheading\n if (token = this.tokenizer.lheading(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // top-level paragraph\n // prevent paragraph consuming extensions by clipping 'src' to extension start\n cutSrc = src;\n if (this.options.extensions && this.options.extensions.startBlock) {\n let startIndex = Infinity;\n const tempSrc = src.slice(1);\n let tempStart;\n this.options.extensions.startBlock.forEach((getStartIndex) => {\n tempStart = getStartIndex.call({ lexer: this }, tempSrc);\n if (typeof tempStart === 'number' && tempStart >= 0) {\n startIndex = Math.min(startIndex, tempStart);\n }\n });\n if (startIndex < Infinity && startIndex >= 0) {\n cutSrc = src.substring(0, startIndex + 1);\n }\n }\n if (this.state.top && (token = this.tokenizer.paragraph(cutSrc))) {\n lastToken = tokens[tokens.length - 1];\n if (lastParagraphClipped && lastToken.type === 'paragraph') {\n lastToken.raw += '\\n' + token.raw;\n lastToken.text += '\\n' + token.text;\n this.inlineQueue.pop();\n this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text;\n }\n else {\n tokens.push(token);\n }\n lastParagraphClipped = (cutSrc.length !== src.length);\n src = src.substring(token.raw.length);\n continue;\n }\n // text\n if (token = this.tokenizer.text(src)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n if (lastToken && lastToken.type === 'text') {\n lastToken.raw += '\\n' + token.raw;\n lastToken.text += '\\n' + token.text;\n this.inlineQueue.pop();\n this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n if (src) {\n const errMsg = 'Infinite loop on byte: ' + src.charCodeAt(0);\n if (this.options.silent) {\n console.error(errMsg);\n break;\n }\n else {\n throw new Error(errMsg);\n }\n }\n }\n this.state.top = true;\n return tokens;\n }\n inline(src, tokens = []) {\n this.inlineQueue.push({ src, tokens });\n return tokens;\n }\n /**\n * Lexing/Compiling\n */\n inlineTokens(src, tokens = []) {\n let token, lastToken, cutSrc;\n // String with links masked to avoid interference with em and strong\n let maskedSrc = src;\n let match;\n let keepPrevChar, prevChar;\n // Mask out reflinks\n if (this.tokens.links) {\n const links = Object.keys(this.tokens.links);\n if (links.length > 0) {\n while ((match = this.tokenizer.rules.inline.reflinkSearch.exec(maskedSrc)) != null) {\n if (links.includes(match[0].slice(match[0].lastIndexOf('[') + 1, -1))) {\n maskedSrc = maskedSrc.slice(0, match.index) + '[' + 'a'.repeat(match[0].length - 2) + ']' + maskedSrc.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex);\n }\n }\n }\n }\n // Mask out other blocks\n while ((match = this.tokenizer.rules.inline.blockSkip.exec(maskedSrc)) != null) {\n maskedSrc = maskedSrc.slice(0, match.index) + '[' + 'a'.repeat(match[0].length - 2) + ']' + maskedSrc.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);\n }\n // Mask out escaped characters\n while ((match = this.tokenizer.rules.inline.anyPunctuation.exec(maskedSrc)) != null) {\n maskedSrc = maskedSrc.slice(0, match.index) + '++' + maskedSrc.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);\n }\n while (src) {\n if (!keepPrevChar) {\n prevChar = '';\n }\n keepPrevChar = false;\n // extensions\n if (this.options.extensions\n && this.options.extensions.inline\n && this.options.extensions.inline.some((extTokenizer) => {\n if (token = extTokenizer.call({ lexer: this }, src, tokens)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n return true;\n }\n return false;\n })) {\n continue;\n }\n // escape\n if (token = this.tokenizer.escape(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // tag\n if (token = this.tokenizer.tag(src)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n if (lastToken && token.type === 'text' && lastToken.type === 'text') {\n lastToken.raw += token.raw;\n lastToken.text += token.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n // link\n if (token = this.tokenizer.link(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // reflink, nolink\n if (token = this.tokenizer.reflink(src, this.tokens.links)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n if (lastToken && token.type === 'text' && lastToken.type === 'text') {\n lastToken.raw += token.raw;\n lastToken.text += token.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n // em & strong\n if (token = this.tokenizer.emStrong(src, maskedSrc, prevChar)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // code\n if (token = this.tokenizer.codespan(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // br\n if (token = this.tokenizer.br(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // del (gfm)\n if (token = this.tokenizer.del(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // autolink\n if (token = this.tokenizer.autolink(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // url (gfm)\n if (!this.state.inLink && (token = this.tokenizer.url(src))) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // text\n // prevent inlineText consuming extensions by clipping 'src' to extension start\n cutSrc = src;\n if (this.options.extensions && this.options.extensions.startInline) {\n let startIndex = Infinity;\n const tempSrc = src.slice(1);\n let tempStart;\n this.options.extensions.startInline.forEach((getStartIndex) => {\n tempStart = getStartIndex.call({ lexer: this }, tempSrc);\n if (typeof tempStart === 'number' && tempStart >= 0) {\n startIndex = Math.min(startIndex, tempStart);\n }\n });\n if (startIndex < Infinity && startIndex >= 0) {\n cutSrc = src.substring(0, startIndex + 1);\n }\n }\n if (token = this.tokenizer.inlineText(cutSrc)) {\n src = src.substring(token.raw.length);\n if (token.raw.slice(-1) !== '_') { // Track prevChar before string of ____ started\n prevChar = token.raw.slice(-1);\n }\n keepPrevChar = true;\n lastToken = tokens[tokens.length - 1];\n if (lastToken && lastToken.type === 'text') {\n lastToken.raw += token.raw;\n lastToken.text += token.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n if (src) {\n const errMsg = 'Infinite loop on byte: ' + src.charCodeAt(0);\n if (this.options.silent) {\n console.error(errMsg);\n break;\n }\n else {\n throw new Error(errMsg);\n }\n }\n }\n return tokens;\n }\n}\n\n/**\n * Renderer\n */\nclass _Renderer {\n options;\n constructor(options) {\n this.options = options || _defaults;\n }\n code(code, infostring, escaped) {\n const lang = (infostring || '').match(/^\\S*/)?.[0];\n code = code.replace(/\\n$/, '') + '\\n';\n if (!lang) {\n return '
'\n                + (escaped ? code : escape(code, true))\n                + '
\\n';\n }\n return '
'\n            + (escaped ? code : escape(code, true))\n            + '
\\n';\n }\n blockquote(quote) {\n return `
\\n${quote}
\\n`;\n }\n html(html, block) {\n return html;\n }\n heading(text, level, raw) {\n // ignore IDs\n return `${text}\\n`;\n }\n hr() {\n return '
\\n';\n }\n list(body, ordered, start) {\n const type = ordered ? 'ol' : 'ul';\n const startatt = (ordered && start !== 1) ? (' start=\"' + start + '\"') : '';\n return '<' + type + startatt + '>\\n' + body + '\\n';\n }\n listitem(text, task, checked) {\n return `
  • ${text}
  • \\n`;\n }\n checkbox(checked) {\n return '';\n }\n paragraph(text) {\n return `

    ${text}

    \\n`;\n }\n table(header, body) {\n if (body)\n body = `${body}`;\n return '\\n'\n + '\\n'\n + header\n + '\\n'\n + body\n + '
    \\n';\n }\n tablerow(content) {\n return `\\n${content}\\n`;\n }\n tablecell(content, flags) {\n const type = flags.header ? 'th' : 'td';\n const tag = flags.align\n ? `<${type} align=\"${flags.align}\">`\n : `<${type}>`;\n return tag + content + `\\n`;\n }\n /**\n * span level renderer\n */\n strong(text) {\n return `${text}`;\n }\n em(text) {\n return `${text}`;\n }\n codespan(text) {\n return `${text}`;\n }\n br() {\n return '
    ';\n }\n del(text) {\n return `${text}`;\n }\n link(href, title, text) {\n const cleanHref = cleanUrl(href);\n if (cleanHref === null) {\n return text;\n }\n href = cleanHref;\n let out = '
    ';\n return out;\n }\n image(href, title, text) {\n const cleanHref = cleanUrl(href);\n if (cleanHref === null) {\n return text;\n }\n href = cleanHref;\n let out = `\"${text}\"`;\n 0 && item.tokens[0].type === 'paragraph') {\n item.tokens[0].text = checkbox + ' ' + item.tokens[0].text;\n if (item.tokens[0].tokens && item.tokens[0].tokens.length > 0 && item.tokens[0].tokens[0].type === 'text') {\n item.tokens[0].tokens[0].text = checkbox + ' ' + item.tokens[0].tokens[0].text;\n }\n }\n else {\n item.tokens.unshift({\n type: 'text',\n text: checkbox + ' '\n });\n }\n }\n else {\n itemBody += checkbox + ' ';\n }\n }\n itemBody += this.parse(item.tokens, loose);\n body += this.renderer.listitem(itemBody, task, !!checked);\n }\n out += this.renderer.list(body, ordered, start);\n continue;\n }\n case 'html': {\n const htmlToken = token;\n out += this.renderer.html(htmlToken.text, htmlToken.block);\n continue;\n }\n case 'paragraph': {\n const paragraphToken = token;\n out += this.renderer.paragraph(this.parseInline(paragraphToken.tokens));\n continue;\n }\n case 'text': {\n let textToken = token;\n let body = textToken.tokens ? this.parseInline(textToken.tokens) : textToken.text;\n while (i + 1 < tokens.length && tokens[i + 1].type === 'text') {\n textToken = tokens[++i];\n body += '\\n' + (textToken.tokens ? this.parseInline(textToken.tokens) : textToken.text);\n }\n out += top ? this.renderer.paragraph(body) : body;\n continue;\n }\n default: {\n const errMsg = 'Token with \"' + token.type + '\" type was not found.';\n if (this.options.silent) {\n console.error(errMsg);\n return '';\n }\n else {\n throw new Error(errMsg);\n }\n }\n }\n }\n return out;\n }\n /**\n * Parse Inline Tokens\n */\n parseInline(tokens, renderer) {\n renderer = renderer || this.renderer;\n let out = '';\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n // Run any renderer extensions\n if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) {\n const ret = this.options.extensions.renderers[token.type].call({ parser: this }, token);\n if (ret !== false || !['escape', 'html', 'link', 'image', 'strong', 'em', 'codespan', 'br', 'del', 'text'].includes(token.type)) {\n out += ret || '';\n continue;\n }\n }\n switch (token.type) {\n case 'escape': {\n const escapeToken = token;\n out += renderer.text(escapeToken.text);\n break;\n }\n case 'html': {\n const tagToken = token;\n out += renderer.html(tagToken.text);\n break;\n }\n case 'link': {\n const linkToken = token;\n out += renderer.link(linkToken.href, linkToken.title, this.parseInline(linkToken.tokens, renderer));\n break;\n }\n case 'image': {\n const imageToken = token;\n out += renderer.image(imageToken.href, imageToken.title, imageToken.text);\n break;\n }\n case 'strong': {\n const strongToken = token;\n out += renderer.strong(this.parseInline(strongToken.tokens, renderer));\n break;\n }\n case 'em': {\n const emToken = token;\n out += renderer.em(this.parseInline(emToken.tokens, renderer));\n break;\n }\n case 'codespan': {\n const codespanToken = token;\n out += renderer.codespan(codespanToken.text);\n break;\n }\n case 'br': {\n out += renderer.br();\n break;\n }\n case 'del': {\n const delToken = token;\n out += renderer.del(this.parseInline(delToken.tokens, renderer));\n break;\n }\n case 'text': {\n const textToken = token;\n out += renderer.text(textToken.text);\n break;\n }\n default: {\n const errMsg = 'Token with \"' + token.type + '\" type was not found.';\n if (this.options.silent) {\n console.error(errMsg);\n return '';\n }\n else {\n throw new Error(errMsg);\n }\n }\n }\n }\n return out;\n }\n}\n\nclass _Hooks {\n options;\n constructor(options) {\n this.options = options || _defaults;\n }\n static passThroughHooks = new Set([\n 'preprocess',\n 'postprocess'\n ]);\n /**\n * Process markdown before marked\n */\n preprocess(markdown) {\n return markdown;\n }\n /**\n * Process HTML after marked is finished\n */\n postprocess(html) {\n return html;\n }\n}\n\nclass Marked {\n defaults = _getDefaults();\n options = this.setOptions;\n parse = this.#parseMarkdown(_Lexer.lex, _Parser.parse);\n parseInline = this.#parseMarkdown(_Lexer.lexInline, _Parser.parseInline);\n Parser = _Parser;\n parser = _Parser.parse;\n Renderer = _Renderer;\n TextRenderer = _TextRenderer;\n Lexer = _Lexer;\n lexer = _Lexer.lex;\n Tokenizer = _Tokenizer;\n Hooks = _Hooks;\n constructor(...args) {\n this.use(...args);\n }\n /**\n * Run callback for every token\n */\n walkTokens(tokens, callback) {\n let values = [];\n for (const token of tokens) {\n values = values.concat(callback.call(this, token));\n switch (token.type) {\n case 'table': {\n const tableToken = token;\n for (const cell of tableToken.header) {\n values = values.concat(this.walkTokens(cell.tokens, callback));\n }\n for (const row of tableToken.rows) {\n for (const cell of row) {\n values = values.concat(this.walkTokens(cell.tokens, callback));\n }\n }\n break;\n }\n case 'list': {\n const listToken = token;\n values = values.concat(this.walkTokens(listToken.items, callback));\n break;\n }\n default: {\n const genericToken = token;\n if (this.defaults.extensions?.childTokens?.[genericToken.type]) {\n this.defaults.extensions.childTokens[genericToken.type].forEach((childTokens) => {\n values = values.concat(this.walkTokens(genericToken[childTokens], callback));\n });\n }\n else if (genericToken.tokens) {\n values = values.concat(this.walkTokens(genericToken.tokens, callback));\n }\n }\n }\n }\n return values;\n }\n use(...args) {\n const extensions = this.defaults.extensions || { renderers: {}, childTokens: {} };\n args.forEach((pack) => {\n // copy options to new object\n const opts = { ...pack };\n // set async to true if it was set to true before\n opts.async = this.defaults.async || opts.async || false;\n // ==-- Parse \"addon\" extensions --== //\n if (pack.extensions) {\n pack.extensions.forEach((ext) => {\n if (!ext.name) {\n throw new Error('extension name required');\n }\n if ('renderer' in ext) { // Renderer extensions\n const prevRenderer = extensions.renderers[ext.name];\n if (prevRenderer) {\n // Replace extension with func to run new extension but fall back if false\n extensions.renderers[ext.name] = function (...args) {\n let ret = ext.renderer.apply(this, args);\n if (ret === false) {\n ret = prevRenderer.apply(this, args);\n }\n return ret;\n };\n }\n else {\n extensions.renderers[ext.name] = ext.renderer;\n }\n }\n if ('tokenizer' in ext) { // Tokenizer Extensions\n if (!ext.level || (ext.level !== 'block' && ext.level !== 'inline')) {\n throw new Error(\"extension level must be 'block' or 'inline'\");\n }\n const extLevel = extensions[ext.level];\n if (extLevel) {\n extLevel.unshift(ext.tokenizer);\n }\n else {\n extensions[ext.level] = [ext.tokenizer];\n }\n if (ext.start) { // Function to check for start of token\n if (ext.level === 'block') {\n if (extensions.startBlock) {\n extensions.startBlock.push(ext.start);\n }\n else {\n extensions.startBlock = [ext.start];\n }\n }\n else if (ext.level === 'inline') {\n if (extensions.startInline) {\n extensions.startInline.push(ext.start);\n }\n else {\n extensions.startInline = [ext.start];\n }\n }\n }\n }\n if ('childTokens' in ext && ext.childTokens) { // Child tokens to be visited by walkTokens\n extensions.childTokens[ext.name] = ext.childTokens;\n }\n });\n opts.extensions = extensions;\n }\n // ==-- Parse \"overwrite\" extensions --== //\n if (pack.renderer) {\n const renderer = this.defaults.renderer || new _Renderer(this.defaults);\n for (const prop in pack.renderer) {\n const rendererFunc = pack.renderer[prop];\n const rendererKey = prop;\n const prevRenderer = renderer[rendererKey];\n // Replace renderer with func to run extension, but fall back if false\n renderer[rendererKey] = (...args) => {\n let ret = rendererFunc.apply(renderer, args);\n if (ret === false) {\n ret = prevRenderer.apply(renderer, args);\n }\n return ret || '';\n };\n }\n opts.renderer = renderer;\n }\n if (pack.tokenizer) {\n const tokenizer = this.defaults.tokenizer || new _Tokenizer(this.defaults);\n for (const prop in pack.tokenizer) {\n const tokenizerFunc = pack.tokenizer[prop];\n const tokenizerKey = prop;\n const prevTokenizer = tokenizer[tokenizerKey];\n // Replace tokenizer with func to run extension, but fall back if false\n tokenizer[tokenizerKey] = (...args) => {\n let ret = tokenizerFunc.apply(tokenizer, args);\n if (ret === false) {\n ret = prevTokenizer.apply(tokenizer, args);\n }\n return ret;\n };\n }\n opts.tokenizer = tokenizer;\n }\n // ==-- Parse Hooks extensions --== //\n if (pack.hooks) {\n const hooks = this.defaults.hooks || new _Hooks();\n for (const prop in pack.hooks) {\n const hooksFunc = pack.hooks[prop];\n const hooksKey = prop;\n const prevHook = hooks[hooksKey];\n if (_Hooks.passThroughHooks.has(prop)) {\n hooks[hooksKey] = (arg) => {\n if (this.defaults.async) {\n return Promise.resolve(hooksFunc.call(hooks, arg)).then(ret => {\n return prevHook.call(hooks, ret);\n });\n }\n const ret = hooksFunc.call(hooks, arg);\n return prevHook.call(hooks, ret);\n };\n }\n else {\n hooks[hooksKey] = (...args) => {\n let ret = hooksFunc.apply(hooks, args);\n if (ret === false) {\n ret = prevHook.apply(hooks, args);\n }\n return ret;\n };\n }\n }\n opts.hooks = hooks;\n }\n // ==-- Parse WalkTokens extensions --== //\n if (pack.walkTokens) {\n const walkTokens = this.defaults.walkTokens;\n const packWalktokens = pack.walkTokens;\n opts.walkTokens = function (token) {\n let values = [];\n values.push(packWalktokens.call(this, token));\n if (walkTokens) {\n values = values.concat(walkTokens.call(this, token));\n }\n return values;\n };\n }\n this.defaults = { ...this.defaults, ...opts };\n });\n return this;\n }\n setOptions(opt) {\n this.defaults = { ...this.defaults, ...opt };\n return this;\n }\n #parseMarkdown(lexer, parser) {\n return (src, options) => {\n const origOpt = { ...options };\n const opt = { ...this.defaults, ...origOpt };\n // Show warning if an extension set async to true but the parse was called with async: false\n if (this.defaults.async === true && origOpt.async === false) {\n if (!opt.silent) {\n console.warn('marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored.');\n }\n opt.async = true;\n }\n const throwError = this.#onError(!!opt.silent, !!opt.async);\n // throw error in case of non string input\n if (typeof src === 'undefined' || src === null) {\n return throwError(new Error('marked(): input parameter is undefined or null'));\n }\n if (typeof src !== 'string') {\n return throwError(new Error('marked(): input parameter is of type '\n + Object.prototype.toString.call(src) + ', string expected'));\n }\n if (opt.hooks) {\n opt.hooks.options = opt;\n }\n if (opt.async) {\n return Promise.resolve(opt.hooks ? opt.hooks.preprocess(src) : src)\n .then(src => lexer(src, opt))\n .then(tokens => opt.walkTokens ? Promise.all(this.walkTokens(tokens, opt.walkTokens)).then(() => tokens) : tokens)\n .then(tokens => parser(tokens, opt))\n .then(html => opt.hooks ? opt.hooks.postprocess(html) : html)\n .catch(throwError);\n }\n try {\n if (opt.hooks) {\n src = opt.hooks.preprocess(src);\n }\n const tokens = lexer(src, opt);\n if (opt.walkTokens) {\n this.walkTokens(tokens, opt.walkTokens);\n }\n let html = parser(tokens, opt);\n if (opt.hooks) {\n html = opt.hooks.postprocess(html);\n }\n return html;\n }\n catch (e) {\n return throwError(e);\n }\n };\n }\n #onError(silent, async) {\n return (e) => {\n e.message += '\\nPlease report this to https://github.com/markedjs/marked.';\n if (silent) {\n const msg = '

    An error occurred:

    '\n                    + escape(e.message + '', true)\n                    + '
    ';\n if (async) {\n return Promise.resolve(msg);\n }\n return msg;\n }\n if (async) {\n return Promise.reject(e);\n }\n throw e;\n };\n }\n}\n\nconst markedInstance = new Marked();\nfunction marked(src, opt) {\n return markedInstance.parse(src, opt);\n}\n/**\n * Sets the default options.\n *\n * @param options Hash of options\n */\nmarked.options =\n marked.setOptions = function (options) {\n markedInstance.setOptions(options);\n marked.defaults = markedInstance.defaults;\n changeDefaults(marked.defaults);\n return marked;\n };\n/**\n * Gets the original marked default options.\n */\nmarked.getDefaults = _getDefaults;\nmarked.defaults = _defaults;\n/**\n * Use Extension\n */\nmarked.use = function (...args) {\n markedInstance.use(...args);\n marked.defaults = markedInstance.defaults;\n changeDefaults(marked.defaults);\n return marked;\n};\n/**\n * Run callback for every token\n */\nmarked.walkTokens = function (tokens, callback) {\n return markedInstance.walkTokens(tokens, callback);\n};\n/**\n * Compiles markdown to HTML without enclosing `p` tag.\n *\n * @param src String of markdown source to be compiled\n * @param options Hash of options\n * @return String of compiled HTML\n */\nmarked.parseInline = markedInstance.parseInline;\n/**\n * Expose\n */\nmarked.Parser = _Parser;\nmarked.parser = _Parser.parse;\nmarked.Renderer = _Renderer;\nmarked.TextRenderer = _TextRenderer;\nmarked.Lexer = _Lexer;\nmarked.lexer = _Lexer.lex;\nmarked.Tokenizer = _Tokenizer;\nmarked.Hooks = _Hooks;\nmarked.parse = marked;\nconst options = marked.options;\nconst setOptions = marked.setOptions;\nconst use = marked.use;\nconst walkTokens = marked.walkTokens;\nconst parseInline = marked.parseInline;\nconst parse = marked;\nconst parser = _Parser.parse;\nconst lexer = _Lexer.lex;\n\nexport { _Hooks as Hooks, _Lexer as Lexer, Marked, _Parser as Parser, _Renderer as Renderer, _TextRenderer as TextRenderer, _Tokenizer as Tokenizer, _defaults as defaults, _getDefaults as getDefaults, lexer, marked, options, parse, parseInline, parser, setOptions, use, walkTokens };\n//# sourceMappingURL=marked.esm.js.map\n","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Markdown.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!./Markdown.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!./Markdown.vue?vue&type=style&index=0&id=ffd9a2d6&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!./Markdown.vue?vue&type=style&index=0&id=ffd9a2d6&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Markdown.vue?vue&type=template&id=ffd9a2d6&scoped=true\"\nimport script from \"./Markdown.vue?vue&type=script&lang=js\"\nexport * from \"./Markdown.vue?vue&type=script&lang=js\"\nimport style0 from \"./Markdown.vue?vue&type=style&index=0&id=ffd9a2d6&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 \"ffd9a2d6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"settings-markdown\",domProps:{\"innerHTML\":_vm._s(_vm.renderMarkdown)}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppDetails.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!./AppDetails.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\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!./AppDetails.vue?vue&type=style&index=0&id=5be7cbf9&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!./AppDetails.vue?vue&type=style&index=0&id=5be7cbf9&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AppDetails.vue?vue&type=template&id=5be7cbf9&scoped=true\"\nimport script from \"./AppDetails.vue?vue&type=script&lang=js\"\nexport * from \"./AppDetails.vue?vue&type=script&lang=js\"\nimport style0 from \"./AppDetails.vue?vue&type=style&index=0&id=5be7cbf9&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 \"5be7cbf9\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Apps.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!./Apps.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!./Apps.vue?vue&type=style&index=0&id=2f31fb7f&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!./Apps.vue?vue&type=style&index=0&id=2f31fb7f&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Apps.vue?vue&type=template&id=2f31fb7f&scoped=true\"\nimport script from \"./Apps.vue?vue&type=script&lang=js\"\nexport * from \"./Apps.vue?vue&type=script&lang=js\"\nimport style0 from \"./Apps.vue?vue&type=style&index=0&id=2f31fb7f&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 \"2f31fb7f\",\n null\n \n)\n\nexport default component.exports","/**\n * vue-local-storage v0.6.0\n * (c) 2017 Alexander Avakov\n * @license MIT\n */\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global.VueLocalStorage = factory());\n}(this, (function () { 'use strict';\n\nvar VueLocalStorage = function VueLocalStorage () {\n this._properties = {};\n this._namespace = '';\n this._isSupported = true;\n};\n\nvar prototypeAccessors = { namespace: {} };\n\n/**\n * Namespace getter.\n *\n * @returns {string}\n */\nprototypeAccessors.namespace.get = function () {\n return this._namespace\n};\n\n/**\n * Namespace setter.\n *\n * @param {string} value\n */\nprototypeAccessors.namespace.set = function (value) {\n this._namespace = value ? (value + \".\") : '';\n};\n\n/**\n * Concatenates localStorage key with namespace prefix.\n *\n * @param {string} lsKey\n * @returns {string}\n * @private\n */\nVueLocalStorage.prototype._getLsKey = function _getLsKey (lsKey) {\n return (\"\" + (this._namespace) + lsKey)\n};\n\n/**\n * Set a value to localStorage giving respect to the namespace.\n *\n * @param {string} lsKey\n * @param {*} rawValue\n * @param {*} type\n * @private\n */\nVueLocalStorage.prototype._lsSet = function _lsSet (lsKey, rawValue, type) {\n var key = this._getLsKey(lsKey);\n var value = type && [Array, Object].includes(type)\n ? JSON.stringify(rawValue)\n : rawValue;\n\n window.localStorage.setItem(key, value);\n};\n\n/**\n * Get value from localStorage giving respect to the namespace.\n *\n * @param {string} lsKey\n * @returns {any}\n * @private\n */\nVueLocalStorage.prototype._lsGet = function _lsGet (lsKey) {\n var key = this._getLsKey(lsKey);\n\n return window.localStorage[key]\n};\n\n/**\n * Get value from localStorage\n *\n * @param {String} lsKey\n * @param {*} defaultValue\n * @param {*} defaultType\n * @returns {*}\n */\nVueLocalStorage.prototype.get = function get (lsKey, defaultValue, defaultType) {\n var this$1 = this;\n if ( defaultValue === void 0 ) defaultValue = null;\n if ( defaultType === void 0 ) defaultType = String;\n\n if (!this._isSupported) {\n return null\n }\n\n if (this._lsGet(lsKey)) {\n var type = defaultType;\n\n for (var key in this$1._properties) {\n if (key === lsKey) {\n type = this$1._properties[key].type;\n break\n }\n }\n\n return this._process(type, this._lsGet(lsKey))\n }\n\n return defaultValue !== null ? defaultValue : null\n};\n\n/**\n * Set localStorage value\n *\n * @param {String} lsKey\n * @param {*} value\n * @returns {*}\n */\nVueLocalStorage.prototype.set = function set (lsKey, value) {\n var this$1 = this;\n\n if (!this._isSupported) {\n return null\n }\n\n for (var key in this$1._properties) {\n var type = this$1._properties[key].type;\n\n if ((key === lsKey)) {\n this$1._lsSet(lsKey, value, type);\n\n return value\n }\n }\n\n this._lsSet(lsKey, value);\n\n return value\n};\n\n/**\n * Remove value from localStorage\n *\n * @param {String} lsKey\n */\nVueLocalStorage.prototype.remove = function remove (lsKey) {\n if (!this._isSupported) {\n return null\n }\n\n return window.localStorage.removeItem(lsKey)\n};\n\n/**\n * Add new property to localStorage\n *\n * @param {String} key\n * @param {function} type\n * @param {*} defaultValue\n */\nVueLocalStorage.prototype.addProperty = function addProperty (key, type, defaultValue) {\n if ( defaultValue === void 0 ) defaultValue = undefined;\n\n type = type || String;\n\n this._properties[key] = { type: type };\n\n if (!this._lsGet(key) && defaultValue !== null) {\n this._lsSet(key, defaultValue, type);\n }\n};\n\n/**\n * Process the value before return it from localStorage\n *\n * @param {String} type\n * @param {*} value\n * @returns {*}\n * @private\n */\nVueLocalStorage.prototype._process = function _process (type, value) {\n switch (type) {\n case Boolean:\n return value === 'true'\n case Number:\n return parseFloat(value)\n case Array:\n try {\n var array = JSON.parse(value);\n\n return Array.isArray(array) ? array : []\n } catch (e) {\n return []\n }\n case Object:\n try {\n return JSON.parse(value)\n } catch (e) {\n return {}\n }\n default:\n return value\n }\n};\n\nObject.defineProperties( VueLocalStorage.prototype, prototypeAccessors );\n\nvar vueLocalStorage = new VueLocalStorage();\n\nvar index = {\n /**\n * Install vue-local-storage plugin\n *\n * @param {Vue} Vue\n * @param {Object} options\n */\n install: function (Vue, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof process !== 'undefined' &&\n (\n process.server ||\n process.SERVER_BUILD ||\n (process.env && process.env.VUE_ENV === 'server')\n )\n ) {\n return\n }\n\n var isSupported = true;\n\n try {\n var test = '__vue-localstorage-test__';\n\n window.localStorage.setItem(test, test);\n window.localStorage.removeItem(test);\n } catch (e) {\n isSupported = false;\n vueLocalStorage._isSupported = false;\n\n console.error('Local storage is not supported');\n }\n\n var name = options.name || 'localStorage';\n var bind = options.bind;\n\n if (options.namespace) {\n vueLocalStorage.namespace = options.namespace;\n }\n\n Vue.mixin({\n beforeCreate: function beforeCreate () {\n var this$1 = this;\n\n if (!isSupported) {\n return\n }\n\n if (this.$options[name]) {\n Object.keys(this.$options[name]).forEach(function (key) {\n var config = this$1.$options[name][key];\n var ref = [config.type, config.default];\n var type = ref[0];\n var defaultValue = ref[1];\n\n vueLocalStorage.addProperty(key, type, defaultValue);\n\n var existingProp = Object.getOwnPropertyDescriptor(vueLocalStorage, key);\n\n if (!existingProp) {\n var prop = {\n get: function () { return Vue.localStorage.get(key, defaultValue); },\n set: function (val) { return Vue.localStorage.set(key, val); },\n configurable: true\n };\n\n Object.defineProperty(vueLocalStorage, key, prop);\n Vue.util.defineReactive(vueLocalStorage, key, defaultValue);\n } else if (!Vue.config.silent) {\n console.log((key + \": is already defined and will be reused\"));\n }\n\n if ((bind || config.bind) && config.bind !== false) {\n this$1.$options.computed = this$1.$options.computed || {};\n\n if (!this$1.$options.computed[key]) {\n this$1.$options.computed[key] = {\n get: function () { return Vue.localStorage[key]; },\n set: function (val) { Vue.localStorage[key] = val; }\n };\n }\n }\n });\n }\n }\n });\n\n Vue[name] = vueLocalStorage;\n Vue.prototype[(\"$\" + name)] = vueLocalStorage;\n }\n};\n\nreturn index;\n\n})));\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","computed","appScore","Math","round","score","scoreImage","imageName","imagePath","t","axios","get","generateOcsUrl","then","_ref","data","ocs","meta","statuscode","emit","apps","window","dispatchEvent","Event","appGroups","app","groups","map","group","installing","$store","getters","loading","isLoading","enableButtonText","needsDownload","forceEnableButtonText","enableButtonTooltip","forceEnableButtonTooltip","base","groupCheckedAppsData","mounted","length","methods","asyncFindGroup","query","dispatch","search","limit","offset","isLimitedToGroups","setGroupLimit","appId","canLimitToGroups","types","includes","addGroupLimitation","groupArray","pop","concat","removeGroupLimitation","currentGroups","index","indexOf","splice","forceEnable","response","rebuildNavigation","catch","error","showError","enable","disable","remove","install","update","filterId","filterUrl","random","toString","substring","components","AppScore","NcButton","mixins","AppManagement","SvgFilterMixin","category","listView","Boolean","useBundleView","headers","isSelected","scrolled","screenshotLoaded","hasRating","appstoreData","ratingNumOverall","dataItemTag","watch","$route","params","releases","screenshot","image","Image","onload","e","src","watchers","prefix","content","getDataItemHeaders","columnName","join","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","tag","class","selected","preview","appName","summary","version","level","stopPropagation","canUnInstall","active","canInstall","isCompatible","AppItem","PrefixMixin","counter","filter","hasPendingUpdate","showUpdateAll","useListView","getAllApps","toLowerCase","sort","a","b","sortStringA","sortStringB","OC","Util","naturalSortCompare","installed","bundles","appstore","undefined","getServerData","bundle","bundleApps","bundleIds","searchApps","find","_app","useAppStoreView","allBundlesEnabled","bundleToggleText","toggleBundle","disableBundle","enableBundle","console","Notification","show","updateAll","pLimit","store","n","key","_l","_defaults","async","breaks","extensions","gfm","hooks","pedantic","renderer","silent","tokenizer","walkTokens","changeDefaults","newDefaults","escapeTest","escapeReplace","RegExp","source","escapeTestNoEncode","escapeReplaceNoEncode","escapeReplacements","getEscapeReplacement","ch","html","encode","test","replace","unescapeTest","caret","edit","regex","opt","obj","val","getRegex","cleanUrl","href","encodeURI","noopTest","exec","splitCells","tableRow","count","cells","match","str","escaped","curr","split","i","trim","shift","rtrim","c","invert","l","suffLen","currChar","charAt","slice","outputLink","cap","link","raw","lexer","text","state","inLink","token","tokens","inlineTokens","_Tokenizer","rules","constructor","space","block","newline","code","codeBlockStyle","fences","matchIndentToCode","indentToCode","node","matchIndentInNode","indentInNode","indentCodeCompensation","lang","inline","_escapes","heading","trimmed","depth","hr","blockquote","top","blockTokens","list","bull","isordered","ordered","start","loose","items","itemRegex","itemContents","endsWithBlankLine","endEarly","line","repeat","nextLine","indent","trimStart","blankLine","nextBulletRegex","min","hrRegex","fencesBeginRegex","headingBeginRegex","rawLine","ischecked","istask","task","checked","trimEnd","spacers","hasMultipleLineBreaks","some","pre","def","table","item","header","align","rows","j","k","row","lheading","paragraph","escape","inRawBlock","trimmedUrl","rtrimSlash","lastParenIndex","findClosingBracket","linkLen","reflink","links","nolink","emStrong","maskedSrc","prevChar","lDelim","punctuation","lLength","rDelim","rLength","delimTotal","midDelimTotal","endReg","rDelimAst","rDelimUnd","lastIndex","lastCharLength","codespan","hasNonSpaceChars","hasSpaceCharsOnBothEnds","br","del","autolink","url","prevCapZero","_backpedal","inlineText","_paragraph","_label","_title","bullet","listItemStart","_tag","_comment","normal","reflinkSearch","_punctuation","blockSkip","anyPunctuation","_scheme","_email","_attribute","_href","strong","middle","endAst","endUnd","em","_extended_email","_Lexer","inlineQueue","Object","create","lex","lexInline","next","lastToken","cutSrc","lastParagraphClipped","_","leading","tabs","extTokenizer","call","startBlock","startIndex","Infinity","tempSrc","tempStart","forEach","getStartIndex","errMsg","charCodeAt","Error","keepPrevChar","keys","lastIndexOf","startInline","_Renderer","infostring","quote","body","listitem","checkbox","tablerow","tablecell","flags","cleanHref","out","_TextRenderer","_Parser","textRenderer","parse","parseInline","renderers","genericToken","ret","parser","headingToken","fromCharCode","parseInt","codeToken","tableToken","cell","blockquoteToken","listToken","itemBody","unshift","htmlToken","paragraphToken","textToken","escapeToken","tagToken","linkToken","imageToken","strongToken","emToken","codespanToken","delToken","_Hooks","static","Set","preprocess","markdown","postprocess","markedInstance","defaults","setOptions","Parser","Renderer","TextRenderer","Lexer","Tokenizer","Hooks","args","use","callback","values","childTokens","pack","opts","ext","prevRenderer","apply","extLevel","prop","rendererFunc","rendererKey","tokenizerFunc","tokenizerKey","prevTokenizer","hooksFunc","hooksKey","prevHook","passThroughHooks","has","arg","Promise","resolve","packWalktokens","origOpt","warn","throwError","prototype","all","message","msg","reject","marked","getDefaults","renderMarkdown","prot","decodeURIComponent","unescape","dompurify","highlight","tables","sanitize","smartLists","smartypants","SAFE_FOR_JQUERY","ALLOWED_TAGS","domProps","NcSelect","Markdown","required","appstoreUrl","licence","license","toUpperCase","author","getGroups","localeCompare","directives","rawName","value","expression","Array","isArray","_i","$$a","$$el","target","$$c","$$v","$$i","slot","missingMinOwnCloudVersion","missingMaxOwnCloudVersion","missingDependencies","dep","internal","website","bugs","documentation","user","admin","developer","description","Vue","VueLocalStorage","APPS_SECTION_ENUM","NcAppContent","AppDetails","AppList","IconStarShooting","NcAppNavigation","NcAppNavigationItem","NcAppNavigationSpacer","NcCounterBubble","NcAppSidebar","NcAppSidebarTab","NcContent","searchQuery","loadingList","categories","getCategories","updateCount","getUpdateCount","settings","appSidebar","authorName","xmlNode","subname","background","compact","changelog","release","translations","en","isSubscribed","beforeMount","shouldRefetchCategories","commit","subscribe","setSearch","resetSearch","beforeDestroy","unsubscribe","hideAppDetails","$router","openDeveloperDocumentation","open","developerDocumentation","scopedSlots","_u","fn","$options","enabled","disabled","updates","proxy","supported","appstoreEnabled","featured","cat","ident","displayName","ratingOverall","exports","_properties","_namespace","_isSupported","prototypeAccessors","namespace","set","_getLsKey","lsKey","_lsSet","rawValue","JSON","stringify","localStorage","setItem","_lsGet","defaultValue","defaultType","_process","this$1","removeItem","addProperty","parseFloat","array","defineProperties","vueLocalStorage","process","server","SERVER_BUILD","env","VUE_ENV","isSupported","bind","mixin","beforeCreate","config","ref","getOwnPropertyDescriptor","log","configurable","defineProperty","util","defineReactive","factory"],"sourceRoot":""}