diff --git a/core/src/components/UnifiedSearch/ConnectedServicesBar.vue b/core/src/components/UnifiedSearch/ConnectedServicesBar.vue
new file mode 100644
index 0000000000000..a29eafece2f6d
--- /dev/null
+++ b/core/src/components/UnifiedSearch/ConnectedServicesBar.vue
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+ {{ label }}
+
+
+
+
+
+
+
+
+
+
diff --git a/core/src/components/UnifiedSearch/UnifiedSearchModal.vue b/core/src/components/UnifiedSearch/UnifiedSearchModal.vue
index a1a36a78e69e7..5193e776a466e 100644
--- a/core/src/components/UnifiedSearch/UnifiedSearchModal.vue
+++ b/core/src/components/UnifiedSearch/UnifiedSearchModal.vue
@@ -147,11 +147,10 @@
-
-
- {{ connectedServicesLabel }}
-
-
+
-
-
- {{ connectedServicesLabel }}
-
-
+
\n\n\t\n\t\t\n\t\t\n\t\t\t
{{ t('core', 'Custom date range') }} \n\t\t\t
\n\t\t\t\t \n\t\t\t\t \n\t\t\t
\n\t\t\t\n\t\t
\n\t \n \n\n\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=style&index=0&id=2907014b&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=style&index=0&id=2907014b&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CustomDateRangeModal.vue?vue&type=template&id=2907014b&scoped=true\"\nimport script from \"./CustomDateRangeModal.vue?vue&type=script&lang=js\"\nexport * from \"./CustomDateRangeModal.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomDateRangeModal.vue?vue&type=style&index=0&id=2907014b&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 \"2907014b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcPopover',{attrs:{\"shown\":_vm.opened},on:{\"show\":function($event){return _vm.setOpened(true)},\"hide\":function($event){return _vm.setOpened(false)}},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_vm._t(\"trigger\")]},proxy:true}],null,true)},[_vm._v(\" \"),_c('div',{staticClass:\"searchable-list__wrapper\"},[_c('NcTextField',{attrs:{\"label\":_vm.labelText,\"trailing-button-icon\":\"close\",\"show-trailing-button\":_vm.searchTerm !== ''},on:{\"update:value\":_vm.searchTermChanged,\"trailing-button-click\":_vm.clearSearch},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}},[_c('IconMagnify',{attrs:{\"size\":20}})],1),_vm._v(\" \"),(_vm.filteredList.length > 0)?_c('ul',{staticClass:\"searchable-list__list\"},_vm._l((_vm.filteredList),function(element){return _c('li',{key:element.id,attrs:{\"title\":element.displayName,\"role\":\"button\"}},[_c('NcButton',{attrs:{\"alignment\":\"start\",\"variant\":\"tertiary\",\"wide\":true},on:{\"click\":function($event){return _vm.itemSelected(element)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(element.isUser)?_c('NcAvatar',{attrs:{\"user\":element.user,\"hide-status\":\"\"}}):_c('NcAvatar',{attrs:{\"is-no-user\":true,\"display-name\":element.displayName,\"hide-status\":\"\"}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(element.displayName)+\"\\n\\t\\t\\t\\t\")])],1)}),0):_c('div',{staticClass:\"searchable-list__empty-content\"},[_c('NcEmptyContent',{attrs:{\"name\":_vm.emptyContentText},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconAlertCircleOutline')]},proxy:true}])})],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n {{ title }} \n \n \n \n \n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircleOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AlertCircleOutline.vue?vue&type=template&id=da40788e\"\nimport script from \"./AlertCircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./AlertCircleOutline.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 alert-circle-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\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!./SearchableList.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!./SearchableList.vue?vue&type=script&lang=js\"","\n\n\n\t\n\t\t\n\t\t\t \n\t\t \n\t\t\n\t\t\t
\n\t\t\t\t \n\t\t\t \n\t\t\t
0\" class=\"searchable-list__list\">\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t{{ element.displayName }}\n\t\t\t\t\t \n\t\t\t\t \n\t\t\t \n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t
\n\t\t
\n\t \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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=style&index=0&id=66bd6570&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=style&index=0&id=66bd6570&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchableList.vue?vue&type=template&id=66bd6570&scoped=true\"\nimport script from \"./SearchableList.vue?vue&type=script&lang=js\"\nexport * from \"./SearchableList.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchableList.vue?vue&type=style&index=0&id=66bd6570&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 \"66bd6570\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.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!./SearchFilterChip.vue?vue&type=script&lang=js\"","\n\n\t\n\t\t\n\t\t\t \n\t\t\t {{ pretext }} : \n\t\t \n\t\t{{ text }} \n\t\t\n\t\t\t \n\t\t \n\t
\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=style&index=0&id=5a4f6249&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=style&index=0&id=5a4f6249&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchFilterChip.vue?vue&type=template&id=5a4f6249&scoped=true\"\nimport script from \"./SearchFilterChip.vue?vue&type=script&lang=js\"\nexport * from \"./SearchFilterChip.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchFilterChip.vue?vue&type=style&index=0&id=5a4f6249&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 \"5a4f6249\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"chip\"},[_c('span',{staticClass:\"icon\"},[_vm._t(\"icon\"),_vm._v(\" \"),(_vm.pretext.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.pretext)+\" : \")]):_vm._e()],2),_vm._v(\" \"),_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(_vm.text))]),_vm._v(\" \"),_c('button',{staticClass:\"close-button\",attrs:{\"type\":\"button\",\"aria-label\":_vm.removeLabel},on:{\"click\":_vm.deleteChip}},[_c('CloseIcon',{attrs:{\"size\":18}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcListItem',{staticClass:\"result-item\",attrs:{\"id\":_vm.elementId,\"name\":_vm.title,\"bold\":false,\"active\":_vm.active,\"href\":_vm.resourceUrl,\"target\":\"_self\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.isAppIcon)?_c('AppIcon',{staticClass:\"result-item__app-icon\",attrs:{\"icon\":_vm.icon}}):_c('div',{staticClass:\"result-item__icon\",class:{\n\t\t\t\t'result-item__icon--rounded': _vm.rounded,\n\t\t\t\t'result-item__icon--with-thumbnail': _vm.hasThumbnail,\n\t\t\t\t[_vm.icon]: !_vm.iconIsUrl && !_vm.hasThumbnail,\n\t\t\t},attrs:{\"aria-hidden\":\"true\"}},[(_vm.hasThumbnail)?_c('img',{attrs:{\"src\":_vm.thumbnailUrl},on:{\"error\":_vm.thumbnailErrorHandler}}):(_vm.iconIsUrl)?_c('img',{staticClass:\"result-item__icon-img\",attrs:{\"src\":_vm.icon,\"alt\":\"\",\"aria-hidden\":\"true\"}}):_vm._e()])]},proxy:true},{key:\"subname\",fn:function(){return [_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.subline)+\"\\n\\t\")]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"app-icon\",class:{ 'app-icon--outlined': _vm.outlined }},[(_vm.icon)?_c('span',{staticClass:\"app-icon__img\",style:(_setup.iconStyle),attrs:{\"aria-hidden\":\"true\"}}):_vm._e(),_vm._v(\" \"),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppIcon.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppIcon.vue?vue&type=script&setup=true&lang=ts\"","\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppIcon.vue?vue&type=style&index=0&id=5cb82f82&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppIcon.vue?vue&type=style&index=0&id=5cb82f82&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AppIcon.vue?vue&type=template&id=5cb82f82&scoped=true\"\nimport script from \"./AppIcon.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppIcon.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./AppIcon.vue?vue&type=style&index=0&id=5cb82f82&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 \"5cb82f82\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.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!./SearchResult.vue?vue&type=script&lang=js\"","\n\n\t\n\t\t\n\t\t\t \n\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t \n\t\t\n\t\t\t{{ subline }}\n\t\t \n\t \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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=style&index=0&id=516c3939&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=style&index=0&id=516c3939&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchResult.vue?vue&type=template&id=516c3939&scoped=true\"\nimport script from \"./SearchResult.vue?vue&type=script&lang=js\"\nexport * from \"./SearchResult.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchResult.vue?vue&type=style&index=0&id=516c3939&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 \"516c3939\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"search-result-skeleton\",attrs:{\"aria-hidden\":\"true\"}},[_c('div',{staticClass:\"search-result-skeleton__bar search-result-skeleton__bar--heading\"}),_vm._v(\" \"),_vm._l((_vm.rows),function(row){return _c('div',{key:row,staticClass:\"search-result-skeleton__bar\"})})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultSkeleton.vue?vue&type=style&index=0&id=66bc29f5&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultSkeleton.vue?vue&type=style&index=0&id=66bc29f5&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchResultSkeleton.vue?vue&type=template&id=66bc29f5&scoped=true\"\nimport script from \"./SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./SearchResultSkeleton.vue?vue&type=style&index=0&id=66bc29f5&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 \"66bc29f5\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\n/**\n *\n * @param user\n */\nfunction getLogger(user) {\n\tif (user === null) {\n\t\treturn getLoggerBuilder()\n\t\t\t.setApp('core')\n\t\t\t.build()\n\t}\n\treturn getLoggerBuilder()\n\t\t.setApp('core')\n\t\t.setUid(user.uid)\n\t\t.build()\n}\n\nexport default getLogger(getCurrentUser())\n\nexport const unifiedSearchLogger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl, generateUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\n/**\n * Create a cancel token\n *\n * @return {import('axios').CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Get the list of available search providers\n *\n * @return {Promise}\n */\nexport async function getProviders() {\n\ttry {\n\t\tconst { data } = await axios.get(generateOcsUrl('search/providers'), {\n\t\t\tparams: {\n\t\t\t\t// Sending which location we're currently at\n\t\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t\t},\n\t\t})\n\t\tif ('ocs' in data && 'data' in data.ocs && Array.isArray(data.ocs.data) && data.ocs.data.length > 0) {\n\t\t\t// Providers are sorted by the api based on their order key\n\t\t\treturn data.ocs.data\n\t\t}\n\t} catch (error) {\n\t\tlogger.error(error)\n\t}\n\treturn []\n}\n\n/**\n * Get the list of available search providers\n *\n * @param {object} options destructuring object\n * @param {string} options.type the type to search\n * @param {string} options.query the search term\n * @param {number|string|null} [options.cursor] the offset for paginated searches\n * @param {string} [options.since] start of the date-range filter\n * @param {string} [options.until] end of the date-range filter\n * @param {number} [options.limit] maximum number of results\n * @param {string} [options.person] filter results by person\n * @param {object} [options.extraQueries] additional queries to filter search results\n * @return {object} {request: Promise, cancel: Promise}\n */\nexport function search({ type, query, cursor, since, until, limit, person, extraQueries = {} }) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\tconst request = async () => axios.get(generateOcsUrl('search/providers/{type}/search', { type }), {\n\t\tcancelToken: cancelToken.token,\n\t\tparams: {\n\t\t\tterm: query,\n\t\t\tcursor,\n\t\t\tsince,\n\t\t\tuntil,\n\t\t\tlimit,\n\t\t\tperson,\n\t\t\t// Sending which location we're currently at\n\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t\t...extraQueries,\n\t\t},\n\t})\n\n\treturn {\n\t\trequest,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n\n/**\n * Get the list of active contacts\n *\n * @param {object} filter filter contacts by string\n * @param {string} filter.searchTerm the query\n * @return {object} {request: Promise}\n */\nexport async function getContacts({ searchTerm }) {\n\tconst { data: { contacts } } = await axios.post(generateUrl('/contactsmenu/contacts'), {\n\t\tfilter: searchTerm,\n\t})\n\t/*\n\t * Add authenticated user to list of contacts for search filter\n\t * If authtenicated user is searching/filtering, do not add them to the list\n\t */\n\tif (!searchTerm) {\n\t\tlet authenticatedUser = getCurrentUser()\n\t\tauthenticatedUser = {\n\t\t\tid: authenticatedUser.uid,\n\t\t\tfullName: authenticatedUser.displayName,\n\t\t\temailAddresses: [],\n\t\t}\n\t\tcontacts.unshift(authenticatedUser)\n\t\treturn contacts\n\t}\n\n\treturn contacts\n}\n","/**\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { search as unifiedSearch } from './UnifiedSearchService.js';\nexport const REVEAL_INTERVAL_MS = 1000;\n/**\n * Results fetched per category per page. Sized for the detail view (which shows the\n * whole page); the aggregate caps to RESULTS_PER_CATEGORY. Server default 5, design 10.\n */\nexport const PAGE_SIZE = 10;\n/**\n * Whether a category has anything for the user to look at. Blocked is deliberately withheld\n * and failed carries no entries. Loading counts because paging keeps the pages already\n * fetched on screen while the next one is in flight; a new query has no entries to show, so\n * it reads as not visible until results actually land.\n *\n * Exported so the one definition also serves the Vue-side test doubles; the controller is\n * the only place that decides category-level visibility.\n *\n * @param state the category state to test\n */\nexport function isCategoryVisible(state) {\n return state.entries.length > 0 && (state.status === 'loaded' || state.status === 'loading');\n}\n/**\n * Runs a unified search across categories in priority order, blocking\n * lower-priority results until their predecessors arrive or a timer reveals them.\n *\n * Priority decides who waits for whom. It has no say over what is already on screen:\n * see `getRevealOrder()`.\n */\nexport class UnifiedSearchController {\n onChange;\n query = '';\n params = {};\n searchStates = {};\n revealOrder = [];\n revealWindowOpen = false;\n searchGeneration = 0;\n revealTimer = null;\n pendingCancels = [];\n constructor(onChange) {\n this.onChange = onChange;\n }\n /**\n * Start a search. Cancels and replaces any search already in flight.\n *\n * @param query the search term\n * @param categories category ids in priority order\n * @param params optional per-category search parameters\n * @return resolves once every category has settled\n */\n async search(query, categories, params) {\n this.cancelPendingRequests();\n // A new query hides everything the last one produced. Carrying results over would only\n // let them shift under the user once the real ones land, and the results are about to\n // differ anyway. So each search is a clean slate: empty screen, then a fresh ordered\n // reveal from priority order. Nothing is on screen, so nothing can be displaced.\n this.searchStates = {};\n this.revealOrder = [];\n this.searchGeneration++;\n const generation = this.searchGeneration;\n this.query = query;\n this.params = params || {};\n this.startRevealTimer();\n await Promise.allSettled(categories.map((category) => this.searchCategory(category, generation, categories)));\n }\n /**\n * Fetch the next page for one category and append it. A no-op unless the\n * category is loaded with more pages. On failure the existing results stay\n * and `loadMoreFailed` is raised, so calling again retries.\n *\n * @param category the category id to page\n */\n async loadMore(category) {\n const generation = this.searchGeneration;\n const categoryState = { ...this.searchStates[category] };\n if (!categoryState.hasMore || categoryState.status !== 'loaded') {\n return;\n }\n this.patchStates({ [category]: { status: 'loading', loadMoreFailed: false } });\n const { request, cancel } = unifiedSearch({\n type: category,\n query: this.query,\n cursor: categoryState.cursor,\n limit: PAGE_SIZE,\n ...this.params[category],\n });\n this.pendingCancels.push(cancel);\n try {\n const response = await request();\n if (this.searchGeneration !== generation) {\n return;\n }\n const { entries, cursor, isPaginated } = response.data.ocs.data;\n // A provider can echo a non-null cursor on an empty page, keeping hasMore true and\n // leaving a dead \"Load more\" button. An empty page means exhausted, cursor or not.\n const reachedEnd = entries.length === 0;\n this.patchStates({ [category]: {\n entries: [...categoryState.entries, ...entries],\n cursor,\n hasMore: !reachedEnd && this.hasMorePages(isPaginated, cursor),\n status: 'loaded',\n } });\n }\n catch {\n if (this.searchGeneration !== generation) {\n return;\n }\n this.patchStates({ [category]: { status: 'loaded', loadMoreFailed: true } });\n }\n }\n /**\n * A shallow copy of the current per-category state, safe to read for rendering.\n *\n * @return the current search states keyed by category id\n */\n getSnapshot() {\n return { ...this.searchStates };\n }\n /**\n * The ids of the categories currently on screen, in display order.\n *\n * Append-only within a search, so a category never moves up into a slot another one already\n * occupies: a result that arrives late renders below what the user is already reading,\n * however high its priority. A new query starts over from priority order, since it clears\n * the screen first and so has nothing to displace. Read this rather than the snapshot's key\n * order, which is the priority order and an input to blocking, not a rendering order.\n *\n * Only ever names categories the current snapshot holds, so a caller can map without guarding.\n *\n * @return visible category ids, top to bottom\n */\n getRevealOrder() {\n return [...this.revealOrder];\n }\n dispose() {\n this.stopBackgroundWork();\n }\n reset() {\n this.stopBackgroundWork();\n this.searchStates = {};\n this.revealOrder = [];\n this.query = '';\n this.params = {};\n this.searchGeneration++;\n this.onChange?.(this.getSnapshot());\n }\n async searchCategory(category, generation, categories) {\n this.patchStates({ [category]: {\n status: 'loading',\n entries: [],\n cursor: null,\n hasMore: false,\n loadMoreFailed: false,\n } });\n const { request, cancel } = unifiedSearch({\n type: category,\n query: this.query,\n cursor: null,\n limit: PAGE_SIZE,\n ...this.params[category],\n });\n this.pendingCancels.push(cancel);\n try {\n const response = await request();\n if (this.searchGeneration !== generation) {\n // A new search has been started, ignore this result\n return;\n }\n const { entries, cursor, isPaginated } = response.data.ocs.data;\n // Decide blocked vs loaded once, here at settle. Reconcile only promotes after this\n // (never re-blocks), so this is the only place a category becomes blocked.\n this.patchStates({ [category]: {\n status: this.shouldBlockCategory(category, categories) ? 'blocked' : 'loaded',\n entries,\n cursor,\n hasMore: this.hasMorePages(isPaginated, cursor),\n loadMoreFailed: false,\n } });\n }\n catch {\n if (this.searchGeneration !== generation) {\n return;\n }\n this.patchStates({ [category]: {\n status: 'failed',\n entries: [],\n cursor: null,\n hasMore: false,\n loadMoreFailed: false,\n } });\n }\n this.reconcileCategoryStatuses(categories);\n }\n reconcileCategoryStatuses(categories) {\n categories.forEach((category) => {\n // Promotion only: reveal a blocked category once its predecessors clear, never demote.\n // A revealed category must stay revealed, else it flickers when a slower one settles.\n if (this.searchStates[category].status !== 'blocked') {\n return;\n }\n if (!this.shouldBlockCategory(category, categories)) {\n this.patchStates({ [category]: { status: 'loaded' } });\n }\n });\n }\n /**\n * Arm the one reveal window a search gets. Ordered reveal governs the first paint only:\n * when the window closes everything blocked is shown and nothing may block again, so a\n * category that lands later is revealed straight away, at the end. Only a new search\n * opens another window.\n */\n startRevealTimer() {\n this.stopRevealTimer();\n this.revealWindowOpen = true;\n this.revealTimer = setTimeout(() => {\n this.revealWindowOpen = false;\n this.unblockAllCategories(Object.keys(this.searchStates));\n }, REVEAL_INTERVAL_MS);\n }\n stopRevealTimer() {\n this.revealWindowOpen = false;\n if (this.revealTimer) {\n clearTimeout(this.revealTimer);\n this.revealTimer = null;\n }\n }\n cancelPendingRequests() {\n this.pendingCancels.forEach((cancel) => cancel());\n this.pendingCancels = [];\n }\n stopBackgroundWork() {\n this.cancelPendingRequests();\n this.stopRevealTimer();\n }\n unblockAllCategories(categories) {\n categories.forEach((category) => {\n if (this.searchStates[category].status === 'blocked') {\n this.patchStates({ [category]: { status: 'loaded' } });\n }\n });\n }\n /**\n * Whether a category can page further. The backend never sends a \"has more\"\n * flag, only `isPaginated` and a `cursor`, so derive it: a category has more\n * pages when it paginates and handed back a cursor to continue from.\n *\n * @param isPaginated whether the provider returned a paginated result\n * @param cursor the cursor to continue from, or null when there is none\n */\n hasMorePages(isPaginated, cursor) {\n return isPaginated && cursor !== null;\n }\n shouldBlockCategory(category, categories) {\n // Once the window has closed, ordered reveal is over for this search.\n if (!this.revealWindowOpen || !this.searchStates[category]) {\n return false;\n }\n return categories.slice(0, categories.indexOf(category)).some((c) => {\n const categoryState = this.searchStates[c];\n return categoryState && ['loading', 'blocked'].includes(categoryState.status);\n });\n }\n /**\n * Keep the display order in step with what is on screen. Losing its results frees a\n * category's slot, so the list closes the gap instead of leaving a hole.\n *\n * @param category the category id that just changed\n * @param state its merged state\n */\n syncRevealOrder(category, state) {\n const at = this.revealOrder.indexOf(category);\n const visible = isCategoryVisible(state);\n if (visible && at === -1) {\n this.revealOrder.push(category);\n }\n else if (!visible && at !== -1) {\n this.revealOrder.splice(at, 1);\n }\n }\n patchStates(next) {\n Object.keys(next).forEach((category) => {\n const categoryState = { ...this.searchStates[category], ...next[category] };\n this.searchStates[category] = categoryState;\n this.syncRevealOrder(category, categoryState);\n });\n this.onChange?.(this.getSnapshot());\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia'\n\nexport const useSearchStore = defineStore('search', {\n\tstate: () => ({\n\t\texternalFilters: [],\n\t}),\n\n\tactions: {\n\t\tregisterExternalFilter({ id, appId, searchFrom, label, callback, icon }) {\n\t\t\tthis.externalFilters.push({ id, appId, searchFrom, name: label, callback, icon, isPluginFilter: true })\n\t\t},\n\t},\n})\n","/*!\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { onUnmounted, shallowRef } from 'vue';\nimport { UnifiedSearchController } from '../services/UnifiedSearchController.ts';\n/**\n * Reactive adapter over UnifiedSearchController for use in an SFC.\n */\nexport function useUnifiedSearch() {\n const searchStates = shallowRef({});\n const revealOrder = shallowRef([]);\n const controller = new UnifiedSearchController((states) => {\n // Both assigned here, never separately: the view reads one against the other.\n searchStates.value = states;\n revealOrder.value = controller.getRevealOrder();\n });\n onUnmounted(() => {\n controller.dispose();\n });\n return {\n searchStates,\n revealOrder,\n search: controller.search.bind(controller),\n loadMore: controller.loadMore.bind(controller),\n reset: controller.reset.bind(controller),\n };\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=script&lang=ts\"","\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=style&index=0&id=584d5662&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=style&index=0&id=584d5662&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearchModal.vue?vue&type=template&id=584d5662&scoped=true\"\nimport script from \"./UnifiedSearchModal.vue?vue&type=script&lang=ts\"\nexport * from \"./UnifiedSearchModal.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UnifiedSearchModal.vue?vue&type=style&index=0&id=584d5662&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 \"584d5662\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"unified-search-menu\"},[_c('UnifiedSearchInput',{ref:\"searchInput\",attrs:{\"query\":_vm.queryText,\"expanded\":_vm.showUnifiedSearch,\"activeDescendantId\":_vm.activeDescendantId,\"loading\":_vm.searching,\"filtersRevealed\":_vm.filtersRevealed},on:{\"click\":_vm.openModal,\"open-filters\":_vm.onOpenFilters,\"close\":_vm.onClose,\"update:query\":function($event){_vm.queryText = $event},\"navigate\":_vm.onNavigate,\"activate\":_vm.onActivate}}),_vm._v(\" \"),_c('UnifiedSearchModal',{ref:\"searchModal\",attrs:{\"query\":_vm.queryText,\"open\":_vm.showUnifiedSearch,\"filtersRevealed\":_vm.filtersRevealed},on:{\"update:query\":function($event){_vm.queryText = $event},\"update:open\":function($event){_vm.showUnifiedSearch = $event},\"update:activeDescendant\":function($event){_vm.activeDescendantId = $event || ''},\"update:loading\":function($event){_vm.searching = $event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=style&index=0&id=2127a3b2&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=style&index=0&id=2127a3b2&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearch.vue?vue&type=template&id=2127a3b2&scoped=true\"\nimport script from \"./UnifiedSearch.vue?vue&type=script&lang=ts\"\nexport * from \"./UnifiedSearch.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UnifiedSearch.vue?vue&type=style&index=0&id=2127a3b2&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 \"2127a3b2\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCSPNonce } from '@nextcloud/auth';\nimport { translatePlural as n, translate as t } from '@nextcloud/l10n';\nimport { getLoggerBuilder } from '@nextcloud/logger';\nimport { createPinia, PiniaVuePlugin } from 'pinia';\nimport Vue from 'vue';\nimport UnifiedSearch from './views/UnifiedSearch.vue';\nimport { useSearchStore } from '../src/store/unified-search-external-filters.js';\n__webpack_nonce__ = getCSPNonce();\nconst logger = getLoggerBuilder()\n .setApp('unified-search')\n .detectUser()\n .build();\nVue.mixin({\n data() {\n return {\n logger,\n };\n },\n methods: {\n t,\n n,\n },\n});\n// Register the add/register filter action API globally\nwindow.OCA = window.OCA || {};\nwindow.OCA.UnifiedSearch = {\n registerFilterAction: ({ id, appId, searchFrom, label, callback, icon }) => {\n const searchStore = useSearchStore();\n searchStore.registerExternalFilter({ id, appId, searchFrom, label, callback, icon });\n },\n};\nVue.use(PiniaVuePlugin);\nconst pinia = createPinia();\nexport default new Vue({\n el: '#unified-search',\n pinia,\n name: 'UnifiedSearchRoot',\n render: (h) => h(UnifiedSearch),\n});\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-icon[data-v-5cb82f82]{--app-icon-circle-size: calc(var(--default-grid-baseline) * 12);--app-icon-icon-size: calc(var(--app-icon-circle-size) * 7 / 12);--app-icon-bevel: inset 0 -1px 0 0 color-mix(in srgb, var(--color-primary-element-light), 10% var(--color-primary-element)), inset 0 -4px 6px -4px color-mix(in srgb, var(--color-primary-element-light), 16% var(--color-primary-element));box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;width:var(--app-icon-circle-size);height:var(--app-icon-circle-size);min-height:var(--app-icon-circle-size);border-radius:50%;transform:scale(var(--app-icon-scale, 1));transition:transform var(--animation-quick) ease-out;background-color:var(--color-primary-element-light);background-image:linear-gradient(to bottom, color-mix(in srgb, var(--color-primary-element-light), 15% var(--color-main-background)) 0%, var(--color-primary-element-light) 100%);box-shadow:var(--app-icon-bevel)}@media(prefers-color-scheme: dark){.app-icon[data-v-5cb82f82]{--app-icon-bevel: none}}@media(prefers-reduced-motion: reduce){.app-icon[data-v-5cb82f82]{transition:none}}.app-icon__img[data-v-5cb82f82]{width:var(--app-icon-icon-size);height:var(--app-icon-icon-size);background-color:var(--color-primary-element);background-image:linear-gradient(to bottom, color-mix(in srgb, var(--color-primary-element), 28% var(--color-primary-element-light)) 0%, var(--color-primary-element) 100%);mask:var(--app-icon-url) center/contain no-repeat}@media(forced-colors: active){.app-icon__img[data-v-5cb82f82]{background-color:CanvasText;background-image:none}}.app-icon--outlined[data-v-5cb82f82]{background:rgba(0,0,0,0);background-image:none;box-shadow:inset 0 0 0 2px var(--color-border)}.app-icon--outlined .app-icon__img[data-v-5cb82f82]{background-color:var(--color-text-maxcontrast);background-image:none}[data-themes*=dark] .app-icon{--app-icon-bevel: none}[data-themes*=light] .app-icon{--app-icon-bevel: inset 0 -1px 0 0 color-mix(in srgb, var(--color-primary-element-light), 10% var(--color-primary-element)), inset 0 -4px 6px -4px color-mix(in srgb, var(--color-primary-element-light), 16% var(--color-primary-element))}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/AppIcon.vue\"],\"names\":[],\"mappings\":\"AAKA,2BACC,+DAAA,CAEA,gEAAA,CACA,2OAAA,CACA,qBAAA,CACA,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,iCAAA,CACA,kCAAA,CACA,sCAAA,CACA,iBAAA,CACA,yCAAA,CACA,oDAAA,CACA,mDAAA,CACA,iLAAA,CAKA,gCAAA,CAEA,mCAxBD,2BAyBE,sBAAA,CAAA,CAGD,uCA5BD,2BA6BE,eAAA,CAAA,CAGD,gCACC,+BAAA,CACA,gCAAA,CAGA,6CAAA,CACA,2KAAA,CAKA,iDAAA,CAID,8BACC,gCACC,2BAAA,CACA,qBAAA,CAAA,CAMF,qCACC,wBAAA,CACA,qBAAA,CACA,8CAAA,CAGD,oDACC,8CAAA,CACA,qBAAA,CAKF,8BACC,sBAAA,CAGD,+BACC,2OAAA\",\"sourcesContent\":[\"\\n$bevel:\\n\\tinset 0 -1px 0 0 color-mix(in srgb, var(--color-primary-element-light), 10% var(--color-primary-element)),\\n\\tinset 0 -4px 6px -4px color-mix(in srgb, var(--color-primary-element-light), 16% var(--color-primary-element));\\n\\n.app-icon {\\n\\t--app-icon-circle-size: calc(var(--default-grid-baseline) * 12);\\n\\t// 28px on a 48px circle, so it follows when consumers resize the circle.\\n\\t--app-icon-icon-size: calc(var(--app-icon-circle-size) * 7 / 12);\\n\\t--app-icon-bevel: #{$bevel};\\n\\tbox-sizing: border-box;\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: var(--app-icon-circle-size);\\n\\theight: var(--app-icon-circle-size);\\n\\tmin-height: var(--app-icon-circle-size);\\n\\tborder-radius: 50%;\\n\\ttransform: scale(var(--app-icon-scale, 1));\\n\\ttransition: transform var(--animation-quick) ease-out;\\n\\tbackground-color: var(--color-primary-element-light);\\n\\tbackground-image: linear-gradient(\\n\\t\\tto bottom,\\n\\t\\tcolor-mix(in srgb, var(--color-primary-element-light), 15% var(--color-main-background)) 0%,\\n\\t\\tvar(--color-primary-element-light) 100%\\n\\t);\\n\\tbox-shadow: var(--app-icon-bevel);\\n\\n\\t@media (prefers-color-scheme: dark) {\\n\\t\\t--app-icon-bevel: none;\\n\\t}\\n\\n\\t@media (prefers-reduced-motion: reduce) {\\n\\t\\ttransition: none;\\n\\t}\\n\\n\\t&__img {\\n\\t\\twidth: var(--app-icon-icon-size);\\n\\t\\theight: var(--app-icon-icon-size);\\n\\t\\t// Masked rather than shown: app icons ship a hardcoded fill, so\\n\\t\\t// currentColor never applies and a filter could only flip black and white.\\n\\t\\tbackground-color: var(--color-primary-element);\\n\\t\\tbackground-image: linear-gradient(\\n\\t\\t\\tto bottom,\\n\\t\\t\\tcolor-mix(in srgb, var(--color-primary-element), 28% var(--color-primary-element-light)) 0%,\\n\\t\\t\\tvar(--color-primary-element) 100%\\n\\t\\t);\\n\\t\\tmask: var(--app-icon-url) center / contain no-repeat;\\n\\t}\\n\\n\\t// Masked backgrounds are not force-adjusted the way is.\\n\\t@media (forced-colors: active) {\\n\\t\\t&__img {\\n\\t\\t\\tbackground-color: CanvasText;\\n\\t\\t\\tbackground-image: none;\\n\\t\\t}\\n\\t}\\n\\n\\t// Utility entries (\\\"More apps\\\", \\\"App store\\\") stay subdued: a plain circle\\n\\t// with the icon in the same muted color as the label.\\n\\t&--outlined {\\n\\t\\tbackground: transparent;\\n\\t\\tbackground-image: none;\\n\\t\\tbox-shadow: inset 0 0 0 2px var(--color-border);\\n\\t}\\n\\n\\t&--outlined &__img {\\n\\t\\tbackground-color: var(--color-text-maxcontrast);\\n\\t\\tbackground-image: none;\\n\\t}\\n}\\n\\n// An explicit theme choice must beat the media query above, which only sees the OS.\\n:global([data-themes*=dark] .app-icon) {\\n\\t--app-icon-bevel: none;\\n}\\n\\n:global([data-themes*=light] .app-icon) {\\n\\t--app-icon-bevel: #{$bevel};\\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, `.unified-search-custom-date-modal[data-v-2907014b]{padding:10px 20px 10px 20px}.unified-search-custom-date-modal h1[data-v-2907014b]{font-size:16px;font-weight:bolder;line-height:2em}.unified-search-custom-date-modal__pickers[data-v-2907014b]{display:flex;flex-direction:column}.unified-search-custom-date-modal__footer[data-v-2907014b]{display:flex;justify-content:end}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/CustomDateRangeModal.vue\"],\"names\":[],\"mappings\":\"AACA,mDACC,2BAAA,CAEA,sDACC,cAAA,CACA,kBAAA,CACA,eAAA,CAGD,4DACC,YAAA,CACA,qBAAA,CAGD,2DACC,YAAA,CACA,mBAAA\",\"sourcesContent\":[\"\\n.unified-search-custom-date-modal {\\n\\tpadding: 10px 20px 10px 20px;\\n\\n\\th1 {\\n\\t\\tfont-size: 16px;\\n\\t\\tfont-weight: bolder;\\n\\t\\tline-height: 2em;\\n\\t}\\n\\n\\t&__pickers {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t}\\n\\n\\t&__footer {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: end;\\n\\t}\\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, `.chip[data-v-5a4f6249]{display:flex;align-items:center;padding:2px 4px;border:1px solid var(--color-primary-element-light);border-radius:20px;background-color:var(--color-primary-element-light);margin:2px}.chip .icon[data-v-5a4f6249]{display:flex;align-items:center;padding-inline-end:5px}.chip .icon img[data-v-5a4f6249]{width:20px;padding:2px;border-radius:20px;filter:var(--background-invert-if-bright)}.chip .text[data-v-5a4f6249]{margin:0 2px}.chip .close-button[data-v-5a4f6249]{display:flex;align-items:center;width:auto;min-width:0;min-height:0;margin:0;padding:0;border:none;background:rgba(0,0,0,0);color:inherit;cursor:pointer;border-radius:var(--border-radius-element, 8px)}.chip .close-button[data-v-5a4f6249]:hover{filter:invert(20%)}.chip .close-button[data-v-5a4f6249]:focus-visible{outline:2px solid var(--color-main-text);outline-offset:1px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchFilterChip.vue\"],\"names\":[],\"mappings\":\"AACA,uBACI,YAAA,CACA,kBAAA,CACA,eAAA,CACA,mDAAA,CACA,kBAAA,CACA,mDAAA,CACA,UAAA,CAEA,6BACI,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,iCACI,UAAA,CACA,WAAA,CACA,kBAAA,CACA,yCAAA,CAIR,6BACI,YAAA,CAGJ,qCACI,YAAA,CACA,kBAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CACA,QAAA,CACA,SAAA,CACA,WAAA,CACA,wBAAA,CACA,aAAA,CACA,cAAA,CACA,+CAAA,CAEA,2CACI,kBAAA,CAGJ,mDACI,wCAAA,CACA,kBAAA\",\"sourcesContent\":[\"\\n.chip {\\n display: flex;\\n align-items: center;\\n padding: 2px 4px;\\n border: 1px solid var(--color-primary-element-light);\\n border-radius: 20px;\\n background-color: var(--color-primary-element-light);\\n margin: 2px;\\n\\n .icon {\\n display: flex;\\n align-items: center;\\n padding-inline-end: 5px;\\n\\n img {\\n width: 20px;\\n padding: 2px;\\n border-radius: 20px;\\n filter: var(--background-invert-if-bright);\\n }\\n }\\n\\n .text {\\n margin: 0 2px;\\n }\\n\\n .close-button {\\n display: flex;\\n align-items: center;\\n width: auto;\\n min-width: 0;\\n min-height: 0;\\n margin: 0;\\n padding: 0;\\n border: none;\\n background: transparent;\\n color: inherit;\\n cursor: pointer;\\n border-radius: var(--border-radius-element, 8px);\\n\\n &:hover {\\n filter: invert(20%);\\n }\\n\\n &:focus-visible {\\n outline: 2px solid var(--color-main-text);\\n outline-offset: 1px;\\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, `.result-item[data-v-516c3939]{padding-inline:0}.result-item[data-v-516c3939] a{border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.result-item[data-v-516c3939] a:active,.result-item[data-v-516c3939] a:hover{background-color:var(--color-background-hover)}.result-item[data-v-516c3939] a:focus-visible{background-color:var(--color-background-hover);border-color:var(--color-border-maxcontrast)}.result-item[data-v-516c3939] a *{cursor:pointer}.result-item.list-item__wrapper--active[data-v-516c3939] .list-item{background-color:var(--color-background-hover)}.result-item.list-item__wrapper--active[data-v-516c3939] .list-item::before{content:\"\";position:absolute;inset-block:calc(var(--default-grid-baseline)*2);inset-inline-start:0;width:3px;border-radius:var(--border-radius-rounded);background-color:var(--color-primary-element);animation:result-pill-in-516c3939 var(--animation-quick) ease-out}.result-item.list-item__wrapper--active[data-v-516c3939] .list-item:hover{background-color:var(--color-background-hover)}.result-item.list-item__wrapper--active[data-v-516c3939] .list-item__anchor .list-item-content__name,.result-item.list-item__wrapper--active[data-v-516c3939] .list-item__anchor .list-item-content__subname,.result-item.list-item__wrapper--active[data-v-516c3939] .list-item__anchor .list-item-content__details,.result-item.list-item__wrapper--active[data-v-516c3939] .list-item__anchor .list-item-details__details{color:var(--color-main-text) !important}.result-item__icon[data-v-516c3939]{display:flex;align-items:center;justify-content:center;overflow:hidden;width:var(--default-clickable-area);height:var(--default-clickable-area);border-radius:var(--border-radius);margin-inline-start:var(--default-grid-baseline)}.result-item__icon--rounded[data-v-516c3939]{border-radius:calc(var(--default-clickable-area)/2)}.result-item__icon--with-thumbnail[data-v-516c3939]:not(.result-item__icon--rounded){border:1px solid var(--color-border);max-height:calc(var(--default-clickable-area) - 2px);max-width:calc(var(--default-clickable-area) - 2px)}.result-item__icon--with-thumbnail img[data-v-516c3939]{width:100%;height:100%;object-fit:cover;object-position:center}.result-item__icon-img[data-v-516c3939]{width:20px;height:20px;object-fit:contain;filter:var(--background-invert-if-dark)}.result-item__icon-img[src*=\"/filetypes/\"][data-v-516c3939]{width:32px;height:32px;filter:none}.result-item__app-icon[data-v-516c3939]{--app-icon-circle-size: var(--default-clickable-area);margin-inline-start:var(--default-grid-baseline)}@keyframes result-pill-in-516c3939{from{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchResult.vue\"],\"names\":[],\"mappings\":\"AACA,8BACC,gBAAA,CAEA,gCACC,8BAAA,CACA,mDAAA,CAGA,6EAEC,8CAAA,CAKD,8CACC,8CAAA,CACA,4CAAA,CAGD,kCACC,cAAA,CAOD,oEACC,8CAAA,CAMA,4EACC,UAAA,CACA,iBAAA,CACA,gDAAA,CACA,oBAAA,CACA,SAAA,CACA,0CAAA,CACA,6CAAA,CAEA,iEAAA,CAGD,0EACC,8CAAA,CAMF,6ZAIC,uCAAA,CAIF,oCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,mCAAA,CACA,oCAAA,CACA,kCAAA,CACA,gDAAA,CAEA,6CACC,mDAAA,CAGD,qFACC,oCAAA,CAEA,oDAAA,CACA,mDAAA,CAID,wDAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA,CAID,wCACC,UAAA,CACA,WAAA,CACA,kBAAA,CAEA,uCAAA,CAKA,4DACC,UAAA,CACA,WAAA,CACA,WAAA,CAMH,wCACC,qDAAA,CACA,gDAAA,CAKF,mCACC,KACC,mBAAA,CACA,SAAA,CAGD,GACC,mBAAA,CACA,SAAA,CAAA\",\"sourcesContent\":[\"\\n.result-item {\\n\\tpadding-inline: 0;\\n\\n\\t:deep(a) {\\n\\t\\tborder: 2px solid transparent;\\n\\t\\tborder-radius: var(--border-radius-large) !important;\\n\\n\\t\\t// Hover/press: neutral gray fill only, no border.\\n\\t\\t&:active,\\n\\t\\t&:hover {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\n\\t\\t// Plain Tab into a result keeps a visible focus ring (a11y). Normally the combobox\\n\\t\\t// keeps focus in the input and drives selection via `active` below.\\n\\t\\t&:focus-visible {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\tborder-color: var(--color-border-maxcontrast);\\n\\t\\t}\\n\\n\\t\\t* {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t}\\n\\t}\\n\\n\\t// NcListItem's `active` state paints a primary fill, white text and a blue stripe.\\n\\t// We want a neutral look: the gray hover fill plus a maxcontrast border, readable text.\\n\\t&.list-item__wrapper--active {\\n\\t\\t:deep(.list-item) {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\n\\t\\t\\t// Keyboard selection marker: the pill the left navigation paints on its active\\n\\t\\t\\t// entry. It has to hang off .list-item rather than the wrapper, because\\n\\t\\t\\t// .list-item is itself positioned and paints the opaque row background, so it\\n\\t\\t\\t// would cover a pseudo-element belonging to its parent.\\n\\t\\t\\t&::before {\\n\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tinset-block: calc(var(--default-grid-baseline) * 2);\\n\\t\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\t\\twidth: 3px;\\n\\t\\t\\t\\tborder-radius: var(--border-radius-rounded);\\n\\t\\t\\t\\tbackground-color: var(--color-primary-element);\\n\\t\\t\\t\\t// Zeroed by the reduced-motion theme, so no separate media query is needed.\\n\\t\\t\\t\\tanimation: result-pill-in var(--animation-quick) ease-out;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Undo the forced active text colour. Chain through the anchor to outrank\\n\\t\\t// NcListItem's own !important rule.\\n\\t\\t:deep(.list-item__anchor .list-item-content__name),\\n\\t\\t:deep(.list-item__anchor .list-item-content__subname),\\n\\t\\t:deep(.list-item__anchor .list-item-content__details),\\n\\t\\t:deep(.list-item__anchor .list-item-details__details) {\\n\\t\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&__icon {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\toverflow: hidden;\\n\\t\\twidth: var(--default-clickable-area);\\n\\t\\theight: var(--default-clickable-area);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tmargin-inline-start: var(--default-grid-baseline);\\n\\n\\t\\t&--rounded {\\n\\t\\t\\tborder-radius: calc(var(--default-clickable-area) / 2);\\n\\t\\t}\\n\\n\\t\\t&--with-thumbnail:not(#{&}--rounded) {\\n\\t\\t\\tborder: 1px solid var(--color-border);\\n\\t\\t\\t// compensate for border\\n\\t\\t\\tmax-height: calc(var(--default-clickable-area) - 2px);\\n\\t\\t\\tmax-width: calc(var(--default-clickable-area) - 2px);\\n\\t\\t}\\n\\n\\t\\t// A full-bleed thumbnail (preview or avatar) fills the box.\\n\\t\\t&--with-thumbnail img {\\n\\t\\t\\t// Make sure to keep ratio\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\n\\t\\t\\tobject-fit: cover;\\n\\t\\t\\tobject-position: center;\\n\\t\\t}\\n\\n\\t\\t// A small monochrome glyph (e.g. a settings section), not a thumbnail.\\n\\t\\t&-img {\\n\\t\\t\\twidth: 20px;\\n\\t\\t\\theight: 20px;\\n\\t\\t\\tobject-fit: contain;\\n\\t\\t\\t// Dark monochrome icons invert to light in dark themes.\\n\\t\\t\\tfilter: var(--background-invert-if-dark);\\n\\n\\t\\t\\t// Mime icons carry their own colours (a red PDF, a green spreadsheet), so the\\n\\t\\t\\t// dark-theme invert would recolour them: red comes out cyan. Sized to match the\\n\\t\\t\\t// 32px these icons had while they were painted as a background-image.\\n\\t\\t\\t&[src*='/filetypes/'] {\\n\\t\\t\\t\\twidth: 32px;\\n\\t\\t\\t\\theight: 32px;\\n\\t\\t\\t\\tfilter: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// App results reuse the app-menu tile (AppIcon); size its circle to the icon column.\\n\\t&__app-icon {\\n\\t\\t--app-icon-circle-size: var(--default-clickable-area);\\n\\t\\tmargin-inline-start: var(--default-grid-baseline);\\n\\t}\\n}\\n\\n// Grow the pill out of the row's centre line, matching the navigation entry.\\n@keyframes result-pill-in {\\n\\tfrom {\\n\\t\\ttransform: scaleY(0);\\n\\t\\topacity: 0;\\n\\t}\\n\\n\\tto {\\n\\t\\ttransform: scaleY(1);\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.search-result-skeleton[data-v-66bc29f5]{--bar-block-size: calc(2lh + 2 * (2px + var(--default-grid-baseline) + 2px));display:flex;flex-direction:column;gap:calc(3*var(--default-grid-baseline))}.search-result-skeleton__bar[data-v-66bc29f5]{flex:none;position:relative;overflow:hidden;block-size:var(--bar-block-size);border-radius:var(--border-radius-element);background-color:var(--color-background-hover)}.search-result-skeleton__bar--heading[data-v-66bc29f5]{block-size:1lh;inline-size:25%}.search-result-skeleton__bar[data-v-66bc29f5]::after{content:\"\";position:absolute;inset:0;background-image:linear-gradient(90deg, transparent, var(--color-placeholder-light), transparent);transform:translateX(-100%);animation:search-result-skeleton-sweep-66bc29f5 1.6s linear infinite}.search-result-skeleton__bar[data-v-66bc29f5]:dir(rtl)::after{animation-direction:reverse}@media(prefers-reduced-motion: reduce){.search-result-skeleton__bar[data-v-66bc29f5]::after{content:none}}@keyframes search-result-skeleton-sweep-66bc29f5{to{transform:translateX(100%)}}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchResultSkeleton.vue\"],\"names\":[],\"mappings\":\"AACA,yCACC,4EAAA,CACA,YAAA,CACA,qBAAA,CACA,wCAAA,CAEA,8CACC,SAAA,CACA,iBAAA,CACA,eAAA,CACA,gCAAA,CACA,0CAAA,CACA,8CAAA,CAGA,uDACC,cAAA,CACA,eAAA,CAID,qDACC,UAAA,CACA,iBAAA,CACA,OAAA,CACA,iGAAA,CACA,2BAAA,CACA,oEAAA,CAGD,8DACC,2BAAA,CAGD,uCACC,qDACC,YAAA,CAAA,CAMJ,iDACC,GACC,0BAAA,CAAA\",\"sourcesContent\":[\"\\n.search-result-skeleton {\\n\\t--bar-block-size: calc(2lh + 2 * (2px + var(--default-grid-baseline) + 2px));\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: calc(3 * var(--default-grid-baseline));\\n\\n\\t&__bar {\\n\\t\\tflex: none;\\n\\t\\tposition: relative;\\n\\t\\toverflow: hidden;\\n\\t\\tblock-size: var(--bar-block-size);\\n\\t\\tborder-radius: var(--border-radius-element);\\n\\t\\tbackground-color: var(--color-background-hover);\\n\\n\\t\\t// Full width at one line reads as a divider; an explicit size also mirrors in RTL.\\n\\t\\t&--heading {\\n\\t\\t\\tblock-size: 1lh;\\n\\t\\t\\tinline-size: 25%;\\n\\t\\t}\\n\\n\\t\\t// Transform, not background-position: keeps the animation off the main thread.\\n\\t\\t&::after {\\n\\t\\t\\tcontent: '';\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tinset: 0;\\n\\t\\t\\tbackground-image: linear-gradient(90deg, transparent, var(--color-placeholder-light), transparent);\\n\\t\\t\\ttransform: translateX(-100%);\\n\\t\\t\\tanimation: search-result-skeleton-sweep 1.6s linear infinite;\\n\\t\\t}\\n\\n\\t\\t&:dir(rtl)::after {\\n\\t\\t\\tanimation-direction: reverse;\\n\\t\\t}\\n\\n\\t\\t@media (prefers-reduced-motion: reduce) {\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tcontent: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n@keyframes search-result-skeleton-sweep {\\n\\tto {\\n\\t\\ttransform: translateX(100%);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.searchable-list__wrapper[data-v-66bd6570]{padding:calc(var(--default-grid-baseline)*3);display:flex;flex-direction:column;align-items:center;width:250px}.searchable-list__list[data-v-66bd6570]{width:100%;max-height:284px;overflow-y:auto;margin-top:var(--default-grid-baseline);padding:var(--default-grid-baseline)}.searchable-list__list[data-v-66bd6570] .button-vue{border-radius:var(--border-radius-large) !important}.searchable-list__list[data-v-66bd6570] .button-vue span{font-weight:initial}.searchable-list__empty-content[data-v-66bd6570]{margin-top:calc(var(--default-grid-baseline)*3)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchableList.vue\"],\"names\":[],\"mappings\":\"AAEC,2CACC,4CAAA,CACA,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,WAAA,CAGD,wCACC,UAAA,CACA,gBAAA,CACA,eAAA,CACA,uCAAA,CACA,oCAAA,CAEA,oDACC,mDAAA,CACA,yDACC,mBAAA,CAKH,iDACC,+CAAA\",\"sourcesContent\":[\"\\n.searchable-list {\\n\\t&__wrapper {\\n\\t\\tpadding: calc(var(--default-grid-baseline) * 3);\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\twidth: 250px;\\n\\t}\\n\\n\\t&__list {\\n\\t\\twidth: 100%;\\n\\t\\tmax-height: 284px;\\n\\t\\toverflow-y: auto;\\n\\t\\tmargin-top: var(--default-grid-baseline);\\n\\t\\tpadding: var(--default-grid-baseline);\\n\\n\\t\\t:deep(.button-vue) {\\n\\t\\t\\tborder-radius: var(--border-radius-large) !important;\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tfont-weight: initial;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__empty-content {\\n\\t\\tmargin-top: calc(var(--default-grid-baseline) * 3);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-input[data-v-30894250]{position:relative;z-index:51}.unified-search-input[data-v-30894250]:not(.unified-search-input--mobile){display:flex;align-items:center;width:var(--unified-search-width)}.unified-search-input--mobile[data-v-30894250]{display:contents}.unified-search-input__field[data-v-30894250]{--resting-background: rgba(0, 0, 0, 0.15);--resting-background-hover: rgba(0, 0, 0, 0.22);--search-icon-pad: 12px;--search-icon-size: 20px;--search-icon-gap: 8px;--search-anim-duration: 240ms;--search-anim-easing: cubic-bezier(0.22, 1, 0.36, 1);position:relative;container-type:inline-size;display:flex;align-items:center;height:var(--default-clickable-area);width:100%;border-radius:var(--border-radius-element, 8px);box-shadow:inset 0 2px 0 rgba(0,0,0,.12);background-color:var(--resting-background);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);transition:background-color var(--search-anim-duration) var(--search-anim-easing),box-shadow var(--search-anim-duration) var(--search-anim-easing)}.unified-search-input__field[data-v-30894250]:hover:not(.unified-search-input__field--active){background-color:var(--resting-background-hover)}.unified-search-input__field--active[data-v-30894250]{background-color:var(--color-main-background);box-shadow:none}.unified-search-input__resting[data-v-30894250]{--slide-sign: 1;position:absolute;inset-block:0;inset-inline-start:var(--search-icon-pad);max-width:calc(100% - 2*var(--search-icon-pad));display:flex;align-items:center;gap:var(--search-icon-gap);pointer-events:none;color:color-mix(in srgb, var(--color-background-plain-text) 70%, var(--color-background-plain));transform:translateX(calc(var(--slide-sign) * (50cqi - 50% - var(--search-icon-pad))));transition:transform var(--search-anim-duration) var(--search-anim-easing),color var(--search-anim-duration) var(--search-anim-easing)}.unified-search-input__field--active .unified-search-input__resting[data-v-30894250]{transform:translateX(0);color:var(--color-text-maxcontrast);max-width:calc(100% - 7*var(--search-icon-pad))}.unified-search-input__label[data-v-30894250]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:opacity var(--search-anim-duration) var(--search-anim-easing)}.unified-search-input__resting--filled .unified-search-input__label[data-v-30894250]{opacity:0}.unified-search-input__resting[data-v-30894250] .material-design-icon__svg{display:block;transform:translateY(1px)}.unified-search-input__input[data-v-30894250]{flex:1;min-width:0;height:100%;margin:0;padding-inline:calc(var(--search-icon-pad) + var(--search-icon-size) + var(--search-icon-gap)) var(--search-icon-pad);border:none !important;border-radius:0 !important;box-shadow:none !important;background-color:rgba(0,0,0,0);color:var(--color-main-text);font-size:var(--default-font-size)}.unified-search-input__input[data-v-30894250]::placeholder{opacity:1;color:var(--color-text-maxcontrast)}.unified-search-input__input[data-v-30894250]:focus-visible{outline:none}.unified-search-input__clear[data-v-30894250],.unified-search-input__filter[data-v-30894250]{flex-shrink:0;margin-inline-end:2px}.unified-search-input__loading[data-v-30894250]{flex-shrink:0;display:flex;align-items:center;margin-inline:var(--default-grid-baseline)}.unified-search-input__shortcut[data-v-30894250]{position:absolute;inset-inline-end:var(--default-grid-baseline);top:50%;transform:translateY(-50%);display:flex;pointer-events:none}@container (max-width: 400px){.unified-search-input__shortcut[data-v-30894250]{display:none}}.unified-search-input__shortcut[data-v-30894250] kbd{min-width:12px;height:12px;padding-inline:5px;border:1px solid color-mix(in srgb, var(--color-background-plain-text) 20%, transparent);border-block-end-width:2px;border-radius:var(--border-radius-small, 4px);color:color-mix(in srgb, var(--color-background-plain-text) 70%, var(--color-background-plain));font-size:13px}[data-theme-dark] .unified-search-input__field[data-v-30894250],[data-theme-dark-highcontrast] .unified-search-input__field[data-v-30894250]{--resting-background: color-mix(in srgb, var(--color-primary-element) 16%, transparent);--resting-background-hover: color-mix(in srgb, var(--color-primary-element) 22%, transparent)}.unified-search-input__resting[data-v-30894250]:dir(rtl){--slide-sign: -1}@media(prefers-reduced-motion: reduce){.unified-search-input__resting[data-v-30894250],.unified-search-input__resting span[data-v-30894250]{transition:none}}.unified-search-input--mobile[data-v-30894250] .header-menu{height:var(--default-clickable-area)}.unified-search-input--mobile[data-v-30894250] .header-menu__trigger{--button-size: var(--default-clickable-area) !important;height:var(--default-clickable-area) !important}.unified-search-input--mobile[data-v-30894250] .button-vue{--color-main-text: var(--color-background-plain-text);color:var(--color-background-plain-text);border-radius:var(--border-radius-element) !important}.unified-search-input--mobile[data-v-30894250] .button-vue:hover:not(:disabled){background-color:rgba(0,0,0,.1) !important}.unified-search-input--mobile[data-v-30894250] .button-vue:active:not(:disabled){background-color:rgba(0,0,0,.15) !important}.unified-search-input--mobile[data-v-30894250] .button-vue:focus-visible{background-color:rgba(0,0,0,.1) !important;outline:none !important;box-shadow:inset 0 0 0 2px var(--color-background-plain-text) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/UnifiedSearchInput.vue\"],\"names\":[],\"mappings\":\"AACA,uCAGC,iBAAA,CACA,UAAA,CAIA,0EACC,YAAA,CACA,kBAAA,CACA,iCAAA,CAGD,+CACC,gBAAA,CAGD,8CACC,yCAAA,CACA,+CAAA,CAGA,uBAAA,CACA,wBAAA,CACA,sBAAA,CAGA,6BAAA,CACA,oDAAA,CACA,iBAAA,CAEA,0BAAA,CACA,YAAA,CACA,kBAAA,CAGA,oCAAA,CACA,UAAA,CACA,+CAAA,CACA,wCAAA,CAEA,0CAAA,CACA,qDAAA,CACA,6CAAA,CAEA,kJACC,CAGD,8FACC,gDAAA,CAID,sDACC,6CAAA,CACA,eAAA,CAQF,gDACC,eAAA,CACA,iBAAA,CACA,aAAA,CACA,yCAAA,CACA,+CAAA,CACA,YAAA,CACA,kBAAA,CACA,0BAAA,CACA,mBAAA,CACA,+FAAA,CACA,sFAAA,CACA,sIACC,CAGD,qFACC,uBAAA,CACA,mCAAA,CACA,+CAAA,CAOF,8CACC,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,wEAAA,CAGD,qFACC,SAAA,CAOD,2EACC,aAAA,CACA,yBAAA,CAKD,8CACC,MAAA,CACA,WAAA,CACA,WAAA,CACA,QAAA,CAGA,qHAAA,CAIA,sBAAA,CACA,0BAAA,CACA,0BAAA,CACA,8BAAA,CACA,4BAAA,CACA,kCAAA,CAEA,2DACC,SAAA,CACA,mCAAA,CAGD,4DACC,YAAA,CAIF,6FAEC,aAAA,CACA,qBAAA,CAGD,gDACC,aAAA,CACA,YAAA,CACA,kBAAA,CACA,0CAAA,CAKD,iDACC,iBAAA,CACA,6CAAA,CACA,OAAA,CACA,0BAAA,CACA,YAAA,CACA,mBAAA,CAKA,8BAXD,iDAYE,YAAA,CAAA,CAGD,qDACC,cAAA,CACA,WAAA,CACA,kBAAA,CACA,wFAAA,CACA,0BAAA,CACA,6CAAA,CACA,+FAAA,CACA,cAAA,CAOH,6IAEC,uFAAA,CACA,6FAAA,CAOD,yDACC,gBAAA,CAKD,uCACC,qGAEC,eAAA,CAAA,CAKF,4DACC,oCAAA,CAGD,qEACC,uDAAA,CACA,+CAAA,CAGD,2DACC,qDAAA,CACA,wCAAA,CACA,qDAAA,CAEA,gFACC,0CAAA,CAGD,iFACC,2CAAA,CAGD,yEACC,0CAAA,CACA,uBAAA,CACA,wEAAA\",\"sourcesContent\":[\"\\n.unified-search-input {\\n\\t// Paints above the modal root (z-index: 50) so the header input stays clickable\\n\\t// over the scrim while the popover is open. Keep 51 one above that value.\\n\\tposition: relative;\\n\\tz-index: 51;\\n\\n\\t// No percentage max-width: the ancestors shrink-wrap to this element, so the\\n\\t// cap would resolve against its own width.\\n\\t&:not(.unified-search-input--mobile) {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\twidth: var(--unified-search-width);\\n\\t}\\n\\n\\t&--mobile {\\n\\t\\tdisplay: contents;\\n\\t}\\n\\n\\t&__field {\\n\\t\\t--resting-background: rgba(0, 0, 0, 0.15);\\n\\t\\t--resting-background-hover: rgba(0, 0, 0, 0.22);\\n\\t\\t// Shared geometry: the resting group and the input's leading padding read the\\n\\t\\t// same tokens so the placeholder and the typed value line up.\\n\\t\\t--search-icon-pad: 12px;\\n\\t\\t--search-icon-size: 20px;\\n\\t\\t--search-icon-gap: 8px;\\n\\t\\t// One shared timing for every focus transition (background, the icon/label\\n\\t\\t// slide, the recolour) so they move together. easeOutQuart = soft landing.\\n\\t\\t--search-anim-duration: 240ms;\\n\\t\\t--search-anim-easing: cubic-bezier(0.22, 1, 0.36, 1);\\n\\t\\tposition: relative;\\n\\t\\t// Query container so the resting group can centre itself with cqi units\\n\\t\\tcontainer-type: inline-size;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\t// Match the default clickable area so the inner (which the global\\n\\t\\t// input reset forces to that height) fills the field without an override.\\n\\t\\theight: var(--default-clickable-area);\\n\\t\\twidth: 100%;\\n\\t\\tborder-radius: var(--border-radius-element, 8px);\\n\\t\\tbox-shadow: inset 0 2px 0 rgba(0, 0, 0, 0.12);\\n\\t\\t// Resting: subdued \\\"button\\\" look that sits on the themed header\\n\\t\\tbackground-color: var(--resting-background);\\n\\t\\t-webkit-backdrop-filter: var(--filter-background-blur);\\n\\t\\tbackdrop-filter: var(--filter-background-blur);\\n\\t\\t// Blue tint -> white surface on the shared timing, in step with the slide.\\n\\t\\ttransition:\\n\\t\\t\\tbackground-color var(--search-anim-duration) var(--search-anim-easing),\\n\\t\\t\\tbox-shadow var(--search-anim-duration) var(--search-anim-easing);\\n\\n\\t\\t&:hover:not(.unified-search-input__field--active) {\\n\\t\\t\\tbackground-color: var(--resting-background-hover);\\n\\t\\t}\\n\\n\\t\\t// Active: real input surface once focused or filled\\n\\t\\t&--active {\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tbox-shadow: none;\\n\\t\\t}\\n\\t}\\n\\n\\t// Anchored at the leading edge and translated to the centre while at rest; on\\n\\t// focus (--active) the translate goes to 0 and it slides into place. Centre offset\\n\\t// is pure CSS: half the field (50cqi) minus half the group (50%) minus the pad, so\\n\\t// it self-corrects for any placeholder length or field width.\\n\\t&__resting {\\n\\t\\t--slide-sign: 1;\\n\\t\\tposition: absolute;\\n\\t\\tinset-block: 0;\\n\\t\\tinset-inline-start: var(--search-icon-pad);\\n\\t\\tmax-width: calc(100% - 2 * var(--search-icon-pad));\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tgap: var(--search-icon-gap);\\n\\t\\tpointer-events: none;\\n\\t\\tcolor: color-mix(in srgb, var(--color-background-plain-text) 70%, var(--color-background-plain));\\n\\t\\ttransform: translateX(calc(var(--slide-sign) * (50cqi - 50% - var(--search-icon-pad))));\\n\\t\\ttransition:\\n\\t\\t\\ttransform var(--search-anim-duration) var(--search-anim-easing),\\n\\t\\t\\tcolor var(--search-anim-duration) var(--search-anim-easing);\\n\\n\\t\\t.unified-search-input__field--active & {\\n\\t\\t\\ttransform: translateX(0);\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tmax-width: calc(100% - 7 * var(--search-icon-pad));\\n\\t\\t}\\n\\t}\\n\\n\\t// Placeholder text inside the resting group. Ellipsised, and hidden once typing\\n\\t// starts so it doesn't overlap the value. Scoped to the label class so the sibling\\n\\t// magnifier (also rendered as a ) stays visible.\\n\\t&__label {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\ttransition: opacity var(--search-anim-duration) var(--search-anim-easing);\\n\\t}\\n\\n\\t&__resting--filled &__label {\\n\\t\\topacity: 0;\\n\\t}\\n\\n\\t// The material-design icon is inline (baseline-aligned), which leaves a\\n\\t// descender gap and makes the glyph sit high even when its box is centred.\\n\\t// Render it as a block so it fills its box, then nudge 1px down to sit on the\\n\\t// text's optical centre (a geometrically centred glyph reads slightly high).\\n\\t&__resting :deep(.material-design-icon__svg) {\\n\\t\\tdisplay: block;\\n\\t\\ttransform: translateY(1px);\\n\\t}\\n\\n\\t// Only visible once active (at rest it's empty and covered by the overlay),\\n\\t// so it's styled for the active/white surface throughout.\\n\\t&__input {\\n\\t\\tflex: 1;\\n\\t\\tmin-width: 0;\\n\\t\\theight: 100%;\\n\\t\\tmargin: 0;\\n\\t\\t// Leading space so the placeholder/value starts one gap past the magnifier,\\n\\t\\t// matching the resting group exactly. Trailing padding mirrors the leading pad.\\n\\t\\tpadding-inline: calc(var(--search-icon-pad) + var(--search-icon-size) + var(--search-icon-gap)) var(--search-icon-pad);\\n\\t\\t// Opt out of NC's global input chrome (core/css/inputs.scss adds a border,\\n\\t\\t// radius and focus box-shadow to any text input not in its exclusion list).\\n\\t\\t// !important because that global focus rule outweighs a scoped class.\\n\\t\\tborder: none !important;\\n\\t\\tborder-radius: 0 !important;\\n\\t\\tbox-shadow: none !important;\\n\\t\\tbackground-color: transparent;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tfont-size: var(--default-font-size);\\n\\n\\t\\t&::placeholder {\\n\\t\\t\\topacity: 1;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\n\\t\\t&:focus-visible {\\n\\t\\t\\toutline: none;\\n\\t\\t}\\n\\t}\\n\\n\\t&__clear,\\n\\t&__filter {\\n\\t\\tflex-shrink: 0;\\n\\t\\tmargin-inline-end: 2px;\\n\\t}\\n\\n\\t&__loading {\\n\\t\\tflex-shrink: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tmargin-inline: var(--default-grid-baseline);\\n\\t}\\n\\n\\t// Pinned to the trailing edge, overlaid on the input (pointer-events: none so a\\n\\t// click there still focuses the field).\\n\\t&__shortcut {\\n\\t\\tposition: absolute;\\n\\t\\tinset-inline-end: var(--default-grid-baseline);\\n\\t\\ttop: 50%;\\n\\t\\ttransform: translateY(-50%);\\n\\t\\tdisplay: flex;\\n\\t\\tpointer-events: none;\\n\\n\\t\\t// On a narrow field the centred placeholder runs under the hint, so drop it\\n\\t\\t// below a usable width. Keyed to the field's own inline-size (its container),\\n\\t\\t// not the viewport, so it holds however crowded the header gets.\\n\\t\\t@container (max-width: 400px) {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\n\\t\\t:deep(kbd) {\\n\\t\\t\\tmin-width: 12px;\\n\\t\\t\\theight: 12px;\\n\\t\\t\\tpadding-inline: 5px;\\n\\t\\t\\tborder: 1px solid color-mix(in srgb, var(--color-background-plain-text) 20%, transparent);\\n\\t\\t\\tborder-block-end-width: 2px;\\n\\t\\t\\tborder-radius: var(--border-radius-small, 4px);\\n\\t\\t\\tcolor: color-mix(in srgb, var(--color-background-plain-text) 70%, var(--color-background-plain));\\n\\t\\t\\tfont-size: 13px;\\n\\t\\t}\\n\\t}\\n}\\n\\n// On dark themes the plain overlay is nearly invisible on the header, so tint\\n// the resting background with the primary colour instead.\\n[data-theme-dark] .unified-search-input__field,\\n[data-theme-dark-highcontrast] .unified-search-input__field {\\n\\t--resting-background: color-mix(in srgb, var(--color-primary-element) 16%, transparent);\\n\\t--resting-background-hover: color-mix(in srgb, var(--color-primary-element) 22%, transparent);\\n}\\n\\n// translateX is physical, so flip the resting slide under RTL to keep it moving toward\\n// the leading (right) edge. :dir(rtl) tracks the computed direction, so it applies whether\\n// RTL comes from the body dir attribute or a direction style (an [dir=rtl] attribute\\n// selector would miss the latter).\\n.unified-search-input__resting:dir(rtl) {\\n\\t--slide-sign: -1;\\n}\\n\\n// Respect reduced-motion: keep the end states but drop the slide/fade so nothing\\n// animates on focus.\\n@media (prefers-reduced-motion: reduce) {\\n\\t.unified-search-input__resting,\\n\\t.unified-search-input__resting span {\\n\\t\\ttransition: none;\\n\\t}\\n}\\n\\n// Mobile: NcHeaderButton styling to match the other header items\\n.unified-search-input--mobile :deep(.header-menu) {\\n\\theight: var(--default-clickable-area);\\n}\\n\\n.unified-search-input--mobile :deep(.header-menu__trigger) {\\n\\t--button-size: var(--default-clickable-area) !important;\\n\\theight: var(--default-clickable-area) !important;\\n}\\n\\n.unified-search-input--mobile :deep(.button-vue) {\\n\\t--color-main-text: var(--color-background-plain-text);\\n\\tcolor: var(--color-background-plain-text);\\n\\tborder-radius: var(--border-radius-element) !important;\\n\\n\\t&:hover:not(:disabled) {\\n\\t\\tbackground-color: rgba(0, 0, 0, 0.1) !important;\\n\\t}\\n\\n\\t&:active:not(:disabled) {\\n\\t\\tbackground-color: rgba(0, 0, 0, 0.15) !important;\\n\\t}\\n\\n\\t&:focus-visible {\\n\\t\\tbackground-color: rgba(0, 0, 0, 0.1) !important;\\n\\t\\toutline: none !important;\\n\\t\\tbox-shadow: inset 0 0 0 2px var(--color-background-plain-text) !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z%27/%3E%3C/svg%3E\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-modal-root[data-v-584d5662]{position:absolute;inset-block-start:100%;inset-inline:0;z-index:50 !important;margin-block-start:6px;display:flex;justify-content:center}.unified-search-modal__scrim[data-v-584d5662]{position:fixed;inset:0;z-index:0;--backdrop-color: 0, 0, 0;background-color:rgba(var(--backdrop-color), 0.5)}.unified-search-modal__container[data-v-584d5662]{position:relative;z-index:1;display:flex;flex-direction:column;flex-shrink:0;width:600px;max-width:90vw;max-height:calc(90vh - var(--header-height));border-radius:var(--border-radius-container-large, var(--border-radius-rounded));overflow:clip;background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 40px rgba(0,0,0,.2);transition:transform 240ms cubic-bezier(0.22, 1, 0.36, 1)}.unified-search-modal__container.is-animating-height .unified-search-modal__results[data-v-584d5662]{overflow:clip}@media only screen and ((max-width: 512px) or (max-height: 400px)){.unified-search-modal-root[data-v-584d5662]{position:fixed;inset-block-start:var(--header-height);inset-inline:0;inset-block-end:0;margin-block-start:0}.unified-search-modal__container[data-v-584d5662]{width:100%;max-width:initial;height:100%;max-height:initial;border-radius:0}}.unified-search-modal-enter-active[data-v-584d5662],.unified-search-modal-leave-active[data-v-584d5662]{transition:opacity 250ms}.unified-search-modal-enter[data-v-584d5662],.unified-search-modal-leave-to[data-v-584d5662]{opacity:0}.unified-search-modal-enter .unified-search-modal__container[data-v-584d5662],.unified-search-modal-leave-to .unified-search-modal__container[data-v-584d5662]{transform:translateY(-6px)}@media(prefers-reduced-motion: reduce){.unified-search-modal__container[data-v-584d5662]{transition:none}.unified-search-modal-enter .unified-search-modal__container[data-v-584d5662],.unified-search-modal-leave-to .unified-search-modal__container[data-v-584d5662]{transform:none}}.unified-search-modal__header[data-v-584d5662]{position:relative;display:flex;flex-direction:column;flex-shrink:0;gap:calc(var(--default-grid-baseline)*2);padding-inline:calc(var(--default-grid-baseline)*4);padding-block:calc(var(--default-grid-baseline)*4) 0}.unified-search-modal__header--has-content-below[data-v-584d5662]{padding-block-end:calc(var(--default-grid-baseline)*4)}.unified-search-modal__header--has-content-below[data-v-584d5662]::after{content:\"\";position:absolute;inset-inline:calc(var(--default-grid-baseline)*4);inset-block-end:0;border-block-end:1px solid var(--color-border)}.unified-search-modal__mobile-input[data-v-584d5662]{display:flex;align-items:center;gap:4px}.unified-search-modal__mobile-input[data-v-584d5662] .input-field{flex:1 1 auto}.unified-search-modal__filters[data-v-584d5662]{display:flex;flex-wrap:wrap;gap:4px;justify-content:start}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-584d5662],.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-584d5662],.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-584d5662]{flex:1 1 0;min-width:0}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-584d5662] .v-popper,.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-584d5662] .v-popper,.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-584d5662] .v-popper{display:block;width:100%}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-584d5662] .button-vue__wrapper,.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-584d5662] .button-vue__wrapper,.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-584d5662] .button-vue__wrapper{justify-content:center}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-584d5662] .button-vue,.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-584d5662] .button-vue,.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-584d5662] .button-vue{position:relative;width:100%;padding-inline:calc(var(--default-grid-baseline)*6);border-radius:var(--border-radius-element)}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-584d5662] .button-vue::after,.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-584d5662] .button-vue::after,.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-584d5662] .button-vue::after{content:\"\";position:absolute;inset-inline-end:calc(var(--default-grid-baseline)*2);inset-block:0;margin-block:auto;width:16px;height:16px;background-color:currentColor;mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});mask-repeat:no-repeat;mask-position:center;mask-size:contain}.unified-search-modal__filters-applied[data-v-584d5662]{display:flex;flex-wrap:wrap}.unified-search-modal__no-content[data-v-584d5662]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--default-grid-baseline)*2);min-height:200px;padding-inline:calc(var(--default-grid-baseline)*4);padding-block-end:calc(var(--default-grid-baseline)*4)}.unified-search-modal__detail-header[data-v-584d5662]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:calc(var(--default-grid-baseline)*2);position:sticky;top:0;z-index:1;background-color:var(--color-main-background);padding-block:calc(var(--default-grid-baseline)*3) calc(var(--default-grid-baseline)*2);border-block-end:1px solid var(--color-border)}.unified-search-modal__detail-back[data-v-584d5662]{justify-self:start}.unified-search-modal__detail-title[data-v-584d5662]{font-size:var(--default-font-size);font-weight:var(--font-weight-heading);grid-column:2;margin:0;margin-block-start:-3px;align-self:stretch;display:flex;align-items:center;justify-content:center}.unified-search-modal__connected-services[data-v-584d5662]{display:flex;flex-wrap:wrap;width:100%;margin-block-start:calc(var(--default-grid-baseline)*3)}.unified-search-modal__rtl-icon[data-v-584d5662]:dir(rtl){transform:scaleX(-1)}.unified-search-modal__results[data-v-584d5662]{flex:1 1 auto;min-height:0;overflow:hidden auto}.unified-search-modal__results--held[data-v-584d5662]{display:flex;flex-direction:column;flex-grow:0}.unified-search-modal__results--held>*[data-v-584d5662]:not(.search-result-skeleton){flex:none}.unified-search-modal__results[data-v-584d5662]{padding-inline:calc(var(--default-grid-baseline)*4);padding-block:0 calc(var(--default-grid-baseline)*4)}.unified-search-modal__results .search-result-skeleton[data-v-584d5662]{margin-block-start:14px;flex:1 1 0;min-block-size:0;overflow:clip;mask-image:linear-gradient(to bottom, #000 calc(100% - min(2lh, 25%)), transparent)}.unified-search-modal__results .result-title[data-v-584d5662]{color:var(--color-text-maxcontrast);font-size:var(--default-font-size);margin-block:14px 4px;margin-inline-start:calc(var(--default-grid-baseline)*2)}.unified-search-modal__results .result-title--more[data-v-584d5662]{margin-block:calc(var(--default-grid-baseline)*2) var(--default-grid-baseline)}.unified-search-modal__results .result-title--more[data-v-584d5662] .button-vue__text{font-size:var(--default-font-size);color:var(--color-main-text)}.unified-search-modal__results .result-title--more[data-v-584d5662] .button-vue__icon{color:var(--color-main-text)}.unified-search-modal__results .result-footer[data-v-584d5662]{justify-content:space-between;align-items:center;display:flex}.unified-search-modal__results .result--unfiltered[data-v-584d5662]{opacity:.7}.unified-search-modal__unfiltered-header[data-v-584d5662]{display:flex;flex-direction:column;gap:2px;margin-block:16px 8px;padding-block:12px 0}.result-group+.result-group>.unified-search-modal__unfiltered-header[data-v-584d5662]{border-block-start:1px solid var(--color-border)}.unified-search-modal__unfiltered-label[data-v-584d5662]{font-weight:var(--font-weight-heading);color:var(--color-text-maxcontrast)}.filter-button__icon[data-v-584d5662]{height:20px;width:20px;object-fit:contain;filter:var(--background-invert-if-bright);padding:11px}@media only screen and (max-height: 400px){.unified-search-modal__results[data-v-584d5662]{overflow:unset}}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/UnifiedSearchModal.vue\"],\"names\":[],\"mappings\":\"AAKA,4CACC,iBAAA,CACA,sBAAA,CACA,cAAA,CAGA,qBAAA,CACA,sBAAA,CACA,YAAA,CACA,sBAAA,CAKD,8CACC,cAAA,CACA,OAAA,CACA,SAAA,CACA,yBAAA,CACA,iDAAA,CAKD,kDACC,iBAAA,CACA,SAAA,CACA,YAAA,CACA,qBAAA,CAGA,aAAA,CACA,WAAA,CACA,cAAA,CAEA,4CAAA,CACA,gFAAA,CAGA,aAAA,CACA,6CAAA,CACA,4BAAA,CACA,kCAAA,CAGA,yDAAA,CAID,qGACC,aAAA,CAID,mEACC,4CAGC,cAAA,CACA,sCAAA,CACA,cAAA,CACA,iBAAA,CACA,oBAAA,CAGD,kDACC,UAAA,CACA,iBAAA,CACA,WAAA,CACA,kBAAA,CACA,eAAA,CAAA,CAKF,wGAEC,wBAAA,CAGD,6FAEC,SAAA,CAGD,+JAEC,0BAAA,CAKD,uCACC,kDACC,eAAA,CAGD,+JAEC,cAAA,CAAA,CAKD,+CAKC,iBAAA,CACA,YAAA,CACA,qBAAA,CAEA,aAAA,CACA,wCAAA,CACA,mDAAA,CAEA,oDAAA,CAIA,kEACC,sDAAA,CAEA,yEACC,UAAA,CACA,iBAAA,CACA,iDAAA,CACA,iBAAA,CACA,8CAAA,CAKH,qDACC,YAAA,CACA,kBAAA,CACA,OAAA,CAEA,kEACC,aAAA,CAIF,gDACC,YAAA,CACA,cAAA,CACA,OAAA,CACA,qBAAA,CAIA,mQAGC,UAAA,CACA,WAAA,CAEA,iSACC,aAAA,CACA,UAAA,CAID,kUACC,sBAAA,CAID,uSACC,iBAAA,CACA,UAAA,CACA,mDAAA,CACA,0CAAA,CAEA,4TACC,UAAA,CACA,iBAAA,CACA,qDAAA,CACA,aAAA,CACA,iBAAA,CACA,UAAA,CACA,WAAA,CACA,6BAAA,CACA,kDAAA,CACA,qBAAA,CACA,oBAAA,CACA,iBAAA,CAMJ,wDACC,YAAA,CACA,cAAA,CAGD,mDACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,sBAAA,CACA,wCAAA,CAEA,gBAAA,CAEA,mDAAA,CACA,sDAAA,CAID,sDAEC,YAAA,CACA,kCAAA,CACA,kBAAA,CACA,wCAAA,CAGA,eAAA,CACA,KAAA,CACA,SAAA,CACA,6CAAA,CACA,uFAAA,CACA,8CAAA,CAGD,oDACC,kBAAA,CAGD,qDACC,kCAAA,CACA,sCAAA,CACA,aAAA,CACA,QAAA,CACA,uBAAA,CAGA,kBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CAID,2DACC,YAAA,CACA,cAAA,CAGA,UAAA,CACA,uDAAA,CAKD,0DACC,oBAAA,CAGD,gDAEC,aAAA,CACA,YAAA,CACA,oBAAA,CAIA,sDACC,YAAA,CACA,qBAAA,CACA,WAAA,CAEA,qFACC,SAAA,CAdH,gDAkBC,mDAAA,CACA,oDAAA,CAEA,wEAEC,uBAAA,CAEA,UAAA,CACA,gBAAA,CACA,aAAA,CAEA,mFAAA,CAIA,8DACC,mCAAA,CACA,kCAAA,CAEA,qBAAA,CACA,wDAAA,CAKD,oEACC,8EAAA,CAEA,sFACC,kCAAA,CACA,4BAAA,CAGD,sFACC,4BAAA,CAIF,+DACC,6BAAA,CACA,kBAAA,CACA,YAAA,CAGD,oEACC,UAAA,CAMH,0DACC,YAAA,CACA,qBAAA,CACA,OAAA,CACA,qBAAA,CACA,oBAAA,CAKA,sFACC,gDAAA,CAIF,yDACC,sCAAA,CACA,mCAAA,CAIF,sCACC,WAAA,CACA,UAAA,CACA,kBAAA,CACA,yCAAA,CACA,YAAA,CAID,2CACC,gDACC,cAAA,CAAA\",\"sourcesContent\":[\"\\n\\n// Anchor the popover under the header input (the .unified-search-menu parent is\\n// the positioning context) instead of centering it in the viewport. The scrim is\\n// fixed separately so it still dims the whole page.\\n.unified-search-modal-root {\\n\\tposition: absolute;\\n\\tinset-block-start: 100%;\\n\\tinset-inline: 0;\\n\\t// One below the header input (z-index: 51) and above the page. !important wins\\n\\t// the stacking cascade inside the themed #header.\\n\\tz-index: 50 !important;\\n\\tmargin-block-start: 6px;\\n\\tdisplay: flex;\\n\\tjustify-content: center;\\n}\\n\\n// Backdrop, mirrors NcModal's .modal-mask. Fixed so it covers the whole viewport\\n// regardless of the anchored root.\\n.unified-search-modal__scrim {\\n\\tposition: fixed;\\n\\tinset: 0;\\n\\tz-index: 0;\\n\\t--backdrop-color: 0, 0, 0;\\n\\tbackground-color: rgba(var(--backdrop-color), 0.5);\\n}\\n\\n// Dialog panel: NcModal's \\\"normal\\\" chrome, but width-matched to the header input\\n// and anchored under it, growing downward and scrolling internally when tall.\\n.unified-search-modal__container {\\n\\tposition: relative;\\n\\tz-index: 1;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\t// Match the previous unified-search modal (NcModal \\\"normal\\\" size). flex-shrink: 0\\n\\t// stops the flex parent from collapsing it below 600px when the menu is narrower.\\n\\tflex-shrink: 0;\\n\\twidth: 600px;\\n\\tmax-width: 90vw;\\n\\t// Leave ~10vh below the panel so it does not reach the bottom of the page\\n\\tmax-height: calc(90vh - var(--header-height));\\n\\tborder-radius: var(--border-radius-container-large, var(--border-radius-rounded));\\n\\t// Clip the header/results to the rounded corners. `clip` rather than `hidden` so this is\\n\\t// not a scroll container: a squeezed panel would otherwise scroll the filter row away.\\n\\toverflow: clip;\\n\\tbackground-color: var(--color-main-background);\\n\\tcolor: var(--color-main-text);\\n\\tbox-shadow: 0 0 40px rgba(0, 0, 0, 0.2);\\n\\t// The panel slides down into place; the enter/leave classes set the start offset.\\n\\t// Same easeOutQuart curve as the header input so the whole search UI moves in step.\\n\\ttransition: transform 240ms cubic-bezier(0.22, 1, 0.36, 1);\\n}\\n\\n// Mid-resize the panel is shorter than its content; clip so no scrollbar flashes.\\n.unified-search-modal__container.is-animating-height .unified-search-modal__results {\\n\\toverflow: clip;\\n}\\n\\n// Fullscreen on small viewports, mirrors NcModal's responsive breakpoint\\n@media only screen and ((max-width: 512px) or (max-height: 400px)) {\\n\\t.unified-search-modal-root {\\n\\t\\t// Fill the viewport below the header bar, leaving it visible and interactive\\n\\t\\t// (matches the previous unified search and the rest of the mobile chrome).\\n\\t\\tposition: fixed;\\n\\t\\tinset-block-start: var(--header-height);\\n\\t\\tinset-inline: 0;\\n\\t\\tinset-block-end: 0;\\n\\t\\tmargin-block-start: 0;\\n\\t}\\n\\n\\t.unified-search-modal__container {\\n\\t\\twidth: 100%;\\n\\t\\tmax-width: initial;\\n\\t\\theight: 100%;\\n\\t\\tmax-height: initial;\\n\\t\\tborder-radius: 0;\\n\\t}\\n}\\n\\n// Open/close animation: the backdrop fades while the panel slides down from the top\\n.unified-search-modal-enter-active,\\n.unified-search-modal-leave-active {\\n\\ttransition: opacity 250ms;\\n}\\n\\n.unified-search-modal-enter,\\n.unified-search-modal-leave-to {\\n\\topacity: 0;\\n}\\n\\n.unified-search-modal-enter .unified-search-modal__container,\\n.unified-search-modal-leave-to .unified-search-modal__container {\\n\\ttransform: translateY(-6px);\\n}\\n\\n// Respect reduced-motion: keep the backdrop cross-fade (opacity is not motion) but\\n// drop the panel slide so nothing moves on open/close.\\n@media (prefers-reduced-motion: reduce) {\\n\\t.unified-search-modal__container {\\n\\t\\ttransition: none;\\n\\t}\\n\\n\\t.unified-search-modal-enter .unified-search-modal__container,\\n\\t.unified-search-modal-leave-to .unified-search-modal__container {\\n\\t\\ttransform: none;\\n\\t}\\n}\\n\\n.unified-search-modal {\\n\\t&__header {\\n\\t\\t// Owns all its own spacing: the inline inset, the gap above the first row, and the\\n\\t\\t// gap between stacked rows (mobile input, filters, applied chips). position:\\n\\t\\t// relative only anchors the divider below; the header never scrolls (the results\\n\\t\\t// list scrolls in its own box), so it needs no sticky offset.\\n\\t\\tposition: relative;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\t// The results box absorbs the resize; the filter row keeps its size.\\n\\t\\tflex-shrink: 0;\\n\\t\\tgap: calc(var(--default-grid-baseline) * 2);\\n\\t\\tpadding-inline: calc(var(--default-grid-baseline) * 4);\\n\\t\\t// Trim the bottom when the filter row is all there is; results add it back below.\\n\\t\\tpadding-block: calc(var(--default-grid-baseline) * 4) 0;\\n\\n\\t\\t// With content below, restore the full bottom inset above the divider (which aligns\\n\\t\\t// to the content edge).\\n\\t\\t&--has-content-below {\\n\\t\\t\\tpadding-block-end: calc(var(--default-grid-baseline) * 4);\\n\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tinset-inline: calc(var(--default-grid-baseline) * 4);\\n\\t\\t\\t\\tinset-block-end: 0;\\n\\t\\t\\t\\tborder-block-end: 1px solid var(--color-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__mobile-input {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tgap: 4px;\\n\\n\\t\\t:deep(.input-field) {\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t}\\n\\t}\\n\\n\\t&__filters {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 4px;\\n\\t\\tjustify-content: start;\\n\\n\\t\\t// The three category triggers split the row into thirds; any extra controls\\n\\t\\t// (local search) keep their size and wrap below.\\n\\t\\t> [data-cy-unified-search-filter=\\\"places\\\"],\\n\\t\\t> [data-cy-unified-search-filter=\\\"date\\\"],\\n\\t\\t> [data-cy-unified-search-filter=\\\"people\\\"] {\\n\\t\\t\\tflex: 1 1 0;\\n\\t\\t\\tmin-width: 0;\\n\\n\\t\\t\\t:deep(.v-popper) {\\n\\t\\t\\t\\tdisplay: block;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// Centre [icon] label; the chevron is pinned to the trailing edge below.\\n\\t\\t\\t:deep(.button-vue__wrapper) {\\n\\t\\t\\t\\tjustify-content: center;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// NcActions exposes no dropdown chevron, so paint one at the trailing edge.\\n\\t\\t\\t:deep(.button-vue) {\\n\\t\\t\\t\\tposition: relative;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\tpadding-inline: calc(var(--default-grid-baseline) * 6);\\n\\t\\t\\t\\tborder-radius: var(--border-radius-element);\\n\\n\\t\\t\\t\\t&::after {\\n\\t\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\t\\tinset-inline-end: calc(var(--default-grid-baseline) * 2);\\n\\t\\t\\t\\t\\tinset-block: 0;\\n\\t\\t\\t\\t\\tmargin-block: auto;\\n\\t\\t\\t\\t\\twidth: 16px;\\n\\t\\t\\t\\t\\theight: 16px;\\n\\t\\t\\t\\t\\tbackground-color: currentColor;\\n\\t\\t\\t\\t\\tmask-image: url(\\\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z'/%3E%3C/svg%3E\\\");\\n\\t\\t\\t\\t\\tmask-repeat: no-repeat;\\n\\t\\t\\t\\t\\tmask-position: center;\\n\\t\\t\\t\\t\\tmask-size: contain;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__filters-applied {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t}\\n\\n\\t&__no-content {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\tgap: calc(var(--default-grid-baseline) * 2);\\n\\t\\t// min-height (not fixed) so the panel grows to keep the button inside, not spilling past the edge.\\n\\t\\tmin-height: 200px;\\n\\t\\t// Match the results container's inset so the button lines up, not flush to the edges.\\n\\t\\tpadding-inline: calc(var(--default-grid-baseline) * 4);\\n\\t\\tpadding-block-end: calc(var(--default-grid-baseline) * 4);\\n\\t}\\n\\n\\t// Detail-view chrome: the back control sits above the category's heading + list.\\n\\t&__detail-header {\\n\\t\\t// Three tracks: \\\"Back\\\" at the start, title centred, empty end track to balance it.\\n\\t\\tdisplay: grid;\\n\\t\\tgrid-template-columns: 1fr auto 1fr;\\n\\t\\talign-items: center;\\n\\t\\tgap: calc(var(--default-grid-baseline) * 2);\\n\\t\\t// Sticky at the top of the scrolling results. Background hides rows underneath; padding\\n\\t\\t// (not margin) stops bleed-through above.\\n\\t\\tposition: sticky;\\n\\t\\ttop: 0;\\n\\t\\tz-index: 1;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tpadding-block: calc(var(--default-grid-baseline) * 3) calc(var(--default-grid-baseline) * 2);\\n\\t\\tborder-block-end: 1px solid var(--color-border);\\n\\t}\\n\\n\\t&__detail-back {\\n\\t\\tjustify-self: start;\\n\\t}\\n\\n\\t&__detail-title {\\n\\t\\tfont-size: var(--default-font-size);\\n\\t\\tfont-weight: var(--font-weight-heading);\\n\\t\\tgrid-column: 2;\\n\\t\\tmargin: 0;\\n\\t\\tmargin-block-start: -3px;\\n\\t\\t// Centre the text the same way the Back button centres its label: stretch to the row\\n\\t\\t// height and flex-centre, instead of a line-height that lands the ink a few px off.\\n\\t\\talign-self: stretch;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t}\\n\\n\\t// End-of-list (and empty-state) connected-services opt-in.\\n\\t&__connected-services {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\t// Stretch to panel width so the wide button fills it (the empty-state's centred column\\n\\t\\t// would otherwise shrink it to content width).\\n\\t\\twidth: 100%;\\n\\t\\tmargin-block-start: calc(var(--default-grid-baseline) * 3);\\n\\t}\\n\\n\\t// Directional glyphs (back arrow, more-from chevron) point the other way in RTL.\\n\\t// :dir(rtl) tracks the computed direction, unlike an [dir=rtl] attribute selector.\\n\\t&__rtl-icon:dir(rtl) {\\n\\t\\ttransform: scaleX(-1);\\n\\t}\\n\\n\\t&__results {\\n\\t\\t// Take the remaining panel height and scroll internally (container has a max-height)\\n\\t\\tflex: 1 1 auto;\\n\\t\\tmin-height: 0;\\n\\t\\toverflow: hidden auto;\\n\\n\\t\\t// The reserved height is a floor, not a size. Column layout so the placeholders can\\n\\t\\t// take what the results leave.\\n\\t\\t&--held {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\tflex-grow: 0;\\n\\n\\t\\t\\t> *:not(.search-result-skeleton) {\\n\\t\\t\\t\\tflex: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t// Adjust padding to match container but keep the scrollbar on the very end\\n\\t\\tpadding-inline: calc(var(--default-grid-baseline) * 4);\\n\\t\\tpadding-block: 0 calc(var(--default-grid-baseline) * 4);\\n\\n\\t\\t.search-result-skeleton {\\n\\t\\t\\t// Matches the gap a category title keeps above itself.\\n\\t\\t\\tmargin-block-start: 14px;\\n\\t\\t\\t// The placeholders deliberately overfill, so the bottom fades out over the cut.\\n\\t\\t\\tflex: 1 1 0;\\n\\t\\t\\tmin-block-size: 0;\\n\\t\\t\\toverflow: clip;\\n\\t\\t\\t// Capped, so a short box does not spend a third of itself fading.\\n\\t\\t\\tmask-image: linear-gradient(to bottom, #000 calc(100% - min(2lh, 25%)), transparent);\\n\\t\\t}\\n\\n\\t\\t.result {\\n\\t\\t\\t&-title {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t\\t\\t// 14px is not a grid multiple; kept raw rather than mixing units in one shorthand.\\n\\t\\t\\t\\tmargin-block: 14px 4px;\\n\\t\\t\\t\\tmargin-inline-start: calc(var(--default-grid-baseline) * 2);\\n\\t\\t\\t}\\n\\n\\t\\t\\t// The overflow heading is a real button; match the plain title's size and colour,\\n\\t\\t\\t// but leave it NcButton's own --font-weight-element weight.\\n\\t\\t\\t&-title--more {\\n\\t\\t\\t\\tmargin-block: calc(var(--default-grid-baseline) * 2) var(--default-grid-baseline);\\n\\n\\t\\t\\t\\t:deep(.button-vue__text) {\\n\\t\\t\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t:deep(.button-vue__icon) {\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-footer {\\n\\t\\t\\t\\tjustify-content: space-between;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--unfiltered {\\n\\t\\t\\t\\topacity: 0.7;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__unfiltered-header {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: 2px;\\n\\t\\tmargin-block: 16px 8px;\\n\\t\\tpadding-block: 12px 0;\\n\\n\\t\\t// Divide the partial matches from the results above, but only when some precede\\n\\t\\t// them: when they lead the list this rule lands just under the header's own\\n\\t\\t// divider, and the two read as one double line.\\n\\t\\t.result-group + .result-group > & {\\n\\t\\t\\tborder-block-start: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t&__unfiltered-label {\\n\\t\\tfont-weight: var(--font-weight-heading);\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\\n.filter-button__icon {\\n\\theight: 20px;\\n\\twidth: 20px;\\n\\tobject-fit: contain;\\n\\tfilter: var(--background-invert-if-bright);\\n\\tpadding: 11px; // align with text to fit at least 44px\\n}\\n\\n// Ensure modal is accessible on small devices\\n@media only screen and (max-height: 400px) {\\n\\t.unified-search-modal__results {\\n\\t\\toverflow: unset;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-menu[data-v-2127a3b2]{position:relative;display:flex;align-items:center;justify-content:center}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/UnifiedSearch.vue\"],\"names\":[],\"mappings\":\"AAEA,sCAEC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n// this is needed to allow us overriding component styles (focus-visible)\\n.unified-search-menu {\\n\\t// Positioning context so the results popover can anchor under the input\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tconst module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","const deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + \"596f07f6142378ddcbdc\" + \"\";\n};","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","const inProgress = {};\nconst dataWebpackPrefix = \"nextcloud-ui-legacy:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tlet script, needAttach;\n\tif(key !== undefined) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tconst s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tconst onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tconst doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode?.removeChild(script);\n\t\tdoneFns?.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tconst timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 6776;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","let scriptUrl;\nif (globalThis.importScripts) scriptUrl = globalThis.location + \"\";\nconst document = globalThis.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript?.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tlet i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nconst installedChunks = {\n\t6776: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tlet installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tconst promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tconst url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tconst error = new Error();\n\t\t\t\t\tconst loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tconst errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tconst realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\terror.event = event;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(82166)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["vue_material_design_icons_FilterVariantvue_type_script_lang_js","name","emits","props","title","type","String","fillColor","default","size","Number","FilterVariant","componentNormalizer","A","_vm","this","_c","_self","_b","staticClass","attrs","role","on","click","$event","$emit","$attrs","fill","width","height","viewBox","d","_v","_s","_e","vue_material_design_icons_Magnifyvue_type_script_lang_js","Magnify","UnifiedSearch_UnifiedSearchInputvue_type_script_setup_true_lang_ts","_defineComponent","__name","expanded","Boolean","activeDescendantId","query","loading","filtersRevealed","setup","__props","expose","emit","isSmallMobile","useIsSmallMobile","placeholderText","t","directionByKey","ArrowDown","ArrowUp","fieldRef","ref","inputRef","isFocused","isActive","computed","value","length","showFunnel","focus","__sfc","resultsContainerId","onFocusOut","event","contains","relatedTarget","onMouseDown","target","preventDefault","onInput","openFilters","clearOrClose","focused","document","activeElement","blur","onKeyDown","isComposing","key","direction","l10n_dist","NcButton","NcHeaderButton","NcHeaderButton_BqjMDSal","N","NcKbd","NcKbd_D86qGvDb","NcLoadingIcon","IconClose","Close","IconFilterVariant","IconMagnify","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","UnifiedSearchInputvue_type_style_index_0_id_30894250_prod_lang_scss_scoped_true","locals","UnifiedSearchInput","_setup","_setupProxy","class","id","ariaLabel","scopedSlots","_u","fn","proxy","focusin","focusout","mousedown","undefined","domProps","input","keydown","variant","symbol","vue_material_design_icons_AccountMultipleOutlinevue_type_script_lang_js","AccountMultipleOutline","vue_material_design_icons_ArrowLeftvue_type_script_lang_js","ArrowLeft","vue_material_design_icons_CalendarBlankOutlinevue_type_script_lang_js","CalendarBlankOutline","vue_material_design_icons_ShapeOutlinevue_type_script_lang_js","ShapeOutline","vue_material_design_icons_CalendarRangevue_type_script_lang_js","CalendarRange","UnifiedSearch_CustomDateRangeModalvue_type_script_lang_js","components","NcModal","CalendarRangeIcon","NcDateTimePicker","isOpen","required","data","dateFilter","startFrom","endAt","isModalOpen","get","set","methods","closeModal","applyCustomRange","CustomDateRangeModalvue_type_style_index_0_id_2907014b_prod_lang_scss_scoped_true_options","CustomDateRangeModalvue_type_style_index_0_id_2907014b_prod_lang_scss_scoped_true","CustomDateRangeModal","show","close","label","model","callback","$$v","$set","expression","vue_material_design_icons_AlertCircleOutlinevue_type_script_lang_js","AlertCircleOutline","UnifiedSearch_SearchableListvue_type_script_lang_js","IconAlertCircleOutline","NcAvatar","NcEmptyContent","NcPopover","NcTextField","labelText","searchList","Array","emptyContentText","opened","error","searchTerm","filteredList","filter","element","toLowerCase","some","prop","includes","clearSearch","setOpened","itemSelected","searchTermChanged","term","SearchableListvue_type_style_index_0_id_66bd6570_prod_lang_scss_scoped_true_options","SearchableListvue_type_style_index_0_id_66bd6570_prod_lang_scss_scoped_true","SearchableList","shown","hide","_t","_l","displayName","alignment","wide","isUser","user","UnifiedSearch_SearchFilterChipvue_type_script_lang_js","CloseIcon","text","pretext","removeLabel","deleteChip","SearchFilterChipvue_type_style_index_0_id_5a4f6249_prod_lang_scss_scoped_true_options","SearchFilterChipvue_type_style_index_0_id_5a4f6249_prod_lang_scss_scoped_true","SearchFilterChip","components_AppIconvue_type_script_setup_true_lang_ts","icon","outlined","iconStyle","replace","AppIconvue_type_style_index_0_id_5cb82f82_prod_scoped_true_lang_scss_options","AppIconvue_type_style_index_0_id_5cb82f82_prod_scoped_true_lang_scss","UnifiedSearch_SearchResultvue_type_script_lang_js","AppIcon","style","NcListItem","thumbnailUrl","subline","resourceUrl","rounded","elementId","active","thumbnailHasError","hasThumbnail","isValidIconOrPreviewUrl","iconIsUrl","isAppIcon","watch","url","test","startsWith","thumbnailErrorHandler","SearchResultvue_type_style_index_0_id_516c3939_prod_lang_scss_scoped_true_options","SearchResultvue_type_style_index_0_id_516c3939_prod_lang_scss_scoped_true","SearchResult","bold","href","src","alt","UnifiedSearch_SearchResultSkeletonvue_type_script_setup_true_lang_ts","rows","SearchResultSkeletonvue_type_style_index_0_id_66bc29f5_prod_lang_scss_scoped_true_options","SearchResultSkeletonvue_type_style_index_0_id_66bc29f5_prod_lang_scss_scoped_true","SearchResultSkeleton","row","logger","getCurrentUser","getLoggerBuilder","setApp","build","setUid","uid","unifiedSearchLogger","detectUser","async","getProviders","axios","generateOcsUrl","params","from","window","location","pathname","search","ocs","isArray","cursor","since","until","limit","person","extraQueries","cancelToken","CancelToken","source","request","token","cancel","getContacts","contacts","post","generateUrl","authenticatedUser","fullName","emailAddresses","unshift","UnifiedSearchController","constructor","onChange","_defineProperty","categories","cancelPendingRequests","searchStates","revealOrder","searchGeneration","generation","startRevealTimer","Promise","allSettled","map","category","searchCategory","loadMore","categoryState","hasMore","status","patchStates","loadMoreFailed","unifiedSearch","pendingCancels","push","response","entries","isPaginated","reachedEnd","hasMorePages","getSnapshot","getRevealOrder","dispose","stopBackgroundWork","reset","shouldBlockCategory","reconcileCategoryStatuses","forEach","stopRevealTimer","revealWindowOpen","revealTimer","setTimeout","unblockAllCategories","Object","keys","clearTimeout","slice","indexOf","c","syncRevealOrder","state","at","visible","isCategoryVisible","splice","next","useSearchStore","defineStore","externalFilters","actions","registerExternalFilter","appId","searchFrom","isPluginFilter","RESIZING_CLASS","UnifiedSearchModalvue_type_script_lang_ts","defineComponent","IconAccountMultipleOutline","IconArrowLeft","IconArrowRight","ArrowRight","IconCalendarBlankOutline","IconDotsHorizontal","DotsHorizontal","IconShapeOutline","FilterChip","NcActions","NcActionButton","open","currentLocation","useBrowserLocation","searchStore","shallowRef","controller","states","onUnmounted","useUnifiedSearch","providers","providerActionMenuIsOpen","dateActionMenuIsOpen","personFilter","filteredProviders","searchQuery","placessearchTerm","dateTimeFilter","filters","showDateRangeModal","initialized","pendingSearch","searchExternalResources","detailCategory","activeIndex","minSearchLength","loadState","reservedHeight","panelFrom","panelResize","focusTrap","isEmptySearch","providerFilterActive","dateFilterActive","personFilterActive","hasAnyActiveFilter","showFilterRow","showHeader","searching","values","isBusy","isSearchQueryTooShort","hasNoResults","results","showEmptyContentInfo","emptyContentMessage","n","userContacts","debouncedFind","debounce","find","debouncedFilterContacts","filterContacts","hasExternalResources","provider","isExternalProvider","hasContentFilters","contentFilterTypes","providerId","p","supportsActiveFilters","providerIsCompatibleWithFilters","filteredResults","isInFolderAtRoot","result","path","extraParams","filteredResultUrls","urls","Set","entry","add","unfilteredResults","has","detailGroup","group","renderedGroups","toRenderedGroup","index","heldHeight","Math","max","skeletonRows","ceil","showConnectedServicesButton","connectedServicesLabel","navigableRows","rowElementId","unfiltered","activeRow","liveMessage","hasVisibleResults","hasContentBelowHeader","addEventListener","onEscapeKey","$nextTick","activateFocusTrap","all","then","groupProvidersByApp","mapContacts","debug","catch","clear","removeEventListener","deactivateFocusTrap","immediate","handler","scheduleSearch","deep","closeDetailView","$refs","resultsContainer","scrollTop","previous","reconcileActiveIndex","busy","scrollActiveIntoView","mounted","subscribe","handlePluginFilter","beforeUpdate","panel","getBoundingClientRect","updated","animatePanelResize","onUpdateOpen","onScrimClick","onMobileSearchInput","stack","_nc_focus_trap","menu","$el","closest","inputContainer","querySelector","containers","markRaw","createFocusTrap","initialFocus","escapeDeactivates","allowOutsideClick","trapStack","activate","returnFocus","deactivate","captureReservedHeight","onfinish","classList","remove","animate","duration","parseFloat","getComputedStyle","getPropertyValue","to","abs","resize","easing","searchable","buildCategoryParams","toISOString","contact","isNoUser","subname","applyPersonFilter","existingPersonFilter","findIndex","loadMoreResultsForProvider","section","showPartialHeader","detail","overflow","inAppSearch","headingId","openDetailView","focusSearchInput","mobileInput","headerInput","toggleExternalResources","addProviderFilter","providerFilter","isProviderFilterApplied","existingFilterIndex","existing","syncProviderFilters","removeFilter","i","firstArray","secondArray","synchronizedArray","item","itemId","secondItem","updateDateFilter","currFilterIndex","applyQuickDateRange","range","today","Date","startDate","endDate","getFullYear","getMonth","getDate","setCustomDateRange","toLocaleDateString","getCanonicalLocale","addFilterEvent","filterUpdateText","compatibleProviderIndex","filterParams","groupedByProviderApp","flattenedArray","filterIds","baseProvider","every","filterId","enableAllProviders","_","disabled","moveActive","count","current","min","activateActive","openResourceUrl","assign","getElementById","scrollIntoView","block","selectedId","UnifiedSearch_UnifiedSearchModalvue_type_script_lang_ts","UnifiedSearchModalvue_type_style_index_0_id_584d5662_prod_lang_scss_scoped_true_options","UnifiedSearchModalvue_type_style_index_0_id_584d5662_prod_lang_scss_scoped_true","UnifiedSearchModal","appear","directives","rawName","modelValue","showTrailingButton","trailingButtonLabel","closeAfterClick","pressed","delete","disableMenu","hideStatus","hideFavorite","minBlockSize","boxSizing","views_UnifiedSearchvue_type_script_lang_ts","queryText","showUnifiedSearch","debouncedQueryUpdate","emitUpdatedQuery","appHandlesSearchShortcut","stopHotKeys","useHotKey","isSearchEngaged","focusSearch","ctrl","prevent","beforeDestroy","stop","openModal","focusInput","searchInput","el","onNavigate","modal","searchModal","onActivate","onOpenFilters","onClose","UnifiedSearchvue_type_style_index_0_id_2127a3b2_prod_lang_scss_scoped_true_options","UnifiedSearchvue_type_style_index_0_id_2127a3b2_prod_lang_scss_scoped_true","UnifiedSearch","navigate","__webpack_nonce__","getCSPNonce","Vue","mixin","Tl","OCA","registerFilterAction","use","PiniaVuePlugin","pinia","createPinia","unified_search_pinia","render","h","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","module","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","___CSS_LOADER_URL_IMPORT_0___","URL","__webpack_require__","b","___CSS_LOADER_URL_REPLACEMENT_0___","_node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default","__webpack_module_cache__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","r","getter","__esModule","a","definition","binding","o","defineProperty","enumerable","f","e","chunkId","reduce","promises","u","obj","hasOwn","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","onerror","onload","timeout","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","nmd","paths","children","dn","x","descriptor","getOwnPropertyDescriptor","writable","configurable","cjs","body","mod","scriptUrl","globalThis","importScripts","currentScript","tagName","toUpperCase","Error","baseURI","self","installedChunks","installedChunkData","promise","resolve","reject","loadingEnded","errorType","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"core-unified-search.js?v=466b3c66a0243097fe02","mappings":"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","sources":["webpack:///nextcloud/node_modules/vue-material-design-icons/FilterVariant.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FilterVariant.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FilterVariant.vue?a827","webpack:///nextcloud/node_modules/vue-material-design-icons/FilterVariant.vue?vue&type=template&id=30f11e8a","webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Magnify.vue?0775","webpack:///nextcloud/node_modules/vue-material-design-icons/Magnify.vue?vue&type=template&id=194dfb2a","webpack:///nextcloud/core/src/components/UnifiedSearch/UnifiedSearchInput.vue?vue&type=script&setup=true&lang=ts","webpack:///nextcloud/core/src/components/UnifiedSearch/UnifiedSearchInput.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/UnifiedSearchInput.vue?9fca","webpack://nextcloud/./core/src/components/UnifiedSearch/UnifiedSearchInput.vue?8fd4","webpack:///nextcloud/core/src/components/UnifiedSearch/UnifiedSearchModal.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountMultipleOutline.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountMultipleOutline.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountMultipleOutline.vue?b80e","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountMultipleOutline.vue?vue&type=template&id=970e2386","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ArrowLeft.vue?f857","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=template&id=16833c02","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlankOutline.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlankOutline.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CalendarBlankOutline.vue?3bca","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlankOutline.vue?vue&type=template&id=784b59e6","webpack:///nextcloud/node_modules/vue-material-design-icons/ShapeOutline.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ShapeOutline.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ShapeOutline.vue?da7c","webpack:///nextcloud/node_modules/vue-material-design-icons/ShapeOutline.vue?vue&type=template&id=3f5754ea","webpack:///nextcloud/core/src/components/UnifiedSearch/ConnectedServicesBar.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CogOutline.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CogOutline.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CogOutline.vue?045c","webpack:///nextcloud/node_modules/vue-material-design-icons/CogOutline.vue?vue&type=template&id=96fed70c","webpack:///nextcloud/core/src/components/UnifiedSearch/ConnectedServicesBar.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./core/src/components/UnifiedSearch/ConnectedServicesBar.vue?9a1a","webpack://nextcloud/./core/src/components/UnifiedSearch/ConnectedServicesBar.vue?d3e9","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?b7cc","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CalendarRange.vue?f09e","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue?vue&type=template&id=5868fd9e","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?8d1c","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?92fe","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?a21f","webpack:///nextcloud/node_modules/vue-material-design-icons/AlertCircleOutline.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AlertCircleOutline.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/AlertCircleOutline.vue?730b","webpack:///nextcloud/node_modules/vue-material-design-icons/AlertCircleOutline.vue?vue&type=template&id=da40788e","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?31b8","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?4344","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?4fbd","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?fc0d","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?2352","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?e4b5","webpack:///nextcloud/core/src/components/AppIcon.vue","webpack:///nextcloud/core/src/components/AppIcon.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./core/src/components/AppIcon.vue?a708","webpack://nextcloud/./core/src/components/AppIcon.vue?9297","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?230e","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?32d3","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultSkeleton.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResultSkeleton.vue?4c57","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResultSkeleton.vue?f271","webpack:///nextcloud/core/src/logger.js","webpack:///nextcloud/core/src/services/UnifiedSearchService.js","webpack:///nextcloud/core/src/services/UnifiedSearchController.ts","webpack:///nextcloud/core/src/store/unified-search-external-filters.js","webpack:///nextcloud/core/src/composables/useUnifiedSearch.ts","webpack:///nextcloud/core/src/components/UnifiedSearch/UnifiedSearchModal.vue?vue&type=script&lang=ts","webpack://nextcloud/./core/src/components/UnifiedSearch/UnifiedSearchModal.vue?6b70","webpack://nextcloud/./core/src/components/UnifiedSearch/UnifiedSearchModal.vue?0132","webpack:///nextcloud/core/src/views/UnifiedSearch.vue?vue&type=script&lang=ts","webpack:///nextcloud/core/src/views/UnifiedSearch.vue","webpack://nextcloud/./core/src/views/UnifiedSearch.vue?a16e","webpack://nextcloud/./core/src/views/UnifiedSearch.vue?1990","webpack:///nextcloud/core/src/unified-search.ts","webpack:///nextcloud/core/src/components/AppIcon.vue?vue&type=style&index=0&id=5cb82f82&prod&scoped=true&lang=scss","webpack:///nextcloud/core/src/components/UnifiedSearch/ConnectedServicesBar.vue?vue&type=style&index=0&id=10264158&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue?vue&type=style&index=0&id=2907014b&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue?vue&type=style&index=0&id=5a4f6249&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue?vue&type=style&index=0&id=516c3939&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResultSkeleton.vue?vue&type=style&index=0&id=66bc29f5&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue?vue&type=style&index=0&id=66bd6570&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/UnifiedSearchInput.vue?vue&type=style&index=0&id=30894250&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/UnifiedSearchModal.vue?vue&type=style&index=0&id=e755dab0&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/views/UnifiedSearch.vue?vue&type=style&index=0&id=2127a3b2&prod&lang=scss&scoped=true","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/set anonymous default export name","webpack:///nextcloud/webpack/runtime/wrap commonjs module","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["\n \n \n \n {{ title }} \n \n \n \n \n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FilterVariant.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FilterVariant.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FilterVariant.vue?vue&type=template&id=30f11e8a\"\nimport script from \"./FilterVariant.vue?vue&type=script&lang=js\"\nexport * from \"./FilterVariant.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 filter-variant-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M6,13H18V11H6M3,6V8H21V6M10,18H14V16H10V18Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Magnify.vue?vue&type=script&lang=js\"","\n \n \n \n {{ title }} \n \n \n \n \n\n","import { render, staticRenderFns } from \"./Magnify.vue?vue&type=template&id=194dfb2a\"\nimport script from \"./Magnify.vue?vue&type=script&lang=js\"\nexport * from \"./Magnify.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon magnify-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchInput.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchInput.vue?vue&type=script&setup=true&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('search',{staticClass:\"unified-search-input\",class:{ 'unified-search-input--mobile': _setup.isSmallMobile }},[(_setup.isSmallMobile)?_c(_setup.NcHeaderButton,{attrs:{\"id\":\"unified-search-trigger\",\"ariaLabel\":_setup.placeholderText,\"aria-haspopup\":\"dialog\",\"aria-expanded\":_vm.expanded ? 'true' : 'false'},on:{\"click\":function($event){return _vm.$emit('click', $event)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.IconMagnify,{attrs:{\"size\":20}})]},proxy:true}],null,false,1795316816)}):_c('div',{ref:\"fieldRef\",staticClass:\"unified-search-input__field\",class:{ 'unified-search-input__field--active': _setup.isActive },on:{\"focusin\":function($event){_setup.isFocused = true},\"focusout\":_setup.onFocusOut,\"mousedown\":_setup.onMouseDown}},[_c('div',{staticClass:\"unified-search-input__resting\",class:{ 'unified-search-input__resting--filled': _vm.query.length > 0 },attrs:{\"aria-hidden\":\"true\"}},[_c(_setup.IconMagnify,{attrs:{\"size\":20}}),_vm._v(\" \"),_c('span',{staticClass:\"unified-search-input__label\"},[_vm._v(_vm._s(_setup.placeholderText))])],1),_vm._v(\" \"),_c('input',{ref:\"inputRef\",staticClass:\"unified-search-input__input\",attrs:{\"type\":\"text\",\"role\":\"combobox\",\"aria-autocomplete\":\"list\",\"aria-expanded\":_vm.expanded ? 'true' : 'false',\"aria-controls\":_vm.expanded ? _setup.resultsContainerId : undefined,\"aria-activedescendant\":_vm.expanded ? (_vm.activeDescendantId || undefined) : undefined,\"aria-label\":_setup.placeholderText},domProps:{\"value\":_vm.query},on:{\"input\":_setup.onInput,\"keydown\":_setup.onKeyDown}}),_vm._v(\" \"),(_setup.showFunnel)?_c(_setup.NcButton,{staticClass:\"unified-search-input__filter\",attrs:{\"variant\":\"tertiary-no-background\",\"aria-label\":_setup.t('core', 'Filters')},on:{\"click\":_setup.openFilters},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.IconFilterVariant,{attrs:{\"size\":20}})]},proxy:true}],null,false,2820714996)}):_vm._e(),_vm._v(\" \"),(_vm.loading)?_c(_setup.NcLoadingIcon,{staticClass:\"unified-search-input__loading\",attrs:{\"size\":20}}):_vm._e(),_vm._v(\" \"),(_setup.isActive)?_c(_setup.NcButton,{staticClass:\"unified-search-input__clear\",attrs:{\"variant\":\"tertiary-no-background\",\"aria-label\":_vm.query.length > 0 ? _setup.t('core', 'Clear search') : _setup.t('core', 'Close search')},on:{\"click\":_setup.clearOrClose},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.IconClose,{attrs:{\"size\":20}})]},proxy:true}],null,false,4099733813)}):_vm._e(),_vm._v(\" \"),(!_setup.isActive)?_c('span',{staticClass:\"unified-search-input__shortcut\",attrs:{\"aria-hidden\":\"true\"}},[_c(_setup.NcKbd,{attrs:{\"symbol\":\"Control\"}}),_vm._v(\" \"),_c(_setup.NcKbd,{attrs:{\"symbol\":\"K\"}})],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchInput.vue?vue&type=style&index=0&id=30894250&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchInput.vue?vue&type=style&index=0&id=30894250&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearchInput.vue?vue&type=template&id=30894250&scoped=true\"\nimport script from \"./UnifiedSearchInput.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UnifiedSearchInput.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./UnifiedSearchInput.vue?vue&type=style&index=0&id=30894250&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 \"30894250\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('transition',{attrs:{\"name\":\"unified-search-modal\",\"appear\":\"\"}},[(_vm.open)?_c('div',{staticClass:\"unified-search-modal-root\"},[_c('CustomDateRangeModal',{staticClass:\"unified-search__date-range\",attrs:{\"isOpen\":_vm.showDateRangeModal},on:{\"set:customDateRange\":_vm.setCustomDateRange,\"update:isOpen\":function($event){_vm.showDateRangeModal = $event}}}),_vm._v(\" \"),_c('div',{ref:\"panel\",staticClass:\"unified-search-modal__container\",attrs:{\"id\":\"unified-search-results\"}},[_c('div',{staticClass:\"hidden-visually\",attrs:{\"role\":\"status\",\"aria-live\":\"polite\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.liveMessage)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showHeader),expression:\"showHeader\"}],staticClass:\"unified-search-modal__header\",class:{ 'unified-search-modal__header--has-content-below': _vm.hasContentBelowHeader }},[(_vm.isSmallMobile)?_c('div',{staticClass:\"unified-search-modal__mobile-input\"},[_c('NcTextField',{attrs:{\"type\":\"search\",\"label\":_vm.t('core', 'Apps, files, messages, and more'),\"modelValue\":_vm.searchQuery,\"showTrailingButton\":_vm.searchQuery.length > 0,\"trailingButtonLabel\":_vm.t('core', 'Clear search')},on:{\"update:modelValue\":_vm.onMobileSearchInput,\"trailing-button-click\":function($event){_vm.searchQuery = ''}}}),_vm._v(\" \"),(_vm.isBusy)?_c('NcLoadingIcon',{attrs:{\"size\":20}}):_vm._e(),_vm._v(\" \"),_c('NcButton',{attrs:{\"variant\":\"tertiary\",\"aria-label\":_vm.t('core', 'Close search')},on:{\"click\":function($event){return _vm.onUpdateOpen(false)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconClose',{attrs:{\"size\":20}})]},proxy:true}],null,false,2888946197)})],1):_vm._e(),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showFilterRow),expression:\"showFilterRow\"}],staticClass:\"unified-search-modal__filters\",attrs:{\"data-cy-unified-search-filters\":\"\"}},[_c('NcActions',{attrs:{\"wide\":\"\",\"size\":\"small\",\"open\":_vm.providerActionMenuIsOpen,\"menu-name\":_vm.t('core', 'Type'),\"variant\":_vm.providerFilterActive ? 'primary' : 'secondary',\"data-cy-unified-search-filter\":\"places\"},on:{\"update:open\":function($event){_vm.providerActionMenuIsOpen=$event}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconShapeOutline',{attrs:{\"size\":20}})]},proxy:true}],null,false,1084672236)},[_vm._v(\" \"),_vm._l((_vm.providers),function(provider){return _c('NcActionButton',{key:`${provider.id}-${provider.name.replace(/\\s/g, '')}`,attrs:{\"disabled\":provider.disabled},on:{\"click\":function($event){return _vm.addProviderFilter(provider)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('img',{staticClass:\"filter-button__icon\",attrs:{\"src\":provider.icon,\"alt\":\"\"}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(provider.name)+\"\\n\\t\\t\\t\\t\\t\\t\")])})],2),_vm._v(\" \"),_c('NcActions',{attrs:{\"size\":\"small\",\"wide\":\"\",\"open\":_vm.dateActionMenuIsOpen,\"menu-name\":_vm.t('core', 'Date'),\"variant\":_vm.dateFilterActive ? 'primary' : 'secondary',\"data-cy-unified-search-filter\":\"date\"},on:{\"update:open\":function($event){_vm.dateActionMenuIsOpen=$event}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconCalendarBlankOutline',{attrs:{\"size\":20}})]},proxy:true}],null,false,2513324059)},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"closeAfterClick\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('today')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Today'))+\"\\n\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"closeAfterClick\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('7days')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last 7 days'))+\"\\n\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"closeAfterClick\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('30days')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last 30 days'))+\"\\n\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"closeAfterClick\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('thisyear')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'This year'))+\"\\n\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"closeAfterClick\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('lastyear')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last year'))+\"\\n\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"closeAfterClick\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('custom')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Custom date range'))+\"\\n\\t\\t\\t\\t\\t\\t\")])],1),_vm._v(\" \"),_c('SearchableList',{attrs:{\"labelText\":_vm.t('core', 'Search people'),\"searchList\":_vm.userContacts,\"emptyContentText\":_vm.t('core', 'Not found'),\"data-cy-unified-search-filter\":\"people\"},on:{\"search-term-change\":_vm.debouncedFilterContacts,\"item-selected\":_vm.applyPersonFilter},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{attrs:{\"wide\":\"\",\"size\":\"small\",\"variant\":\"secondary\",\"pressed\":_vm.personFilterActive},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconAccountMultipleOutline',{attrs:{\"size\":20}})]},proxy:true}],null,false,2457664786)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'People'))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])]},proxy:true}],null,false,662085814)})],1),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.detailCategory && _vm.hasAnyActiveFilter),expression:\"!detailCategory && hasAnyActiveFilter\"}],staticClass:\"unified-search-modal__filters-applied\"},_vm._l((_vm.filters),function(filter){return _c('FilterChip',{key:filter.id,attrs:{\"text\":filter.name ?? filter.text,\"pretext\":\"\"},on:{\"delete\":function($event){return _vm.removeFilter(filter)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(filter.type === 'person')?_c('NcAvatar',{attrs:{\"user\":filter.user,\"size\":24,\"disableMenu\":\"\",\"hideStatus\":\"\",\"hideFavorite\":false}}):(filter.type === 'date')?_c('IconCalendarBlankOutline'):_c('img',{attrs:{\"src\":filter.icon,\"alt\":\"\"}})]},proxy:true}],null,true)})}),1)]),_vm._v(\" \"),(_vm.showEmptyContentInfo)?_c('div',{staticClass:\"unified-search-modal__no-content\"},[_c('NcEmptyContent',{attrs:{\"name\":_vm.emptyContentMessage},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconMagnify',{attrs:{\"size\":64}})]},proxy:true}],null,false,125778896)}),_vm._v(\" \"),(_vm.showConnectedServicesButton)?_c('ConnectedServicesBar',{attrs:{\"active\":_vm.searchExternalResources},on:{\"toggle\":_vm.toggleExternalResources}}):_vm._e()],1):_c('div',{ref:\"resultsContainer\",staticClass:\"unified-search-modal__results\",class:{ 'unified-search-modal__results--held': _vm.heldHeight !== null },style:(_vm.heldHeight !== null ? { minBlockSize: `${_vm.heldHeight}px`, boxSizing: 'border-box' } : undefined)},[_c('h3',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Results'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.detailCategory && _vm.detailGroup)?_c('div',{staticClass:\"unified-search-modal__detail-header\"},[_c('NcButton',{staticClass:\"unified-search-modal__detail-back\",attrs:{\"variant\":\"tertiary\",\"aria-label\":_vm.t('core', 'Back to all results')},on:{\"click\":_vm.closeDetailView},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconArrowLeft',{staticClass:\"unified-search-modal__rtl-icon\",attrs:{\"size\":20}})]},proxy:true}],null,false,1818940180)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Back'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('h4',{staticClass:\"unified-search-modal__detail-title\",attrs:{\"id\":_vm.headingId(_vm.detailGroup)}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.detailGroup.name)+\"\\n\\t\\t\\t\\t\\t\")])],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.renderedGroups),function(group){return _c('div',{key:group.id,staticClass:\"result-group\"},[(group.showPartialHeader)?_c('div',{staticClass:\"unified-search-modal__unfiltered-header\"},[_c('span',{staticClass:\"unified-search-modal__unfiltered-label\"},[_vm._v(_vm._s(_vm.t('core', 'Partial matches')))])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"result\",class:{ 'result--unfiltered': group.unfiltered }},[(group.overflow)?_c('NcButton',{staticClass:\"result-title--more\",attrs:{\"id\":_vm.headingId(group),\"alignment\":\"start-reverse\",\"variant\":\"tertiary-no-background\"},on:{\"click\":function($event){return _vm.openDetailView(group)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconArrowRight',{staticClass:\"unified-search-modal__rtl-icon\",attrs:{\"size\":20}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'More from {name}', { name: group.name }))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")]):(group.section !== 'detail')?_c('h4',{staticClass:\"result-title\",attrs:{\"id\":_vm.headingId(group)}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(group.name)+\"\\n\\t\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('ul',{staticClass:\"result-items\",attrs:{\"role\":_vm.isSmallMobile ? undefined : 'listbox',\"aria-labelledby\":_vm.headingId(group)}},_vm._l((group.results),function(result,index){return _c('SearchResult',_vm._b({key:index,attrs:{\"role\":_vm.isSmallMobile ? undefined : 'option',\"elementId\":_vm.rowElementId(group.id, index, group.unfiltered),\"active\":_vm.activeDescendantId === _vm.rowElementId(group.id, index, group.unfiltered)}},'SearchResult',result,false))}),1),_vm._v(\" \"),_c('div',{staticClass:\"result-footer\"},[(group.section === 'detail' && group.hasMore)?_c('NcButton',{attrs:{\"variant\":\"tertiary-no-background\"},on:{\"click\":function($event){return _vm.loadMoreResultsForProvider(group)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconDotsHorizontal',{attrs:{\"size\":20}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Load more results'))+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(group.inAppSearch)?_c('NcButton',{attrs:{\"alignment\":\"end-reverse\",\"variant\":\"tertiary-no-background\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconArrowRight',{attrs:{\"size\":20}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search in'))+\" \"+_vm._s(group.name)+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\")]):_vm._e()],1)],1)])}),_vm._v(\" \"),(_vm.skeletonRows > 0)?_c('SearchResultSkeleton',{attrs:{\"rows\":_vm.skeletonRows}}):_vm._e(),_vm._v(\" \"),(_vm.showConnectedServicesButton)?_c('ConnectedServicesBar',{attrs:{\"active\":_vm.searchExternalResources},on:{\"toggle\":_vm.toggleExternalResources}}):_vm._e()],2)]),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-modal__scrim modal-mask\",on:{\"click\":_vm.onScrimClick}})],1):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n {{ title }} \n \n \n \n \n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultipleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountMultipleOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccountMultipleOutline.vue?vue&type=template&id=970e2386\"\nimport script from \"./AccountMultipleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./AccountMultipleOutline.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 account-multiple-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M13.07 10.41A5 5 0 0 0 13.07 4.59A3.39 3.39 0 0 1 15 4A3.5 3.5 0 0 1 15 11A3.39 3.39 0 0 1 13.07 10.41M5.5 7.5A3.5 3.5 0 1 1 9 11A3.5 3.5 0 0 1 5.5 7.5M7.5 7.5A1.5 1.5 0 1 0 9 6A1.5 1.5 0 0 0 7.5 7.5M16 17V19H2V17S2 13 9 13 16 17 16 17M14 17C13.86 16.22 12.67 15 9 15S4.07 16.31 4 17M15.95 13A5.32 5.32 0 0 1 18 17V19H22V17S22 13.37 15.94 13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"","\n \n \n \n {{ title }} \n \n \n \n \n\n","import { render, staticRenderFns } from \"./ArrowLeft.vue?vue&type=template&id=16833c02\"\nimport script from \"./ArrowLeft.vue?vue&type=script&lang=js\"\nexport * from \"./ArrowLeft.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 arrow-left-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n {{ title }} \n \n \n \n \n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlankOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlankOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CalendarBlankOutline.vue?vue&type=template&id=784b59e6\"\nimport script from \"./CalendarBlankOutline.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarBlankOutline.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 calendar-blank-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M19 3H18V1H16V3H8V1H6V3H5C3.89 3 3 3.9 3 5V19C3 20.11 3.9 21 5 21H19C20.11 21 21 20.11 21 19V5C21 3.9 20.11 3 19 3M19 19H5V9H19V19M19 7H5V5H19V7Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n {{ title }} \n \n \n \n \n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShapeOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShapeOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ShapeOutline.vue?vue&type=template&id=3f5754ea\"\nimport script from \"./ShapeOutline.vue?vue&type=script&lang=js\"\nexport * from \"./ShapeOutline.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 shape-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M11,13.5V21.5H3V13.5H11M9,15.5H5V19.5H9V15.5M12,2L17.5,11H6.5L12,2M12,5.86L10.08,9H13.92L12,5.86M17.5,13C20,13 22,15 22,17.5C22,20 20,22 17.5,22C15,22 13,20 13,17.5C13,15 15,13 17.5,13M17.5,15A2.5,2.5 0 0,0 15,17.5A2.5,2.5 0 0,0 17.5,20A2.5,2.5 0 0,0 20,17.5A2.5,2.5 0 0,0 17.5,15Z\"}},[(_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,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"connected-services-bar\"},[_c(_setup.NcButton,{attrs:{\"variant\":\"secondary\",\"wide\":\"\"},on:{\"click\":function($event){return _setup.emit('toggle')}}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_setup.label)+\"\\n\\t\")]),_vm._v(\" \"),_c(_setup.NcButton,{attrs:{\"variant\":\"secondary\",\"aria-label\":_setup.settingsLabel,\"href\":_setup.settingsUrl,\"title\":_setup.settingsLabel,\"target\":\"_blank\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.IconCogOutline,{attrs:{\"size\":20}})]},proxy:true}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n {{ title }} \n \n \n \n \n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CogOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CogOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CogOutline.vue?vue&type=template&id=96fed70c\"\nimport script from \"./CogOutline.vue?vue&type=script&lang=js\"\nexport * from \"./CogOutline.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 cog-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M12,8A4,4 0 0,1 16,12A4,4 0 0,1 12,16A4,4 0 0,1 8,12A4,4 0 0,1 12,8M12,10A2,2 0 0,0 10,12A2,2 0 0,0 12,14A2,2 0 0,0 14,12A2,2 0 0,0 12,10M10,22C9.75,22 9.54,21.82 9.5,21.58L9.13,18.93C8.5,18.68 7.96,18.34 7.44,17.94L4.95,18.95C4.73,19.03 4.46,18.95 4.34,18.73L2.34,15.27C2.21,15.05 2.27,14.78 2.46,14.63L4.57,12.97L4.5,12L4.57,11L2.46,9.37C2.27,9.22 2.21,8.95 2.34,8.73L4.34,5.27C4.46,5.05 4.73,4.96 4.95,5.05L7.44,6.05C7.96,5.66 8.5,5.32 9.13,5.07L9.5,2.42C9.54,2.18 9.75,2 10,2H14C14.25,2 14.46,2.18 14.5,2.42L14.87,5.07C15.5,5.32 16.04,5.66 16.56,6.05L19.05,5.05C19.27,4.96 19.54,5.05 19.66,5.27L21.66,8.73C21.79,8.95 21.73,9.22 21.54,9.37L19.43,11L19.5,12L19.43,13L21.54,14.63C21.73,14.78 21.79,15.05 21.66,15.27L19.66,18.73C19.54,18.95 19.27,19.04 19.05,18.95L16.56,17.95C16.04,18.34 15.5,18.68 14.87,18.93L14.5,21.58C14.46,21.82 14.25,22 14,22H10M11.25,4L10.88,6.61C9.68,6.86 8.62,7.5 7.85,8.39L5.44,7.35L4.69,8.65L6.8,10.2C6.4,11.37 6.4,12.64 6.8,13.8L4.68,15.36L5.43,16.66L7.86,15.62C8.63,16.5 9.68,17.14 10.87,17.38L11.24,20H12.76L13.13,17.39C14.32,17.14 15.37,16.5 16.14,15.62L18.57,16.66L19.32,15.36L17.2,13.81C17.6,12.64 17.6,11.37 17.2,10.2L19.31,8.65L18.56,7.35L16.15,8.39C15.38,7.5 14.32,6.86 13.12,6.62L12.75,4H11.25Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConnectedServicesBar.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConnectedServicesBar.vue?vue&type=script&setup=true&lang=ts\"","\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConnectedServicesBar.vue?vue&type=style&index=0&id=10264158&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConnectedServicesBar.vue?vue&type=style&index=0&id=10264158&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ConnectedServicesBar.vue?vue&type=template&id=10264158&scoped=true\"\nimport script from \"./ConnectedServicesBar.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./ConnectedServicesBar.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./ConnectedServicesBar.vue?vue&type=style&index=0&id=10264158&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 \"10264158\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.isModalOpen)?_c('NcModal',{attrs:{\"id\":\"unified-search\",\"name\":_vm.t('core', 'Custom date range'),\"show\":_vm.isModalOpen,\"size\":\"small\",\"clear-view-delay\":0,\"title\":_vm.t('core', 'Custom date range')},on:{\"update:show\":function($event){_vm.isModalOpen=$event},\"close\":_vm.closeModal}},[_c('div',{staticClass:\"unified-search-custom-date-modal\"},[_c('h1',[_vm._v(_vm._s(_vm.t('core', 'Custom date range')))]),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-custom-date-modal__pickers\"},[_c('NcDateTimePicker',{attrs:{\"id\":\"unifiedsearch-custom-date-range-start\",\"label\":_vm.t('core', 'Pick start date'),\"type\":\"date\"},model:{value:(_vm.dateFilter.startFrom),callback:function ($$v) {_vm.$set(_vm.dateFilter, \"startFrom\", $$v)},expression:\"dateFilter.startFrom\"}}),_vm._v(\" \"),_c('NcDateTimePicker',{attrs:{\"id\":\"unifiedsearch-custom-date-range-end\",\"label\":_vm.t('core', 'Pick end date'),\"type\":\"date\"},model:{value:(_vm.dateFilter.endAt),callback:function ($$v) {_vm.$set(_vm.dateFilter, \"endAt\", $$v)},expression:\"dateFilter.endAt\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-custom-date-modal__footer\"},[_c('NcButton',{on:{\"click\":_vm.applyCustomRange},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CalendarRangeIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,3084610734)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search in date range'))+\"\\n\\t\\t\\t\\t\")])],1)])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n {{ title }} \n \n \n \n \n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarRange.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarRange.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CalendarRange.vue?vue&type=template&id=5868fd9e\"\nimport script from \"./CalendarRange.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarRange.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 calendar-range-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M9,10H7V12H9V10M13,10H11V12H13V10M17,10H15V12H17V10M19,3H18V1H16V3H8V1H6V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\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!./CustomDateRangeModal.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!./CustomDateRangeModal.vue?vue&type=script&lang=js\"","\n\n\t\n\t\t\n\t\t\n\t\t\t
{{ t('core', 'Custom date range') }} \n\t\t\t
\n\t\t\t\t \n\t\t\t\t \n\t\t\t
\n\t\t\t\n\t\t
\n\t \n \n\n\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=style&index=0&id=2907014b&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=style&index=0&id=2907014b&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CustomDateRangeModal.vue?vue&type=template&id=2907014b&scoped=true\"\nimport script from \"./CustomDateRangeModal.vue?vue&type=script&lang=js\"\nexport * from \"./CustomDateRangeModal.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomDateRangeModal.vue?vue&type=style&index=0&id=2907014b&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 \"2907014b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcPopover',{attrs:{\"shown\":_vm.opened},on:{\"show\":function($event){return _vm.setOpened(true)},\"hide\":function($event){return _vm.setOpened(false)}},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_vm._t(\"trigger\")]},proxy:true}],null,true)},[_vm._v(\" \"),_c('div',{staticClass:\"searchable-list__wrapper\"},[_c('NcTextField',{attrs:{\"label\":_vm.labelText,\"trailing-button-icon\":\"close\",\"show-trailing-button\":_vm.searchTerm !== ''},on:{\"update:value\":_vm.searchTermChanged,\"trailing-button-click\":_vm.clearSearch},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}},[_c('IconMagnify',{attrs:{\"size\":20}})],1),_vm._v(\" \"),(_vm.filteredList.length > 0)?_c('ul',{staticClass:\"searchable-list__list\"},_vm._l((_vm.filteredList),function(element){return _c('li',{key:element.id,attrs:{\"title\":element.displayName,\"role\":\"button\"}},[_c('NcButton',{attrs:{\"alignment\":\"start\",\"variant\":\"tertiary\",\"wide\":true},on:{\"click\":function($event){return _vm.itemSelected(element)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(element.isUser)?_c('NcAvatar',{attrs:{\"user\":element.user,\"hide-status\":\"\"}}):_c('NcAvatar',{attrs:{\"is-no-user\":true,\"display-name\":element.displayName,\"hide-status\":\"\"}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(element.displayName)+\"\\n\\t\\t\\t\\t\")])],1)}),0):_c('div',{staticClass:\"searchable-list__empty-content\"},[_c('NcEmptyContent',{attrs:{\"name\":_vm.emptyContentText},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconAlertCircleOutline')]},proxy:true}])})],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n {{ title }} \n \n \n \n \n\n","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AlertCircleOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AlertCircleOutline.vue?vue&type=template&id=da40788e\"\nimport script from \"./AlertCircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./AlertCircleOutline.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 alert-circle-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"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\":\"M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\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!./SearchableList.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!./SearchableList.vue?vue&type=script&lang=js\"","\n\n\n\t\n\t\t\n\t\t\t \n\t\t \n\t\t\n\t\t\t
\n\t\t\t\t \n\t\t\t \n\t\t\t
0\" class=\"searchable-list__list\">\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t{{ element.displayName }}\n\t\t\t\t\t \n\t\t\t\t \n\t\t\t \n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t
\n\t\t
\n\t \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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=style&index=0&id=66bd6570&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=style&index=0&id=66bd6570&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchableList.vue?vue&type=template&id=66bd6570&scoped=true\"\nimport script from \"./SearchableList.vue?vue&type=script&lang=js\"\nexport * from \"./SearchableList.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchableList.vue?vue&type=style&index=0&id=66bd6570&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 \"66bd6570\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.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!./SearchFilterChip.vue?vue&type=script&lang=js\"","\n\n\t\n\t\t\n\t\t\t \n\t\t\t {{ pretext }} : \n\t\t \n\t\t{{ text }} \n\t\t\n\t\t\t \n\t\t \n\t
\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=style&index=0&id=5a4f6249&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=style&index=0&id=5a4f6249&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchFilterChip.vue?vue&type=template&id=5a4f6249&scoped=true\"\nimport script from \"./SearchFilterChip.vue?vue&type=script&lang=js\"\nexport * from \"./SearchFilterChip.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchFilterChip.vue?vue&type=style&index=0&id=5a4f6249&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 \"5a4f6249\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"chip\"},[_c('span',{staticClass:\"icon\"},[_vm._t(\"icon\"),_vm._v(\" \"),(_vm.pretext.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.pretext)+\" : \")]):_vm._e()],2),_vm._v(\" \"),_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(_vm.text))]),_vm._v(\" \"),_c('button',{staticClass:\"close-button\",attrs:{\"type\":\"button\",\"aria-label\":_vm.removeLabel},on:{\"click\":_vm.deleteChip}},[_c('CloseIcon',{attrs:{\"size\":18}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcListItem',{staticClass:\"result-item\",attrs:{\"id\":_vm.elementId,\"name\":_vm.title,\"bold\":false,\"active\":_vm.active,\"href\":_vm.resourceUrl,\"target\":\"_self\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.isAppIcon)?_c('AppIcon',{staticClass:\"result-item__app-icon\",attrs:{\"icon\":_vm.icon}}):_c('div',{staticClass:\"result-item__icon\",class:{\n\t\t\t\t'result-item__icon--rounded': _vm.rounded,\n\t\t\t\t'result-item__icon--with-thumbnail': _vm.hasThumbnail,\n\t\t\t\t[_vm.icon]: !_vm.iconIsUrl && !_vm.hasThumbnail,\n\t\t\t},attrs:{\"aria-hidden\":\"true\"}},[(_vm.hasThumbnail)?_c('img',{attrs:{\"src\":_vm.thumbnailUrl},on:{\"error\":_vm.thumbnailErrorHandler}}):(_vm.iconIsUrl)?_c('img',{staticClass:\"result-item__icon-img\",attrs:{\"src\":_vm.icon,\"alt\":\"\",\"aria-hidden\":\"true\"}}):_vm._e()])]},proxy:true},{key:\"subname\",fn:function(){return [_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.subline)+\"\\n\\t\")]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"app-icon\",class:{ 'app-icon--outlined': _vm.outlined }},[(_vm.icon)?_c('span',{staticClass:\"app-icon__img\",style:(_setup.iconStyle),attrs:{\"aria-hidden\":\"true\"}}):_vm._e(),_vm._v(\" \"),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppIcon.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppIcon.vue?vue&type=script&setup=true&lang=ts\"","\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppIcon.vue?vue&type=style&index=0&id=5cb82f82&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppIcon.vue?vue&type=style&index=0&id=5cb82f82&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AppIcon.vue?vue&type=template&id=5cb82f82&scoped=true\"\nimport script from \"./AppIcon.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppIcon.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./AppIcon.vue?vue&type=style&index=0&id=5cb82f82&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 \"5cb82f82\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.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!./SearchResult.vue?vue&type=script&lang=js\"","\n\n\t\n\t\t\n\t\t\t \n\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t \n\t\t\n\t\t\t{{ subline }}\n\t\t \n\t \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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=style&index=0&id=516c3939&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=style&index=0&id=516c3939&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchResult.vue?vue&type=template&id=516c3939&scoped=true\"\nimport script from \"./SearchResult.vue?vue&type=script&lang=js\"\nexport * from \"./SearchResult.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchResult.vue?vue&type=style&index=0&id=516c3939&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 \"516c3939\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"search-result-skeleton\",attrs:{\"aria-hidden\":\"true\"}},[_c('div',{staticClass:\"search-result-skeleton__bar search-result-skeleton__bar--heading\"}),_vm._v(\" \"),_vm._l((_vm.rows),function(row){return _c('div',{key:row,staticClass:\"search-result-skeleton__bar\"})})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultSkeleton.vue?vue&type=style&index=0&id=66bc29f5&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResultSkeleton.vue?vue&type=style&index=0&id=66bc29f5&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchResultSkeleton.vue?vue&type=template&id=66bc29f5&scoped=true\"\nimport script from \"./SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SearchResultSkeleton.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./SearchResultSkeleton.vue?vue&type=style&index=0&id=66bc29f5&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 \"66bc29f5\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\n/**\n *\n * @param user\n */\nfunction getLogger(user) {\n\tif (user === null) {\n\t\treturn getLoggerBuilder()\n\t\t\t.setApp('core')\n\t\t\t.build()\n\t}\n\treturn getLoggerBuilder()\n\t\t.setApp('core')\n\t\t.setUid(user.uid)\n\t\t.build()\n}\n\nexport default getLogger(getCurrentUser())\n\nexport const unifiedSearchLogger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl, generateUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\n/**\n * Create a cancel token\n *\n * @return {import('axios').CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Get the list of available search providers\n *\n * @return {Promise}\n */\nexport async function getProviders() {\n\ttry {\n\t\tconst { data } = await axios.get(generateOcsUrl('search/providers'), {\n\t\t\tparams: {\n\t\t\t\t// Sending which location we're currently at\n\t\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t\t},\n\t\t})\n\t\tif ('ocs' in data && 'data' in data.ocs && Array.isArray(data.ocs.data) && data.ocs.data.length > 0) {\n\t\t\t// Providers are sorted by the api based on their order key\n\t\t\treturn data.ocs.data\n\t\t}\n\t} catch (error) {\n\t\tlogger.error(error)\n\t}\n\treturn []\n}\n\n/**\n * Get the list of available search providers\n *\n * @param {object} options destructuring object\n * @param {string} options.type the type to search\n * @param {string} options.query the search term\n * @param {number|string|null} [options.cursor] the offset for paginated searches\n * @param {string} [options.since] start of the date-range filter\n * @param {string} [options.until] end of the date-range filter\n * @param {number} [options.limit] maximum number of results\n * @param {string} [options.person] filter results by person\n * @param {object} [options.extraQueries] additional queries to filter search results\n * @return {object} {request: Promise, cancel: Promise}\n */\nexport function search({ type, query, cursor, since, until, limit, person, extraQueries = {} }) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\tconst request = async () => axios.get(generateOcsUrl('search/providers/{type}/search', { type }), {\n\t\tcancelToken: cancelToken.token,\n\t\tparams: {\n\t\t\tterm: query,\n\t\t\tcursor,\n\t\t\tsince,\n\t\t\tuntil,\n\t\t\tlimit,\n\t\t\tperson,\n\t\t\t// Sending which location we're currently at\n\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t\t...extraQueries,\n\t\t},\n\t})\n\n\treturn {\n\t\trequest,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n\n/**\n * Get the list of active contacts\n *\n * @param {object} filter filter contacts by string\n * @param {string} filter.searchTerm the query\n * @return {object} {request: Promise}\n */\nexport async function getContacts({ searchTerm }) {\n\tconst { data: { contacts } } = await axios.post(generateUrl('/contactsmenu/contacts'), {\n\t\tfilter: searchTerm,\n\t})\n\t/*\n\t * Add authenticated user to list of contacts for search filter\n\t * If authtenicated user is searching/filtering, do not add them to the list\n\t */\n\tif (!searchTerm) {\n\t\tlet authenticatedUser = getCurrentUser()\n\t\tauthenticatedUser = {\n\t\t\tid: authenticatedUser.uid,\n\t\t\tfullName: authenticatedUser.displayName,\n\t\t\temailAddresses: [],\n\t\t}\n\t\tcontacts.unshift(authenticatedUser)\n\t\treturn contacts\n\t}\n\n\treturn contacts\n}\n","/**\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { search as unifiedSearch } from './UnifiedSearchService.js';\nexport const REVEAL_INTERVAL_MS = 1000;\n/**\n * Results fetched per category per page. Sized for the detail view (which shows the\n * whole page); the aggregate caps to RESULTS_PER_CATEGORY. Server default 5, design 10.\n */\nexport const PAGE_SIZE = 10;\n/**\n * Whether a category has anything for the user to look at. Blocked is deliberately withheld\n * and failed carries no entries. Loading counts because paging keeps the pages already\n * fetched on screen while the next one is in flight; a new query has no entries to show, so\n * it reads as not visible until results actually land.\n *\n * Exported so the one definition also serves the Vue-side test doubles; the controller is\n * the only place that decides category-level visibility.\n *\n * @param state the category state to test\n */\nexport function isCategoryVisible(state) {\n return state.entries.length > 0 && (state.status === 'loaded' || state.status === 'loading');\n}\n/**\n * Runs a unified search across categories in priority order, blocking\n * lower-priority results until their predecessors arrive or a timer reveals them.\n *\n * Priority decides who waits for whom. It has no say over what is already on screen:\n * see `getRevealOrder()`.\n */\nexport class UnifiedSearchController {\n onChange;\n query = '';\n params = {};\n searchStates = {};\n revealOrder = [];\n revealWindowOpen = false;\n searchGeneration = 0;\n revealTimer = null;\n pendingCancels = [];\n constructor(onChange) {\n this.onChange = onChange;\n }\n /**\n * Start a search. Cancels and replaces any search already in flight.\n *\n * @param query the search term\n * @param categories category ids in priority order\n * @param params optional per-category search parameters\n * @return resolves once every category has settled\n */\n async search(query, categories, params) {\n this.cancelPendingRequests();\n // A new query hides everything the last one produced. Carrying results over would only\n // let them shift under the user once the real ones land, and the results are about to\n // differ anyway. So each search is a clean slate: empty screen, then a fresh ordered\n // reveal from priority order. Nothing is on screen, so nothing can be displaced.\n this.searchStates = {};\n this.revealOrder = [];\n this.searchGeneration++;\n const generation = this.searchGeneration;\n this.query = query;\n this.params = params || {};\n this.startRevealTimer();\n await Promise.allSettled(categories.map((category) => this.searchCategory(category, generation, categories)));\n }\n /**\n * Fetch the next page for one category and append it. A no-op unless the\n * category is loaded with more pages. On failure the existing results stay\n * and `loadMoreFailed` is raised, so calling again retries.\n *\n * @param category the category id to page\n */\n async loadMore(category) {\n const generation = this.searchGeneration;\n const categoryState = { ...this.searchStates[category] };\n if (!categoryState.hasMore || categoryState.status !== 'loaded') {\n return;\n }\n this.patchStates({ [category]: { status: 'loading', loadMoreFailed: false } });\n const { request, cancel } = unifiedSearch({\n type: category,\n query: this.query,\n cursor: categoryState.cursor,\n limit: PAGE_SIZE,\n ...this.params[category],\n });\n this.pendingCancels.push(cancel);\n try {\n const response = await request();\n if (this.searchGeneration !== generation) {\n return;\n }\n const { entries, cursor, isPaginated } = response.data.ocs.data;\n // A provider can echo a non-null cursor on an empty page, keeping hasMore true and\n // leaving a dead \"Load more\" button. An empty page means exhausted, cursor or not.\n const reachedEnd = entries.length === 0;\n this.patchStates({ [category]: {\n entries: [...categoryState.entries, ...entries],\n cursor,\n hasMore: !reachedEnd && this.hasMorePages(isPaginated, cursor),\n status: 'loaded',\n } });\n }\n catch {\n if (this.searchGeneration !== generation) {\n return;\n }\n this.patchStates({ [category]: { status: 'loaded', loadMoreFailed: true } });\n }\n }\n /**\n * A shallow copy of the current per-category state, safe to read for rendering.\n *\n * @return the current search states keyed by category id\n */\n getSnapshot() {\n return { ...this.searchStates };\n }\n /**\n * The ids of the categories currently on screen, in display order.\n *\n * Append-only within a search, so a category never moves up into a slot another one already\n * occupies: a result that arrives late renders below what the user is already reading,\n * however high its priority. A new query starts over from priority order, since it clears\n * the screen first and so has nothing to displace. Read this rather than the snapshot's key\n * order, which is the priority order and an input to blocking, not a rendering order.\n *\n * Only ever names categories the current snapshot holds, so a caller can map without guarding.\n *\n * @return visible category ids, top to bottom\n */\n getRevealOrder() {\n return [...this.revealOrder];\n }\n dispose() {\n this.stopBackgroundWork();\n }\n reset() {\n this.stopBackgroundWork();\n this.searchStates = {};\n this.revealOrder = [];\n this.query = '';\n this.params = {};\n this.searchGeneration++;\n this.onChange?.(this.getSnapshot());\n }\n async searchCategory(category, generation, categories) {\n this.patchStates({ [category]: {\n status: 'loading',\n entries: [],\n cursor: null,\n hasMore: false,\n loadMoreFailed: false,\n } });\n const { request, cancel } = unifiedSearch({\n type: category,\n query: this.query,\n cursor: null,\n limit: PAGE_SIZE,\n ...this.params[category],\n });\n this.pendingCancels.push(cancel);\n try {\n const response = await request();\n if (this.searchGeneration !== generation) {\n // A new search has been started, ignore this result\n return;\n }\n const { entries, cursor, isPaginated } = response.data.ocs.data;\n // Decide blocked vs loaded once, here at settle. Reconcile only promotes after this\n // (never re-blocks), so this is the only place a category becomes blocked.\n this.patchStates({ [category]: {\n status: this.shouldBlockCategory(category, categories) ? 'blocked' : 'loaded',\n entries,\n cursor,\n hasMore: this.hasMorePages(isPaginated, cursor),\n loadMoreFailed: false,\n } });\n }\n catch {\n if (this.searchGeneration !== generation) {\n return;\n }\n this.patchStates({ [category]: {\n status: 'failed',\n entries: [],\n cursor: null,\n hasMore: false,\n loadMoreFailed: false,\n } });\n }\n this.reconcileCategoryStatuses(categories);\n }\n reconcileCategoryStatuses(categories) {\n categories.forEach((category) => {\n // Promotion only: reveal a blocked category once its predecessors clear, never demote.\n // A revealed category must stay revealed, else it flickers when a slower one settles.\n if (this.searchStates[category].status !== 'blocked') {\n return;\n }\n if (!this.shouldBlockCategory(category, categories)) {\n this.patchStates({ [category]: { status: 'loaded' } });\n }\n });\n }\n /**\n * Arm the one reveal window a search gets. Ordered reveal governs the first paint only:\n * when the window closes everything blocked is shown and nothing may block again, so a\n * category that lands later is revealed straight away, at the end. Only a new search\n * opens another window.\n */\n startRevealTimer() {\n this.stopRevealTimer();\n this.revealWindowOpen = true;\n this.revealTimer = setTimeout(() => {\n this.revealWindowOpen = false;\n this.unblockAllCategories(Object.keys(this.searchStates));\n }, REVEAL_INTERVAL_MS);\n }\n stopRevealTimer() {\n this.revealWindowOpen = false;\n if (this.revealTimer) {\n clearTimeout(this.revealTimer);\n this.revealTimer = null;\n }\n }\n cancelPendingRequests() {\n this.pendingCancels.forEach((cancel) => cancel());\n this.pendingCancels = [];\n }\n stopBackgroundWork() {\n this.cancelPendingRequests();\n this.stopRevealTimer();\n }\n unblockAllCategories(categories) {\n categories.forEach((category) => {\n if (this.searchStates[category].status === 'blocked') {\n this.patchStates({ [category]: { status: 'loaded' } });\n }\n });\n }\n /**\n * Whether a category can page further. The backend never sends a \"has more\"\n * flag, only `isPaginated` and a `cursor`, so derive it: a category has more\n * pages when it paginates and handed back a cursor to continue from.\n *\n * @param isPaginated whether the provider returned a paginated result\n * @param cursor the cursor to continue from, or null when there is none\n */\n hasMorePages(isPaginated, cursor) {\n return isPaginated && cursor !== null;\n }\n shouldBlockCategory(category, categories) {\n // Once the window has closed, ordered reveal is over for this search.\n if (!this.revealWindowOpen || !this.searchStates[category]) {\n return false;\n }\n return categories.slice(0, categories.indexOf(category)).some((c) => {\n const categoryState = this.searchStates[c];\n return categoryState && ['loading', 'blocked'].includes(categoryState.status);\n });\n }\n /**\n * Keep the display order in step with what is on screen. Losing its results frees a\n * category's slot, so the list closes the gap instead of leaving a hole.\n *\n * @param category the category id that just changed\n * @param state its merged state\n */\n syncRevealOrder(category, state) {\n const at = this.revealOrder.indexOf(category);\n const visible = isCategoryVisible(state);\n if (visible && at === -1) {\n this.revealOrder.push(category);\n }\n else if (!visible && at !== -1) {\n this.revealOrder.splice(at, 1);\n }\n }\n patchStates(next) {\n Object.keys(next).forEach((category) => {\n const categoryState = { ...this.searchStates[category], ...next[category] };\n this.searchStates[category] = categoryState;\n this.syncRevealOrder(category, categoryState);\n });\n this.onChange?.(this.getSnapshot());\n }\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { defineStore } from 'pinia'\n\nexport const useSearchStore = defineStore('search', {\n\tstate: () => ({\n\t\texternalFilters: [],\n\t}),\n\n\tactions: {\n\t\tregisterExternalFilter({ id, appId, searchFrom, label, callback, icon }) {\n\t\t\tthis.externalFilters.push({ id, appId, searchFrom, name: label, callback, icon, isPluginFilter: true })\n\t\t},\n\t},\n})\n","/*!\n * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { onUnmounted, shallowRef } from 'vue';\nimport { UnifiedSearchController } from '../services/UnifiedSearchController.ts';\n/**\n * Reactive adapter over UnifiedSearchController for use in an SFC.\n */\nexport function useUnifiedSearch() {\n const searchStates = shallowRef({});\n const revealOrder = shallowRef([]);\n const controller = new UnifiedSearchController((states) => {\n // Both assigned here, never separately: the view reads one against the other.\n searchStates.value = states;\n revealOrder.value = controller.getRevealOrder();\n });\n onUnmounted(() => {\n controller.dispose();\n });\n return {\n searchStates,\n revealOrder,\n search: controller.search.bind(controller),\n loadMore: controller.loadMore.bind(controller),\n reset: controller.reset.bind(controller),\n };\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=script&lang=ts\"","\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=style&index=0&id=e755dab0&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=style&index=0&id=e755dab0&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearchModal.vue?vue&type=template&id=e755dab0&scoped=true\"\nimport script from \"./UnifiedSearchModal.vue?vue&type=script&lang=ts\"\nexport * from \"./UnifiedSearchModal.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UnifiedSearchModal.vue?vue&type=style&index=0&id=e755dab0&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 \"e755dab0\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"unified-search-menu\"},[_c('UnifiedSearchInput',{ref:\"searchInput\",attrs:{\"query\":_vm.queryText,\"expanded\":_vm.showUnifiedSearch,\"activeDescendantId\":_vm.activeDescendantId,\"loading\":_vm.searching,\"filtersRevealed\":_vm.filtersRevealed},on:{\"click\":_vm.openModal,\"open-filters\":_vm.onOpenFilters,\"close\":_vm.onClose,\"update:query\":function($event){_vm.queryText = $event},\"navigate\":_vm.onNavigate,\"activate\":_vm.onActivate}}),_vm._v(\" \"),_c('UnifiedSearchModal',{ref:\"searchModal\",attrs:{\"query\":_vm.queryText,\"open\":_vm.showUnifiedSearch,\"filtersRevealed\":_vm.filtersRevealed},on:{\"update:query\":function($event){_vm.queryText = $event},\"update:open\":function($event){_vm.showUnifiedSearch = $event},\"update:activeDescendant\":function($event){_vm.activeDescendantId = $event || ''},\"update:loading\":function($event){_vm.searching = $event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=style&index=0&id=2127a3b2&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=style&index=0&id=2127a3b2&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearch.vue?vue&type=template&id=2127a3b2&scoped=true\"\nimport script from \"./UnifiedSearch.vue?vue&type=script&lang=ts\"\nexport * from \"./UnifiedSearch.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UnifiedSearch.vue?vue&type=style&index=0&id=2127a3b2&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 \"2127a3b2\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCSPNonce } from '@nextcloud/auth';\nimport { translatePlural as n, translate as t } from '@nextcloud/l10n';\nimport { getLoggerBuilder } from '@nextcloud/logger';\nimport { createPinia, PiniaVuePlugin } from 'pinia';\nimport Vue from 'vue';\nimport UnifiedSearch from './views/UnifiedSearch.vue';\nimport { useSearchStore } from '../src/store/unified-search-external-filters.js';\n__webpack_nonce__ = getCSPNonce();\nconst logger = getLoggerBuilder()\n .setApp('unified-search')\n .detectUser()\n .build();\nVue.mixin({\n data() {\n return {\n logger,\n };\n },\n methods: {\n t,\n n,\n },\n});\n// Register the add/register filter action API globally\nwindow.OCA = window.OCA || {};\nwindow.OCA.UnifiedSearch = {\n registerFilterAction: ({ id, appId, searchFrom, label, callback, icon }) => {\n const searchStore = useSearchStore();\n searchStore.registerExternalFilter({ id, appId, searchFrom, label, callback, icon });\n },\n};\nVue.use(PiniaVuePlugin);\nconst pinia = createPinia();\nexport default new Vue({\n el: '#unified-search',\n pinia,\n name: 'UnifiedSearchRoot',\n render: (h) => h(UnifiedSearch),\n});\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-icon[data-v-5cb82f82]{--app-icon-circle-size: calc(var(--default-grid-baseline) * 12);--app-icon-icon-size: calc(var(--app-icon-circle-size) * 7 / 12);--app-icon-bevel: inset 0 -1px 0 0 color-mix(in srgb, var(--color-primary-element-light), 10% var(--color-primary-element)), inset 0 -4px 6px -4px color-mix(in srgb, var(--color-primary-element-light), 16% var(--color-primary-element));box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;width:var(--app-icon-circle-size);height:var(--app-icon-circle-size);min-height:var(--app-icon-circle-size);border-radius:50%;transform:scale(var(--app-icon-scale, 1));transition:transform var(--animation-quick) ease-out;background-color:var(--color-primary-element-light);background-image:linear-gradient(to bottom, color-mix(in srgb, var(--color-primary-element-light), 15% var(--color-main-background)) 0%, var(--color-primary-element-light) 100%);box-shadow:var(--app-icon-bevel)}@media(prefers-color-scheme: dark){.app-icon[data-v-5cb82f82]{--app-icon-bevel: none}}@media(prefers-reduced-motion: reduce){.app-icon[data-v-5cb82f82]{transition:none}}.app-icon__img[data-v-5cb82f82]{width:var(--app-icon-icon-size);height:var(--app-icon-icon-size);background-color:var(--color-primary-element);background-image:linear-gradient(to bottom, color-mix(in srgb, var(--color-primary-element), 28% var(--color-primary-element-light)) 0%, var(--color-primary-element) 100%);mask:var(--app-icon-url) center/contain no-repeat}@media(forced-colors: active){.app-icon__img[data-v-5cb82f82]{background-color:CanvasText;background-image:none}}.app-icon--outlined[data-v-5cb82f82]{background:rgba(0,0,0,0);background-image:none;box-shadow:inset 0 0 0 2px var(--color-border)}.app-icon--outlined .app-icon__img[data-v-5cb82f82]{background-color:var(--color-text-maxcontrast);background-image:none}[data-themes*=dark] .app-icon{--app-icon-bevel: none}[data-themes*=light] .app-icon{--app-icon-bevel: inset 0 -1px 0 0 color-mix(in srgb, var(--color-primary-element-light), 10% var(--color-primary-element)), inset 0 -4px 6px -4px color-mix(in srgb, var(--color-primary-element-light), 16% var(--color-primary-element))}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/AppIcon.vue\"],\"names\":[],\"mappings\":\"AAKA,2BACC,+DAAA,CAEA,gEAAA,CACA,2OAAA,CACA,qBAAA,CACA,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,iCAAA,CACA,kCAAA,CACA,sCAAA,CACA,iBAAA,CACA,yCAAA,CACA,oDAAA,CACA,mDAAA,CACA,iLAAA,CAKA,gCAAA,CAEA,mCAxBD,2BAyBE,sBAAA,CAAA,CAGD,uCA5BD,2BA6BE,eAAA,CAAA,CAGD,gCACC,+BAAA,CACA,gCAAA,CAGA,6CAAA,CACA,2KAAA,CAKA,iDAAA,CAID,8BACC,gCACC,2BAAA,CACA,qBAAA,CAAA,CAMF,qCACC,wBAAA,CACA,qBAAA,CACA,8CAAA,CAGD,oDACC,8CAAA,CACA,qBAAA,CAKF,8BACC,sBAAA,CAGD,+BACC,2OAAA\",\"sourcesContent\":[\"\\n$bevel:\\n\\tinset 0 -1px 0 0 color-mix(in srgb, var(--color-primary-element-light), 10% var(--color-primary-element)),\\n\\tinset 0 -4px 6px -4px color-mix(in srgb, var(--color-primary-element-light), 16% var(--color-primary-element));\\n\\n.app-icon {\\n\\t--app-icon-circle-size: calc(var(--default-grid-baseline) * 12);\\n\\t// 28px on a 48px circle, so it follows when consumers resize the circle.\\n\\t--app-icon-icon-size: calc(var(--app-icon-circle-size) * 7 / 12);\\n\\t--app-icon-bevel: #{$bevel};\\n\\tbox-sizing: border-box;\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: var(--app-icon-circle-size);\\n\\theight: var(--app-icon-circle-size);\\n\\tmin-height: var(--app-icon-circle-size);\\n\\tborder-radius: 50%;\\n\\ttransform: scale(var(--app-icon-scale, 1));\\n\\ttransition: transform var(--animation-quick) ease-out;\\n\\tbackground-color: var(--color-primary-element-light);\\n\\tbackground-image: linear-gradient(\\n\\t\\tto bottom,\\n\\t\\tcolor-mix(in srgb, var(--color-primary-element-light), 15% var(--color-main-background)) 0%,\\n\\t\\tvar(--color-primary-element-light) 100%\\n\\t);\\n\\tbox-shadow: var(--app-icon-bevel);\\n\\n\\t@media (prefers-color-scheme: dark) {\\n\\t\\t--app-icon-bevel: none;\\n\\t}\\n\\n\\t@media (prefers-reduced-motion: reduce) {\\n\\t\\ttransition: none;\\n\\t}\\n\\n\\t&__img {\\n\\t\\twidth: var(--app-icon-icon-size);\\n\\t\\theight: var(--app-icon-icon-size);\\n\\t\\t// Masked rather than shown: app icons ship a hardcoded fill, so\\n\\t\\t// currentColor never applies and a filter could only flip black and white.\\n\\t\\tbackground-color: var(--color-primary-element);\\n\\t\\tbackground-image: linear-gradient(\\n\\t\\t\\tto bottom,\\n\\t\\t\\tcolor-mix(in srgb, var(--color-primary-element), 28% var(--color-primary-element-light)) 0%,\\n\\t\\t\\tvar(--color-primary-element) 100%\\n\\t\\t);\\n\\t\\tmask: var(--app-icon-url) center / contain no-repeat;\\n\\t}\\n\\n\\t// Masked backgrounds are not force-adjusted the way is.\\n\\t@media (forced-colors: active) {\\n\\t\\t&__img {\\n\\t\\t\\tbackground-color: CanvasText;\\n\\t\\t\\tbackground-image: none;\\n\\t\\t}\\n\\t}\\n\\n\\t// Utility entries (\\\"More apps\\\", \\\"App store\\\") stay subdued: a plain circle\\n\\t// with the icon in the same muted color as the label.\\n\\t&--outlined {\\n\\t\\tbackground: transparent;\\n\\t\\tbackground-image: none;\\n\\t\\tbox-shadow: inset 0 0 0 2px var(--color-border);\\n\\t}\\n\\n\\t&--outlined &__img {\\n\\t\\tbackground-color: var(--color-text-maxcontrast);\\n\\t\\tbackground-image: none;\\n\\t}\\n}\\n\\n// An explicit theme choice must beat the media query above, which only sees the OS.\\n:global([data-themes*=dark] .app-icon) {\\n\\t--app-icon-bevel: none;\\n}\\n\\n:global([data-themes*=light] .app-icon) {\\n\\t--app-icon-bevel: #{$bevel};\\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, `.connected-services-bar[data-v-10264158]{display:flex;gap:var(--default-grid-baseline);width:100%;margin-block-start:calc(var(--default-grid-baseline)*3)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/ConnectedServicesBar.vue\"],\"names\":[],\"mappings\":\"AACA,yCACC,YAAA,CACA,gCAAA,CACA,UAAA,CACA,uDAAA\",\"sourcesContent\":[\"\\n.connected-services-bar {\\n\\tdisplay: flex;\\n\\tgap: var(--default-grid-baseline);\\n\\twidth: 100%;\\n\\tmargin-block-start: calc(var(--default-grid-baseline) * 3);\\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, `.unified-search-custom-date-modal[data-v-2907014b]{padding:10px 20px 10px 20px}.unified-search-custom-date-modal h1[data-v-2907014b]{font-size:16px;font-weight:bolder;line-height:2em}.unified-search-custom-date-modal__pickers[data-v-2907014b]{display:flex;flex-direction:column}.unified-search-custom-date-modal__footer[data-v-2907014b]{display:flex;justify-content:end}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/CustomDateRangeModal.vue\"],\"names\":[],\"mappings\":\"AACA,mDACC,2BAAA,CAEA,sDACC,cAAA,CACA,kBAAA,CACA,eAAA,CAGD,4DACC,YAAA,CACA,qBAAA,CAGD,2DACC,YAAA,CACA,mBAAA\",\"sourcesContent\":[\"\\n.unified-search-custom-date-modal {\\n\\tpadding: 10px 20px 10px 20px;\\n\\n\\th1 {\\n\\t\\tfont-size: 16px;\\n\\t\\tfont-weight: bolder;\\n\\t\\tline-height: 2em;\\n\\t}\\n\\n\\t&__pickers {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t}\\n\\n\\t&__footer {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: end;\\n\\t}\\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, `.chip[data-v-5a4f6249]{display:flex;align-items:center;padding:2px 4px;border:1px solid var(--color-primary-element-light);border-radius:20px;background-color:var(--color-primary-element-light);margin:2px}.chip .icon[data-v-5a4f6249]{display:flex;align-items:center;padding-inline-end:5px}.chip .icon img[data-v-5a4f6249]{width:20px;padding:2px;border-radius:20px;filter:var(--background-invert-if-bright)}.chip .text[data-v-5a4f6249]{margin:0 2px}.chip .close-button[data-v-5a4f6249]{display:flex;align-items:center;width:auto;min-width:0;min-height:0;margin:0;padding:0;border:none;background:rgba(0,0,0,0);color:inherit;cursor:pointer;border-radius:var(--border-radius-element, 8px)}.chip .close-button[data-v-5a4f6249]:hover{filter:invert(20%)}.chip .close-button[data-v-5a4f6249]:focus-visible{outline:2px solid var(--color-main-text);outline-offset:1px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchFilterChip.vue\"],\"names\":[],\"mappings\":\"AACA,uBACI,YAAA,CACA,kBAAA,CACA,eAAA,CACA,mDAAA,CACA,kBAAA,CACA,mDAAA,CACA,UAAA,CAEA,6BACI,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,iCACI,UAAA,CACA,WAAA,CACA,kBAAA,CACA,yCAAA,CAIR,6BACI,YAAA,CAGJ,qCACI,YAAA,CACA,kBAAA,CACA,UAAA,CACA,WAAA,CACA,YAAA,CACA,QAAA,CACA,SAAA,CACA,WAAA,CACA,wBAAA,CACA,aAAA,CACA,cAAA,CACA,+CAAA,CAEA,2CACI,kBAAA,CAGJ,mDACI,wCAAA,CACA,kBAAA\",\"sourcesContent\":[\"\\n.chip {\\n display: flex;\\n align-items: center;\\n padding: 2px 4px;\\n border: 1px solid var(--color-primary-element-light);\\n border-radius: 20px;\\n background-color: var(--color-primary-element-light);\\n margin: 2px;\\n\\n .icon {\\n display: flex;\\n align-items: center;\\n padding-inline-end: 5px;\\n\\n img {\\n width: 20px;\\n padding: 2px;\\n border-radius: 20px;\\n filter: var(--background-invert-if-bright);\\n }\\n }\\n\\n .text {\\n margin: 0 2px;\\n }\\n\\n .close-button {\\n display: flex;\\n align-items: center;\\n width: auto;\\n min-width: 0;\\n min-height: 0;\\n margin: 0;\\n padding: 0;\\n border: none;\\n background: transparent;\\n color: inherit;\\n cursor: pointer;\\n border-radius: var(--border-radius-element, 8px);\\n\\n &:hover {\\n filter: invert(20%);\\n }\\n\\n &:focus-visible {\\n outline: 2px solid var(--color-main-text);\\n outline-offset: 1px;\\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, `.result-item[data-v-516c3939]{padding-inline:0}.result-item[data-v-516c3939] a{border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.result-item[data-v-516c3939] a:active,.result-item[data-v-516c3939] a:hover{background-color:var(--color-background-hover)}.result-item[data-v-516c3939] a:focus-visible{background-color:var(--color-background-hover);border-color:var(--color-border-maxcontrast)}.result-item[data-v-516c3939] a *{cursor:pointer}.result-item.list-item__wrapper--active[data-v-516c3939] .list-item{background-color:var(--color-background-hover)}.result-item.list-item__wrapper--active[data-v-516c3939] .list-item::before{content:\"\";position:absolute;inset-block:calc(var(--default-grid-baseline)*2);inset-inline-start:0;width:3px;border-radius:var(--border-radius-rounded);background-color:var(--color-primary-element);animation:result-pill-in-516c3939 var(--animation-quick) ease-out}.result-item.list-item__wrapper--active[data-v-516c3939] .list-item:hover{background-color:var(--color-background-hover)}.result-item.list-item__wrapper--active[data-v-516c3939] .list-item__anchor .list-item-content__name,.result-item.list-item__wrapper--active[data-v-516c3939] .list-item__anchor .list-item-content__subname,.result-item.list-item__wrapper--active[data-v-516c3939] .list-item__anchor .list-item-content__details,.result-item.list-item__wrapper--active[data-v-516c3939] .list-item__anchor .list-item-details__details{color:var(--color-main-text) !important}.result-item__icon[data-v-516c3939]{display:flex;align-items:center;justify-content:center;overflow:hidden;width:var(--default-clickable-area);height:var(--default-clickable-area);border-radius:var(--border-radius);margin-inline-start:var(--default-grid-baseline)}.result-item__icon--rounded[data-v-516c3939]{border-radius:calc(var(--default-clickable-area)/2)}.result-item__icon--with-thumbnail[data-v-516c3939]:not(.result-item__icon--rounded){border:1px solid var(--color-border);max-height:calc(var(--default-clickable-area) - 2px);max-width:calc(var(--default-clickable-area) - 2px)}.result-item__icon--with-thumbnail img[data-v-516c3939]{width:100%;height:100%;object-fit:cover;object-position:center}.result-item__icon-img[data-v-516c3939]{width:20px;height:20px;object-fit:contain;filter:var(--background-invert-if-dark)}.result-item__icon-img[src*=\"/filetypes/\"][data-v-516c3939]{width:32px;height:32px;filter:none}.result-item__app-icon[data-v-516c3939]{--app-icon-circle-size: var(--default-clickable-area);margin-inline-start:var(--default-grid-baseline)}@keyframes result-pill-in-516c3939{from{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchResult.vue\"],\"names\":[],\"mappings\":\"AACA,8BACC,gBAAA,CAEA,gCACC,8BAAA,CACA,mDAAA,CAGA,6EAEC,8CAAA,CAKD,8CACC,8CAAA,CACA,4CAAA,CAGD,kCACC,cAAA,CAOD,oEACC,8CAAA,CAMA,4EACC,UAAA,CACA,iBAAA,CACA,gDAAA,CACA,oBAAA,CACA,SAAA,CACA,0CAAA,CACA,6CAAA,CAEA,iEAAA,CAGD,0EACC,8CAAA,CAMF,6ZAIC,uCAAA,CAIF,oCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,mCAAA,CACA,oCAAA,CACA,kCAAA,CACA,gDAAA,CAEA,6CACC,mDAAA,CAGD,qFACC,oCAAA,CAEA,oDAAA,CACA,mDAAA,CAID,wDAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA,CAID,wCACC,UAAA,CACA,WAAA,CACA,kBAAA,CAEA,uCAAA,CAKA,4DACC,UAAA,CACA,WAAA,CACA,WAAA,CAMH,wCACC,qDAAA,CACA,gDAAA,CAKF,mCACC,KACC,mBAAA,CACA,SAAA,CAGD,GACC,mBAAA,CACA,SAAA,CAAA\",\"sourcesContent\":[\"\\n.result-item {\\n\\tpadding-inline: 0;\\n\\n\\t:deep(a) {\\n\\t\\tborder: 2px solid transparent;\\n\\t\\tborder-radius: var(--border-radius-large) !important;\\n\\n\\t\\t// Hover/press: neutral gray fill only, no border.\\n\\t\\t&:active,\\n\\t\\t&:hover {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\n\\t\\t// Plain Tab into a result keeps a visible focus ring (a11y). Normally the combobox\\n\\t\\t// keeps focus in the input and drives selection via `active` below.\\n\\t\\t&:focus-visible {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\tborder-color: var(--color-border-maxcontrast);\\n\\t\\t}\\n\\n\\t\\t* {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t}\\n\\t}\\n\\n\\t// NcListItem's `active` state paints a primary fill, white text and a blue stripe.\\n\\t// We want a neutral look: the gray hover fill plus a maxcontrast border, readable text.\\n\\t&.list-item__wrapper--active {\\n\\t\\t:deep(.list-item) {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\n\\t\\t\\t// Keyboard selection marker: the pill the left navigation paints on its active\\n\\t\\t\\t// entry. It has to hang off .list-item rather than the wrapper, because\\n\\t\\t\\t// .list-item is itself positioned and paints the opaque row background, so it\\n\\t\\t\\t// would cover a pseudo-element belonging to its parent.\\n\\t\\t\\t&::before {\\n\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tinset-block: calc(var(--default-grid-baseline) * 2);\\n\\t\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\t\\twidth: 3px;\\n\\t\\t\\t\\tborder-radius: var(--border-radius-rounded);\\n\\t\\t\\t\\tbackground-color: var(--color-primary-element);\\n\\t\\t\\t\\t// Zeroed by the reduced-motion theme, so no separate media query is needed.\\n\\t\\t\\t\\tanimation: result-pill-in var(--animation-quick) ease-out;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Undo the forced active text colour. Chain through the anchor to outrank\\n\\t\\t// NcListItem's own !important rule.\\n\\t\\t:deep(.list-item__anchor .list-item-content__name),\\n\\t\\t:deep(.list-item__anchor .list-item-content__subname),\\n\\t\\t:deep(.list-item__anchor .list-item-content__details),\\n\\t\\t:deep(.list-item__anchor .list-item-details__details) {\\n\\t\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&__icon {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\toverflow: hidden;\\n\\t\\twidth: var(--default-clickable-area);\\n\\t\\theight: var(--default-clickable-area);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tmargin-inline-start: var(--default-grid-baseline);\\n\\n\\t\\t&--rounded {\\n\\t\\t\\tborder-radius: calc(var(--default-clickable-area) / 2);\\n\\t\\t}\\n\\n\\t\\t&--with-thumbnail:not(#{&}--rounded) {\\n\\t\\t\\tborder: 1px solid var(--color-border);\\n\\t\\t\\t// compensate for border\\n\\t\\t\\tmax-height: calc(var(--default-clickable-area) - 2px);\\n\\t\\t\\tmax-width: calc(var(--default-clickable-area) - 2px);\\n\\t\\t}\\n\\n\\t\\t// A full-bleed thumbnail (preview or avatar) fills the box.\\n\\t\\t&--with-thumbnail img {\\n\\t\\t\\t// Make sure to keep ratio\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\n\\t\\t\\tobject-fit: cover;\\n\\t\\t\\tobject-position: center;\\n\\t\\t}\\n\\n\\t\\t// A small monochrome glyph (e.g. a settings section), not a thumbnail.\\n\\t\\t&-img {\\n\\t\\t\\twidth: 20px;\\n\\t\\t\\theight: 20px;\\n\\t\\t\\tobject-fit: contain;\\n\\t\\t\\t// Dark monochrome icons invert to light in dark themes.\\n\\t\\t\\tfilter: var(--background-invert-if-dark);\\n\\n\\t\\t\\t// Mime icons carry their own colours (a red PDF, a green spreadsheet), so the\\n\\t\\t\\t// dark-theme invert would recolour them: red comes out cyan. Sized to match the\\n\\t\\t\\t// 32px these icons had while they were painted as a background-image.\\n\\t\\t\\t&[src*='/filetypes/'] {\\n\\t\\t\\t\\twidth: 32px;\\n\\t\\t\\t\\theight: 32px;\\n\\t\\t\\t\\tfilter: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// App results reuse the app-menu tile (AppIcon); size its circle to the icon column.\\n\\t&__app-icon {\\n\\t\\t--app-icon-circle-size: var(--default-clickable-area);\\n\\t\\tmargin-inline-start: var(--default-grid-baseline);\\n\\t}\\n}\\n\\n// Grow the pill out of the row's centre line, matching the navigation entry.\\n@keyframes result-pill-in {\\n\\tfrom {\\n\\t\\ttransform: scaleY(0);\\n\\t\\topacity: 0;\\n\\t}\\n\\n\\tto {\\n\\t\\ttransform: scaleY(1);\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.search-result-skeleton[data-v-66bc29f5]{--bar-block-size: calc(2lh + 2 * (2px + var(--default-grid-baseline) + 2px));display:flex;flex-direction:column;gap:calc(3*var(--default-grid-baseline))}.search-result-skeleton__bar[data-v-66bc29f5]{flex:none;position:relative;overflow:hidden;block-size:var(--bar-block-size);border-radius:var(--border-radius-element);background-color:var(--color-background-hover)}.search-result-skeleton__bar--heading[data-v-66bc29f5]{block-size:1lh;inline-size:25%}.search-result-skeleton__bar[data-v-66bc29f5]::after{content:\"\";position:absolute;inset:0;background-image:linear-gradient(90deg, transparent, var(--color-placeholder-light), transparent);transform:translateX(-100%);animation:search-result-skeleton-sweep-66bc29f5 1.6s linear infinite}.search-result-skeleton__bar[data-v-66bc29f5]:dir(rtl)::after{animation-direction:reverse}@media(prefers-reduced-motion: reduce){.search-result-skeleton__bar[data-v-66bc29f5]::after{content:none}}@keyframes search-result-skeleton-sweep-66bc29f5{to{transform:translateX(100%)}}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchResultSkeleton.vue\"],\"names\":[],\"mappings\":\"AACA,yCACC,4EAAA,CACA,YAAA,CACA,qBAAA,CACA,wCAAA,CAEA,8CACC,SAAA,CACA,iBAAA,CACA,eAAA,CACA,gCAAA,CACA,0CAAA,CACA,8CAAA,CAGA,uDACC,cAAA,CACA,eAAA,CAID,qDACC,UAAA,CACA,iBAAA,CACA,OAAA,CACA,iGAAA,CACA,2BAAA,CACA,oEAAA,CAGD,8DACC,2BAAA,CAGD,uCACC,qDACC,YAAA,CAAA,CAMJ,iDACC,GACC,0BAAA,CAAA\",\"sourcesContent\":[\"\\n.search-result-skeleton {\\n\\t--bar-block-size: calc(2lh + 2 * (2px + var(--default-grid-baseline) + 2px));\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: calc(3 * var(--default-grid-baseline));\\n\\n\\t&__bar {\\n\\t\\tflex: none;\\n\\t\\tposition: relative;\\n\\t\\toverflow: hidden;\\n\\t\\tblock-size: var(--bar-block-size);\\n\\t\\tborder-radius: var(--border-radius-element);\\n\\t\\tbackground-color: var(--color-background-hover);\\n\\n\\t\\t// Full width at one line reads as a divider; an explicit size also mirrors in RTL.\\n\\t\\t&--heading {\\n\\t\\t\\tblock-size: 1lh;\\n\\t\\t\\tinline-size: 25%;\\n\\t\\t}\\n\\n\\t\\t// Transform, not background-position: keeps the animation off the main thread.\\n\\t\\t&::after {\\n\\t\\t\\tcontent: '';\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tinset: 0;\\n\\t\\t\\tbackground-image: linear-gradient(90deg, transparent, var(--color-placeholder-light), transparent);\\n\\t\\t\\ttransform: translateX(-100%);\\n\\t\\t\\tanimation: search-result-skeleton-sweep 1.6s linear infinite;\\n\\t\\t}\\n\\n\\t\\t&:dir(rtl)::after {\\n\\t\\t\\tanimation-direction: reverse;\\n\\t\\t}\\n\\n\\t\\t@media (prefers-reduced-motion: reduce) {\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tcontent: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n@keyframes search-result-skeleton-sweep {\\n\\tto {\\n\\t\\ttransform: translateX(100%);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.searchable-list__wrapper[data-v-66bd6570]{padding:calc(var(--default-grid-baseline)*3);display:flex;flex-direction:column;align-items:center;width:250px}.searchable-list__list[data-v-66bd6570]{width:100%;max-height:284px;overflow-y:auto;margin-top:var(--default-grid-baseline);padding:var(--default-grid-baseline)}.searchable-list__list[data-v-66bd6570] .button-vue{border-radius:var(--border-radius-large) !important}.searchable-list__list[data-v-66bd6570] .button-vue span{font-weight:initial}.searchable-list__empty-content[data-v-66bd6570]{margin-top:calc(var(--default-grid-baseline)*3)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchableList.vue\"],\"names\":[],\"mappings\":\"AAEC,2CACC,4CAAA,CACA,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,WAAA,CAGD,wCACC,UAAA,CACA,gBAAA,CACA,eAAA,CACA,uCAAA,CACA,oCAAA,CAEA,oDACC,mDAAA,CACA,yDACC,mBAAA,CAKH,iDACC,+CAAA\",\"sourcesContent\":[\"\\n.searchable-list {\\n\\t&__wrapper {\\n\\t\\tpadding: calc(var(--default-grid-baseline) * 3);\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\twidth: 250px;\\n\\t}\\n\\n\\t&__list {\\n\\t\\twidth: 100%;\\n\\t\\tmax-height: 284px;\\n\\t\\toverflow-y: auto;\\n\\t\\tmargin-top: var(--default-grid-baseline);\\n\\t\\tpadding: var(--default-grid-baseline);\\n\\n\\t\\t:deep(.button-vue) {\\n\\t\\t\\tborder-radius: var(--border-radius-large) !important;\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tfont-weight: initial;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__empty-content {\\n\\t\\tmargin-top: calc(var(--default-grid-baseline) * 3);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-input[data-v-30894250]{position:relative;z-index:51}.unified-search-input[data-v-30894250]:not(.unified-search-input--mobile){display:flex;align-items:center;width:var(--unified-search-width)}.unified-search-input--mobile[data-v-30894250]{display:contents}.unified-search-input__field[data-v-30894250]{--resting-background: rgba(0, 0, 0, 0.15);--resting-background-hover: rgba(0, 0, 0, 0.22);--search-icon-pad: 12px;--search-icon-size: 20px;--search-icon-gap: 8px;--search-anim-duration: 240ms;--search-anim-easing: cubic-bezier(0.22, 1, 0.36, 1);position:relative;container-type:inline-size;display:flex;align-items:center;height:var(--default-clickable-area);width:100%;border-radius:var(--border-radius-element, 8px);box-shadow:inset 0 2px 0 rgba(0,0,0,.12);background-color:var(--resting-background);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);transition:background-color var(--search-anim-duration) var(--search-anim-easing),box-shadow var(--search-anim-duration) var(--search-anim-easing)}.unified-search-input__field[data-v-30894250]:hover:not(.unified-search-input__field--active){background-color:var(--resting-background-hover)}.unified-search-input__field--active[data-v-30894250]{background-color:var(--color-main-background);box-shadow:none}.unified-search-input__resting[data-v-30894250]{--slide-sign: 1;position:absolute;inset-block:0;inset-inline-start:var(--search-icon-pad);max-width:calc(100% - 2*var(--search-icon-pad));display:flex;align-items:center;gap:var(--search-icon-gap);pointer-events:none;color:color-mix(in srgb, var(--color-background-plain-text) 70%, var(--color-background-plain));transform:translateX(calc(var(--slide-sign) * (50cqi - 50% - var(--search-icon-pad))));transition:transform var(--search-anim-duration) var(--search-anim-easing),color var(--search-anim-duration) var(--search-anim-easing)}.unified-search-input__field--active .unified-search-input__resting[data-v-30894250]{transform:translateX(0);color:var(--color-text-maxcontrast);max-width:calc(100% - 7*var(--search-icon-pad))}.unified-search-input__label[data-v-30894250]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:opacity var(--search-anim-duration) var(--search-anim-easing)}.unified-search-input__resting--filled .unified-search-input__label[data-v-30894250]{opacity:0}.unified-search-input__resting[data-v-30894250] .material-design-icon__svg{display:block;transform:translateY(1px)}.unified-search-input__input[data-v-30894250]{flex:1;min-width:0;height:100%;margin:0;padding-inline:calc(var(--search-icon-pad) + var(--search-icon-size) + var(--search-icon-gap)) var(--search-icon-pad);border:none !important;border-radius:0 !important;box-shadow:none !important;background-color:rgba(0,0,0,0);color:var(--color-main-text);font-size:var(--default-font-size)}.unified-search-input__input[data-v-30894250]::placeholder{opacity:1;color:var(--color-text-maxcontrast)}.unified-search-input__input[data-v-30894250]:focus-visible{outline:none}.unified-search-input__clear[data-v-30894250],.unified-search-input__filter[data-v-30894250]{flex-shrink:0;margin-inline-end:2px}.unified-search-input__loading[data-v-30894250]{flex-shrink:0;display:flex;align-items:center;margin-inline:var(--default-grid-baseline)}.unified-search-input__shortcut[data-v-30894250]{position:absolute;inset-inline-end:var(--default-grid-baseline);top:50%;transform:translateY(-50%);display:flex;pointer-events:none}@container (max-width: 400px){.unified-search-input__shortcut[data-v-30894250]{display:none}}.unified-search-input__shortcut[data-v-30894250] kbd{min-width:12px;height:12px;padding-inline:5px;border:1px solid color-mix(in srgb, var(--color-background-plain-text) 20%, transparent);border-block-end-width:2px;border-radius:var(--border-radius-small, 4px);color:color-mix(in srgb, var(--color-background-plain-text) 70%, var(--color-background-plain));font-size:13px}[data-theme-dark] .unified-search-input__field[data-v-30894250],[data-theme-dark-highcontrast] .unified-search-input__field[data-v-30894250]{--resting-background: color-mix(in srgb, var(--color-primary-element) 16%, transparent);--resting-background-hover: color-mix(in srgb, var(--color-primary-element) 22%, transparent)}.unified-search-input__resting[data-v-30894250]:dir(rtl){--slide-sign: -1}@media(prefers-reduced-motion: reduce){.unified-search-input__resting[data-v-30894250],.unified-search-input__resting span[data-v-30894250]{transition:none}}.unified-search-input--mobile[data-v-30894250] .header-menu{height:var(--default-clickable-area)}.unified-search-input--mobile[data-v-30894250] .header-menu__trigger{--button-size: var(--default-clickable-area) !important;height:var(--default-clickable-area) !important}.unified-search-input--mobile[data-v-30894250] .button-vue{--color-main-text: var(--color-background-plain-text);color:var(--color-background-plain-text);border-radius:var(--border-radius-element) !important}.unified-search-input--mobile[data-v-30894250] .button-vue:hover:not(:disabled){background-color:rgba(0,0,0,.1) !important}.unified-search-input--mobile[data-v-30894250] .button-vue:active:not(:disabled){background-color:rgba(0,0,0,.15) !important}.unified-search-input--mobile[data-v-30894250] .button-vue:focus-visible{background-color:rgba(0,0,0,.1) !important;outline:none !important;box-shadow:inset 0 0 0 2px var(--color-background-plain-text) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/UnifiedSearchInput.vue\"],\"names\":[],\"mappings\":\"AACA,uCAGC,iBAAA,CACA,UAAA,CAIA,0EACC,YAAA,CACA,kBAAA,CACA,iCAAA,CAGD,+CACC,gBAAA,CAGD,8CACC,yCAAA,CACA,+CAAA,CAGA,uBAAA,CACA,wBAAA,CACA,sBAAA,CAGA,6BAAA,CACA,oDAAA,CACA,iBAAA,CAEA,0BAAA,CACA,YAAA,CACA,kBAAA,CAGA,oCAAA,CACA,UAAA,CACA,+CAAA,CACA,wCAAA,CAEA,0CAAA,CACA,qDAAA,CACA,6CAAA,CAEA,kJACC,CAGD,8FACC,gDAAA,CAID,sDACC,6CAAA,CACA,eAAA,CAQF,gDACC,eAAA,CACA,iBAAA,CACA,aAAA,CACA,yCAAA,CACA,+CAAA,CACA,YAAA,CACA,kBAAA,CACA,0BAAA,CACA,mBAAA,CACA,+FAAA,CACA,sFAAA,CACA,sIACC,CAGD,qFACC,uBAAA,CACA,mCAAA,CACA,+CAAA,CAOF,8CACC,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,wEAAA,CAGD,qFACC,SAAA,CAOD,2EACC,aAAA,CACA,yBAAA,CAKD,8CACC,MAAA,CACA,WAAA,CACA,WAAA,CACA,QAAA,CAGA,qHAAA,CAIA,sBAAA,CACA,0BAAA,CACA,0BAAA,CACA,8BAAA,CACA,4BAAA,CACA,kCAAA,CAEA,2DACC,SAAA,CACA,mCAAA,CAGD,4DACC,YAAA,CAIF,6FAEC,aAAA,CACA,qBAAA,CAGD,gDACC,aAAA,CACA,YAAA,CACA,kBAAA,CACA,0CAAA,CAKD,iDACC,iBAAA,CACA,6CAAA,CACA,OAAA,CACA,0BAAA,CACA,YAAA,CACA,mBAAA,CAKA,8BAXD,iDAYE,YAAA,CAAA,CAGD,qDACC,cAAA,CACA,WAAA,CACA,kBAAA,CACA,wFAAA,CACA,0BAAA,CACA,6CAAA,CACA,+FAAA,CACA,cAAA,CAOH,6IAEC,uFAAA,CACA,6FAAA,CAOD,yDACC,gBAAA,CAKD,uCACC,qGAEC,eAAA,CAAA,CAKF,4DACC,oCAAA,CAGD,qEACC,uDAAA,CACA,+CAAA,CAGD,2DACC,qDAAA,CACA,wCAAA,CACA,qDAAA,CAEA,gFACC,0CAAA,CAGD,iFACC,2CAAA,CAGD,yEACC,0CAAA,CACA,uBAAA,CACA,wEAAA\",\"sourcesContent\":[\"\\n.unified-search-input {\\n\\t// Paints above the modal root (z-index: 50) so the header input stays clickable\\n\\t// over the scrim while the popover is open. Keep 51 one above that value.\\n\\tposition: relative;\\n\\tz-index: 51;\\n\\n\\t// No percentage max-width: the ancestors shrink-wrap to this element, so the\\n\\t// cap would resolve against its own width.\\n\\t&:not(.unified-search-input--mobile) {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\twidth: var(--unified-search-width);\\n\\t}\\n\\n\\t&--mobile {\\n\\t\\tdisplay: contents;\\n\\t}\\n\\n\\t&__field {\\n\\t\\t--resting-background: rgba(0, 0, 0, 0.15);\\n\\t\\t--resting-background-hover: rgba(0, 0, 0, 0.22);\\n\\t\\t// Shared geometry: the resting group and the input's leading padding read the\\n\\t\\t// same tokens so the placeholder and the typed value line up.\\n\\t\\t--search-icon-pad: 12px;\\n\\t\\t--search-icon-size: 20px;\\n\\t\\t--search-icon-gap: 8px;\\n\\t\\t// One shared timing for every focus transition (background, the icon/label\\n\\t\\t// slide, the recolour) so they move together. easeOutQuart = soft landing.\\n\\t\\t--search-anim-duration: 240ms;\\n\\t\\t--search-anim-easing: cubic-bezier(0.22, 1, 0.36, 1);\\n\\t\\tposition: relative;\\n\\t\\t// Query container so the resting group can centre itself with cqi units\\n\\t\\tcontainer-type: inline-size;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\t// Match the default clickable area so the inner (which the global\\n\\t\\t// input reset forces to that height) fills the field without an override.\\n\\t\\theight: var(--default-clickable-area);\\n\\t\\twidth: 100%;\\n\\t\\tborder-radius: var(--border-radius-element, 8px);\\n\\t\\tbox-shadow: inset 0 2px 0 rgba(0, 0, 0, 0.12);\\n\\t\\t// Resting: subdued \\\"button\\\" look that sits on the themed header\\n\\t\\tbackground-color: var(--resting-background);\\n\\t\\t-webkit-backdrop-filter: var(--filter-background-blur);\\n\\t\\tbackdrop-filter: var(--filter-background-blur);\\n\\t\\t// Blue tint -> white surface on the shared timing, in step with the slide.\\n\\t\\ttransition:\\n\\t\\t\\tbackground-color var(--search-anim-duration) var(--search-anim-easing),\\n\\t\\t\\tbox-shadow var(--search-anim-duration) var(--search-anim-easing);\\n\\n\\t\\t&:hover:not(.unified-search-input__field--active) {\\n\\t\\t\\tbackground-color: var(--resting-background-hover);\\n\\t\\t}\\n\\n\\t\\t// Active: real input surface once focused or filled\\n\\t\\t&--active {\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tbox-shadow: none;\\n\\t\\t}\\n\\t}\\n\\n\\t// Anchored at the leading edge and translated to the centre while at rest; on\\n\\t// focus (--active) the translate goes to 0 and it slides into place. Centre offset\\n\\t// is pure CSS: half the field (50cqi) minus half the group (50%) minus the pad, so\\n\\t// it self-corrects for any placeholder length or field width.\\n\\t&__resting {\\n\\t\\t--slide-sign: 1;\\n\\t\\tposition: absolute;\\n\\t\\tinset-block: 0;\\n\\t\\tinset-inline-start: var(--search-icon-pad);\\n\\t\\tmax-width: calc(100% - 2 * var(--search-icon-pad));\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tgap: var(--search-icon-gap);\\n\\t\\tpointer-events: none;\\n\\t\\tcolor: color-mix(in srgb, var(--color-background-plain-text) 70%, var(--color-background-plain));\\n\\t\\ttransform: translateX(calc(var(--slide-sign) * (50cqi - 50% - var(--search-icon-pad))));\\n\\t\\ttransition:\\n\\t\\t\\ttransform var(--search-anim-duration) var(--search-anim-easing),\\n\\t\\t\\tcolor var(--search-anim-duration) var(--search-anim-easing);\\n\\n\\t\\t.unified-search-input__field--active & {\\n\\t\\t\\ttransform: translateX(0);\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tmax-width: calc(100% - 7 * var(--search-icon-pad));\\n\\t\\t}\\n\\t}\\n\\n\\t// Placeholder text inside the resting group. Ellipsised, and hidden once typing\\n\\t// starts so it doesn't overlap the value. Scoped to the label class so the sibling\\n\\t// magnifier (also rendered as a ) stays visible.\\n\\t&__label {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\ttransition: opacity var(--search-anim-duration) var(--search-anim-easing);\\n\\t}\\n\\n\\t&__resting--filled &__label {\\n\\t\\topacity: 0;\\n\\t}\\n\\n\\t// The material-design icon is inline (baseline-aligned), which leaves a\\n\\t// descender gap and makes the glyph sit high even when its box is centred.\\n\\t// Render it as a block so it fills its box, then nudge 1px down to sit on the\\n\\t// text's optical centre (a geometrically centred glyph reads slightly high).\\n\\t&__resting :deep(.material-design-icon__svg) {\\n\\t\\tdisplay: block;\\n\\t\\ttransform: translateY(1px);\\n\\t}\\n\\n\\t// Only visible once active (at rest it's empty and covered by the overlay),\\n\\t// so it's styled for the active/white surface throughout.\\n\\t&__input {\\n\\t\\tflex: 1;\\n\\t\\tmin-width: 0;\\n\\t\\theight: 100%;\\n\\t\\tmargin: 0;\\n\\t\\t// Leading space so the placeholder/value starts one gap past the magnifier,\\n\\t\\t// matching the resting group exactly. Trailing padding mirrors the leading pad.\\n\\t\\tpadding-inline: calc(var(--search-icon-pad) + var(--search-icon-size) + var(--search-icon-gap)) var(--search-icon-pad);\\n\\t\\t// Opt out of NC's global input chrome (core/css/inputs.scss adds a border,\\n\\t\\t// radius and focus box-shadow to any text input not in its exclusion list).\\n\\t\\t// !important because that global focus rule outweighs a scoped class.\\n\\t\\tborder: none !important;\\n\\t\\tborder-radius: 0 !important;\\n\\t\\tbox-shadow: none !important;\\n\\t\\tbackground-color: transparent;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tfont-size: var(--default-font-size);\\n\\n\\t\\t&::placeholder {\\n\\t\\t\\topacity: 1;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\n\\t\\t&:focus-visible {\\n\\t\\t\\toutline: none;\\n\\t\\t}\\n\\t}\\n\\n\\t&__clear,\\n\\t&__filter {\\n\\t\\tflex-shrink: 0;\\n\\t\\tmargin-inline-end: 2px;\\n\\t}\\n\\n\\t&__loading {\\n\\t\\tflex-shrink: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tmargin-inline: var(--default-grid-baseline);\\n\\t}\\n\\n\\t// Pinned to the trailing edge, overlaid on the input (pointer-events: none so a\\n\\t// click there still focuses the field).\\n\\t&__shortcut {\\n\\t\\tposition: absolute;\\n\\t\\tinset-inline-end: var(--default-grid-baseline);\\n\\t\\ttop: 50%;\\n\\t\\ttransform: translateY(-50%);\\n\\t\\tdisplay: flex;\\n\\t\\tpointer-events: none;\\n\\n\\t\\t// On a narrow field the centred placeholder runs under the hint, so drop it\\n\\t\\t// below a usable width. Keyed to the field's own inline-size (its container),\\n\\t\\t// not the viewport, so it holds however crowded the header gets.\\n\\t\\t@container (max-width: 400px) {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\n\\t\\t:deep(kbd) {\\n\\t\\t\\tmin-width: 12px;\\n\\t\\t\\theight: 12px;\\n\\t\\t\\tpadding-inline: 5px;\\n\\t\\t\\tborder: 1px solid color-mix(in srgb, var(--color-background-plain-text) 20%, transparent);\\n\\t\\t\\tborder-block-end-width: 2px;\\n\\t\\t\\tborder-radius: var(--border-radius-small, 4px);\\n\\t\\t\\tcolor: color-mix(in srgb, var(--color-background-plain-text) 70%, var(--color-background-plain));\\n\\t\\t\\tfont-size: 13px;\\n\\t\\t}\\n\\t}\\n}\\n\\n// On dark themes the plain overlay is nearly invisible on the header, so tint\\n// the resting background with the primary colour instead.\\n[data-theme-dark] .unified-search-input__field,\\n[data-theme-dark-highcontrast] .unified-search-input__field {\\n\\t--resting-background: color-mix(in srgb, var(--color-primary-element) 16%, transparent);\\n\\t--resting-background-hover: color-mix(in srgb, var(--color-primary-element) 22%, transparent);\\n}\\n\\n// translateX is physical, so flip the resting slide under RTL to keep it moving toward\\n// the leading (right) edge. :dir(rtl) tracks the computed direction, so it applies whether\\n// RTL comes from the body dir attribute or a direction style (an [dir=rtl] attribute\\n// selector would miss the latter).\\n.unified-search-input__resting:dir(rtl) {\\n\\t--slide-sign: -1;\\n}\\n\\n// Respect reduced-motion: keep the end states but drop the slide/fade so nothing\\n// animates on focus.\\n@media (prefers-reduced-motion: reduce) {\\n\\t.unified-search-input__resting,\\n\\t.unified-search-input__resting span {\\n\\t\\ttransition: none;\\n\\t}\\n}\\n\\n// Mobile: NcHeaderButton styling to match the other header items\\n.unified-search-input--mobile :deep(.header-menu) {\\n\\theight: var(--default-clickable-area);\\n}\\n\\n.unified-search-input--mobile :deep(.header-menu__trigger) {\\n\\t--button-size: var(--default-clickable-area) !important;\\n\\theight: var(--default-clickable-area) !important;\\n}\\n\\n.unified-search-input--mobile :deep(.button-vue) {\\n\\t--color-main-text: var(--color-background-plain-text);\\n\\tcolor: var(--color-background-plain-text);\\n\\tborder-radius: var(--border-radius-element) !important;\\n\\n\\t&:hover:not(:disabled) {\\n\\t\\tbackground-color: rgba(0, 0, 0, 0.1) !important;\\n\\t}\\n\\n\\t&:active:not(:disabled) {\\n\\t\\tbackground-color: rgba(0, 0, 0, 0.15) !important;\\n\\t}\\n\\n\\t&:focus-visible {\\n\\t\\tbackground-color: rgba(0, 0, 0, 0.1) !important;\\n\\t\\toutline: none !important;\\n\\t\\tbox-shadow: inset 0 0 0 2px var(--color-background-plain-text) !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z%27/%3E%3C/svg%3E\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-modal-root[data-v-e755dab0]{position:absolute;inset-block-start:100%;inset-inline:0;z-index:50 !important;margin-block-start:6px;display:flex;justify-content:center}.unified-search-modal__scrim[data-v-e755dab0]{position:fixed;inset:0;z-index:0;--backdrop-color: 0, 0, 0;background-color:rgba(var(--backdrop-color), 0.5)}.unified-search-modal__container[data-v-e755dab0]{position:relative;z-index:1;display:flex;flex-direction:column;flex-shrink:0;width:600px;max-width:90vw;max-height:calc(90vh - var(--header-height));border-radius:var(--border-radius-container-large, var(--border-radius-rounded));overflow:clip;background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 40px rgba(0,0,0,.2);transition:transform 240ms cubic-bezier(0.22, 1, 0.36, 1)}.unified-search-modal__container.is-animating-height .unified-search-modal__results[data-v-e755dab0]{overflow:clip}@media only screen and ((max-width: 512px) or (max-height: 400px)){.unified-search-modal-root[data-v-e755dab0]{position:fixed;inset-block-start:var(--header-height);inset-inline:0;inset-block-end:0;margin-block-start:0}.unified-search-modal__container[data-v-e755dab0]{width:100%;max-width:initial;height:100%;max-height:initial;border-radius:0}}.unified-search-modal-enter-active[data-v-e755dab0],.unified-search-modal-leave-active[data-v-e755dab0]{transition:opacity 250ms}.unified-search-modal-enter[data-v-e755dab0],.unified-search-modal-leave-to[data-v-e755dab0]{opacity:0}.unified-search-modal-enter .unified-search-modal__container[data-v-e755dab0],.unified-search-modal-leave-to .unified-search-modal__container[data-v-e755dab0]{transform:translateY(-6px)}@media(prefers-reduced-motion: reduce){.unified-search-modal__container[data-v-e755dab0]{transition:none}.unified-search-modal-enter .unified-search-modal__container[data-v-e755dab0],.unified-search-modal-leave-to .unified-search-modal__container[data-v-e755dab0]{transform:none}}.unified-search-modal__header[data-v-e755dab0]{position:relative;display:flex;flex-direction:column;flex-shrink:0;gap:calc(var(--default-grid-baseline)*2);padding-inline:calc(var(--default-grid-baseline)*4);padding-block:calc(var(--default-grid-baseline)*4) 0}.unified-search-modal__header--has-content-below[data-v-e755dab0]{padding-block-end:calc(var(--default-grid-baseline)*4)}.unified-search-modal__header--has-content-below[data-v-e755dab0]::after{content:\"\";position:absolute;inset-inline:calc(var(--default-grid-baseline)*4);inset-block-end:0;border-block-end:1px solid var(--color-border)}.unified-search-modal__mobile-input[data-v-e755dab0]{display:flex;align-items:center;gap:4px}.unified-search-modal__mobile-input[data-v-e755dab0] .input-field{flex:1 1 auto}.unified-search-modal__filters[data-v-e755dab0]{display:flex;flex-wrap:wrap;gap:4px;justify-content:start}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-e755dab0],.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-e755dab0],.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-e755dab0]{flex:1 1 0;min-width:0}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-e755dab0] .v-popper,.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-e755dab0] .v-popper,.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-e755dab0] .v-popper{display:block;width:100%}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-e755dab0] .button-vue__wrapper,.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-e755dab0] .button-vue__wrapper,.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-e755dab0] .button-vue__wrapper{justify-content:center}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-e755dab0] .button-vue,.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-e755dab0] .button-vue,.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-e755dab0] .button-vue{position:relative;width:100%;padding-inline:calc(var(--default-grid-baseline)*6);border-radius:var(--border-radius-element)}.unified-search-modal__filters>[data-cy-unified-search-filter=places][data-v-e755dab0] .button-vue::after,.unified-search-modal__filters>[data-cy-unified-search-filter=date][data-v-e755dab0] .button-vue::after,.unified-search-modal__filters>[data-cy-unified-search-filter=people][data-v-e755dab0] .button-vue::after{content:\"\";position:absolute;inset-inline-end:calc(var(--default-grid-baseline)*2);inset-block:0;margin-block:auto;width:16px;height:16px;background-color:currentColor;mask-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});mask-repeat:no-repeat;mask-position:center;mask-size:contain}.unified-search-modal__filters-applied[data-v-e755dab0]{display:flex;flex-wrap:wrap}.unified-search-modal__no-content[data-v-e755dab0]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--default-grid-baseline)*2);min-height:200px;padding-inline:calc(var(--default-grid-baseline)*4);padding-block-end:calc(var(--default-grid-baseline)*4)}.unified-search-modal__detail-header[data-v-e755dab0]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:calc(var(--default-grid-baseline)*2);position:sticky;top:0;z-index:1;background-color:var(--color-main-background);padding-block:calc(var(--default-grid-baseline)*3) calc(var(--default-grid-baseline)*2);border-block-end:1px solid var(--color-border)}.unified-search-modal__detail-back[data-v-e755dab0]{justify-self:start}.unified-search-modal__detail-title[data-v-e755dab0]{font-size:var(--default-font-size);font-weight:var(--font-weight-heading);grid-column:2;margin:0;margin-block-start:-3px;align-self:stretch;display:flex;align-items:center;justify-content:center}.unified-search-modal__rtl-icon[data-v-e755dab0]:dir(rtl){transform:scaleX(-1)}.unified-search-modal__results[data-v-e755dab0]{flex:1 1 auto;min-height:0;overflow:hidden auto}.unified-search-modal__results--held[data-v-e755dab0]{display:flex;flex-direction:column;flex-grow:0}.unified-search-modal__results--held>*[data-v-e755dab0]:not(.search-result-skeleton){flex:none}.unified-search-modal__results[data-v-e755dab0]{padding-inline:calc(var(--default-grid-baseline)*4);padding-block:0 calc(var(--default-grid-baseline)*4)}.unified-search-modal__results .search-result-skeleton[data-v-e755dab0]{margin-block-start:14px;flex:1 1 0;min-block-size:0;overflow:clip;mask-image:linear-gradient(to bottom, #000 calc(100% - min(2lh, 25%)), transparent)}.unified-search-modal__results .result-title[data-v-e755dab0]{color:var(--color-text-maxcontrast);font-size:var(--default-font-size);margin-block:14px 4px;margin-inline-start:calc(var(--default-grid-baseline)*2)}.unified-search-modal__results .result-title--more[data-v-e755dab0]{margin-block:calc(var(--default-grid-baseline)*2) var(--default-grid-baseline)}.unified-search-modal__results .result-title--more[data-v-e755dab0] .button-vue__text{font-size:var(--default-font-size);color:var(--color-main-text)}.unified-search-modal__results .result-title--more[data-v-e755dab0] .button-vue__icon{color:var(--color-main-text)}.unified-search-modal__results .result-footer[data-v-e755dab0]{justify-content:space-between;align-items:center;display:flex}.unified-search-modal__results .result--unfiltered[data-v-e755dab0]{opacity:.7}.unified-search-modal__unfiltered-header[data-v-e755dab0]{display:flex;flex-direction:column;gap:2px;margin-block:16px 8px;padding-block:12px 0}.result-group+.result-group>.unified-search-modal__unfiltered-header[data-v-e755dab0]{border-block-start:1px solid var(--color-border)}.unified-search-modal__unfiltered-label[data-v-e755dab0]{font-weight:var(--font-weight-heading);color:var(--color-text-maxcontrast)}.filter-button__icon[data-v-e755dab0]{height:20px;width:20px;object-fit:contain;filter:var(--background-invert-if-bright);padding:11px}@media only screen and (max-height: 400px){.unified-search-modal__results[data-v-e755dab0]{overflow:unset}}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/UnifiedSearchModal.vue\"],\"names\":[],\"mappings\":\"AAKA,4CACC,iBAAA,CACA,sBAAA,CACA,cAAA,CAGA,qBAAA,CACA,sBAAA,CACA,YAAA,CACA,sBAAA,CAKD,8CACC,cAAA,CACA,OAAA,CACA,SAAA,CACA,yBAAA,CACA,iDAAA,CAKD,kDACC,iBAAA,CACA,SAAA,CACA,YAAA,CACA,qBAAA,CAGA,aAAA,CACA,WAAA,CACA,cAAA,CAEA,4CAAA,CACA,gFAAA,CAGA,aAAA,CACA,6CAAA,CACA,4BAAA,CACA,kCAAA,CAGA,yDAAA,CAID,qGACC,aAAA,CAID,mEACC,4CAGC,cAAA,CACA,sCAAA,CACA,cAAA,CACA,iBAAA,CACA,oBAAA,CAGD,kDACC,UAAA,CACA,iBAAA,CACA,WAAA,CACA,kBAAA,CACA,eAAA,CAAA,CAKF,wGAEC,wBAAA,CAGD,6FAEC,SAAA,CAGD,+JAEC,0BAAA,CAKD,uCACC,kDACC,eAAA,CAGD,+JAEC,cAAA,CAAA,CAKD,+CAKC,iBAAA,CACA,YAAA,CACA,qBAAA,CAEA,aAAA,CACA,wCAAA,CACA,mDAAA,CAEA,oDAAA,CAIA,kEACC,sDAAA,CAEA,yEACC,UAAA,CACA,iBAAA,CACA,iDAAA,CACA,iBAAA,CACA,8CAAA,CAKH,qDACC,YAAA,CACA,kBAAA,CACA,OAAA,CAEA,kEACC,aAAA,CAIF,gDACC,YAAA,CACA,cAAA,CACA,OAAA,CACA,qBAAA,CAIA,mQAGC,UAAA,CACA,WAAA,CAEA,iSACC,aAAA,CACA,UAAA,CAID,kUACC,sBAAA,CAID,uSACC,iBAAA,CACA,UAAA,CACA,mDAAA,CACA,0CAAA,CAEA,4TACC,UAAA,CACA,iBAAA,CACA,qDAAA,CACA,aAAA,CACA,iBAAA,CACA,UAAA,CACA,WAAA,CACA,6BAAA,CACA,kDAAA,CACA,qBAAA,CACA,oBAAA,CACA,iBAAA,CAMJ,wDACC,YAAA,CACA,cAAA,CAGD,mDACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,sBAAA,CACA,wCAAA,CAEA,gBAAA,CAEA,mDAAA,CACA,sDAAA,CAID,sDAEC,YAAA,CACA,kCAAA,CACA,kBAAA,CACA,wCAAA,CAGA,eAAA,CACA,KAAA,CACA,SAAA,CACA,6CAAA,CACA,uFAAA,CACA,8CAAA,CAGD,oDACC,kBAAA,CAGD,qDACC,kCAAA,CACA,sCAAA,CACA,aAAA,CACA,QAAA,CACA,uBAAA,CAGA,kBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CAKD,0DACC,oBAAA,CAGD,gDAEC,aAAA,CACA,YAAA,CACA,oBAAA,CAIA,sDACC,YAAA,CACA,qBAAA,CACA,WAAA,CAEA,qFACC,SAAA,CAdH,gDAkBC,mDAAA,CACA,oDAAA,CAEA,wEAEC,uBAAA,CAEA,UAAA,CACA,gBAAA,CACA,aAAA,CAEA,mFAAA,CAIA,8DACC,mCAAA,CACA,kCAAA,CAEA,qBAAA,CACA,wDAAA,CAKD,oEACC,8EAAA,CAEA,sFACC,kCAAA,CACA,4BAAA,CAGD,sFACC,4BAAA,CAIF,+DACC,6BAAA,CACA,kBAAA,CACA,YAAA,CAGD,oEACC,UAAA,CAMH,0DACC,YAAA,CACA,qBAAA,CACA,OAAA,CACA,qBAAA,CACA,oBAAA,CAKA,sFACC,gDAAA,CAIF,yDACC,sCAAA,CACA,mCAAA,CAIF,sCACC,WAAA,CACA,UAAA,CACA,kBAAA,CACA,yCAAA,CACA,YAAA,CAID,2CACC,gDACC,cAAA,CAAA\",\"sourcesContent\":[\"\\n\\n// Anchor the popover under the header input (the .unified-search-menu parent is\\n// the positioning context) instead of centering it in the viewport. The scrim is\\n// fixed separately so it still dims the whole page.\\n.unified-search-modal-root {\\n\\tposition: absolute;\\n\\tinset-block-start: 100%;\\n\\tinset-inline: 0;\\n\\t// One below the header input (z-index: 51) and above the page. !important wins\\n\\t// the stacking cascade inside the themed #header.\\n\\tz-index: 50 !important;\\n\\tmargin-block-start: 6px;\\n\\tdisplay: flex;\\n\\tjustify-content: center;\\n}\\n\\n// Backdrop, mirrors NcModal's .modal-mask. Fixed so it covers the whole viewport\\n// regardless of the anchored root.\\n.unified-search-modal__scrim {\\n\\tposition: fixed;\\n\\tinset: 0;\\n\\tz-index: 0;\\n\\t--backdrop-color: 0, 0, 0;\\n\\tbackground-color: rgba(var(--backdrop-color), 0.5);\\n}\\n\\n// Dialog panel: NcModal's \\\"normal\\\" chrome, but width-matched to the header input\\n// and anchored under it, growing downward and scrolling internally when tall.\\n.unified-search-modal__container {\\n\\tposition: relative;\\n\\tz-index: 1;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\t// Match the previous unified-search modal (NcModal \\\"normal\\\" size). flex-shrink: 0\\n\\t// stops the flex parent from collapsing it below 600px when the menu is narrower.\\n\\tflex-shrink: 0;\\n\\twidth: 600px;\\n\\tmax-width: 90vw;\\n\\t// Leave ~10vh below the panel so it does not reach the bottom of the page\\n\\tmax-height: calc(90vh - var(--header-height));\\n\\tborder-radius: var(--border-radius-container-large, var(--border-radius-rounded));\\n\\t// Clip the header/results to the rounded corners. `clip` rather than `hidden` so this is\\n\\t// not a scroll container: a squeezed panel would otherwise scroll the filter row away.\\n\\toverflow: clip;\\n\\tbackground-color: var(--color-main-background);\\n\\tcolor: var(--color-main-text);\\n\\tbox-shadow: 0 0 40px rgba(0, 0, 0, 0.2);\\n\\t// The panel slides down into place; the enter/leave classes set the start offset.\\n\\t// Same easeOutQuart curve as the header input so the whole search UI moves in step.\\n\\ttransition: transform 240ms cubic-bezier(0.22, 1, 0.36, 1);\\n}\\n\\n// Mid-resize the panel is shorter than its content; clip so no scrollbar flashes.\\n.unified-search-modal__container.is-animating-height .unified-search-modal__results {\\n\\toverflow: clip;\\n}\\n\\n// Fullscreen on small viewports, mirrors NcModal's responsive breakpoint\\n@media only screen and ((max-width: 512px) or (max-height: 400px)) {\\n\\t.unified-search-modal-root {\\n\\t\\t// Fill the viewport below the header bar, leaving it visible and interactive\\n\\t\\t// (matches the previous unified search and the rest of the mobile chrome).\\n\\t\\tposition: fixed;\\n\\t\\tinset-block-start: var(--header-height);\\n\\t\\tinset-inline: 0;\\n\\t\\tinset-block-end: 0;\\n\\t\\tmargin-block-start: 0;\\n\\t}\\n\\n\\t.unified-search-modal__container {\\n\\t\\twidth: 100%;\\n\\t\\tmax-width: initial;\\n\\t\\theight: 100%;\\n\\t\\tmax-height: initial;\\n\\t\\tborder-radius: 0;\\n\\t}\\n}\\n\\n// Open/close animation: the backdrop fades while the panel slides down from the top\\n.unified-search-modal-enter-active,\\n.unified-search-modal-leave-active {\\n\\ttransition: opacity 250ms;\\n}\\n\\n.unified-search-modal-enter,\\n.unified-search-modal-leave-to {\\n\\topacity: 0;\\n}\\n\\n.unified-search-modal-enter .unified-search-modal__container,\\n.unified-search-modal-leave-to .unified-search-modal__container {\\n\\ttransform: translateY(-6px);\\n}\\n\\n// Respect reduced-motion: keep the backdrop cross-fade (opacity is not motion) but\\n// drop the panel slide so nothing moves on open/close.\\n@media (prefers-reduced-motion: reduce) {\\n\\t.unified-search-modal__container {\\n\\t\\ttransition: none;\\n\\t}\\n\\n\\t.unified-search-modal-enter .unified-search-modal__container,\\n\\t.unified-search-modal-leave-to .unified-search-modal__container {\\n\\t\\ttransform: none;\\n\\t}\\n}\\n\\n.unified-search-modal {\\n\\t&__header {\\n\\t\\t// Owns all its own spacing: the inline inset, the gap above the first row, and the\\n\\t\\t// gap between stacked rows (mobile input, filters, applied chips). position:\\n\\t\\t// relative only anchors the divider below; the header never scrolls (the results\\n\\t\\t// list scrolls in its own box), so it needs no sticky offset.\\n\\t\\tposition: relative;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\t// The results box absorbs the resize; the filter row keeps its size.\\n\\t\\tflex-shrink: 0;\\n\\t\\tgap: calc(var(--default-grid-baseline) * 2);\\n\\t\\tpadding-inline: calc(var(--default-grid-baseline) * 4);\\n\\t\\t// Trim the bottom when the filter row is all there is; results add it back below.\\n\\t\\tpadding-block: calc(var(--default-grid-baseline) * 4) 0;\\n\\n\\t\\t// With content below, restore the full bottom inset above the divider (which aligns\\n\\t\\t// to the content edge).\\n\\t\\t&--has-content-below {\\n\\t\\t\\tpadding-block-end: calc(var(--default-grid-baseline) * 4);\\n\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tinset-inline: calc(var(--default-grid-baseline) * 4);\\n\\t\\t\\t\\tinset-block-end: 0;\\n\\t\\t\\t\\tborder-block-end: 1px solid var(--color-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__mobile-input {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tgap: 4px;\\n\\n\\t\\t:deep(.input-field) {\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t}\\n\\t}\\n\\n\\t&__filters {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tgap: 4px;\\n\\t\\tjustify-content: start;\\n\\n\\t\\t// The three category triggers split the row into thirds; any extra controls\\n\\t\\t// (local search) keep their size and wrap below.\\n\\t\\t> [data-cy-unified-search-filter=\\\"places\\\"],\\n\\t\\t> [data-cy-unified-search-filter=\\\"date\\\"],\\n\\t\\t> [data-cy-unified-search-filter=\\\"people\\\"] {\\n\\t\\t\\tflex: 1 1 0;\\n\\t\\t\\tmin-width: 0;\\n\\n\\t\\t\\t:deep(.v-popper) {\\n\\t\\t\\t\\tdisplay: block;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// Centre [icon] label; the chevron is pinned to the trailing edge below.\\n\\t\\t\\t:deep(.button-vue__wrapper) {\\n\\t\\t\\t\\tjustify-content: center;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// NcActions exposes no dropdown chevron, so paint one at the trailing edge.\\n\\t\\t\\t:deep(.button-vue) {\\n\\t\\t\\t\\tposition: relative;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\tpadding-inline: calc(var(--default-grid-baseline) * 6);\\n\\t\\t\\t\\tborder-radius: var(--border-radius-element);\\n\\n\\t\\t\\t\\t&::after {\\n\\t\\t\\t\\t\\tcontent: '';\\n\\t\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\t\\tinset-inline-end: calc(var(--default-grid-baseline) * 2);\\n\\t\\t\\t\\t\\tinset-block: 0;\\n\\t\\t\\t\\t\\tmargin-block: auto;\\n\\t\\t\\t\\t\\twidth: 16px;\\n\\t\\t\\t\\t\\theight: 16px;\\n\\t\\t\\t\\t\\tbackground-color: currentColor;\\n\\t\\t\\t\\t\\tmask-image: url(\\\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z'/%3E%3C/svg%3E\\\");\\n\\t\\t\\t\\t\\tmask-repeat: no-repeat;\\n\\t\\t\\t\\t\\tmask-position: center;\\n\\t\\t\\t\\t\\tmask-size: contain;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__filters-applied {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t}\\n\\n\\t&__no-content {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\tgap: calc(var(--default-grid-baseline) * 2);\\n\\t\\t// min-height (not fixed) so the panel grows to keep the button inside, not spilling past the edge.\\n\\t\\tmin-height: 200px;\\n\\t\\t// Match the results container's inset so the button lines up, not flush to the edges.\\n\\t\\tpadding-inline: calc(var(--default-grid-baseline) * 4);\\n\\t\\tpadding-block-end: calc(var(--default-grid-baseline) * 4);\\n\\t}\\n\\n\\t// Detail-view chrome: the back control sits above the category's heading + list.\\n\\t&__detail-header {\\n\\t\\t// Three tracks: \\\"Back\\\" at the start, title centred, empty end track to balance it.\\n\\t\\tdisplay: grid;\\n\\t\\tgrid-template-columns: 1fr auto 1fr;\\n\\t\\talign-items: center;\\n\\t\\tgap: calc(var(--default-grid-baseline) * 2);\\n\\t\\t// Sticky at the top of the scrolling results. Background hides rows underneath; padding\\n\\t\\t// (not margin) stops bleed-through above.\\n\\t\\tposition: sticky;\\n\\t\\ttop: 0;\\n\\t\\tz-index: 1;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tpadding-block: calc(var(--default-grid-baseline) * 3) calc(var(--default-grid-baseline) * 2);\\n\\t\\tborder-block-end: 1px solid var(--color-border);\\n\\t}\\n\\n\\t&__detail-back {\\n\\t\\tjustify-self: start;\\n\\t}\\n\\n\\t&__detail-title {\\n\\t\\tfont-size: var(--default-font-size);\\n\\t\\tfont-weight: var(--font-weight-heading);\\n\\t\\tgrid-column: 2;\\n\\t\\tmargin: 0;\\n\\t\\tmargin-block-start: -3px;\\n\\t\\t// Centre the text the same way the Back button centres its label: stretch to the row\\n\\t\\t// height and flex-centre, instead of a line-height that lands the ink a few px off.\\n\\t\\talign-self: stretch;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t}\\n\\n\\t// Directional glyphs (back arrow, more-from chevron) point the other way in RTL.\\n\\t// :dir(rtl) tracks the computed direction, unlike an [dir=rtl] attribute selector.\\n\\t&__rtl-icon:dir(rtl) {\\n\\t\\ttransform: scaleX(-1);\\n\\t}\\n\\n\\t&__results {\\n\\t\\t// Take the remaining panel height and scroll internally (container has a max-height)\\n\\t\\tflex: 1 1 auto;\\n\\t\\tmin-height: 0;\\n\\t\\toverflow: hidden auto;\\n\\n\\t\\t// The reserved height is a floor, not a size. Column layout so the placeholders can\\n\\t\\t// take what the results leave.\\n\\t\\t&--held {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\tflex-grow: 0;\\n\\n\\t\\t\\t> *:not(.search-result-skeleton) {\\n\\t\\t\\t\\tflex: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t// Adjust padding to match container but keep the scrollbar on the very end\\n\\t\\tpadding-inline: calc(var(--default-grid-baseline) * 4);\\n\\t\\tpadding-block: 0 calc(var(--default-grid-baseline) * 4);\\n\\n\\t\\t.search-result-skeleton {\\n\\t\\t\\t// Matches the gap a category title keeps above itself.\\n\\t\\t\\tmargin-block-start: 14px;\\n\\t\\t\\t// The placeholders deliberately overfill, so the bottom fades out over the cut.\\n\\t\\t\\tflex: 1 1 0;\\n\\t\\t\\tmin-block-size: 0;\\n\\t\\t\\toverflow: clip;\\n\\t\\t\\t// Capped, so a short box does not spend a third of itself fading.\\n\\t\\t\\tmask-image: linear-gradient(to bottom, #000 calc(100% - min(2lh, 25%)), transparent);\\n\\t\\t}\\n\\n\\t\\t.result {\\n\\t\\t\\t&-title {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t\\t\\t// 14px is not a grid multiple; kept raw rather than mixing units in one shorthand.\\n\\t\\t\\t\\tmargin-block: 14px 4px;\\n\\t\\t\\t\\tmargin-inline-start: calc(var(--default-grid-baseline) * 2);\\n\\t\\t\\t}\\n\\n\\t\\t\\t// The overflow heading is a real button; match the plain title's size and colour,\\n\\t\\t\\t// but leave it NcButton's own --font-weight-element weight.\\n\\t\\t\\t&-title--more {\\n\\t\\t\\t\\tmargin-block: calc(var(--default-grid-baseline) * 2) var(--default-grid-baseline);\\n\\n\\t\\t\\t\\t:deep(.button-vue__text) {\\n\\t\\t\\t\\t\\tfont-size: var(--default-font-size);\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t:deep(.button-vue__icon) {\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-footer {\\n\\t\\t\\t\\tjustify-content: space-between;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--unfiltered {\\n\\t\\t\\t\\topacity: 0.7;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__unfiltered-header {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tgap: 2px;\\n\\t\\tmargin-block: 16px 8px;\\n\\t\\tpadding-block: 12px 0;\\n\\n\\t\\t// Divide the partial matches from the results above, but only when some precede\\n\\t\\t// them: when they lead the list this rule lands just under the header's own\\n\\t\\t// divider, and the two read as one double line.\\n\\t\\t.result-group + .result-group > & {\\n\\t\\t\\tborder-block-start: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t&__unfiltered-label {\\n\\t\\tfont-weight: var(--font-weight-heading);\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\\n.filter-button__icon {\\n\\theight: 20px;\\n\\twidth: 20px;\\n\\tobject-fit: contain;\\n\\tfilter: var(--background-invert-if-bright);\\n\\tpadding: 11px; // align with text to fit at least 44px\\n}\\n\\n// Ensure modal is accessible on small devices\\n@media only screen and (max-height: 400px) {\\n\\t.unified-search-modal__results {\\n\\t\\toverflow: unset;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-menu[data-v-2127a3b2]{position:relative;display:flex;align-items:center;justify-content:center}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/UnifiedSearch.vue\"],\"names\":[],\"mappings\":\"AAEA,sCAEC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n// this is needed to allow us overriding component styles (focus-visible)\\n.unified-search-menu {\\n\\t// Positioning context so the results popover can anchor under the input\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tconst module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","const deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + \"596f07f6142378ddcbdc\" + \"\";\n};","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","const inProgress = {};\nconst dataWebpackPrefix = \"nextcloud-ui-legacy:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tlet script, needAttach;\n\tif(key !== undefined) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tconst s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tconst onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tconst doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode?.removeChild(script);\n\t\tdoneFns?.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tconst timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 6776;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","let scriptUrl;\nif (globalThis.importScripts) scriptUrl = globalThis.location + \"\";\nconst document = globalThis.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript?.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tlet i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nconst installedChunks = {\n\t6776: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tlet installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tconst promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tconst url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tconst error = new Error();\n\t\t\t\t\tconst loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tconst errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tconst realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\terror.event = event;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(40042)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["vue_material_design_icons_FilterVariantvue_type_script_lang_js","name","emits","props","title","type","String","fillColor","default","size","Number","FilterVariant","componentNormalizer","A","_vm","this","_c","_self","_b","staticClass","attrs","role","on","click","$event","$emit","$attrs","fill","width","height","viewBox","d","_v","_s","_e","vue_material_design_icons_Magnifyvue_type_script_lang_js","Magnify","UnifiedSearch_UnifiedSearchInputvue_type_script_setup_true_lang_ts","_defineComponent","__name","expanded","Boolean","activeDescendantId","query","loading","filtersRevealed","setup","__props","expose","emit","isSmallMobile","useIsSmallMobile","placeholderText","t","directionByKey","ArrowDown","ArrowUp","fieldRef","ref","inputRef","isFocused","isActive","computed","value","length","showFunnel","focus","__sfc","resultsContainerId","onFocusOut","event","contains","relatedTarget","onMouseDown","target","preventDefault","onInput","openFilters","clearOrClose","focused","document","activeElement","blur","onKeyDown","isComposing","key","direction","l10n_dist","NcButton","NcHeaderButton","NcHeaderButton_BqjMDSal","N","NcKbd","NcKbd_D86qGvDb","NcLoadingIcon","IconClose","Close","IconFilterVariant","IconMagnify","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","UnifiedSearchInputvue_type_style_index_0_id_30894250_prod_lang_scss_scoped_true","locals","UnifiedSearchInput","_setup","_setupProxy","class","id","ariaLabel","scopedSlots","_u","fn","proxy","focusin","focusout","mousedown","undefined","domProps","input","keydown","variant","symbol","vue_material_design_icons_AccountMultipleOutlinevue_type_script_lang_js","AccountMultipleOutline","vue_material_design_icons_ArrowLeftvue_type_script_lang_js","ArrowLeft","vue_material_design_icons_CalendarBlankOutlinevue_type_script_lang_js","CalendarBlankOutline","vue_material_design_icons_ShapeOutlinevue_type_script_lang_js","ShapeOutline","vue_material_design_icons_CogOutlinevue_type_script_lang_js","CogOutline","UnifiedSearch_ConnectedServicesBarvue_type_script_setup_true_lang_ts","active","label","settingsUrl","generateUrl","settingsLabel","IconCogOutline","ConnectedServicesBarvue_type_style_index_0_id_10264158_prod_lang_scss_scoped_true_options","ConnectedServicesBarvue_type_style_index_0_id_10264158_prod_lang_scss_scoped_true","ConnectedServicesBar","wide","href","vue_material_design_icons_CalendarRangevue_type_script_lang_js","CalendarRange","UnifiedSearch_CustomDateRangeModalvue_type_script_lang_js","components","NcModal","CalendarRangeIcon","NcDateTimePicker","isOpen","required","data","dateFilter","startFrom","endAt","isModalOpen","get","set","methods","closeModal","applyCustomRange","CustomDateRangeModalvue_type_style_index_0_id_2907014b_prod_lang_scss_scoped_true_options","CustomDateRangeModalvue_type_style_index_0_id_2907014b_prod_lang_scss_scoped_true","CustomDateRangeModal","show","close","model","callback","$$v","$set","expression","vue_material_design_icons_AlertCircleOutlinevue_type_script_lang_js","AlertCircleOutline","UnifiedSearch_SearchableListvue_type_script_lang_js","IconAlertCircleOutline","NcAvatar","NcEmptyContent","NcPopover","NcTextField","labelText","searchList","Array","emptyContentText","opened","error","searchTerm","filteredList","filter","element","toLowerCase","some","prop","includes","clearSearch","setOpened","itemSelected","searchTermChanged","term","SearchableListvue_type_style_index_0_id_66bd6570_prod_lang_scss_scoped_true_options","SearchableListvue_type_style_index_0_id_66bd6570_prod_lang_scss_scoped_true","SearchableList","shown","hide","_t","_l","displayName","alignment","isUser","user","UnifiedSearch_SearchFilterChipvue_type_script_lang_js","CloseIcon","text","pretext","removeLabel","deleteChip","SearchFilterChipvue_type_style_index_0_id_5a4f6249_prod_lang_scss_scoped_true_options","SearchFilterChipvue_type_style_index_0_id_5a4f6249_prod_lang_scss_scoped_true","SearchFilterChip","components_AppIconvue_type_script_setup_true_lang_ts","icon","outlined","iconStyle","replace","AppIconvue_type_style_index_0_id_5cb82f82_prod_scoped_true_lang_scss_options","AppIconvue_type_style_index_0_id_5cb82f82_prod_scoped_true_lang_scss","UnifiedSearch_SearchResultvue_type_script_lang_js","AppIcon","style","NcListItem","thumbnailUrl","subline","resourceUrl","rounded","elementId","thumbnailHasError","hasThumbnail","isValidIconOrPreviewUrl","iconIsUrl","isAppIcon","watch","url","test","startsWith","thumbnailErrorHandler","SearchResultvue_type_style_index_0_id_516c3939_prod_lang_scss_scoped_true_options","SearchResultvue_type_style_index_0_id_516c3939_prod_lang_scss_scoped_true","SearchResult","bold","src","alt","UnifiedSearch_SearchResultSkeletonvue_type_script_setup_true_lang_ts","rows","SearchResultSkeletonvue_type_style_index_0_id_66bc29f5_prod_lang_scss_scoped_true_options","SearchResultSkeletonvue_type_style_index_0_id_66bc29f5_prod_lang_scss_scoped_true","SearchResultSkeleton","row","logger","getCurrentUser","getLoggerBuilder","setApp","build","setUid","uid","unifiedSearchLogger","detectUser","async","getProviders","axios","generateOcsUrl","params","from","window","location","pathname","search","ocs","isArray","cursor","since","until","limit","person","extraQueries","cancelToken","CancelToken","source","request","token","cancel","getContacts","contacts","post","authenticatedUser","fullName","emailAddresses","unshift","UnifiedSearchController","constructor","onChange","_defineProperty","categories","cancelPendingRequests","searchStates","revealOrder","searchGeneration","generation","startRevealTimer","Promise","allSettled","map","category","searchCategory","loadMore","categoryState","hasMore","status","patchStates","loadMoreFailed","unifiedSearch","pendingCancels","push","response","entries","isPaginated","reachedEnd","hasMorePages","getSnapshot","getRevealOrder","dispose","stopBackgroundWork","reset","shouldBlockCategory","reconcileCategoryStatuses","forEach","stopRevealTimer","revealWindowOpen","revealTimer","setTimeout","unblockAllCategories","Object","keys","clearTimeout","slice","indexOf","c","syncRevealOrder","state","at","visible","isCategoryVisible","splice","next","useSearchStore","defineStore","externalFilters","actions","registerExternalFilter","appId","searchFrom","isPluginFilter","RESIZING_CLASS","UnifiedSearchModalvue_type_script_lang_ts","defineComponent","IconAccountMultipleOutline","IconArrowLeft","IconArrowRight","ArrowRight","IconCalendarBlankOutline","IconDotsHorizontal","DotsHorizontal","IconShapeOutline","FilterChip","NcActions","NcActionButton","open","currentLocation","useBrowserLocation","searchStore","shallowRef","controller","states","onUnmounted","useUnifiedSearch","providers","providerActionMenuIsOpen","dateActionMenuIsOpen","personFilter","filteredProviders","searchQuery","placessearchTerm","dateTimeFilter","filters","showDateRangeModal","initialized","pendingSearch","searchExternalResources","detailCategory","activeIndex","minSearchLength","loadState","reservedHeight","panelFrom","panelResize","focusTrap","isEmptySearch","providerFilterActive","dateFilterActive","personFilterActive","hasAnyActiveFilter","showFilterRow","showHeader","searching","values","isBusy","isSearchQueryTooShort","hasNoResults","results","showEmptyContentInfo","emptyContentMessage","n","userContacts","debouncedFind","debounce","find","debouncedFilterContacts","filterContacts","hasExternalResources","provider","isExternalProvider","hasContentFilters","contentFilterTypes","providerId","p","supportsActiveFilters","providerIsCompatibleWithFilters","filteredResults","isInFolderAtRoot","result","path","extraParams","filteredResultUrls","urls","Set","entry","add","unfilteredResults","has","detailGroup","group","renderedGroups","toRenderedGroup","index","heldHeight","Math","max","skeletonRows","ceil","showConnectedServicesButton","navigableRows","rowElementId","unfiltered","activeRow","liveMessage","hasVisibleResults","hasContentBelowHeader","addEventListener","onEscapeKey","$nextTick","activateFocusTrap","all","then","groupProvidersByApp","mapContacts","debug","catch","clear","removeEventListener","deactivateFocusTrap","immediate","handler","scheduleSearch","deep","closeDetailView","$refs","resultsContainer","scrollTop","previous","reconcileActiveIndex","busy","scrollActiveIntoView","mounted","subscribe","handlePluginFilter","beforeUpdate","panel","getBoundingClientRect","updated","animatePanelResize","onUpdateOpen","onScrimClick","onMobileSearchInput","stack","_nc_focus_trap","menu","$el","closest","inputContainer","querySelector","containers","markRaw","createFocusTrap","initialFocus","escapeDeactivates","allowOutsideClick","trapStack","activate","returnFocus","deactivate","captureReservedHeight","onfinish","classList","remove","animate","duration","parseFloat","getComputedStyle","getPropertyValue","to","abs","resize","easing","searchable","buildCategoryParams","toISOString","contact","isNoUser","subname","applyPersonFilter","existingPersonFilter","findIndex","loadMoreResultsForProvider","section","showPartialHeader","detail","overflow","inAppSearch","headingId","openDetailView","focusSearchInput","mobileInput","headerInput","toggleExternalResources","addProviderFilter","providerFilter","isProviderFilterApplied","existingFilterIndex","existing","syncProviderFilters","removeFilter","i","firstArray","secondArray","synchronizedArray","item","itemId","secondItem","updateDateFilter","currFilterIndex","applyQuickDateRange","range","today","Date","startDate","endDate","getFullYear","getMonth","getDate","setCustomDateRange","toLocaleDateString","getCanonicalLocale","addFilterEvent","filterUpdateText","compatibleProviderIndex","filterParams","groupedByProviderApp","flattenedArray","filterIds","baseProvider","every","filterId","enableAllProviders","_","disabled","moveActive","count","current","min","activateActive","openResourceUrl","assign","getElementById","scrollIntoView","block","selectedId","UnifiedSearch_UnifiedSearchModalvue_type_script_lang_ts","UnifiedSearchModalvue_type_style_index_0_id_e755dab0_prod_lang_scss_scoped_true_options","UnifiedSearchModalvue_type_style_index_0_id_e755dab0_prod_lang_scss_scoped_true","UnifiedSearchModal","appear","directives","rawName","modelValue","showTrailingButton","trailingButtonLabel","closeAfterClick","pressed","delete","disableMenu","hideStatus","hideFavorite","toggle","minBlockSize","boxSizing","views_UnifiedSearchvue_type_script_lang_ts","queryText","showUnifiedSearch","debouncedQueryUpdate","emitUpdatedQuery","appHandlesSearchShortcut","stopHotKeys","useHotKey","isSearchEngaged","focusSearch","ctrl","prevent","beforeDestroy","stop","openModal","focusInput","searchInput","el","onNavigate","modal","searchModal","onActivate","onOpenFilters","onClose","UnifiedSearchvue_type_style_index_0_id_2127a3b2_prod_lang_scss_scoped_true_options","UnifiedSearchvue_type_style_index_0_id_2127a3b2_prod_lang_scss_scoped_true","UnifiedSearch","navigate","__webpack_nonce__","getCSPNonce","Vue","mixin","Tl","OCA","registerFilterAction","use","PiniaVuePlugin","pinia","createPinia","unified_search_pinia","render","h","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","module","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","___CSS_LOADER_URL_IMPORT_0___","URL","__webpack_require__","b","___CSS_LOADER_URL_REPLACEMENT_0___","_node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default","__webpack_module_cache__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","r","getter","__esModule","a","definition","binding","o","defineProperty","enumerable","f","e","chunkId","reduce","promises","u","obj","hasOwn","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","onerror","onload","timeout","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","nmd","paths","children","dn","x","descriptor","getOwnPropertyDescriptor","writable","configurable","cjs","body","mod","scriptUrl","globalThis","importScripts","currentScript","tagName","toUpperCase","Error","baseURI","self","installedChunks","installedChunkData","promise","resolve","reject","loadingEnded","errorType","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file