@next-bricks/nav 0.8.6 → 0.8.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +1 -1
- package/dist/chunks/7394.9dfee9a5.js +3 -0
- package/dist/chunks/7394.9dfee9a5.js.map +1 -0
- package/dist/chunks/easyops-navbar-alerts.900f9c18.js +2 -0
- package/dist/chunks/easyops-navbar-alerts.900f9c18.js.map +1 -0
- package/dist/chunks/eo-launchpad-button-v2.e881ca9e.js.map +1 -1
- package/dist/chunks/eo-launchpad-button.df111053.js.map +1 -1
- package/dist/chunks/eo-launchpad-quick-access.6725ea34.js +3 -0
- package/dist/chunks/eo-launchpad-quick-access.6725ea34.js.map +1 -0
- package/dist/chunks/eo-launchpad-recent-visits.7700ab7c.js +3 -0
- package/dist/chunks/eo-launchpad-recent-visits.7700ab7c.js.map +1 -0
- package/dist/chunks/eo-search-launchpad.2d0cea22.js +2 -0
- package/dist/chunks/eo-search-launchpad.2d0cea22.js.map +1 -0
- package/dist/chunks/launchpad-config.8c71fa8d.js.map +1 -1
- package/dist/chunks/{main.419cf4d6.js → main.cc5c383d.js} +2 -2
- package/dist/chunks/{main.419cf4d6.js.map → main.cc5c383d.js.map} +1 -1
- package/dist/{index.c18ad686.js → index.12c08bc4.js} +2 -2
- package/dist/{index.c18ad686.js.map → index.12c08bc4.js.map} +1 -1
- package/dist/manifest.json +14 -7
- package/dist-types/easyops-navbar-alerts/index.d.ts +1 -0
- package/dist-types/launchpad/index.d.ts +1 -0
- package/dist-types/launchpad-button-v2/index.d.ts +1 -0
- package/dist-types/launchpad-config/index.d.ts +1 -0
- package/dist-types/launchpad-quick-access/index.d.ts +1 -0
- package/dist-types/launchpad-recent-visits/index.d.ts +1 -0
- package/dist-types/search-launchpad/index.d.ts +1 -0
- package/package.json +3 -3
- package/dist/chunks/7394.5869099a.js +0 -3
- package/dist/chunks/7394.5869099a.js.map +0 -1
- package/dist/chunks/easyops-navbar-alerts.3bc41a39.js +0 -2
- package/dist/chunks/easyops-navbar-alerts.3bc41a39.js.map +0 -1
- package/dist/chunks/eo-launchpad-quick-access.88d845a7.js +0 -3
- package/dist/chunks/eo-launchpad-quick-access.88d845a7.js.map +0 -1
- package/dist/chunks/eo-launchpad-recent-visits.487f236d.js +0 -3
- package/dist/chunks/eo-launchpad-recent-visits.487f236d.js.map +0 -1
- package/dist/chunks/eo-search-launchpad.5a6a04aa.js +0 -2
- package/dist/chunks/eo-search-launchpad.5a6a04aa.js.map +0 -1
- /package/dist/chunks/{7394.5869099a.js.LICENSE.txt → 7394.9dfee9a5.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-launchpad-quick-access.88d845a7.js.LICENSE.txt → eo-launchpad-quick-access.6725ea34.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-launchpad-recent-visits.487f236d.js.LICENSE.txt → eo-launchpad-recent-visits.7700ab7c.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/eo-launchpad-button-v2.e881ca9e.js","mappings":";iOAQO,SAASA,EAASC,GAAmC,IAAlC,OAAEC,GAA8BD,EAClDE,GAAiBC,EAAAA,EAAAA,QAAyB,MAC1CC,GAAuBC,EAAAA,EAAAA,cAAY,KAAM,IAAAC,EACvB,QAAtBA,EAAAJ,EAAeK,eAAO,IAAAD,GAAtBA,EAAwBE,OAAO,GAC9B,KAEG,QACJC,EAAO,EACPC,EAAC,KACDC,EAAI,WACJC,EAAU,UACVC,EAAS,iBACTC,EAAgB,aAChBC,EAAY,gBACZC,EAAe,WACfC,EAAU,UACVC,IACEC,EAAAA,EAAAA,IAAiBlB,GACfmB,IAAcV,EAEdW,GAAehB,EAAAA,EAAAA,cAClBiB,IACCX,EAAKW,EAAEC,OAAOC,MAAM,GAEtB,CAACb,IAGGc,GAAcpB,EAAAA,EAAAA,cAAY,KAC9BM,EAAK,GAAG,GACP,CAACA,IAQJ,OANAe,EAAAA,EAAAA,YAAU,KACI,IAAAC,EAAR1B,IACoB,QAAtB0B,EAAAzB,EAAeK,eAAO,IAAAoB,GAAtBA,EAAwBnB,QAC1B,GACC,CAACP,IAGF2B,IAAAA,cAAA,OAAKC,UAAWC,IAAW,YAAa,CAAE7B,YACxC2B,IAAAA,cAACG,EAAAA,EAAkBC,SAAQ,CACzBR,MAAO,CACLJ,YACAN,mBACAE,kBACAC,aACAC,cAGFU,IAAAA,cAAA,OAAKC,UAAU,WACbD,IAAAA,cAAA,OAAKC,UAAU,aACbD,IAAAA,cAAA,OAAKC,UAAU,mBAAkB,QAEjCD,IAAAA,cAAA,MAAIC,UAAU,gBACXhB,EAAUoB,KAAI,CAACC,EAAMC,IACpBP,IAAAA,cAACQ,EAAAA,EAAe,CACdC,IAAKF,EACLD,KAAMA,SAMhBN,IAAAA,cAAA,OAAKC,UAAWC,IAAW,UAAW,CAAErB,aACtCmB,IAAAA,cAACU,EAAO,CAAC7B,QAASA,IAClBmB,IAAAA,cAAA,OAAKC,UAAU,aAAaU,QAASnC,GACnCwB,IAAAA,cAACY,EAAAA,GAAW,CACVC,IAAI,KACJC,KAAK,mBACLb,UAAU,gBAEZD,IAAAA,cAAA,SACEe,IAAKzC,EACL0C,YAAY,UACZpB,MAAOd,EACPmC,SAAUxB,EACVQ,UAAU,iBAEZD,IAAAA,cAACY,EAAAA,GAAW,CACVC,IAAI,OACJK,MAAM,SACNJ,KAAK,eACLb,UAAWC,IAAW,eAAgB,CAAEV,cACxCmB,QAASd,KAGbG,IAAAA,cAAA,OAAKC,UAAWC,IAAW,CAAEiB,MAA+B,IAAxBhC,EAAaiC,UAC/CpB,IAAAA,cAAA,OAAKC,UAAU,uBAAsB,QACrCD,IAAAA,cAAA,MAAIC,UAAU,iBACXd,EAAakB,KAAI,CAACC,EAAMC,IACvBP,IAAAA,cAAA,MAAIS,IAAKF,GACPP,IAAAA,cAACqB,EAAAA,IAAWC,EAAAA,EAAAA,GAAA,CACVX,QAASA,IAAMvB,EAAgBkB,IACZ,QAAdA,EAAKiB,KACN,CACEC,IAAKlB,EAAKkB,KAEZ,CACEC,KAAMnB,EAAKkB,IACX7B,OAAQ,WAGdK,IAAAA,cAAA,YAAOM,EAAKoB,YAMtB1B,IAAAA,cAAA,MAAIC,UAAU,eACXjB,EAAWqB,KAAKsB,GACf3B,IAAAA,cAAC4B,EAAAA,EAAS,CACRnB,IAAKkB,EAAMD,KACXA,KAAMC,EAAMD,KACZG,MAAOF,EAAME,aAQ7B,CAEA,SAASnB,EAAOoB,GAAoC,IAAnC,QAAEjD,GAA+BiD,EAChD,OACEjD,GACEmB,IAAAA,cAAA,OAAKC,UAAU,WACbD,IAAAA,cAACY,EAAAA,GAAW,CAACC,IAAI,KAAKC,KAAK,UAAUiB,UAAQ,IAIrD,wGC3GEC,uJAZI,cAAEC,aAAkBC,EAAAA,EAAAA,qBAEpBC,GAAiBC,EAAAA,EAAAA,gBACrB,0BAGFC,EAICJ,EAAc,yBAA0B,CACvCK,WAAY,CAACC,EAAAA,KADf,MAAAC,UAGkCC,EAAAA,iBAChCC,uBACEC,MAAMD,uBACNP,EAAeS,MAAM,EACvB,CAEAC,SACE,OAAO7C,IAAAA,cAAC8C,EAA4B,CAACC,KAAMH,MAC7C,EAGK,SAASE,EAA4B1E,GAAkC,IAAjC,KAAE2E,GAA6B3E,GACnE4E,EAAaC,IAAkBC,EAAAA,EAAAA,WAAS,IACxC7E,EAAQ8E,IAAaD,EAAAA,EAAAA,WAAS,GAC/BE,EAAkBA,KACtBD,GAAWE,IAAcA,GAAS,EAkDpC,OA/CAvD,EAAAA,EAAAA,YAAU,KAESwD,EAAAA,EAAAA,cAAaC,QAAO,KACnCJ,GAAU,EAAM,KAGjB,KAEHrD,EAAAA,EAAAA,YAAU,KAEJzB,IAAW2E,GACbC,GAAe,EACjB,GACC,CAAC5E,EAAQ2E,KAGZlD,EAAAA,EAAAA,YAAU,KACR0D,EAAAA,EAAQC,OAAS,WACf,OAAO,CACT,GAGAD,EAAAA,EAAAA,GAAQ,SAAUE,IAChBA,EAAMC,iBACNR,GAAWE,IAAcA,GAAS,KAIpCG,EAAAA,EAAAA,GAAQ,OAAO,KACbL,GAAU,EAAM,IAGX,KACLK,EAAAA,EAAQI,OAAO,SACfJ,EAAAA,EAAQI,OAAO,MAAM,IAEtB,KAEH9D,EAAAA,EAAAA,YAAU,KACRqC,EAAeY,EAAM1E,EAAO,GAC3B,CAACA,EAAQ0E,KAEZjD,EAAAA,EAAAA,YAAU,KACR+D,EAAAA,GAAsBC,mBACtBC,EAAAA,GAAkBD,kBAAkB,GACnC,IAGD9D,IAAAA,cAAAA,IAAAA,SAAA,KACEA,IAAAA,cAAA,KACEgE,KAAK,SACL/D,UAAWC,IAAW,mBAAoB,CAAE7B,WAC5CsC,QAASyC,GAETpD,IAAAA,cAACiE,EAAAA,EAAY,OAEfjE,IAAAA,cAAA,OACEC,UAAWC,IAAW,OAAQ,CAAE7B,WAChCsC,QAASyC,IAEVJ,GAAehD,IAAAA,cAAC7B,EAAAA,EAAS,CAACE,OAAQA,IAGzC,CAxEC6F,EAAA1B,GAAAR,EAAAmC,IAAAC,EAAAA,EAAAA,GAAAF,EAAA,IAAA7B,GAAA,SATiCI,EAAAA,kBAAgB4B,EAAAF,6DC9BlD,QADqBG,GAAStE,EAAAA,cAAA,OAAAsB,EAAAA,EAAAA,GAAA,CAAKiD,MAAM,6BAA6BC,MAAO,GAAIC,OAAQ,GAAIC,QAAQ,aAAgBJ,GAAOtE,EAAAA,cAAA,KAAG2E,KAAK,eAAeC,SAAS,WAAU5E,EAAAA,cAAA,QAAM6E,EAAE,qLCE1KC,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,wOACmF,KAE5H,wGCJIC,EAAgC,IAAIC,IAAI,aACxCL,EAA0B,IAA4B,KACtDM,EAAqC,IAAgCF,GAEzEJ,EAAwBC,KAAK,CAACC,EAAOC,GAAI,opCAC6uBG,gtIAuC9rB,KAExF,QAAeN,EAAwBO,qBChDvCL,EAAOM,QAAU,SAAU9D,EAAK+D,GAI9B,OAHKA,IACHA,EAAU,CAAC,GAER/D,GAGLA,EAAMgE,OAAOhE,EAAIiE,WAAajE,EAAIkE,QAAUlE,GAGxC,eAAemE,KAAKnE,KACtBA,EAAMA,EAAIoE,MAAM,GAAI,IAElBL,EAAQM,OACVrE,GAAO+D,EAAQM,MAKb,oBAAoBF,KAAKnE,IAAQ+D,EAAQO,WACpC,IAAKC,OAAOvE,EAAIwE,QAAQ,KAAM,OAAOA,QAAQ,MAAO,OAAQ,KAE9DxE,GAjBEA,CAkBX,kJCdI+D,EAAU,CAAC,EAEfA,EAAQU,kBAAoB,IAC5BV,EAAQW,cAAgB,IAElBX,EAAQY,OAAS,SAAc,KAAM,QAE3CZ,EAAQa,OAAS,IACjBb,EAAQc,mBAAqB,IAEhB,IAAI,IAASd,GAKJ,KAAW,IAAQe,QAAS,IAAQA,oHCpB/CC,EAA+C,WACxD,IAAInI,GAAO,QAAkB,UAAWoI,EAAMjB,GAC5C,aAA4F,EAAAkB,KAAKC,KAAK,oFAAqFF,EAAMjB,IACjM,IACF,IACA,OAAO,SAAyCoB,EAAIC,GAClD,OAAOxI,EAAKyI,MAAMjE,KAAMkE,UAC1B,CACF,CAR0D,kDCA/CC,EAAkC,CAACC,EAAYzB,IAAyF,EAAAkB,KAAKQ,OAAO,qFAAqFlB,OAAOiB,GAAazB,sECC7P2B,EAA6C,WACtD,IAAI9I,GAAO,QAAkB,UAAW+I,EAAQ5B,GAC9C,aAA0F,EAAAkB,KAAKW,IAAI,mFAAmF,QAAc,OAAc,CAAC,EAAG7B,GAAU,CAAC,EAAG,CAChO4B,aAEJ,IACF,IACA,OAAO,SAAuCR,EAAIC,GAChD,OAAOxI,EAAKyI,MAAMjE,KAAMkE,UAC1B,CACF,CAVwD","sources":["webpack:///./src/launchpad-button-v2/Launchpad.tsx","webpack:///./src/launchpad-button-v2/index.tsx","webpack:///./src/images/launchpad.svg","webpack:///./src/launchpad-button-v2/host-context.css","webpack:///./src/launchpad-button-v2/styles.shadow.css","webpack:///../../node_modules/css-loader/dist/runtime/getUrl.js","webpack:///./src/launchpad-button-v2/host-context.css?59a8","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/createCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/deleteCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/listCollectionV2.js"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport { WrappedIcon, WrappedLink } from \"./wrapped-bricks\";\nimport { useLaunchpadInfo } from \"./useLaunchpadInfo.js\";\nimport { MenuGroup, SidebarMenuItem } from \"./MenuGroup.js\";\nimport { LaunchpadsContext } from \"./LaunchpadContext.js\";\nimport { SidebarMenuItemData } from \"./interfaces\";\n\nexport function Launchpad({ active }: { active?: boolean }) {\n const searchInputRef = useRef<HTMLInputElement>(null);\n const handleClickSearchBox = useCallback(() => {\n searchInputRef.current?.focus();\n }, []);\n\n const {\n loading,\n q,\n setQ,\n menuGroups,\n favorites,\n loadingFavorites,\n recentVisits,\n pushRecentVisit,\n toggleStar,\n isStarred,\n } = useLaunchpadInfo(active);\n const searching = !!q;\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setQ(e.target.value);\n },\n [setQ]\n );\n\n const clearSearch = useCallback(() => {\n setQ(\"\");\n }, [setQ]);\n\n useEffect(() => {\n if (active) {\n searchInputRef.current?.focus();\n }\n }, [active]);\n\n return (\n <div className={classNames(\"launchpad\", { active })}>\n <LaunchpadsContext.Provider\n value={{\n searching,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n }}\n >\n <div className=\"sidebar\">\n <div className=\"quick-nav\">\n <div className=\"quick-nav-label\">快捷访问</div>\n {/* <Loading loading={loading || loadingFavorites} /> */}\n <ul className=\"sidebar-menu\">\n {favorites.map((item, index) => (\n <SidebarMenuItem\n key={index}\n item={item as SidebarMenuItemData}\n />\n ))}\n </ul>\n </div>\n </div>\n <div className={classNames(\"content\", { loading })}>\n <Loading loading={loading} />\n <div className=\"search-box\" onClick={handleClickSearchBox}>\n <WrappedIcon\n lib=\"fa\"\n icon=\"magnifying-glass\"\n className=\"search-icon\"\n />\n <input\n ref={searchInputRef}\n placeholder=\"通过关键字搜索\"\n value={q}\n onChange={handleSearch}\n className=\"search-input\"\n />\n <WrappedIcon\n lib=\"antd\"\n theme=\"filled\"\n icon=\"close-circle\"\n className={classNames(\"search-clear\", { searching })}\n onClick={clearSearch}\n />\n </div>\n <div className={classNames({ empty: recentVisits.length === 0 })}>\n <div className=\"recent-visits-label\">最近访问</div>\n <ul className=\"recent-visits\">\n {recentVisits.map((item, index) => (\n <li key={index}>\n <WrappedLink\n onClick={() => pushRecentVisit(item)}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n target: \"_blank\",\n })}\n >\n <span>{item.name}</span>\n </WrappedLink>\n </li>\n ))}\n </ul>\n </div>\n <ul className=\"menu-groups\">\n {menuGroups.map((group) => (\n <MenuGroup\n key={group.name}\n name={group.name}\n items={group.items}\n />\n ))}\n </ul>\n </div>\n </LaunchpadsContext.Provider>\n </div>\n );\n}\n\nfunction Loading({ loading }: { loading: boolean }) {\n return (\n loading && (\n <div className=\"spinner\">\n <WrappedIcon lib=\"fa\" icon=\"spinner\" spinning />\n </div>\n )\n );\n}\n","import React, { useEffect, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport { unwrapProvider } from \"@next-core/utils/general\";\nimport \"@next-core/theme\";\nimport { getHistory } from \"@next-core/runtime\";\nimport type { lockBodyScroll as _lockBodyScroll } from \"@next-bricks/basic/data-providers/lock-body-scroll/lock-body-scroll\";\n// import { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport hotkeys from \"hotkeys-js\";\nimport classNames from \"classnames\";\n// import { K, NS, locales } from \"./i18n.js\";\nimport LaunchpadSvg from \"../images/launchpad.svg\";\nimport styleText from \"./styles.shadow.css\";\nimport { Launchpad } from \"./Launchpad\";\nimport { deferredFavorites, deferredLaunchpadInfo } from \"./useLaunchpadInfo\";\nimport \"./host-context.css\";\n\n// initializeReactI18n(NS, locales);\n\nconst { defineElement } = createDecorators();\n\nconst lockBodyScroll = unwrapProvider<typeof _lockBodyScroll>(\n \"basic.lock-body-scroll\"\n);\n\n/**\n * 构件 `eo-launchpad-button-v2`\n */\nexport\n@defineElement(\"eo-launchpad-button-v2\", {\n styleTexts: [styleText],\n})\nclass EoLaunchpadButtonV2 extends ReactNextElement {\n disconnectedCallback(): void {\n super.disconnectedCallback();\n lockBodyScroll(this, false);\n }\n\n render() {\n return <EoLaunchpadButtonV2Component host={this} />;\n }\n}\n\nexport function EoLaunchpadButtonV2Component({ host }: { host: HTMLElement }) {\n const [initialized, setInitialized] = useState(false);\n const [active, setActive] = useState(false);\n const toggleLaunchpad = (): void => {\n setActive((previous) => !previous);\n };\n\n useEffect(() => {\n // 当切换页面时,关闭 Launchpad。\n const unlisten = getHistory().listen(() => {\n setActive(false);\n });\n return unlisten;\n }, []);\n\n useEffect(() => {\n // 打开一次 launchpad 后,保留 DOM。\n if (active && !initialized) {\n setInitialized(true);\n }\n }, [active, initialized]);\n\n // istanbul ignore next\n useEffect(() => {\n hotkeys.filter = function () {\n return true;\n };\n\n // 快捷打开/关闭 Launchpad\n hotkeys(\"alt+l\", (event) => {\n event.preventDefault();\n setActive((previous) => !previous);\n });\n\n // 按 Esc 关闭 Launchpad\n hotkeys(\"esc\", () => {\n setActive(false);\n });\n\n return () => {\n hotkeys.unbind(\"alt+l\");\n hotkeys.unbind(\"esc\");\n };\n }, []);\n\n useEffect(() => {\n lockBodyScroll(host, active);\n }, [active, host]);\n\n useEffect(() => {\n deferredLaunchpadInfo.schedulePrefetch();\n deferredFavorites.schedulePrefetch();\n }, []);\n\n return (\n <>\n <a\n role=\"button\"\n className={classNames(\"launchpad-button\", { active })}\n onClick={toggleLaunchpad}\n >\n <LaunchpadSvg />\n </a>\n <div\n className={classNames(\"mask\", { active })}\n onClick={toggleLaunchpad}\n ></div>\n {initialized && <Launchpad active={active} />}\n </>\n );\n}\n","import * as React from \"react\";\nconst SvgLaunchpad = props => <svg xmlns=\"http://www.w3.org/2000/svg\" width={16} height={16} viewBox=\"0 0 16 16\" {...props}><g fill=\"currentColor\" fillRule=\"nonzero\"><path d=\"M0 0h4v4H0zM0 6h4v4H0zM6 0h4v4H6zM6 6h4v4H6zM12 0h4v4h-4zM12 6h4v4h-4zM0 12h4v4H0zM6 12h4v4H6zM12 12h4v4h-4z\" /></g></svg>;\nexport default SvgLaunchpad;","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.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_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root{--eo-launchpad-v2-background:#fff;--eo-launchpad-v2-menu-icon-color:#8c8c8c}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-launchpad-v2-background:#26262a;--eo-launchpad-v2-menu-icon-color:rgba(255,255,255,0.45)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.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(\"../images/launchpad-sidebar.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_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, `:host{display:inline-block;width:32px;height:32px;--eo-launchpad-v2-max-height:calc(100vh - var(--app-bar-height) - 10px)}:host([hidden]){display:none}.launchpad-button{width:100%;height:100%;display:flex;justify-content:center;align-items:center;color:#999;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:3px}.launchpad-button:hover,\n.launchpad-button.active{background-color:var(--color-fill-bg-base-1)}.launchpad-button.active{color:var(--color-brand)}.mask{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1;display:none}.mask.active{display:block}.launchpad{display:none;position:absolute;margin-top:4px;z-index:1;width:1110px;max-width:calc(100vw - 100px);max-height:var(--eo-launchpad-v2-max-height);min-height:50vh;min-height:min(500px,var(--eo-launchpad-v2-max-height));background-color:var(--eo-launchpad-v2-background);border:1px solid var(--color-text-divider-line);border-radius:6px;box-shadow:var(--fullscreen-overlay-shadow)}.launchpad.active{display:flex}.sidebar{width:190px;padding:20px 0 24px;display:flex;flex-direction:column;background:var(--color-fill-bg-base-3);min-width:0;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-size:205px 205px;background-repeat:no-repeat;background-position:left 52px bottom 27px}.quick-nav-label,\n.menu-group-label,\n.menu-item-label,\n.recent-visits span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-menu,\n.menu-groups,\n.menu,\n.sub-menu,\n.recent-visits{list-style:none;margin:0;padding:0}.sidebar-menu,\n.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.sidebar-menu-item > eo-link,\n.menu-item > eo-link,\n.recent-visits eo-link{display:block;min-width:0}.sidebar-menu-item > eo-link::part(link),\n.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.sidebar-menu-item{padding:0 12px 0 16px;justify-content:space-between}.sidebar-menu-icon{color:var(--left-sidebar-item-collapsed-icon-color)}.quick-nav{overflow-y:auto;flex:1}.quick-nav-label{color:var(--color-header-text);font-weight:500;margin-bottom:14px;padding:0 16px}.content{flex:1;padding:20px 24px 24px;min-width:0;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;margin-top:-10px;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.menu-groups,\n.recent-visits{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;grid-gap:32px 8px;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.sidebar-menu-item,\n.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-launchpad-v2-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-remove,\n.menu-item-star{cursor:pointer}.menu-item-remove,\n.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.sidebar-menu-item:not(:hover) .menu-item-remove{display:none}.menu-item-remove:hover{color:var(--color-normal-text)}.menu-item-remove:active{color:var(--color-strong-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.recent-visits-label{margin-bottom:12px;font-size:var(--card-title-font-size);color:var(--color-header-text);font-weight:500}.recent-visits{display:grid;grid-gap:8px;gap:8px}.recent-visits eo-link::part(link){background-color:var(--color-fill-bg-base-1);border-radius:3px;color:var(--color-header-text);display:flex;align-items:center;height:24px;padding:0 8px}.sidebar-menu-item > eo-link:hover::part(link),\n.sidebar-menu-item > eo-link:hover .sidebar-menu-icon,\n.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle,\n.recent-visits eo-link:hover::part(link){color:var(--color-brand-hover)}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.empty,\n.loading > :not(.spinner){display:none}@supports not (inset: 0){.content,\n .search-box,\n .sidebar-menu,\n .menu,\n .sub-menu,\n .sidebar-menu-item,\n .menu-item:not(.folder),\n .sidebar-menu-item > eo-link::part(link),\n .menu-item > eo-link::part(link){gap:0}.sidebar-menu > :not(:first-child),\n .menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .sidebar-menu-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}.content > :not(:last-child){margin-bottom:24px}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\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??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n export default content && content.locals ? content.locals : undefined;\n","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 新增我的收藏V2\n * @endpoint POST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_createCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.user_service.launchpad.CreateCollectionV2@1.0.0 */(yield http.post(\"api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection\", data, options)).data\n );\n });\n return function LaunchpadApi_createCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=createCollectionV2.js.map","import { http } from \"@next-core/http\";\n\n/**\n * @description 删除我的收藏V2\n * @endpoint DELETE /api/v2/launchpad/collection/:instanceId\n */\nexport var LaunchpadApi_deleteCollectionV2 = (instanceId, options) => /**! @contract easyops.api.user_service.launchpad.DeleteCollectionV2@1.0.0 */http.delete(\"api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/\".concat(instanceId), options);\n//# sourceMappingURL=deleteCollectionV2.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表V2\n * @endpoint LIST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_listCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.launchpad.ListCollectionV2@1.0.0 */(yield http.get(\"api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_listCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listCollectionV2.js.map"],"names":["Launchpad","_ref","active","searchInputRef","useRef","handleClickSearchBox","useCallback","_searchInputRef$curre","current","focus","loading","q","setQ","menuGroups","favorites","loadingFavorites","recentVisits","pushRecentVisit","toggleStar","isStarred","useLaunchpadInfo","searching","handleSearch","e","target","value","clearSearch","useEffect","_searchInputRef$curre2","React","className","classNames","LaunchpadsContext","Provider","map","item","index","SidebarMenuItem","key","Loading","onClick","WrappedIcon","lib","icon","ref","placeholder","onChange","theme","empty","length","WrappedLink","_extends","type","url","href","name","group","MenuGroup","items","_ref2","spinning","_EoLaunchpadButtonV","defineElement","createDecorators","lockBodyScroll","unwrapProvider","_dec","styleTexts","styleText","EoLaunchpadButtonV2","ReactNextElement","disconnectedCallback","super","this","render","EoLaunchpadButtonV2Component","host","initialized","setInitialized","useState","setActive","toggleLaunchpad","previous","getHistory","listen","hotkeys","filter","event","preventDefault","unbind","deferredLaunchpadInfo","schedulePrefetch","deferredFavorites","role","LaunchpadSvg","_class","_initClass","_applyDecs","c","props","xmlns","width","height","viewBox","fill","fillRule","d","___CSS_LOADER_EXPORT___","push","module","id","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_REPLACEMENT_0___","toString","exports","options","String","__esModule","default","test","slice","hash","needQuotes","concat","replace","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","LaunchpadApi_createCollectionV2","data","http","post","_x","_x2","apply","arguments","LaunchpadApi_deleteCollectionV2","instanceId","delete","LaunchpadApi_listCollectionV2","params","get"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"chunks/eo-launchpad-button-v2.e881ca9e.js","mappings":"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","sources":["webpack:///./src/launchpad-button-v2/Launchpad.tsx","webpack:///./src/launchpad-button-v2/index.tsx","webpack:///./src/images/launchpad.svg","webpack:///./src/launchpad-button-v2/host-context.css","webpack:///./src/launchpad-button-v2/styles.shadow.css","webpack:///../../node_modules/css-loader/dist/runtime/getUrl.js","webpack:///./src/launchpad-button-v2/host-context.css?59a8","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/createCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/deleteCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/listCollectionV2.js"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport { WrappedIcon, WrappedLink } from \"./wrapped-bricks\";\nimport { useLaunchpadInfo } from \"./useLaunchpadInfo.js\";\nimport { MenuGroup, SidebarMenuItem } from \"./MenuGroup.js\";\nimport { LaunchpadsContext } from \"./LaunchpadContext.js\";\nimport { SidebarMenuItemData } from \"./interfaces\";\n\nexport function Launchpad({ active }: { active?: boolean }) {\n const searchInputRef = useRef<HTMLInputElement>(null);\n const handleClickSearchBox = useCallback(() => {\n searchInputRef.current?.focus();\n }, []);\n\n const {\n loading,\n q,\n setQ,\n menuGroups,\n favorites,\n loadingFavorites,\n recentVisits,\n pushRecentVisit,\n toggleStar,\n isStarred,\n } = useLaunchpadInfo(active);\n const searching = !!q;\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setQ(e.target.value);\n },\n [setQ]\n );\n\n const clearSearch = useCallback(() => {\n setQ(\"\");\n }, [setQ]);\n\n useEffect(() => {\n if (active) {\n searchInputRef.current?.focus();\n }\n }, [active]);\n\n return (\n <div className={classNames(\"launchpad\", { active })}>\n <LaunchpadsContext.Provider\n value={{\n searching,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n }}\n >\n <div className=\"sidebar\">\n <div className=\"quick-nav\">\n <div className=\"quick-nav-label\">快捷访问</div>\n {/* <Loading loading={loading || loadingFavorites} /> */}\n <ul className=\"sidebar-menu\">\n {favorites.map((item, index) => (\n <SidebarMenuItem\n key={index}\n item={item as SidebarMenuItemData}\n />\n ))}\n </ul>\n </div>\n </div>\n <div className={classNames(\"content\", { loading })}>\n <Loading loading={loading} />\n <div className=\"search-box\" onClick={handleClickSearchBox}>\n <WrappedIcon\n lib=\"fa\"\n icon=\"magnifying-glass\"\n className=\"search-icon\"\n />\n <input\n ref={searchInputRef}\n placeholder=\"通过关键字搜索\"\n value={q}\n onChange={handleSearch}\n className=\"search-input\"\n />\n <WrappedIcon\n lib=\"antd\"\n theme=\"filled\"\n icon=\"close-circle\"\n className={classNames(\"search-clear\", { searching })}\n onClick={clearSearch}\n />\n </div>\n <div className={classNames({ empty: recentVisits.length === 0 })}>\n <div className=\"recent-visits-label\">最近访问</div>\n <ul className=\"recent-visits\">\n {recentVisits.map((item, index) => (\n <li key={index}>\n <WrappedLink\n onClick={() => pushRecentVisit(item)}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n target: \"_blank\",\n })}\n >\n <span>{item.name}</span>\n </WrappedLink>\n </li>\n ))}\n </ul>\n </div>\n <ul className=\"menu-groups\">\n {menuGroups.map((group) => (\n <MenuGroup\n key={group.name}\n name={group.name}\n items={group.items}\n />\n ))}\n </ul>\n </div>\n </LaunchpadsContext.Provider>\n </div>\n );\n}\n\nfunction Loading({ loading }: { loading: boolean }) {\n return (\n loading && (\n <div className=\"spinner\">\n <WrappedIcon lib=\"fa\" icon=\"spinner\" spinning />\n </div>\n )\n );\n}\n","import React, { useEffect, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport { unwrapProvider } from \"@next-core/utils/general\";\nimport \"@next-core/theme\";\nimport { getHistory } from \"@next-core/runtime\";\nimport type { lockBodyScroll as _lockBodyScroll } from \"@next-bricks/basic/data-providers/lock-body-scroll/lock-body-scroll\";\n// import { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\nimport hotkeys from \"hotkeys-js\";\nimport classNames from \"classnames\";\n// import { K, NS, locales } from \"./i18n.js\";\nimport LaunchpadSvg from \"../images/launchpad.svg\";\nimport styleText from \"./styles.shadow.css\";\nimport { Launchpad } from \"./Launchpad\";\nimport { deferredFavorites, deferredLaunchpadInfo } from \"./useLaunchpadInfo\";\nimport \"./host-context.css\";\n\n// initializeReactI18n(NS, locales);\n\nconst { defineElement } = createDecorators();\n\nconst lockBodyScroll = unwrapProvider<typeof _lockBodyScroll>(\n \"basic.lock-body-scroll\"\n);\n\n/**\n * 构件 `eo-launchpad-button-v2`\n * @insider\n */\nexport\n@defineElement(\"eo-launchpad-button-v2\", {\n styleTexts: [styleText],\n})\nclass EoLaunchpadButtonV2 extends ReactNextElement {\n disconnectedCallback(): void {\n super.disconnectedCallback();\n lockBodyScroll(this, false);\n }\n\n render() {\n return <EoLaunchpadButtonV2Component host={this} />;\n }\n}\n\nexport function EoLaunchpadButtonV2Component({ host }: { host: HTMLElement }) {\n const [initialized, setInitialized] = useState(false);\n const [active, setActive] = useState(false);\n const toggleLaunchpad = (): void => {\n setActive((previous) => !previous);\n };\n\n useEffect(() => {\n // 当切换页面时,关闭 Launchpad。\n const unlisten = getHistory().listen(() => {\n setActive(false);\n });\n return unlisten;\n }, []);\n\n useEffect(() => {\n // 打开一次 launchpad 后,保留 DOM。\n if (active && !initialized) {\n setInitialized(true);\n }\n }, [active, initialized]);\n\n // istanbul ignore next\n useEffect(() => {\n hotkeys.filter = function () {\n return true;\n };\n\n // 快捷打开/关闭 Launchpad\n hotkeys(\"alt+l\", (event) => {\n event.preventDefault();\n setActive((previous) => !previous);\n });\n\n // 按 Esc 关闭 Launchpad\n hotkeys(\"esc\", () => {\n setActive(false);\n });\n\n return () => {\n hotkeys.unbind(\"alt+l\");\n hotkeys.unbind(\"esc\");\n };\n }, []);\n\n useEffect(() => {\n lockBodyScroll(host, active);\n }, [active, host]);\n\n useEffect(() => {\n deferredLaunchpadInfo.schedulePrefetch();\n deferredFavorites.schedulePrefetch();\n }, []);\n\n return (\n <>\n <a\n role=\"button\"\n className={classNames(\"launchpad-button\", { active })}\n onClick={toggleLaunchpad}\n >\n <LaunchpadSvg />\n </a>\n <div\n className={classNames(\"mask\", { active })}\n onClick={toggleLaunchpad}\n ></div>\n {initialized && <Launchpad active={active} />}\n </>\n );\n}\n","import * as React from \"react\";\nconst SvgLaunchpad = props => <svg xmlns=\"http://www.w3.org/2000/svg\" width={16} height={16} viewBox=\"0 0 16 16\" {...props}><g fill=\"currentColor\" fillRule=\"nonzero\"><path d=\"M0 0h4v4H0zM0 6h4v4H0zM6 0h4v4H6zM6 6h4v4H6zM12 0h4v4h-4zM12 6h4v4h-4zM0 12h4v4H0zM6 12h4v4H6zM12 12h4v4h-4z\" /></g></svg>;\nexport default SvgLaunchpad;","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.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_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root{--eo-launchpad-v2-background:#fff;--eo-launchpad-v2-menu-icon-color:#8c8c8c}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-launchpad-v2-background:#26262a;--eo-launchpad-v2-menu-icon-color:rgba(255,255,255,0.45)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.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(\"../images/launchpad-sidebar.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_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, `:host{display:inline-block;width:32px;height:32px;--eo-launchpad-v2-max-height:calc(100vh - var(--app-bar-height) - 10px)}:host([hidden]){display:none}.launchpad-button{width:100%;height:100%;display:flex;justify-content:center;align-items:center;color:#999;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:3px}.launchpad-button:hover,\n.launchpad-button.active{background-color:var(--color-fill-bg-base-1)}.launchpad-button.active{color:var(--color-brand)}.mask{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1;display:none}.mask.active{display:block}.launchpad{display:none;position:absolute;margin-top:4px;z-index:1;width:1110px;max-width:calc(100vw - 100px);max-height:var(--eo-launchpad-v2-max-height);min-height:50vh;min-height:min(500px,var(--eo-launchpad-v2-max-height));background-color:var(--eo-launchpad-v2-background);border:1px solid var(--color-text-divider-line);border-radius:6px;box-shadow:var(--fullscreen-overlay-shadow)}.launchpad.active{display:flex}.sidebar{width:190px;padding:20px 0 24px;display:flex;flex-direction:column;background:var(--color-fill-bg-base-3);min-width:0;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-size:205px 205px;background-repeat:no-repeat;background-position:left 52px bottom 27px}.quick-nav-label,\n.menu-group-label,\n.menu-item-label,\n.recent-visits span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-menu,\n.menu-groups,\n.menu,\n.sub-menu,\n.recent-visits{list-style:none;margin:0;padding:0}.sidebar-menu,\n.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.sidebar-menu-item > eo-link,\n.menu-item > eo-link,\n.recent-visits eo-link{display:block;min-width:0}.sidebar-menu-item > eo-link::part(link),\n.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.sidebar-menu-item{padding:0 12px 0 16px;justify-content:space-between}.sidebar-menu-icon{color:var(--left-sidebar-item-collapsed-icon-color)}.quick-nav{overflow-y:auto;flex:1}.quick-nav-label{color:var(--color-header-text);font-weight:500;margin-bottom:14px;padding:0 16px}.content{flex:1;padding:20px 24px 24px;min-width:0;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;margin-top:-10px;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.menu-groups,\n.recent-visits{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;grid-gap:32px 8px;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.sidebar-menu-item,\n.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-launchpad-v2-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-remove,\n.menu-item-star{cursor:pointer}.menu-item-remove,\n.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.sidebar-menu-item:not(:hover) .menu-item-remove{display:none}.menu-item-remove:hover{color:var(--color-normal-text)}.menu-item-remove:active{color:var(--color-strong-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.recent-visits-label{margin-bottom:12px;font-size:var(--card-title-font-size);color:var(--color-header-text);font-weight:500}.recent-visits{display:grid;grid-gap:8px;gap:8px}.recent-visits eo-link::part(link){background-color:var(--color-fill-bg-base-1);border-radius:3px;color:var(--color-header-text);display:flex;align-items:center;height:24px;padding:0 8px}.sidebar-menu-item > eo-link:hover::part(link),\n.sidebar-menu-item > eo-link:hover .sidebar-menu-icon,\n.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle,\n.recent-visits eo-link:hover::part(link){color:var(--color-brand-hover)}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.empty,\n.loading > :not(.spinner){display:none}@supports not (inset: 0){.content,\n .search-box,\n .sidebar-menu,\n .menu,\n .sub-menu,\n .sidebar-menu-item,\n .menu-item:not(.folder),\n .sidebar-menu-item > eo-link::part(link),\n .menu-item > eo-link::part(link){gap:0}.sidebar-menu > :not(:first-child),\n .menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .sidebar-menu-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}.content > :not(:last-child){margin-bottom:24px}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\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??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n export default content && content.locals ? content.locals : undefined;\n","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 新增我的收藏V2\n * @endpoint POST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_createCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.user_service.launchpad.CreateCollectionV2@1.0.0 */(yield http.post(\"api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection\", data, options)).data\n );\n });\n return function LaunchpadApi_createCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=createCollectionV2.js.map","import { http } from \"@next-core/http\";\n\n/**\n * @description 删除我的收藏V2\n * @endpoint DELETE /api/v2/launchpad/collection/:instanceId\n */\nexport var LaunchpadApi_deleteCollectionV2 = (instanceId, options) => /**! @contract easyops.api.user_service.launchpad.DeleteCollectionV2@1.0.0 */http.delete(\"api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/\".concat(instanceId), options);\n//# sourceMappingURL=deleteCollectionV2.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表V2\n * @endpoint LIST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_listCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.launchpad.ListCollectionV2@1.0.0 */(yield http.get(\"api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_listCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listCollectionV2.js.map"],"names":["Launchpad","_ref","active","searchInputRef","useRef","handleClickSearchBox","useCallback","_searchInputRef$curre","current","focus","loading","q","setQ","menuGroups","favorites","loadingFavorites","recentVisits","pushRecentVisit","toggleStar","isStarred","useLaunchpadInfo","searching","handleSearch","e","target","value","clearSearch","useEffect","_searchInputRef$curre2","React","className","classNames","LaunchpadsContext","Provider","map","item","index","SidebarMenuItem","key","Loading","onClick","WrappedIcon","lib","icon","ref","placeholder","onChange","theme","empty","length","WrappedLink","_extends","type","url","href","name","group","MenuGroup","items","_ref2","spinning","_EoLaunchpadButtonV","defineElement","createDecorators","lockBodyScroll","unwrapProvider","_dec","styleTexts","styleText","EoLaunchpadButtonV2","ReactNextElement","disconnectedCallback","super","this","render","EoLaunchpadButtonV2Component","host","initialized","setInitialized","useState","setActive","toggleLaunchpad","previous","getHistory","listen","hotkeys","filter","event","preventDefault","unbind","deferredLaunchpadInfo","schedulePrefetch","deferredFavorites","role","LaunchpadSvg","_class","_initClass","_applyDecs","c","props","xmlns","width","height","viewBox","fill","fillRule","d","___CSS_LOADER_EXPORT___","push","module","id","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_REPLACEMENT_0___","toString","exports","options","String","__esModule","default","test","slice","hash","needQuotes","concat","replace","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","LaunchpadApi_createCollectionV2","data","http","post","_x","_x2","apply","arguments","LaunchpadApi_deleteCollectionV2","instanceId","delete","LaunchpadApi_listCollectionV2","params","get"],"sourceRoot":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/eo-launchpad-button.df111053.js","mappings":"wQASAA,EAAAA,EAAAA,qBAAoBC,EAAAA,GAAIC,EAAAA,GAExB,
|
|
1
|
+
{"version":3,"file":"chunks/eo-launchpad-button.df111053.js","mappings":"wQASAA,EAAAA,EAAAA,qBAAoBC,EAAAA,GAAIC,EAAAA,GAExB,IASEC,GATI,cAAEC,IAAkBC,EAAAA,EAAAA,oBAE1BC,EAKCF,EAAc,sBAAuB,CACpCG,WAAY,CAACC,EAAAA,KADf,MAAAC,UAG8BC,EAAAA,iBAC5BC,SACE,OAAOC,IAAAA,cAACC,EAAAA,EAAwB,KAClC,EACDC,EAAAL,GAAAN,EAAAY,IAAAC,EAAAA,EAAAA,GAAAF,EAAA,IAAAR,GAAA,SAJ6BI,EAAAA,kBAAgBO,EAAAF,G,0DCrBvC,MAAMG,EAOXC,YAAYC,IAA8BC,EAAAA,EAAAA,GAAA,kBANN,OAAIA,EAAAA,EAAAA,GAAA,0BACZ,IAAKA,EAAAA,EAAAA,GAAA,yBACoB,OAAIA,EAAAA,EAAAA,GAAA,mBACpC,IAAKA,EAAAA,EAAAA,GAAA,oBAIxBC,KAAKF,KAAOA,CACd,CAEAG,mBAAyB,IAAAC,EAAA,KACvB,IAAKF,KAAKG,kBAAmB,CAC3BH,KAAKG,mBAAoB,EACzB,IAAMC,EAAqB,eAAAC,GAAAC,EAAAA,EAAAA,IAAG,YAC5BJ,EAAKK,WAAa,KAClBL,EAAKM,OACP,IAAC,kBAH0B,OAAAH,EAAAI,MAAA,KAAAC,UAAA,KAKe,mBAA/BC,OAAOC,oBAChBZ,KAAKO,WAAaI,OAAOC,oBAAoBR,GAE7CJ,KAAKO,WAAaM,WAChBT,EAGN,CACF,CAEAI,MAAMM,GAWJ,IAAIC,EACJ,OAXIf,KAAKO,aAEkC,mBAA9BI,OAAOK,mBAChBA,mBAAmBhB,KAAKO,YAExBU,aAAajB,KAAKO,YAEpBP,KAAKO,WAAa,MAIfP,KAAKkB,aAAcJ,IACtBd,KAAKkB,YAAa,GAClBH,EAAUf,KAAKF,QAEZqB,OAAOC,IAENC,QAAQD,MAAMA,GACdpB,KAAKsB,kBAAoB,IAAI,IAE9BC,SAAQ,KACPvB,KAAKkB,YAAa,CAAK,IAEtBlB,KAAKsB,oBACRtB,KAAKsB,kBAAoBP,IAEvBD,GAICd,KAAKsB,kBAHDP,CAIb,E,kCC7DK,MAAMS,EACX3B,YACU4B,GAER,IADQC,EAAchB,UAAAiB,OAAA,QAAAC,IAAAlB,UAAA,GAAAA,UAAA,GAAG,cAAa,KAD9Be,QAAAA,EAAgB,KAChBC,OAAAA,CACP,CAEHG,QAAiBC,EAAcC,GAC7B/B,KAAKyB,QAAQI,QAAQ7B,KAAK0B,OAASI,EAAME,KAAKC,UAAUF,GAC1D,CAEAG,QAAiBJ,GACf,OAAOE,KAAKG,MAAMnC,KAAKyB,QAAQS,QAAQlC,KAAK0B,OAASI,GACvD,CAEAM,WAAWN,GACT,OAAO9B,KAAKyB,QAAQW,WAAWpC,KAAK0B,OAASI,EAC/C,CAEAO,QACE,OAAOrC,KAAKyB,QAAQY,OACtB,E","sources":["webpack:///./src/launchpad/index.tsx","webpack:///./src/shared/DeferredService.ts","webpack:///../../src/JsonStorage.ts"],"sourcesContent":["import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport { LaunchpadButton as LaunchpadButtonComponent } from \"./LaunchpadButton/LaunchpadButton.js\";\nimport { initializeReactI18n } from \"@next-core/i18n/react\";\nimport \"@next-core/theme\";\nimport { NS, locales } from \"./i18n.js\";\nimport styleText from \"./LaunchpadButton/LaunchpadButton.shadow.css\";\n\ninitializeReactI18n(NS, locales);\n\nconst { defineElement } = createDecorators();\n\n/**\n * Launchpad 按钮构件\n * @author sailor\n * @insider\n */\n@defineElement(\"eo-launchpad-button\", {\n styleTexts: [styleText],\n})\nclass LaunchpadButton extends ReactNextElement {\n render() {\n return <LaunchpadButtonComponent />;\n }\n}\n\nexport { LaunchpadButton };\n","export class DeferredService {\n private preFetchId: number | null = null;\n private preFetchScheduled = false;\n private firstFetchPromise: Promise<unknown> | null = null;\n private isFetching = false;\n private readonly task: () => Promise<unknown>;\n\n constructor(task: () => Promise<unknown>) {\n this.task = task;\n }\n\n schedulePrefetch(): void {\n if (!this.preFetchScheduled) {\n this.preFetchScheduled = true;\n const preFetchLaunchpadInfo = async (): Promise<void> => {\n this.preFetchId = null;\n this.fetch();\n };\n // istanbul ignore if\n if (typeof window.requestIdleCallback === \"function\") {\n this.preFetchId = window.requestIdleCallback(preFetchLaunchpadInfo);\n } else {\n this.preFetchId = setTimeout(\n preFetchLaunchpadInfo\n ) as unknown as number;\n }\n }\n }\n\n fetch(eager?: boolean): Promise<unknown> {\n if (this.preFetchId) {\n // istanbul ignore if\n if (typeof window.cancelIdleCallback === \"function\") {\n cancelIdleCallback(this.preFetchId);\n } else {\n clearTimeout(this.preFetchId);\n }\n this.preFetchId = null;\n }\n\n let promise: Promise<unknown>;\n if (!this.isFetching || eager) {\n this.isFetching = true;\n promise = this.task();\n promise\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.error(error);\n this.firstFetchPromise = null;\n })\n .finally(() => {\n this.isFetching = false;\n });\n if (!this.firstFetchPromise) {\n this.firstFetchPromise = promise;\n }\n if (eager) {\n return promise;\n }\n }\n return this.firstFetchPromise!;\n }\n}\n","export class JsonStorage {\n constructor(\n private storage: Storage,\n private prefix: string = \"brick-next-\"\n ) {}\n\n setItem<T = any>(name: string, value: T): void {\n this.storage.setItem(this.prefix + name, JSON.stringify(value));\n }\n\n getItem<T = any>(name: string): T {\n return JSON.parse(this.storage.getItem(this.prefix + name) as string) as T;\n }\n\n removeItem(name: string): void {\n return this.storage.removeItem(this.prefix + name);\n }\n\n clear(): void {\n return this.storage.clear();\n }\n}\n"],"names":["initializeReactI18n","NS","locales","_LaunchpadButton","defineElement","createDecorators","_dec","styleTexts","styleText","LaunchpadButton","ReactNextElement","render","React","LaunchpadButtonComponent","_class","_initClass","_applyDecs","c","DeferredService","constructor","task","_defineProperty","this","schedulePrefetch","_this","preFetchScheduled","preFetchLaunchpadInfo","_ref","_asyncToGenerator","preFetchId","fetch","apply","arguments","window","requestIdleCallback","setTimeout","eager","promise","cancelIdleCallback","clearTimeout","isFetching","catch","error","console","firstFetchPromise","finally","JsonStorage","storage","prefix","length","undefined","setItem","name","value","JSON","stringify","getItem","parse","removeItem","clear"],"sourceRoot":""}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! For license information please see eo-launchpad-quick-access.6725ea34.js.LICENSE.txt */
|
|
2
|
+
(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[9031,6522,5628],{489:(e,t,r)=>{"use strict";r.r(t),r.d(t,{EoLaunchpadQuickAccess:()=>a,EoLaunchpadQuickAccessComponent:()=>g});var n,i,o,a,c=r(2604),s=r(8657),u=r.n(s),l=r(2462),p=r(2354),f=(r(9234),r(2252)),d=r(6176),v=r(3132),m=r(3697),{defineElement:h}=(0,l.createDecorators)();i=h("eo-launchpad-quick-access",{styleTexts:[f.Z]});class y extends p.ReactNextElement{render(){return u().createElement(g,null)}}function g(){var{favorites:e,loadingFavorites:t,pushRecentVisit:r,toggleStar:n,isStarred:i}=(0,d.m1)(!0);return u().createElement(v.Z.Provider,{value:{searching:!1,loadingFavorites:t,pushRecentVisit:r,toggleStar:n,isStarred:i}},u().createElement("ul",{className:"quick-access-list"},e.map(((e,t)=>u().createElement(m.L,{key:t,item:e})))))}o=y,[a,n]=(0,c.Z)(o,[],[i],0,void 0,p.ReactNextElement).c,n()},2779:(e,t)=>{var r;!function(){"use strict";var n={}.hasOwnProperty;function i(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)){if(r.length){var a=i.apply(null,r);a&&e.push(a)}}else if("object"===o){if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]")){e.push(r.toString());continue}for(var c in r)n.call(r,c)&&r[c]&&e.push(c)}}}return e.join(" ")}e.exports?(i.default=i,e.exports=i):void 0===(r=function(){return i}.apply(t,[]))||(e.exports=r)}()},2252:(e,t,r)=>{"use strict";r.d(t,{Z:()=>c});var n=r(9601),i=r.n(n),o=r(2609),a=r.n(o)()(i());a.push([e.id,":host{display:block}:host([hidden]){display:none}.quick-access-list{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,1fr);list-style:none;margin:0;padding:0}.sidebar-menu-item{display:flex;align-items:center;justify-content:space-between;overflow:hidden}.sidebar-menu-item > eo-link{display:block;min-width:0}.sidebar-menu-item > eo-link::part(link){display:flex;align-items:center;height:20px;gap:8px;color:var(--color-header-text)}.sidebar-menu-icon{color:var(--left-sidebar-item-collapsed-icon-color)}.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-item-remove{color:var(--color-secondary-text);cursor:pointer}.sidebar-menu-item:not(:hover) .menu-item-remove{display:none}.menu-item-remove:hover{color:var(--color-normal-text)}.menu-item-remove:active{color:var(--color-strong-text)}.sidebar-menu-item > eo-link:hover::part(link),\n.sidebar-menu-item > eo-link:hover .sidebar-menu-icon{color:var(--color-brand-hover)}@supports not (inset: 0){.sidebar-menu-item,\n .sidebar-menu-item > eo-link::part(link){gap:0}.sidebar-menu-icon{margin-right:8px}}",""]);const c=a.toString()},2609:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r="",n=void 0!==t[5];return t[4]&&(r+="@supports (".concat(t[4],") {")),t[2]&&(r+="@media ".concat(t[2]," {")),n&&(r+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),r+=e(t),n&&(r+="}"),t[2]&&(r+="}"),t[4]&&(r+="}"),r})).join("")},t.i=function(e,r,n,i,o){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(n)for(var c=0;c<this.length;c++){var s=this[c][0];null!=s&&(a[s]=!0)}for(var u=0;u<e.length;u++){var l=[].concat(e[u]);n&&a[l[0]]||(void 0!==o&&(void 0===l[5]||(l[1]="@layer".concat(l[5].length>0?" ".concat(l[5]):""," {").concat(l[1],"}")),l[5]=o),r&&(l[2]?(l[1]="@media ".concat(l[2]," {").concat(l[1],"}"),l[2]=r):l[2]=r),i&&(l[4]?(l[1]="@supports (".concat(l[4],") {").concat(l[1],"}"),l[4]=i):l[4]="".concat(i)),t.push(l))}},t}},9601:e=>{"use strict";e.exports=function(e){return e[1]}},2604:(e,t,r)=>{"use strict";r.d(t,{Z:()=>f});var n=r(6522),i=r(1815);function o(e,t){return function(r,n){return e[t].call(r,n)}}function a(e,t){return function(r){if(t.v)throw new Error("attempted to call addInitializer after decoration was finished");s(r,"An initializer",!0),e.push(r)}}function c(e,t,r,n,i,c,s,u,l,p,f){function d(e){return function(t,r){if(!p(t))throw new TypeError("Attempted to access private element on non-instance");return e(t,r)}}var v,m,h={v:!1},y={kind:["field","accessor","method","getter","setter","field"][c],name:u?"#"+r:r,static:s,private:u,metadata:f,addInitializer:a(i,h)};if(u||0!==c&&2!==c)if(2===c)v=d((function(){return n.value}));else{var g=0===c||1===c;(g||3===c)&&(v=o(n,"get"),u&&(v=d(v))),(g||4===c)&&(m=o(n,"set"),u&&(m=d(m)))}else v=function(e){return e[r]},0===c&&(m=function(e,t){e[r]=t});var b=u?p.bind():function(e){return r in e},w=y.access={has:b};v&&(w.get=v),m&&(w.set=m);try{return e.call(t,l,y)}finally{h.v=!0}}function s(e,t,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must be a function")}function u(e,t){var r=(0,n.Z)(t);if(1===e){if("object"!==r||!t)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");s(t.get,"accessor.get"),s(t.set,"accessor.set"),s(t.init,"accessor.init")}else if("function"!==r)throw new TypeError((0===e?"field":5===e?"class":"method")+" decorators must return a function or void 0")}function l(e,t,r,n,i,a,s,l,p,f,d){var v,m,h,y,g=r[0],b=r[3];n||Array.isArray(g)||(g=[g]),l?v=0===a||1===a?{get:function(){return b(this)},set:function(e){r[4](this,e)}}:3===a?{get:b}:4===a?{set:b}:{value:b}:0!==a&&(v=Object.getOwnPropertyDescriptor(t,i)),1===a?h={get:v.get,set:v.set}:2===a?h=v.value:3===a?h=v.get:4===a&&(h=v.set);for(var w=n?2:1,j=g.length-1;j>=0;j-=w){var O;void 0!==(y=c(g[j],n?g[j-1]:void 0,i,v,p,a,s,l,h,f,d))&&(u(a,y),0===a?O=y:1===a?(O=y.init,h={get:y.get||h.get,set:y.set||h.set}):h=y,void 0!==O&&(void 0===m?m=O:"function"==typeof m?m=[m,O]:m.push(O)))}if(0===a||1===a){if(void 0===m)m=function(e,t){return t};else if("function"!=typeof m){var S=m;m=function(e,t){for(var r=t,n=S.length-1;n>=0;n--)r=S[n].call(e,r);return r}}else{var Z=m;m=m.call.bind(Z)}e.push(m)}0!==a&&(1===a?(v.get=h.get,v.set=h.set):2===a?v.value=h:3===a?v.get=h:4===a&&(v.set=h),l?1===a?e.push(o(v,"get"),o(v,"set")):e.push(2===a?h:Function.call.bind(h)):Object.defineProperty(t,i,v))}function p(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for("Symbol.metadata"),{configurable:!0,enumerable:!0,value:t})}function f(e,t,r,n,o,c){if(arguments.length>=6)var s=c[Symbol.metadata||Symbol.for("Symbol.metadata")];var f=Object.create(void 0===s?null:s),d=function(e,t,r,n){var o,a,c,s=[],u=new Map,p=new Map;function f(e){e&&s.push((function(t){for(var r=0;r<e.length;r++)e[r].call(t);return t}))}for(var d=0;d<t.length;d++){var v=t[d];if(Array.isArray(v)){var m,h,y=v[1],g=v[2],b=v.length>3,w=16&y,j=!!(8&y),O=r;if(y&=7,j?(m=e,h=a=a||[],b&&!c&&(c=function(t){return(0,i.Z)(t)===e}),O=c):(m=e.prototype,h=o=o||[]),0!==y&&!b){var S=j?p:u,Z=S.get(g)||0;if(!0===Z||3===Z&&4!==y||4===Z&&3!==y)throw new Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+g);S.set(g,!(!Z&&y>2)||y)}l(s,m,v,w,g,y,j,b,h,O,n)}}return f(o),f(a),s}(e,t,o,f);return r.length||p(e,f),{e:d,get c(){return function(e,t,r,n){if(t.length){for(var i=[],o=e,c=e.name,s=r?2:1,l=t.length-1;l>=0;l-=s){var f={v:!1};try{var d=t[l].call(r?t[l-1]:void 0,o,{kind:"class",name:c,addInitializer:a(i,f),metadata:n})}finally{f.v=!0}void 0!==d&&(u(5,d),o=d)}return[p(o,n),function(){for(var e=0;e<i.length;e++)i[e].call(o)}]}}(e,r,n,f)}}}},4795:(e,t,r)=>{"use strict";function n(e,t,r,n,i,o,a){try{var c=e[o](a),s=c.value}catch(e){return void r(e)}c.done?t(s):Promise.resolve(s).then(n,i)}function i(e){return function(){var t=this,r=arguments;return new Promise((function(i,o){var a=e.apply(t,r);function c(e){n(a,i,o,c,s,"next",e)}function s(e){n(a,i,o,c,s,"throw",e)}c(void 0)}))}}r.d(t,{Z:()=>i})},1815:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(6522);function i(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,n.Z)(e):"null"));return e}},6666:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(5850);function i(e,t,r){return(t=(0,n.Z)(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}},7896:(e,t,r)=>{"use strict";function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},n.apply(this,arguments)}r.d(t,{Z:()=>n})},3028:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(6666);function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}},5850:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(6522);function i(e){var t=function(e,t){if("object"!==(0,n.Z)(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!==(0,n.Z)(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===(0,n.Z)(t)?t:String(t)}},6522:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}r.d(t,{Z:()=>n})},2106:(e,t,r)=>{"use strict";r.d(t,{u:()=>a});var n=r(3028),i=r(4795),o=r(9751),a=function(){var e=(0,i.Z)((function*(e,t){return(yield o.http.get("api/gateway/micro_app_standalone.launchpad.GetLaunchpadInfo/api/v1/micro_app_standalone/launchpad_info",(0,n.Z)((0,n.Z)({},t),{},{params:e}))).data}));return function(t,r){return e.apply(this,arguments)}}()},8685:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(4795),i=r(3352),o=function(){var e=(0,n.Z)((function*(e,t){return(yield i.http.post("api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection",e,t)).data}));return function(t,r){return e.apply(this,arguments)}}()},5003:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=r(3352),i=(e,t)=>n.http.delete("api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/".concat(e),t)},4008:(e,t,r)=>{"use strict";r.d(t,{$:()=>a});var n=r(3028),i=r(4795),o=r(3352),a=function(){var e=(0,i.Z)((function*(e,t){return(yield o.http.get("api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection",(0,n.Z)((0,n.Z)({},t),{},{params:e}))).data}));return function(t,r){return e.apply(this,arguments)}}()}}]);
|
|
3
|
+
//# sourceMappingURL=eo-launchpad-quick-access.6725ea34.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/eo-launchpad-quick-access.6725ea34.js","mappings":";0NAmBEA,sGATI,cAAEC,IAAkBC,EAAAA,EAAAA,oBAE1BC,EAKCF,EAAc,4BAA6B,CAC1CG,WAAY,CAACC,EAAAA,KADf,MAAAC,UAGqCC,EAAAA,iBACnCC,SACE,OAAOC,IAAAA,cAACC,EAA+B,KACzC,EAGK,SAASA,IACd,IAAM,UACJC,EAAS,iBACTC,EAAgB,gBAChBC,EAAe,WACfC,EAAU,UACVC,IACEC,EAAAA,EAAAA,KAAiB,GAErB,OACEP,IAAAA,cAACQ,EAAAA,EAAkBC,SAAQ,CACzBC,MAAO,CACLC,WAAW,EACXR,mBACAC,kBACAC,aACAC,cAGFN,IAAAA,cAAA,MAAIY,UAAU,qBACXV,EAAUW,KAAI,CAACC,EAAMC,IACpBf,IAAAA,cAACgB,EAAAA,EAAe,CAACC,IAAKF,EAAOD,KAAMA,OAK7C,CA5BCI,EAAArB,GAAAN,EAAA4B,IAAAC,EAAAA,EAAAA,GAAAF,EAAA,IAAAxB,GAAA,SAJoCI,EAAAA,kBAAgBuB,EAAAF,kBCpBrD,OAOC,WACA,aAEA,IAAIG,EAAS,CAAC,EAAEC,eAGhB,SAASC,IAGR,IAFA,IAAIC,EAAU,GAELC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAC1C,IAAIG,EAAMF,UAAUD,GACpB,GAAKG,EAAL,CAEA,IAAIC,SAAiBD,EAErB,GAAgB,WAAZC,GAAoC,WAAZA,EAC3BL,EAAQM,KAAKF,QACP,GAAIG,MAAMC,QAAQJ,IACxB,GAAIA,EAAID,OAAQ,CACf,IAAIM,EAAQV,EAAWW,MAAM,KAAMN,GAC/BK,GACHT,EAAQM,KAAKG,EAEf,OACM,GAAgB,WAAZJ,EAAsB,CAChC,GAAID,EAAIO,WAAaC,OAAOC,UAAUF,WAAaP,EAAIO,SAASA,WAAWG,SAAS,iBAAkB,CACrGd,EAAQM,KAAKF,EAAIO,YACjB,QACD,CAEA,IAAK,IAAInB,KAAOY,EACXP,EAAOkB,KAAKX,EAAKZ,IAAQY,EAAIZ,IAChCQ,EAAQM,KAAKd,EAGhB,CAxBkB,CAyBnB,CAEA,OAAOQ,EAAQgB,KAAK,IACrB,CAEqCC,EAAOC,SAC3CnB,EAAWoB,QAAUpB,EACrBkB,EAAOC,QAAUnB,QAKhB,KAFwB,EAAF,WACtB,OAAOA,CACP,UAFoB,OAEpB,YAIH,CApDA,kFCJIqB,QAA0B,GAA4B,KAE1DA,EAAwBd,KAAK,CAACW,EAAOI,GAAI,klCAEgD,KAEzF,QAAeD,EAAwBT,kCCHvCM,EAAOC,QAAU,SAAUI,GACzB,IAAIC,EAAO,GA4EX,OAzEAA,EAAKZ,SAAW,WACd,OAAOa,KAAKpC,KAAI,SAAUC,GACxB,IAAIoC,EAAU,GACVC,OAA+B,IAAZrC,EAAK,GAoB5B,OAnBIA,EAAK,KACPoC,GAAW,cAAcE,OAAOtC,EAAK,GAAI,QAEvCA,EAAK,KACPoC,GAAW,UAAUE,OAAOtC,EAAK,GAAI,OAEnCqC,IACFD,GAAW,SAASE,OAAOtC,EAAK,GAAGc,OAAS,EAAI,IAAIwB,OAAOtC,EAAK,IAAM,GAAI,OAE5EoC,GAAWH,EAAuBjC,GAC9BqC,IACFD,GAAW,KAETpC,EAAK,KACPoC,GAAW,KAETpC,EAAK,KACPoC,GAAW,KAENA,CACT,IAAGT,KAAK,GACV,EAGAO,EAAKtB,EAAI,SAAW2B,EAASC,EAAOC,EAAQC,EAAUC,GAC7B,iBAAZJ,IACTA,EAAU,CAAC,CAAC,KAAMA,OAASK,KAE7B,IAAIC,EAAyB,CAAC,EAC9B,GAAIJ,EACF,IAAK,IAAIK,EAAI,EAAGA,EAAIX,KAAKrB,OAAQgC,IAAK,CACpC,IAAId,EAAKG,KAAKW,GAAG,GACP,MAANd,IACFa,EAAuBb,IAAM,EAEjC,CAEF,IAAK,IAAIe,EAAK,EAAGA,EAAKR,EAAQzB,OAAQiC,IAAM,CAC1C,IAAI/C,EAAO,GAAGsC,OAAOC,EAAQQ,IACzBN,GAAUI,EAAuB7C,EAAK,WAGrB,IAAV2C,SACc,IAAZ3C,EAAK,KAGdA,EAAK,GAAK,SAASsC,OAAOtC,EAAK,GAAGc,OAAS,EAAI,IAAIwB,OAAOtC,EAAK,IAAM,GAAI,MAAMsC,OAAOtC,EAAK,GAAI,MAF/FA,EAAK,GAAK2C,GAMVH,IACGxC,EAAK,IAGRA,EAAK,GAAK,UAAUsC,OAAOtC,EAAK,GAAI,MAAMsC,OAAOtC,EAAK,GAAI,KAC1DA,EAAK,GAAKwC,GAHVxC,EAAK,GAAKwC,GAMVE,IACG1C,EAAK,IAGRA,EAAK,GAAK,cAAcsC,OAAOtC,EAAK,GAAI,OAAOsC,OAAOtC,EAAK,GAAI,KAC/DA,EAAK,GAAK0C,GAHV1C,EAAK,GAAK,GAAGsC,OAAOI,IAMxBR,EAAKjB,KAAKjB,GACZ,CACF,EACOkC,CACT,yBClFAN,EAAOC,QAAU,SAAUjB,GACzB,OAAOA,EAAE,EACX,wECFA,SAASoC,EAAcC,EAAGC,GACxB,OAAO,SAAUC,EAAGC,GAClB,OAAOH,EAAEC,GAAGxB,KAAKyB,EAAGC,EACtB,CACF,CACA,SAASC,EAA2BJ,EAAGC,GACrC,OAAO,SAAUC,GACf,GAAID,EAAEI,EAAG,MAAM,IAAIC,MAAM,kEACzBC,EAAeL,EAAG,kBAAkB,GAAKF,EAAEhC,KAAKkC,EAClD,CACF,CACA,SAASM,EAAUR,EAAGC,EAAGC,EAAGC,EAAGM,EAAG9C,EAAG+C,EAAGC,EAAGC,EAAGtD,EAAGuD,GAC/C,SAASC,EAAwBd,GAC/B,OAAO,SAAUC,EAAGC,GAClB,IAAK5C,EAAE2C,GAAI,MAAM,IAAIc,UAAU,uDAC/B,OAAOf,EAAEC,EAAGC,EACd,CACF,CACA,IAAIc,EACFC,EACAC,EAAI,CACFb,GAAG,GAELA,EAAI,CACFc,KAAM,CAAC,QAAS,WAAY,SAAU,SAAU,SAAU,SAASxD,GACnEyD,KAAMT,EAAI,IAAMT,EAAIA,EACpB,OAAUQ,EACV,QAAWC,EACXU,SAAUR,EACVS,eAAgBlB,EAA2BK,EAAGS,IAElD,GAAIP,GAAK,IAAMhD,GAAK,IAAMA,EACxB,GAAI,IAAMA,EAAGqD,EAAIF,GAAwB,WACvC,OAAOX,EAAExD,KACX,QAAQ,CACN,IAAI4E,EAAI,IAAM5D,GAAK,IAAMA,GACxB4D,GAAK,IAAM5D,KAAOqD,EAAIjB,EAAcI,EAAG,OAAQQ,IAAMK,EAAIF,EAAwBE,MAAOO,GAAK,IAAM5D,KAAOsD,EAAIlB,EAAcI,EAAG,OAAQQ,IAAMM,EAAIH,EAAwBG,IAC5K,MACKD,EAAI,SAAWhB,GACpB,OAAOA,EAAEE,EACX,EAAG,IAAMvC,IAAMsD,EAAI,SAAWjB,EAAGC,GAC/BD,EAAEE,GAAKD,CACT,GACA,IAAIuB,EAAIb,EAAIrD,EAAEmE,OAAS,SAAUzB,GAC7B,OAAOE,KAAKF,CACd,EACA0B,EAAIrB,EAAEsB,OAAS,CACbC,IAAKJ,GAETR,IAAMU,EAAEG,IAAMb,GAAIC,IAAMS,EAAEI,IAAMb,GAChC,IACE,OAAOjB,EAAEvB,KAAKwB,EAAGW,EAAGP,EACtB,CAAE,QACAa,EAAEb,GAAI,CACR,CACF,CACA,SAASE,EAAeP,EAAGC,EAAGC,GAC5B,GAAI,mBAAqBF,IAAME,QAAK,IAAWF,GAAI,MAAM,IAAIe,UAAUd,EAAI,sBAC7E,CACA,SAAS8B,EAAuB/B,EAAGC,GACjC,IAAIC,GAAI,OAAQD,GAChB,GAAI,IAAMD,EAAG,CACX,GAAI,WAAaE,IAAMD,EAAG,MAAM,IAAIc,UAAU,yFAC9CR,EAAeN,EAAE4B,IAAK,gBAAiBtB,EAAeN,EAAE6B,IAAK,gBAAiBvB,EAAeN,EAAE+B,KAAM,gBACvG,MAAO,GAAI,aAAe9B,EAAG,MAAM,IAAIa,WAAW,IAAMf,EAAI,QAAU,IAAMA,EAAI,QAAU,UAAY,+CACxG,CACA,SAASiC,EAAejC,EAAGC,EAAGC,EAAGC,EAAGM,EAAG9C,EAAG+C,EAAGC,EAAGC,EAAGtD,EAAGuD,GACpD,IAAIG,EACFC,EACAC,EACAb,EACAkB,EAAIrB,EAAE,GACNsB,EAAItB,EAAE,GACRC,GAAKlC,MAAMC,QAAQqD,KAAOA,EAAI,CAACA,IAAKZ,EAAIK,EAAI,IAAMrD,GAAK,IAAMA,EAAI,CAC/DkE,IAAK,WACH,OAAOL,EAAEtC,KACX,EACA4C,IAAK,SAAa9B,GAChBE,EAAE,GAAGhB,KAAMc,EACb,GACE,IAAMrC,EAAI,CACZkE,IAAKL,GACH,IAAM7D,EAAI,CACZmE,IAAKN,GACH,CACF7E,MAAO6E,GACL,IAAM7D,IAAMqD,EAAI1C,OAAO4D,yBAAyBjC,EAAGQ,IAAK,IAAM9C,EAAIuD,EAAI,CACxEW,IAAKb,EAAEa,IACPC,IAAKd,EAAEc,KACL,IAAMnE,EAAIuD,EAAIF,EAAErE,MAAQ,IAAMgB,EAAIuD,EAAIF,EAAEa,IAAM,IAAMlE,IAAMuD,EAAIF,EAAEc,KACpE,IAAK,IAAIJ,EAAIvB,EAAI,EAAI,EAAGgC,EAAIZ,EAAE1D,OAAS,EAAGsE,GAAK,EAAGA,GAAKT,EAAG,CACxD,IAAIU,OACA,KAAY/B,EAAIG,EAAUe,EAAEY,GAAIhC,EAAIoB,EAAEY,EAAI,QAAK,EAAQ1B,EAAGO,EAAGJ,EAAGjD,EAAG+C,EAAGC,EAAGO,EAAG5D,EAAGuD,MAAKkB,EAAuBpE,EAAG0C,GAAI,IAAM1C,EAAIyE,EAAI/B,EAAI,IAAM1C,GAAKyE,EAAI/B,EAAE2B,KAAMd,EAAI,CACjKW,IAAKxB,EAAEwB,KAAOX,EAAEW,IAChBC,IAAKzB,EAAEyB,KAAOZ,EAAEY,MACbZ,EAAIb,OAAG,IAAW+B,SAAM,IAAWnB,EAAIA,EAAImB,EAAI,mBAAqBnB,EAAIA,EAAI,CAACA,EAAGmB,GAAKnB,EAAEjD,KAAKoE,IACnG,CACA,GAAI,IAAMzE,GAAK,IAAMA,EAAG,CACtB,QAAI,IAAWsD,EAAGA,EAAI,SAAWjB,EAAGC,GAClC,OAAOA,CACT,OAAO,GAAI,mBAAqBgB,EAAG,CACjC,IAAIoB,EAAIpB,EACRA,EAAI,SAAWjB,EAAGC,GAChB,IAAK,IAAIC,EAAID,EAAGE,EAAIkC,EAAExE,OAAS,EAAGsC,GAAK,EAAGA,IAAKD,EAAImC,EAAElC,GAAG1B,KAAKuB,EAAGE,GAChE,OAAOA,CACT,CACF,KAAO,CACL,IAAIoC,EAAIrB,EACRA,EAAIA,EAAExC,KAAKgD,KAAKa,EAClB,CACAtC,EAAEhC,KAAKiD,EACT,CACA,IAAMtD,IAAM,IAAMA,GAAKqD,EAAEa,IAAMX,EAAEW,IAAKb,EAAEc,IAAMZ,EAAEY,KAAO,IAAMnE,EAAIqD,EAAErE,MAAQuE,EAAI,IAAMvD,EAAIqD,EAAEa,IAAMX,EAAI,IAAMvD,IAAMqD,EAAEc,IAAMZ,GAAIP,EAAI,IAAMhD,EAAIqC,EAAEhC,KAAK+B,EAAciB,EAAG,OAAQjB,EAAciB,EAAG,QAAUhB,EAAEhC,KAAK,IAAML,EAAIuD,EAAIqB,SAAS9D,KAAKgD,KAAKP,IAAM5C,OAAOkE,eAAevC,EAAGQ,EAAGO,GAClR,CA6DA,SAASyB,EAAezC,EAAGC,GACzB,OAAO3B,OAAOkE,eAAexC,EAAG0C,OAAOrB,UAAYqB,OAAY,IAAE,mBAAoB,CACnFC,cAAc,EACdC,YAAY,EACZjG,MAAOsD,GAEX,CACe,SAAS4C,EAAc7C,EAAGC,EAAGC,EAAGC,EAAGM,EAAG9C,GACnD,GAAIC,UAAUC,QAAU,EAAG,IAAI6C,EAAI/C,EAAE+E,OAAOrB,UAAYqB,OAAY,IAAE,oBACtE,IAAI/B,EAAIrC,OAAOwE,YAAO,IAAWpC,EAAI,KAAOA,GAC1CE,EAtEJ,SAAyBZ,EAAGC,EAAGC,EAAGC,GAChC,IAAIM,EACF9C,EACA+C,EACAC,EAAI,GACJC,EAAI,IAAImC,IACRzF,EAAI,IAAIyF,IACV,SAASC,EAAiBhD,GACxBA,GAAKW,EAAE3C,MAAK,SAAUiC,GACpB,IAAK,IAAIC,EAAI,EAAGA,EAAIF,EAAEnC,OAAQqC,IAAKF,EAAEE,GAAGzB,KAAKwB,GAC7C,OAAOA,CACT,GACF,CACA,IAAK,IAAIY,EAAI,EAAGA,EAAIZ,EAAEpC,OAAQgD,IAAK,CACjC,IAAIG,EAAIf,EAAEY,GACV,GAAI5C,MAAMC,QAAQ8C,GAAI,CACpB,IAAIC,EACFC,EACAb,EAAIW,EAAE,GACNO,EAAIP,EAAE,GACNQ,EAAIR,EAAEnD,OAAS,EACf6D,EAAI,GAAKrB,EACT8B,KAAO,EAAI9B,GACX+B,EAAIlC,EACN,GAAIG,GAAK,EAAG8B,GAAKlB,EAAIjB,EAAGkB,EAAIvD,EAAIA,GAAK,GAAI6D,IAAMd,IAAMA,EAAI,SAAWT,GAClE,OAAO,OAAWA,KAAOD,CAC3B,GAAIoC,EAAI1B,IAAMO,EAAIjB,EAAEzB,UAAW2C,EAAIT,EAAIA,GAAK,IAAK,IAAMJ,IAAMmB,EAAG,CAC9D,IAAIa,EAAIF,EAAI7E,EAAIsD,EACd0B,EAAID,EAAER,IAAIN,IAAM,EAClB,IAAI,IAAOe,GAAK,IAAMA,GAAK,IAAMjC,GAAK,IAAMiC,GAAK,IAAMjC,EAAG,MAAM,IAAIC,MAAM,wMAA0MiB,GACpRc,EAAEP,IAAIP,KAAMe,GAAKjC,EAAI,IAAMA,EAC7B,CACA4B,EAAetB,EAAGM,EAAGD,EAAGU,EAAGH,EAAGlB,EAAG8B,EAAGX,EAAGN,EAAGkB,EAAGjC,EAC/C,CACF,CACA,OAAO6C,EAAiBvC,GAAIuC,EAAiBrF,GAAIgD,CACnD,CAkCQsC,CAAgBjD,EAAGC,EAAGQ,EAAGE,GAC/B,OAAOT,EAAErC,QAAU4E,EAAezC,EAAGW,GAAI,CACvCX,EAAGY,EACCtD,QACF,OArCN,SAAwB0C,EAAGC,EAAGC,EAAGC,GAC/B,GAAIF,EAAEpC,OAAQ,CACZ,IAAK,IAAI4C,EAAI,GAAI9C,EAAIqC,EAAGU,EAAIV,EAAEoB,KAAMT,EAAIT,EAAI,EAAI,EAAGU,EAAIX,EAAEpC,OAAS,EAAG+C,GAAK,EAAGA,GAAKD,EAAG,CACnF,IAAIrD,EAAI,CACN+C,GAAG,GAEL,IACE,IAAIQ,EAAIZ,EAAEW,GAAGnC,KAAKyB,EAAID,EAAEW,EAAI,QAAK,EAAQjD,EAAG,CAC1CwD,KAAM,QACNC,KAAMV,EACNY,eAAgBlB,EAA2BK,EAAGnD,GAC9C+D,SAAUlB,GAEd,CAAE,QACA7C,EAAE+C,GAAI,CACR,MACA,IAAWQ,IAAMkB,EAAuB,EAAGlB,GAAIlD,EAAIkD,EACrD,CACA,MAAO,CAAC4B,EAAe9E,EAAGwC,GAAI,WAC5B,IAAK,IAAIH,EAAI,EAAGA,EAAIS,EAAE5C,OAAQmC,IAAKS,EAAET,GAAGvB,KAAKd,EAC/C,EACF,CACF,CAeauF,CAAelD,EAAGE,EAAGC,EAAGQ,EACjC,EAEJ,+BCjMA,SAASwC,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQtG,EAAKY,GACpE,IACE,IAAI2F,EAAOL,EAAIlG,GAAKY,GAChBnB,EAAQ8G,EAAK9G,KACnB,CAAE,MAAO+G,GAEP,YADAJ,EAAOI,EAET,CACID,EAAKE,KACPN,EAAQ1G,GAERiH,QAAQP,QAAQ1G,GAAOkH,KAAKN,EAAOC,EAEvC,CACe,SAASM,EAAkBC,GACxC,OAAO,WACL,IAAIC,EAAO9E,KACT+E,EAAOrG,UACT,OAAO,IAAIgG,SAAQ,SAAUP,EAASC,GACpC,IAAIF,EAAMW,EAAG3F,MAAM4F,EAAMC,GACzB,SAASV,EAAM5G,GACbwG,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQ,OAAQ7G,EAClE,CACA,SAAS6G,EAAOU,GACdf,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQ,QAASU,EACnE,CACAX,OAAM5D,EACR,GACF,CACF,8EC5Be,SAASwE,EAAYnE,GAClC,GAAI1B,OAAO0B,KAAOA,EAAG,MAAMe,UAAU,qDAAuD,OAASf,GAAI,OAAQA,GAAK,SACtH,OAAOA,CACT,8DCHe,SAASoE,EAAgBC,EAAKnH,EAAKP,GAYhD,OAXAO,GAAM,OAAcA,MACTmH,EACT/F,OAAOkE,eAAe6B,EAAKnH,EAAK,CAC9BP,MAAOA,EACPiG,YAAY,EACZD,cAAc,EACd2B,UAAU,IAGZD,EAAInH,GAAOP,EAEN0H,CACT,+BCde,SAASE,IAYtB,OAXAA,EAAWjG,OAAOkG,OAASlG,OAAOkG,OAAO/C,OAAS,SAAUgD,GAC1D,IAAK,IAAI9G,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CACzC,IAAI+G,EAAS9G,UAAUD,GACvB,IAAK,IAAIT,KAAOwH,EACVpG,OAAOC,UAAUf,eAAeiB,KAAKiG,EAAQxH,KAC/CuH,EAAOvH,GAAOwH,EAAOxH,GAG3B,CACA,OAAOuH,CACT,EACOF,EAASnG,MAAMc,KAAMtB,UAC9B,8ECZA,SAAS+G,EAAQ3E,EAAGE,GAClB,IAAID,EAAI3B,OAAOsG,KAAK5E,GACpB,GAAI1B,OAAOuG,sBAAuB,CAChC,IAAInE,EAAIpC,OAAOuG,sBAAsB7E,GACrCE,IAAMQ,EAAIA,EAAEoE,QAAO,SAAU5E,GAC3B,OAAO5B,OAAO4D,yBAAyBlC,EAAGE,GAAG0C,UAC/C,KAAK3C,EAAEjC,KAAKI,MAAM6B,EAAGS,EACvB,CACA,OAAOT,CACT,CACe,SAAS8E,EAAe/E,GACrC,IAAK,IAAIE,EAAI,EAAGA,EAAItC,UAAUC,OAAQqC,IAAK,CACzC,IAAID,EAAI,MAAQrC,UAAUsC,GAAKtC,UAAUsC,GAAK,CAAC,EAC/CA,EAAI,EAAIyE,EAAQrG,OAAO2B,IAAI,GAAI+E,SAAQ,SAAU9E,IAC/C,OAAeF,EAAGE,EAAGD,EAAEC,GACzB,IAAK5B,OAAO2G,0BAA4B3G,OAAO4G,iBAAiBlF,EAAG1B,OAAO2G,0BAA0BhF,IAAM0E,EAAQrG,OAAO2B,IAAI+E,SAAQ,SAAU9E,GAC7I5B,OAAOkE,eAAexC,EAAGE,EAAG5B,OAAO4D,yBAAyBjC,EAAGC,GACjE,GACF,CACA,OAAOF,CACT,8DCnBe,SAASmF,EAAerH,GACrC,IAAIZ,ECFS,SAAsBkI,EAAOC,GAC1C,GAAuB,YAAnB,OAAQD,IAAiC,OAAVA,EAAgB,OAAOA,EAC1D,IAAIE,EAAOF,EAAM1C,OAAO6C,aACxB,QAAa5F,IAAT2F,EAAoB,CACtB,IAAIE,EAAMF,EAAK7G,KAAK2G,EAAOC,UAC3B,GAAqB,YAAjB,OAAQG,GAAmB,OAAOA,EACtC,MAAM,IAAIzE,UAAU,+CACtB,CACA,OAA4B0E,OAAiBL,EAC/C,CDPY,CAAYtH,GACtB,MAAwB,YAAjB,OAAQZ,GAAoBA,EAAMuI,OAAOvI,EAClD,+BELe,SAASwI,EAAQhF,GAG9B,OAAOgF,EAAU,mBAAqBhD,QAAU,iBAAmBA,OAAOiD,SAAW,SAAUjF,GAC7F,cAAcA,CAChB,EAAI,SAAUA,GACZ,OAAOA,GAAK,mBAAqBgC,QAAUhC,EAAEkF,cAAgBlD,QAAUhC,IAAMgC,OAAOnE,UAAY,gBAAkBmC,CACpH,EAAGgF,EAAQhF,EACb,kGCDWmF,EAA6C,WACtD,IAAIC,GAAO,QAAkB,UAAWC,EAAQC,GAC9C,aAAkG,EAAAC,KAAKpE,IAAI,0GAA0G,QAAc,OAAc,CAAC,EAAGmE,GAAU,CAAC,EAAG,CAC/PD,aAEJ,IACF,IACA,OAAO,SAAuCG,EAAIC,GAChD,OAAOL,EAAK1H,MAAMc,KAAMtB,UAC1B,CACF,CAVwD,yECD7CwI,EAA+C,WACxD,IAAIN,GAAO,QAAkB,UAAWO,EAAML,GAC5C,aAA4F,EAAAC,KAAKK,KAAK,oFAAqFD,EAAML,IACjM,IACF,IACA,OAAO,SAAyCE,EAAIC,GAClD,OAAOL,EAAK1H,MAAMc,KAAMtB,UAC1B,CACF,CAR0D,+DCA/C2I,EAAkC,CAACC,EAAYR,IAAyF,EAAAC,KAAKQ,OAAO,qFAAqFpH,OAAOmH,GAAaR,mFCC7PU,EAA6C,WACtD,IAAIZ,GAAO,QAAkB,UAAWC,EAAQC,GAC9C,aAA0F,EAAAC,KAAKpE,IAAI,mFAAmF,QAAc,OAAc,CAAC,EAAGmE,GAAU,CAAC,EAAG,CAChOD,aAEJ,IACF,IACA,OAAO,SAAuCG,EAAIC,GAChD,OAAOL,EAAK1H,MAAMc,KAAMtB,UAC1B,CACF,CAVwD","sources":["webpack:///./src/launchpad-quick-access/index.tsx","webpack:///../../node_modules/classnames/index.js","webpack:///./src/launchpad-quick-access/styles.shadow.css","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2305.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../node_modules/@next-api-sdk/micro-app-standalone-sdk/dist/esm/api/micro_app_standalone/launchpad/getLaunchpadInfo.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/createCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/deleteCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/listCollectionV2.js"],"sourcesContent":["import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport { useLaunchpadInfo } from \"../launchpad-button-v2/useLaunchpadInfo\";\nimport { LaunchpadsContext } from \"../launchpad-button-v2/LaunchpadContext\";\nimport { SidebarMenuItem } from \"../launchpad-button-v2/MenuGroup\";\nimport { SidebarMenuItemData } from \"../launchpad-button-v2/interfaces\";\n\nconst { defineElement } = createDecorators();\n\n/**\n * 快捷访问\n * @insider\n */\nexport\n@defineElement(\"eo-launchpad-quick-access\", {\n styleTexts: [styleText],\n})\nclass EoLaunchpadQuickAccess extends ReactNextElement {\n render() {\n return <EoLaunchpadQuickAccessComponent />;\n }\n}\n\nexport function EoLaunchpadQuickAccessComponent() {\n const {\n favorites,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n } = useLaunchpadInfo(true);\n\n return (\n <LaunchpadsContext.Provider\n value={{\n searching: false,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n }}\n >\n <ul className=\"quick-access-list\">\n {favorites.map((item, index) => (\n <SidebarMenuItem key={index} item={item as SidebarMenuItemData} />\n ))}\n </ul>\n </LaunchpadsContext.Provider>\n );\n}\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.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_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}.quick-access-list{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,1fr);list-style:none;margin:0;padding:0}.sidebar-menu-item{display:flex;align-items:center;justify-content:space-between;overflow:hidden}.sidebar-menu-item > eo-link{display:block;min-width:0}.sidebar-menu-item > eo-link::part(link){display:flex;align-items:center;height:20px;gap:8px;color:var(--color-header-text)}.sidebar-menu-icon{color:var(--left-sidebar-item-collapsed-icon-color)}.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-item-remove{color:var(--color-secondary-text);cursor:pointer}.sidebar-menu-item:not(:hover) .menu-item-remove{display:none}.menu-item-remove:hover{color:var(--color-normal-text)}.menu-item-remove:active{color:var(--color-strong-text)}.sidebar-menu-item > eo-link:hover::part(link),\n.sidebar-menu-item > eo-link:hover .sidebar-menu-icon{color:var(--color-brand-hover)}@supports not (inset: 0){.sidebar-menu-item,\n .sidebar-menu-item > eo-link::part(link){gap:0}.sidebar-menu-icon{margin-right:8px}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nfunction _bindPropCall(e, t) {\n return function (r, a) {\n return e[t].call(r, a);\n };\n}\nfunction createAddInitializerMethod(e, t) {\n return function (r) {\n if (t.v) throw new Error(\"attempted to call addInitializer after decoration was finished\");\n assertCallable(r, \"An initializer\", !0), e.push(r);\n };\n}\nfunction memberDec(e, t, r, a, n, i, o, s, l, c, u) {\n function assertInstanceIfPrivate(e) {\n return function (t, r) {\n if (!c(t)) throw new TypeError(\"Attempted to access private element on non-instance\");\n return e(t, r);\n };\n }\n var f,\n d,\n p = {\n v: !1\n },\n v = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"field\"][i],\n name: s ? \"#\" + r : r,\n \"static\": o,\n \"private\": s,\n metadata: u,\n addInitializer: createAddInitializerMethod(n, p)\n };\n if (s || 0 !== i && 2 !== i) {\n if (2 === i) f = assertInstanceIfPrivate(function () {\n return a.value;\n });else {\n var h = 0 === i || 1 === i;\n (h || 3 === i) && (f = _bindPropCall(a, \"get\"), s && (f = assertInstanceIfPrivate(f))), (h || 4 === i) && (d = _bindPropCall(a, \"set\"), s && (d = assertInstanceIfPrivate(d)));\n }\n } else f = function f(e) {\n return e[r];\n }, 0 === i && (d = function d(e, t) {\n e[r] = t;\n });\n var m = s ? c.bind() : function (e) {\n return r in e;\n },\n b = v.access = {\n has: m\n };\n f && (b.get = f), d && (b.set = d);\n try {\n return e.call(t, l, v);\n } finally {\n p.v = !0;\n }\n}\nfunction assertCallable(e, t, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must be a function\");\n}\nfunction assertValidReturnValue(e, t) {\n var r = _typeof(t);\n if (1 === e) {\n if (\"object\" !== r || !t) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or void 0\");\n assertCallable(t.get, \"accessor.get\"), assertCallable(t.set, \"accessor.set\"), assertCallable(t.init, \"accessor.init\");\n } else if (\"function\" !== r) throw new TypeError((0 === e ? \"field\" : 5 === e ? \"class\" : \"method\") + \" decorators must return a function or void 0\");\n}\nfunction applyMemberDec(e, t, r, a, n, i, o, s, l, c, u) {\n var f,\n d,\n p,\n v,\n h = r[0],\n m = r[3];\n a || Array.isArray(h) || (h = [h]), s ? f = 0 === i || 1 === i ? {\n get: function get() {\n return m(this);\n },\n set: function set(e) {\n r[4](this, e);\n }\n } : 3 === i ? {\n get: m\n } : 4 === i ? {\n set: m\n } : {\n value: m\n } : 0 !== i && (f = Object.getOwnPropertyDescriptor(t, n)), 1 === i ? p = {\n get: f.get,\n set: f.set\n } : 2 === i ? p = f.value : 3 === i ? p = f.get : 4 === i && (p = f.set);\n for (var b = a ? 2 : 1, y = h.length - 1; y >= 0; y -= b) {\n var g;\n if (void 0 !== (v = memberDec(h[y], a ? h[y - 1] : void 0, n, f, l, i, o, s, p, c, u))) assertValidReturnValue(i, v), 0 === i ? g = v : 1 === i ? (g = v.init, p = {\n get: v.get || p.get,\n set: v.set || p.set\n }) : p = v, void 0 !== g && (void 0 === d ? d = g : \"function\" == typeof d ? d = [d, g] : d.push(g));\n }\n if (0 === i || 1 === i) {\n if (void 0 === d) d = function d(e, t) {\n return t;\n };else if (\"function\" != typeof d) {\n var I = d;\n d = function d(e, t) {\n for (var r = t, a = I.length - 1; a >= 0; a--) r = I[a].call(e, r);\n return r;\n };\n } else {\n var w = d;\n d = d.call.bind(w);\n }\n e.push(d);\n }\n 0 !== i && (1 === i ? (f.get = p.get, f.set = p.set) : 2 === i ? f.value = p : 3 === i ? f.get = p : 4 === i && (f.set = p), s ? 1 === i ? e.push(_bindPropCall(f, \"get\"), _bindPropCall(f, \"set\")) : e.push(2 === i ? p : Function.call.bind(p)) : Object.defineProperty(t, n, f));\n}\nfunction applyMemberDecs(e, t, r, a) {\n var n,\n i,\n o,\n s = [],\n l = new Map(),\n c = new Map();\n function pushInitializers(e) {\n e && s.push(function (t) {\n for (var r = 0; r < e.length; r++) e[r].call(t);\n return t;\n });\n }\n for (var u = 0; u < t.length; u++) {\n var f = t[u];\n if (Array.isArray(f)) {\n var d,\n p,\n v = f[1],\n h = f[2],\n m = f.length > 3,\n b = 16 & v,\n y = !!(8 & v),\n g = r;\n if (v &= 7, y ? (d = e, p = i = i || [], m && !o && (o = function o(t) {\n return checkInRHS(t) === e;\n }), g = o) : (d = e.prototype, p = n = n || []), 0 !== v && !m) {\n var I = y ? c : l,\n w = I.get(h) || 0;\n if (!0 === w || 3 === w && 4 !== v || 4 === w && 3 !== v) throw new Error(\"Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: \" + h);\n I.set(h, !(!w && v > 2) || v);\n }\n applyMemberDec(s, d, f, b, h, v, y, m, p, g, a);\n }\n }\n return pushInitializers(n), pushInitializers(i), s;\n}\nfunction applyClassDecs(e, t, r, a) {\n if (t.length) {\n for (var n = [], i = e, o = e.name, s = r ? 2 : 1, l = t.length - 1; l >= 0; l -= s) {\n var c = {\n v: !1\n };\n try {\n var u = t[l].call(r ? t[l - 1] : void 0, i, {\n kind: \"class\",\n name: o,\n addInitializer: createAddInitializerMethod(n, c),\n metadata: a\n });\n } finally {\n c.v = !0;\n }\n void 0 !== u && (assertValidReturnValue(5, u), i = u);\n }\n return [defineMetadata(i, a), function () {\n for (var e = 0; e < n.length; e++) n[e].call(i);\n }];\n }\n}\nfunction defineMetadata(e, t) {\n return Object.defineProperty(e, Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"), {\n configurable: !0,\n enumerable: !0,\n value: t\n });\n}\nexport default function applyDecs2305(e, t, r, a, n, i) {\n if (arguments.length >= 6) var o = i[Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\")];\n var s = Object.create(void 0 === o ? null : o),\n l = applyMemberDecs(e, t, n, s);\n return r.length || defineMetadata(e, s), {\n e: l,\n get c() {\n return applyClassDecs(e, r, a, s);\n }\n };\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nexport default function _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description Launchpad信息\n * @endpoint GET /api/v1/micro_app_standalone/launchpad_info\n */\nexport var LaunchpadApi_getLaunchpadInfo = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.micro_app_standalone.launchpad.GetLaunchpadInfo@1.1.0 */(yield http.get(\"api/gateway/micro_app_standalone.launchpad.GetLaunchpadInfo/api/v1/micro_app_standalone/launchpad_info\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_getLaunchpadInfo(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=getLaunchpadInfo.js.map","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 新增我的收藏V2\n * @endpoint POST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_createCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.user_service.launchpad.CreateCollectionV2@1.0.0 */(yield http.post(\"api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection\", data, options)).data\n );\n });\n return function LaunchpadApi_createCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=createCollectionV2.js.map","import { http } from \"@next-core/http\";\n\n/**\n * @description 删除我的收藏V2\n * @endpoint DELETE /api/v2/launchpad/collection/:instanceId\n */\nexport var LaunchpadApi_deleteCollectionV2 = (instanceId, options) => /**! @contract easyops.api.user_service.launchpad.DeleteCollectionV2@1.0.0 */http.delete(\"api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/\".concat(instanceId), options);\n//# sourceMappingURL=deleteCollectionV2.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表V2\n * @endpoint LIST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_listCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.launchpad.ListCollectionV2@1.0.0 */(yield http.get(\"api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_listCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listCollectionV2.js.map"],"names":["_EoLaunchpadQuickAcce","defineElement","createDecorators","_dec","styleTexts","styleText","EoLaunchpadQuickAccess","ReactNextElement","render","React","EoLaunchpadQuickAccessComponent","favorites","loadingFavorites","pushRecentVisit","toggleStar","isStarred","useLaunchpadInfo","LaunchpadsContext","Provider","value","searching","className","map","item","index","SidebarMenuItem","key","_class","_initClass","_applyDecs","c","hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","includes","call","join","module","exports","default","___CSS_LOADER_EXPORT___","id","cssWithMappingToString","list","this","content","needLayer","concat","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","_k","_bindPropCall","e","t","r","a","createAddInitializerMethod","v","Error","assertCallable","memberDec","n","o","s","l","u","assertInstanceIfPrivate","TypeError","f","d","p","kind","name","metadata","addInitializer","h","m","bind","b","access","has","get","set","assertValidReturnValue","init","applyMemberDec","getOwnPropertyDescriptor","y","g","I","w","Function","defineProperty","defineMetadata","Symbol","configurable","enumerable","applyDecs2305","create","Map","pushInitializers","applyMemberDecs","applyClassDecs","asyncGeneratorStep","gen","resolve","reject","_next","_throw","info","error","done","Promise","then","_asyncToGenerator","fn","self","args","err","_checkInRHS","_defineProperty","obj","writable","_extends","assign","target","source","ownKeys","keys","getOwnPropertySymbols","filter","_objectSpread2","forEach","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","input","hint","prim","toPrimitive","res","String","_typeof","iterator","constructor","LaunchpadApi_getLaunchpadInfo","_ref","params","options","http","_x","_x2","LaunchpadApi_createCollectionV2","data","post","LaunchpadApi_deleteCollectionV2","instanceId","delete","LaunchpadApi_listCollectionV2"],"sourceRoot":""}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! For license information please see eo-launchpad-recent-visits.7700ab7c.js.LICENSE.txt */
|
|
2
|
+
"use strict";(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[7207,6522,5628],{6176:(e,t,n)=>{n.d(t,{sK:()=>T,yp:()=>B,m1:()=>V});var r,i=n(3028),a=n(4795),o=n(8657),c=n(7267),s=n(6446),u=n(2890),l=n(2301),p=n(2892),d=n(2106),f=n(4008),h=n(8685),v=n(5003),m=10,y=10,g=n(107);function b(){return(b=(0,a.Z)((function*(){var e=yield(0,d.u)({},{interceptorParams:{ignoreLoadingBar:!0},noAbortOnRouteChange:!0}),t=new Map;for(var n of e.storyboards){var r=n.app;r.localeName=(0,g.d)(r.locales,r.name),t.set(r.id,r)}var a=[],o=new Map;for(var c of e.desktops){var s=[];for(var u of c.items)switch(u.type){case"app":var l=t.get(u.id);l&&s.push((0,i.Z)((0,i.Z)({},u),{},{name:l.localeName,url:l.homepage,menuIcon:l.menuIcon}));break;case"custom":s.push(u),o.set(u.id,u);break;case"dir":var p=[];for(var f of u.items)if("app"===f.type){var h=t.get(f.id);h&&p.push((0,i.Z)((0,i.Z)({},f),{},{name:h.localeName,url:h.homepage,menuIcon:h.menuIcon}))}else"custom"===f.type&&(p.push(f),o.set(f.id,f));p.length>0&&s.push((0,i.Z)((0,i.Z)({},u),{},{items:p}))}s.length>0&&a.push((0,i.Z)((0,i.Z)({},c),{},{items:s}))}return{menuGroups:a,microAppsById:t,customLinksById:o}}))).apply(this,arguments)}function I(){return w.apply(this,arguments)}function w(){return(w=(0,a.Z)((function*(){return(yield(0,f.$)({page:1,pageSize:m},{interceptorParams:{ignoreLoadingBar:!0},noAbortOnRouteChange:!0})).list}))).apply(this,arguments)}function Z(){return(Z=(0,a.Z)((function*(){var e=yield I(),t=[];for(var n of e)if("microApp"===n.type){var r=n.relatedApp;r.localeName=(0,g.d)(r.locales,r.name),t.push({favoriteId:n.instanceId,type:"app",name:r.localeName,id:r.appId,url:r.homepage,instanceId:r.instanceId,menuIcon:r.menuIcon})}else if("customItem"===n.type){var i=n.relatedCustomItem;t.push({favoriteId:n.instanceId,type:"custom",name:i.name,id:i.id,url:i.url,menuIcon:i.menuIcon})}else"link"===n.type&&t.push({favoriteId:n.instanceId,type:"link",name:n.name,url:n.link,menuIcon:n.icon});return t}))).apply(this,arguments)}function k(){return(k=(0,a.Z)((function*(e){return(0,h.i)({type:"app"===e.type?"microApp":"customItem",relatedInstanceId:e.instanceId},{interceptorParams:{ignoreLoadingBar:!0}})}))).apply(this,arguments)}function S(){return(S=(0,a.Z)((function*(e){return e.favoriteId?(0,v.I)(e.favoriteId):I().then((t=>{var n,r=null===(n=t.find((t=>{var n,r;return"app"===e.type?"microApp"===t.type&&(null===(n=t.relatedApp)||void 0===n?void 0:n.appId)===e.id:"custom"===e.type&&(null===(r=t.relatedCustomItem)||void 0===r?void 0:r.id)===e.id})))||void 0===n?void 0:n.instanceId;if(r)return(0,v.I)(r);console.error("Menu item to unstar not found:",e)}))}))).apply(this,arguments)}function O(e,t){return e.id.toLowerCase().includes(t)||e.name.toLowerCase().includes(t)?e:null}function E(e,t){return e.id.toLowerCase().includes(t)||e.name.toLowerCase().includes(t)?e:null}var P="launchpad-recent-visits:".concat(null===(r=s.auth.getAuth())||void 0===r?void 0:r.org),j=new u.o(localStorage),x=[],C=new Map,F=new Map,A=!1,_=[],L=!1,B=new l.i((0,a.Z)((function*(){({menuGroups:x,microAppsById:C,customLinksById:F}=yield function(){return b.apply(this,arguments)}()),A=!0}))),T=new l.i((0,a.Z)((function*(){_=yield function(){return Z.apply(this,arguments)}(),L=!0}))),N=e=>(0,p.c0)({type:"error",message:(0,c.httpErrorToString)(e)});function V(e){var[t,n]=(0,o.useState)(x),[r,s]=(0,o.useState)(C),[u,l]=(0,o.useState)(F),[d,f]=(0,o.useState)(""),[h,v]=(0,o.useState)(!A),[g,b]=(0,o.useState)(!L),[I,w]=(0,o.useState)([]),[Z,V]=(0,o.useState)([]),[R,D]=(0,o.useState)(_);(0,o.useEffect)((()=>{e&&!h&&(n(x),s(C),l(F))}),[e,h]),(0,o.useEffect)((()=>{e&&!g&&D(_)}),[e,g]),(0,o.useEffect)((()=>{var t;e&&w(null!==(t=j.getItem(P))&&void 0!==t?t:[])}),[e]),(0,o.useEffect)((()=>{if(e){var t=function(){var e=(0,a.Z)((function*(){try{yield B.fetch(),v(!1)}catch(e){(0,c.handleHttpError)(e)}}));return function(){return e.apply(this,arguments)}}();t()}}),[e]),(0,o.useEffect)((()=>{if(e){var t=function(){var e=(0,a.Z)((function*(){try{yield T.fetch(),b(!1)}catch(e){b(!1),N(e)}}));return function(){return e.apply(this,arguments)}}();t()}}),[e]),(0,o.useEffect)((()=>{if(!h){var e=I.map((e=>{if("app"===e.type){var t=r.get(e.id);return t?{type:"app",name:t.localeName,id:t.id,url:t.homepage,instanceId:t.instanceId,menuIcon:t.menuIcon}:null}return u.get(e.id)})).filter(Boolean);V(e)}}),[u,h,r,I]);var z=(0,o.useCallback)((e=>{var t,{type:n,id:r}=e,i=null!==(t=j.getItem(P))&&void 0!==t?t:[],a=i.findIndex((e=>e.type===n&&e.id===r));a>-1&&i.splice(a,1),i.unshift({type:n,id:r}),i.length>y&&i.pop(),j.setItem(P,i)}),[]),G=(0,o.useCallback)((e=>R.some((t=>M(e,t)))),[R]),q=(0,o.useCallback)((e=>{var t,n=R.findIndex((t=>"link"===e.type?t.favoriteId===e.favoriteId:M(e,t)));if(n>-1){var r=R[n];t=R.slice(0,n).concat(R.slice(n+1)),function(e){return S.apply(this,arguments)}(r).catch(N)}else{if(R.length>=m)return void(0,p.vC)({type:"warn",title:"收藏数量已达上限",content:"当前收藏链接数量已达上限(".concat(m,"个),请删除部分收藏后再添加。")});var a=(0,i.Z)({},e);t=R.concat(a),function(e){return k.apply(this,arguments)}(e).then((e=>{e&&(a.favoriteId=e.instanceId)}),N)}D(t),_=t}),[R]),J=(0,o.useMemo)((()=>function(e,t){if(!t)return e;var n=t.toLowerCase();return e.map((e=>(0,i.Z)((0,i.Z)({},e),{},{items:e.items.map((e=>{switch(e.type){case"app":return O(e,n);case"custom":return E(e,n);case"dir":var t=e.items.map((e=>"app"===e.type?O(e,n):"custom"===e.type?E(e,n):null)).filter(Boolean);return t.length>0?(0,i.Z)((0,i.Z)({},e),{},{items:t}):null}})).filter(Boolean)}))).filter((e=>e.items.length>0))}(t,d)),[t,d]);return{loading:h,q:d,setQ:f,menuGroups:J,loadingFavorites:g,favorites:R,recentVisits:Z,pushRecentVisit:z,isStarred:G,toggleStar:q}}function M(e,t){return e.instanceId&&t.instanceId?t.instanceId===e.instanceId:t.type===e.type&&t.id===e.id}},2892:(e,t,n)=>{n.d(t,{V3:()=>a,c0:()=>s,kk:()=>o,vC:()=>c});var r=n(2354),i=n(9171),a=(0,r.wrapBrick)("eo-icon"),o=(0,r.wrapBrick)("eo-link"),c=(0,i.unwrapProvider)("basic.show-dialog"),s=(0,i.unwrapProvider)("basic.show-notification")},4445:(e,t,n)=>{n.r(t),n.d(t,{EoLaunchpadRecentVisits:()=>o,EoLaunchpadRecentVisitsComponent:()=>g});var r,i,a,o,c=n(7896),s=n(2604),u=n(8657),l=n.n(u),p=n(2462),d=n(2354),f=(n(9234),n(4506)),h=n(6176),v=(0,d.wrapBrick)("eo-link"),{defineElement:m}=(0,p.createDecorators)();i=m("eo-launchpad-recent-visits",{styleTexts:[f.Z]});class y extends d.ReactNextElement{render(){return l().createElement(g,null)}}function g(){var{recentVisits:e,pushRecentVisit:t}=(0,h.m1)(!0);return l().createElement("ul",{className:"recent-visits"},e.map(((e,n)=>l().createElement("li",{key:n},l().createElement(v,(0,c.Z)({onClick:()=>t(e)},"app"===e.type?{url:e.url}:{href:e.url,target:"_blank"}),l().createElement("span",null,e.name))))))}a=y,[o,r]=(0,s.Z)(a,[],[i],0,void 0,d.ReactNextElement).c,r()},2301:(e,t,n)=>{n.d(t,{i:()=>a});var r=n(4795),i=n(6666);class a{constructor(e){(0,i.Z)(this,"preFetchId",null),(0,i.Z)(this,"preFetchScheduled",!1),(0,i.Z)(this,"firstFetchPromise",null),(0,i.Z)(this,"isFetching",!1),(0,i.Z)(this,"task",void 0),this.task=e}schedulePrefetch(){var e=this;if(!this.preFetchScheduled){this.preFetchScheduled=!0;var t=function(){var t=(0,r.Z)((function*(){e.preFetchId=null,e.fetch()}));return function(){return t.apply(this,arguments)}}();"function"==typeof window.requestIdleCallback?this.preFetchId=window.requestIdleCallback(t):this.preFetchId=setTimeout(t)}}fetch(e){var t;return this.preFetchId&&("function"==typeof window.cancelIdleCallback?cancelIdleCallback(this.preFetchId):clearTimeout(this.preFetchId),this.preFetchId=null),this.isFetching&&!e||(this.isFetching=!0,(t=this.task()).catch((e=>{console.error(e),this.firstFetchPromise=null})).finally((()=>{this.isFetching=!1})),this.firstFetchPromise||(this.firstFetchPromise=t),!e)?this.firstFetchPromise:t}}},107:(e,t,n)=>{n.d(t,{d:()=>i});var r=n(199);function i(e,t){var n;if(!e)return t;var i=Object.fromEntries(Object.entries(e).filter((e=>{var[t,n]=e;return n.name})).map((e=>{var[t,n]=e;return[t,n.name]})));return null!==(n=(0,r.i18nText)(i))&&void 0!==n?n:t}},4506:(e,t,n)=>{n.d(t,{Z:()=>c});var r=n(9601),i=n.n(r),a=n(2609),o=n.n(a)()(i());o.push([e.id,":host{display:block}:host([hidden]){display:none}.recent-visits{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.recent-visits span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-visits eo-link{display:block;min-width:0}.recent-visits eo-link::part(link){background-color:var(--color-fill-bg-base-1);border-radius:3px;color:var(--color-header-text);display:flex;align-items:center;height:24px;padding:0 8px}.recent-visits eo-link:hover::part(link){color:var(--color-brand-hover)}",""]);const c=o.toString()},2609:e=>{e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,i,a){"string"==typeof e&&(e=[[null,e,void 0]]);var o={};if(r)for(var c=0;c<this.length;c++){var s=this[c][0];null!=s&&(o[s]=!0)}for(var u=0;u<e.length;u++){var l=[].concat(e[u]);r&&o[l[0]]||(void 0!==a&&(void 0===l[5]||(l[1]="@layer".concat(l[5].length>0?" ".concat(l[5]):""," {").concat(l[1],"}")),l[5]=a),n&&(l[2]?(l[1]="@media ".concat(l[2]," {").concat(l[1],"}"),l[2]=n):l[2]=n),i&&(l[4]?(l[1]="@supports (".concat(l[4],") {").concat(l[1],"}"),l[4]=i):l[4]="".concat(i)),t.push(l))}},t}},9601:e=>{e.exports=function(e){return e[1]}},2604:(e,t,n)=>{n.d(t,{Z:()=>d});var r=n(6522),i=n(1815);function a(e,t){return function(n,r){return e[t].call(n,r)}}function o(e,t){return function(n){if(t.v)throw new Error("attempted to call addInitializer after decoration was finished");s(n,"An initializer",!0),e.push(n)}}function c(e,t,n,r,i,c,s,u,l,p,d){function f(e){return function(t,n){if(!p(t))throw new TypeError("Attempted to access private element on non-instance");return e(t,n)}}var h,v,m={v:!1},y={kind:["field","accessor","method","getter","setter","field"][c],name:u?"#"+n:n,static:s,private:u,metadata:d,addInitializer:o(i,m)};if(u||0!==c&&2!==c)if(2===c)h=f((function(){return r.value}));else{var g=0===c||1===c;(g||3===c)&&(h=a(r,"get"),u&&(h=f(h))),(g||4===c)&&(v=a(r,"set"),u&&(v=f(v)))}else h=function(e){return e[n]},0===c&&(v=function(e,t){e[n]=t});var b=u?p.bind():function(e){return n in e},I=y.access={has:b};h&&(I.get=h),v&&(I.set=v);try{return e.call(t,l,y)}finally{m.v=!0}}function s(e,t,n){if("function"!=typeof e&&(n||void 0!==e))throw new TypeError(t+" must be a function")}function u(e,t){var n=(0,r.Z)(t);if(1===e){if("object"!==n||!t)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");s(t.get,"accessor.get"),s(t.set,"accessor.set"),s(t.init,"accessor.init")}else if("function"!==n)throw new TypeError((0===e?"field":5===e?"class":"method")+" decorators must return a function or void 0")}function l(e,t,n,r,i,o,s,l,p,d,f){var h,v,m,y,g=n[0],b=n[3];r||Array.isArray(g)||(g=[g]),l?h=0===o||1===o?{get:function(){return b(this)},set:function(e){n[4](this,e)}}:3===o?{get:b}:4===o?{set:b}:{value:b}:0!==o&&(h=Object.getOwnPropertyDescriptor(t,i)),1===o?m={get:h.get,set:h.set}:2===o?m=h.value:3===o?m=h.get:4===o&&(m=h.set);for(var I=r?2:1,w=g.length-1;w>=0;w-=I){var Z;void 0!==(y=c(g[w],r?g[w-1]:void 0,i,h,p,o,s,l,m,d,f))&&(u(o,y),0===o?Z=y:1===o?(Z=y.init,m={get:y.get||m.get,set:y.set||m.set}):m=y,void 0!==Z&&(void 0===v?v=Z:"function"==typeof v?v=[v,Z]:v.push(Z)))}if(0===o||1===o){if(void 0===v)v=function(e,t){return t};else if("function"!=typeof v){var k=v;v=function(e,t){for(var n=t,r=k.length-1;r>=0;r--)n=k[r].call(e,n);return n}}else{var S=v;v=v.call.bind(S)}e.push(v)}0!==o&&(1===o?(h.get=m.get,h.set=m.set):2===o?h.value=m:3===o?h.get=m:4===o&&(h.set=m),l?1===o?e.push(a(h,"get"),a(h,"set")):e.push(2===o?m:Function.call.bind(m)):Object.defineProperty(t,i,h))}function p(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for("Symbol.metadata"),{configurable:!0,enumerable:!0,value:t})}function d(e,t,n,r,a,c){if(arguments.length>=6)var s=c[Symbol.metadata||Symbol.for("Symbol.metadata")];var d=Object.create(void 0===s?null:s),f=function(e,t,n,r){var a,o,c,s=[],u=new Map,p=new Map;function d(e){e&&s.push((function(t){for(var n=0;n<e.length;n++)e[n].call(t);return t}))}for(var f=0;f<t.length;f++){var h=t[f];if(Array.isArray(h)){var v,m,y=h[1],g=h[2],b=h.length>3,I=16&y,w=!!(8&y),Z=n;if(y&=7,w?(v=e,m=o=o||[],b&&!c&&(c=function(t){return(0,i.Z)(t)===e}),Z=c):(v=e.prototype,m=a=a||[]),0!==y&&!b){var k=w?p:u,S=k.get(g)||0;if(!0===S||3===S&&4!==y||4===S&&3!==y)throw new Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+g);k.set(g,!(!S&&y>2)||y)}l(s,v,h,I,g,y,w,b,m,Z,r)}}return d(a),d(o),s}(e,t,a,d);return n.length||p(e,d),{e:f,get c(){return function(e,t,n,r){if(t.length){for(var i=[],a=e,c=e.name,s=n?2:1,l=t.length-1;l>=0;l-=s){var d={v:!1};try{var f=t[l].call(n?t[l-1]:void 0,a,{kind:"class",name:c,addInitializer:o(i,d),metadata:r})}finally{d.v=!0}void 0!==f&&(u(5,f),a=f)}return[p(a,r),function(){for(var e=0;e<i.length;e++)i[e].call(a)}]}}(e,n,r,d)}}}},4795:(e,t,n)=>{function r(e,t,n,r,i,a,o){try{var c=e[a](o),s=c.value}catch(e){return void n(e)}c.done?t(s):Promise.resolve(s).then(r,i)}function i(e){return function(){var t=this,n=arguments;return new Promise((function(i,a){var o=e.apply(t,n);function c(e){r(o,i,a,c,s,"next",e)}function s(e){r(o,i,a,c,s,"throw",e)}c(void 0)}))}}n.d(t,{Z:()=>i})},1815:(e,t,n)=>{n.d(t,{Z:()=>i});var r=n(6522);function i(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.Z)(e):"null"));return e}},6666:(e,t,n)=>{n.d(t,{Z:()=>i});var r=n(5850);function i(e,t,n){return(t=(0,r.Z)(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},7896:(e,t,n)=>{function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{Z:()=>r})},3028:(e,t,n)=>{n.d(t,{Z:()=>a});var r=n(6666);function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){(0,r.Z)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}},5850:(e,t,n)=>{n.d(t,{Z:()=>i});var r=n(6522);function i(e){var t=function(e,t){if("object"!==(0,r.Z)(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,"string");if("object"!==(0,r.Z)(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===(0,r.Z)(t)?t:String(t)}},6522:(e,t,n)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{Z:()=>r})},2106:(e,t,n)=>{n.d(t,{u:()=>o});var r=n(3028),i=n(4795),a=n(9751),o=function(){var e=(0,i.Z)((function*(e,t){return(yield a.http.get("api/gateway/micro_app_standalone.launchpad.GetLaunchpadInfo/api/v1/micro_app_standalone/launchpad_info",(0,r.Z)((0,r.Z)({},t),{},{params:e}))).data}));return function(t,n){return e.apply(this,arguments)}}()},8685:(e,t,n)=>{n.d(t,{i:()=>a});var r=n(4795),i=n(3352),a=function(){var e=(0,r.Z)((function*(e,t){return(yield i.http.post("api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection",e,t)).data}));return function(t,n){return e.apply(this,arguments)}}()},5003:(e,t,n)=>{n.d(t,{I:()=>i});var r=n(3352),i=(e,t)=>r.http.delete("api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/".concat(e),t)},4008:(e,t,n)=>{n.d(t,{$:()=>o});var r=n(3028),i=n(4795),a=n(3352),o=function(){var e=(0,i.Z)((function*(e,t){return(yield a.http.get("api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection",(0,r.Z)((0,r.Z)({},t),{},{params:e}))).data}));return function(t,n){return e.apply(this,arguments)}}()},2890:(e,t,n)=>{n.d(t,{o:()=>r});class r{constructor(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"brick-next-";this.storage=e,this.prefix=t}setItem(e,t){this.storage.setItem(this.prefix+e,JSON.stringify(t))}getItem(e){return JSON.parse(this.storage.getItem(this.prefix+e))}removeItem(e){return this.storage.removeItem(this.prefix+e)}clear(){return this.storage.clear()}}}}]);
|
|
3
|
+
//# sourceMappingURL=eo-launchpad-recent-visits.7700ab7c.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/eo-launchpad-recent-visits.7700ab7c.js","mappings":"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","sources":["webpack:///./src/launchpad-button-v2/constants.ts","webpack:///./src/launchpad-button-v2/api.ts","webpack:///./src/launchpad-button-v2/search.ts","webpack:///./src/launchpad-button-v2/useLaunchpadInfo.ts","webpack:///./src/launchpad-button-v2/wrapped-bricks.ts","webpack:///./src/launchpad-recent-visits/index.tsx","webpack:///./src/shared/DeferredService.ts","webpack:///./src/shared/getLocaleName.ts","webpack:///./src/launchpad-recent-visits/styles.shadow.css","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2305.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../node_modules/@next-api-sdk/micro-app-standalone-sdk/dist/esm/api/micro_app_standalone/launchpad/getLaunchpadInfo.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/createCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/deleteCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/listCollectionV2.js","webpack:///../../src/JsonStorage.ts"],"sourcesContent":["export const FAVORITES_LIMIT = 10;\nexport const RECENT_VISITS_LIMIT = 10;\n","import type { Storyboard } from \"@next-core/types\";\nimport { LaunchpadApi_getLaunchpadInfo } from \"@next-api-sdk/micro-app-standalone-sdk\";\nimport {\n LaunchpadApi_createCollectionV2,\n LaunchpadApi_deleteCollectionV2,\n LaunchpadApi_listCollectionV2,\n} from \"@next-api-sdk/user-service-sdk\";\nimport type {\n FavMenuItem,\n MenuGroupData,\n MenuItemData,\n MenuItemDataApp,\n MenuItemDataCustom,\n MenuItemDataDir,\n MenuItemDataNormal,\n MicroAppWithInstanceId,\n} from \"./interfaces\";\nimport { FAVORITES_LIMIT } from \"./constants\";\nimport { getAppLocaleName } from \"../shared/getLocaleName\";\n\nexport async function fetchLaunchpadInfo() {\n const launchpadInfo = await LaunchpadApi_getLaunchpadInfo(\n {},\n {\n interceptorParams: { ignoreLoadingBar: true },\n noAbortOnRouteChange: true,\n }\n );\n\n const microAppsById = new Map<string, MicroAppWithInstanceId>();\n for (const storyboard of launchpadInfo.storyboards as Storyboard[]) {\n const app = storyboard.app as unknown as MicroAppWithInstanceId;\n app.localeName = getAppLocaleName(app.locales, app.name);\n microAppsById.set(app.id, app);\n }\n\n const menuGroups: MenuGroupData[] = [];\n const customLinksById = new Map<string, MenuItemDataCustom>();\n\n for (const group of launchpadInfo.desktops as unknown as MenuGroupData[]) {\n const items: MenuItemData[] = [];\n for (const item of group.items) {\n switch (item.type) {\n case \"app\": {\n const app = microAppsById.get(item.id);\n if (app) {\n items.push({\n ...item,\n name: app.localeName,\n url: app.homepage,\n menuIcon: app.menuIcon,\n } as MenuItemDataApp);\n }\n break;\n }\n case \"custom\":\n items.push(item);\n customLinksById.set(item.id, item);\n break;\n case \"dir\": {\n const subItems: MenuItemDataNormal[] = [];\n for (const subItem of item.items) {\n if (subItem.type === \"app\") {\n const app = microAppsById.get(subItem.id);\n if (app) {\n subItems.push({\n ...subItem,\n name: app.localeName,\n url: app.homepage,\n menuIcon: app.menuIcon,\n } as MenuItemDataApp);\n }\n } else if (subItem.type === \"custom\") {\n subItems.push(subItem as MenuItemDataCustom);\n customLinksById.set(subItem.id, subItem);\n }\n }\n if (subItems.length > 0) {\n items.push({\n ...item,\n items: subItems,\n } as MenuItemDataDir);\n }\n break;\n }\n }\n }\n if (items.length > 0) {\n menuGroups.push({ ...group, items });\n }\n }\n\n return { menuGroups, microAppsById, customLinksById };\n}\n\nasync function fetchRawFavorites() {\n return (\n await LaunchpadApi_listCollectionV2(\n { page: 1, pageSize: FAVORITES_LIMIT },\n {\n interceptorParams: { ignoreLoadingBar: true },\n noAbortOnRouteChange: true,\n }\n )\n ).list;\n}\n\nexport async function fetchFavorites() {\n const list = await fetchRawFavorites();\n const stored: FavMenuItem[] = [];\n for (const fav of list) {\n if (fav.type === \"microApp\") {\n const app = fav.relatedApp as Omit<MicroAppWithInstanceId, \"id\"> & {\n appId: string;\n };\n app.localeName = getAppLocaleName(app.locales, app.name);\n stored.push({\n favoriteId: fav.instanceId,\n type: \"app\",\n name: app.localeName,\n id: app.appId,\n url: app.homepage,\n instanceId: app.instanceId,\n menuIcon: app.menuIcon,\n } as FavMenuItem);\n } else if (fav.type === \"customItem\") {\n const customItem = fav.relatedCustomItem!;\n stored.push({\n favoriteId: fav.instanceId,\n type: \"custom\",\n name: customItem.name,\n id: customItem.id,\n url: customItem.url,\n menuIcon: customItem.menuIcon,\n } as FavMenuItem);\n } else if (fav.type === \"link\") {\n stored.push({\n favoriteId: fav.instanceId,\n type: \"link\",\n name: fav.name,\n // id: fav.id,\n url: fav.link,\n menuIcon: fav.icon,\n } as FavMenuItem);\n }\n }\n return stored;\n}\n\nexport async function favorite(\n item: MenuItemDataNormal\n): Promise<{ instanceId?: string }> {\n return LaunchpadApi_createCollectionV2(\n {\n type: item.type === \"app\" ? \"microApp\" : \"customItem\",\n relatedInstanceId: item.instanceId,\n },\n {\n interceptorParams: { ignoreLoadingBar: true },\n }\n );\n}\n\nexport async function undoFavorite(item: FavMenuItem) {\n if (item.favoriteId) {\n return LaunchpadApi_deleteCollectionV2(item.favoriteId);\n }\n\n return fetchRawFavorites().then((list) => {\n const foundId = list.find((fav) =>\n item.type === \"app\"\n ? fav.type === \"microApp\" && fav.relatedApp?.appId === item.id\n : item.type === \"custom\" && fav.relatedCustomItem?.id === item.id\n )?.instanceId;\n\n if (foundId) {\n return LaunchpadApi_deleteCollectionV2(foundId);\n }\n // eslint-disable-next-line no-console\n console.error(\"Menu item to unstar not found:\", item);\n });\n}\n","import type {\n MenuGroupData,\n MenuItemData,\n MenuItemDataApp,\n MenuItemDataCustom,\n} from \"./interfaces\";\n\nexport function search(\n allMenuGroups: MenuGroupData[],\n q: string\n): MenuGroupData[] {\n if (!q) {\n return allMenuGroups;\n }\n const lowerQ = q.toLowerCase();\n const groups: MenuGroupData[] = allMenuGroups\n .map((group) => ({\n ...group,\n items: group.items\n .map((item) => {\n switch (item.type) {\n case \"app\":\n return matchMenuItemApp(item, lowerQ);\n case \"custom\":\n return matchMenuItemCustom(item, lowerQ);\n case \"dir\": {\n const filteredSubItems = item.items\n .map((sub) =>\n sub.type === \"app\"\n ? matchMenuItemApp(sub, lowerQ)\n : sub.type === \"custom\"\n ? matchMenuItemCustom(sub, lowerQ)\n : null\n )\n .filter(Boolean) as MenuItemData[];\n return filteredSubItems.length > 0\n ? {\n ...item,\n items: filteredSubItems,\n }\n : null;\n }\n }\n })\n // Ignore not matched items\n .filter(Boolean) as MenuItemData[],\n }))\n // ignore empty desktops\n .filter((group) => group.items.length > 0);\n return groups;\n}\n\nfunction matchMenuItemApp(item: MenuItemDataApp, lowerQ: string) {\n return item.id.toLowerCase().includes(lowerQ) ||\n item.name.toLowerCase().includes(lowerQ)\n ? item\n : null;\n}\n\nfunction matchMenuItemCustom(item: MenuItemDataCustom, lowerQ: string) {\n return item.id.toLowerCase().includes(lowerQ) ||\n item.name.toLowerCase().includes(lowerQ)\n ? item\n : null;\n}\n","import { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { handleHttpError, httpErrorToString } from \"@next-core/runtime\";\nimport { auth } from \"@next-core/easyops-runtime\";\nimport { JsonStorage } from \"@next-shared/general/JsonStorage\";\nimport { DeferredService } from \"../shared/DeferredService\";\nimport { showDialog, showNotification } from \"./wrapped-bricks\";\nimport type {\n FavMenuItem,\n MenuGroupData,\n MenuItemDataCustom,\n MenuItemDataLink,\n MenuItemDataNormal,\n MicroAppWithInstanceId,\n StoredMenuItem,\n} from \"./interfaces\";\nimport {\n favorite,\n fetchFavorites,\n fetchLaunchpadInfo,\n undoFavorite,\n} from \"./api\";\nimport { search } from \"./search\";\nimport { FAVORITES_LIMIT, RECENT_VISITS_LIMIT } from \"./constants\";\n\nconst storageKey = `launchpad-recent-visits:${(\n auth.getAuth() as Record<string, string>\n)?.org}`;\nconst storage = new JsonStorage(localStorage);\n\nlet candidateDesktops: MenuGroupData[] = [];\nlet candidateMicroAppsById = new Map<string, MicroAppWithInstanceId>();\nlet candidateCustomLinksById = new Map<string, MenuItemDataCustom>();\nlet preLoaded = false;\n\nlet candidateFavorites: FavMenuItem[] = [];\nlet preLoadedFavorites = false;\n\nexport const deferredLaunchpadInfo = new DeferredService(async () => {\n ({\n menuGroups: candidateDesktops,\n microAppsById: candidateMicroAppsById,\n customLinksById: candidateCustomLinksById,\n } = await fetchLaunchpadInfo());\n preLoaded = true;\n});\n\nexport const deferredFavorites = new DeferredService(async () => {\n candidateFavorites = await fetchFavorites();\n preLoadedFavorites = true;\n});\n\nconst showErrorAsNotification = (error: unknown) =>\n showNotification({\n type: \"error\",\n message: httpErrorToString(error),\n });\n\n/**\n * - 页面初始化时预加载 launchpad 信息。\n * - 每次打开 launchpad 都发起请求,但该请求的数据只在下次打开 launchpad 时使用。\n * 即每次打开 launchpad 使用的都是上一次获取的数据,以便达到两个效果:\n * - 每次打开 launchpad 都能立即显示菜单列表;\n * - 同时当用户在 launchpad 上操作时,不会出现数据突然更新(新数据请求完成)。\n */\nexport function useLaunchpadInfo(active?: boolean) {\n const [desktops, setDesktops] = useState(candidateDesktops);\n const [microAppsById, setMicroAppsById] = useState(candidateMicroAppsById);\n const [customLinksById, setCustomLinksById] = useState(\n candidateCustomLinksById\n );\n\n const [q, setQ] = useState(\"\");\n\n const [loading, setLoading] = useState(!preLoaded);\n const [loadingFavorites, setLoadingFavorites] = useState(!preLoadedFavorites);\n\n const [storedRecentVisits, setStoredRecentVisits] = useState<\n StoredMenuItem[]\n >([]);\n\n const [recentVisits, setRecentVisits] = useState<MenuItemDataNormal[]>([]);\n\n const [favorites, setFavorites] = useState<FavMenuItem[]>(candidateFavorites);\n\n useEffect(() => {\n // 仅当首次加载完成或重新打开 launchpad 时更新一次数据。\n if (active && !loading) {\n setDesktops(candidateDesktops);\n setMicroAppsById(candidateMicroAppsById);\n setCustomLinksById(candidateCustomLinksById);\n }\n }, [active, loading]);\n\n useEffect(() => {\n if (active && !loadingFavorites) {\n setFavorites(candidateFavorites);\n }\n }, [active, loadingFavorites]);\n\n useEffect(() => {\n if (active) {\n setStoredRecentVisits(storage.getItem(storageKey) ?? []);\n }\n }, [active]);\n\n useEffect(() => {\n if (active) {\n const startFetchLaunchpadInfo = async (): Promise<void> => {\n try {\n await deferredLaunchpadInfo.fetch();\n setLoading(false);\n } catch (error) {\n handleHttpError(error);\n }\n };\n startFetchLaunchpadInfo();\n }\n }, [active]);\n\n useEffect(() => {\n if (active) {\n const startFetchFavorites = async (): Promise<void> => {\n try {\n await deferredFavorites.fetch();\n setLoadingFavorites(false);\n } catch (error) {\n setLoadingFavorites(false);\n showErrorAsNotification(error);\n }\n };\n startFetchFavorites();\n }\n }, [active]);\n\n useEffect(() => {\n if (loading) {\n return;\n }\n const visits = storedRecentVisits\n .map((item) => {\n // Remembered recent visits maybe no longer existed in launchpad\n if (item.type === \"app\") {\n const app = microAppsById.get(item.id);\n return app\n ? {\n type: \"app\",\n name: app.localeName,\n id: app.id,\n url: app.homepage,\n instanceId: app.instanceId,\n menuIcon: app.menuIcon,\n }\n : null;\n }\n return customLinksById.get(item.id);\n })\n .filter(Boolean) as MenuItemDataNormal[];\n setRecentVisits(visits);\n }, [customLinksById, loading, microAppsById, storedRecentVisits]);\n\n const pushRecentVisit = useCallback(({ type, id }: StoredMenuItem) => {\n const visits: StoredMenuItem[] = storage.getItem(storageKey) ?? [];\n const index = visits.findIndex(\n (visit) => visit.type === type && visit.id === id\n );\n if (index > -1) {\n visits.splice(index, 1);\n }\n visits.unshift({ type, id });\n if (visits.length > RECENT_VISITS_LIMIT) {\n visits.pop();\n }\n // setStoredRecentVisits(visits);\n storage.setItem(storageKey, visits);\n }, []);\n\n const isStarred = useCallback(\n (item: MenuItemDataNormal) =>\n favorites.some((fav) => matchFavorite(item, fav)),\n [favorites]\n );\n\n const toggleStar = useCallback(\n (item: MenuItemDataNormal | MenuItemDataLink) => {\n const index = favorites.findIndex((fav) =>\n item.type === \"link\"\n ? fav.favoriteId === item.favoriteId\n : matchFavorite(item, fav)\n );\n let newFavorites: FavMenuItem[];\n if (index > -1) {\n const removed = favorites[index];\n newFavorites = favorites\n .slice(0, index)\n .concat(favorites.slice(index + 1));\n undoFavorite(removed).catch(showErrorAsNotification);\n } else {\n if (favorites.length >= FAVORITES_LIMIT) {\n showDialog({\n type: \"warn\",\n title: \"收藏数量已达上限\",\n content: `当前收藏链接数量已达上限(${FAVORITES_LIMIT}个),请删除部分收藏后再添加。`,\n });\n return;\n }\n // Assert: no link item\n const fav: FavMenuItem = { ...(item as MenuItemDataNormal) };\n newFavorites = favorites.concat(fav);\n favorite(item as MenuItemDataNormal).then((result) => {\n if (result) {\n fav.favoriteId = result.instanceId;\n }\n }, showErrorAsNotification);\n }\n setFavorites(newFavorites);\n candidateFavorites = newFavorites;\n },\n [favorites]\n );\n\n const menuGroups: MenuGroupData[] = useMemo(\n () => search(desktops, q),\n [desktops, q]\n );\n\n return {\n loading,\n q,\n setQ,\n menuGroups,\n loadingFavorites,\n favorites,\n recentVisits,\n pushRecentVisit,\n isStarred,\n toggleStar,\n };\n}\n\nexport function matchFavorite(item: MenuItemDataNormal, fav: FavMenuItem) {\n return item.instanceId && fav.instanceId\n ? fav.instanceId === item.instanceId\n : fav.type === item.type && fav.id === item.id;\n}\n","import { wrapBrick } from \"@next-core/react-element\";\nimport { unwrapProvider } from \"@next-core/utils/general\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type { showDialog as _showDialog } from \"@next-bricks/basic/data-providers/show-dialog/show-dialog\";\nimport type { showNotification as _showNotification } from \"@next-bricks/basic/data-providers/show-notification/show-notification\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nexport const WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\n\n// Use `unwrapProvider` to get the original function of a provider\nexport const showDialog =\n unwrapProvider<typeof _showDialog>(\"basic.show-dialog\");\n\nexport const showNotification = unwrapProvider<typeof _showNotification>(\n \"basic.show-notification\"\n);\n","import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport { useLaunchpadInfo } from \"../launchpad-button-v2/useLaunchpadInfo\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\n\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\n\nconst { defineElement } = createDecorators();\n\n/**\n * launchpad 最近访问\n * @insider\n */\nexport\n@defineElement(\"eo-launchpad-recent-visits\", {\n styleTexts: [styleText],\n})\nclass EoLaunchpadRecentVisits extends ReactNextElement {\n render() {\n return <EoLaunchpadRecentVisitsComponent />;\n }\n}\n\nexport function EoLaunchpadRecentVisitsComponent() {\n const { recentVisits, pushRecentVisit } = useLaunchpadInfo(true);\n\n return (\n <ul className=\"recent-visits\">\n {recentVisits.map((item, index) => (\n <li key={index}>\n <WrappedLink\n onClick={() => pushRecentVisit(item)}\n {...(item.type === \"app\"\n ? {\n url: item.url,\n }\n : {\n href: item.url,\n target: \"_blank\",\n })}\n >\n <span>{item.name}</span>\n </WrappedLink>\n </li>\n ))}\n </ul>\n );\n}\n","export class DeferredService {\n private preFetchId: number | null = null;\n private preFetchScheduled = false;\n private firstFetchPromise: Promise<unknown> | null = null;\n private isFetching = false;\n private readonly task: () => Promise<unknown>;\n\n constructor(task: () => Promise<unknown>) {\n this.task = task;\n }\n\n schedulePrefetch(): void {\n if (!this.preFetchScheduled) {\n this.preFetchScheduled = true;\n const preFetchLaunchpadInfo = async (): Promise<void> => {\n this.preFetchId = null;\n this.fetch();\n };\n // istanbul ignore if\n if (typeof window.requestIdleCallback === \"function\") {\n this.preFetchId = window.requestIdleCallback(preFetchLaunchpadInfo);\n } else {\n this.preFetchId = setTimeout(\n preFetchLaunchpadInfo\n ) as unknown as number;\n }\n }\n }\n\n fetch(eager?: boolean): Promise<unknown> {\n if (this.preFetchId) {\n // istanbul ignore if\n if (typeof window.cancelIdleCallback === \"function\") {\n cancelIdleCallback(this.preFetchId);\n } else {\n clearTimeout(this.preFetchId);\n }\n this.preFetchId = null;\n }\n\n let promise: Promise<unknown>;\n if (!this.isFetching || eager) {\n this.isFetching = true;\n promise = this.task();\n promise\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.error(error);\n this.firstFetchPromise = null;\n })\n .finally(() => {\n this.isFetching = false;\n });\n if (!this.firstFetchPromise) {\n this.firstFetchPromise = promise;\n }\n if (eager) {\n return promise;\n }\n }\n return this.firstFetchPromise!;\n }\n}\n","import { i18nText } from \"@next-core/i18n\";\nimport type { AppLocales, I18nData } from \"@next-core/types\";\n\nexport function getAppLocaleName(\n locales: AppLocales | undefined,\n name: string\n) {\n if (!locales) {\n return name;\n }\n const i18nData = Object.fromEntries(\n Object.entries(locales)\n .filter(([lang, resources]) => resources.name)\n .map(([lang, resources]) => [lang, resources.name])\n ) as I18nData;\n return i18nText(i18nData) ?? name;\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.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_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}.recent-visits{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.recent-visits span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-visits eo-link{display:block;min-width:0}.recent-visits eo-link::part(link){background-color:var(--color-fill-bg-base-1);border-radius:3px;color:var(--color-header-text);display:flex;align-items:center;height:24px;padding:0 8px}.recent-visits eo-link:hover::part(link){color:var(--color-brand-hover)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nfunction _bindPropCall(e, t) {\n return function (r, a) {\n return e[t].call(r, a);\n };\n}\nfunction createAddInitializerMethod(e, t) {\n return function (r) {\n if (t.v) throw new Error(\"attempted to call addInitializer after decoration was finished\");\n assertCallable(r, \"An initializer\", !0), e.push(r);\n };\n}\nfunction memberDec(e, t, r, a, n, i, o, s, l, c, u) {\n function assertInstanceIfPrivate(e) {\n return function (t, r) {\n if (!c(t)) throw new TypeError(\"Attempted to access private element on non-instance\");\n return e(t, r);\n };\n }\n var f,\n d,\n p = {\n v: !1\n },\n v = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"field\"][i],\n name: s ? \"#\" + r : r,\n \"static\": o,\n \"private\": s,\n metadata: u,\n addInitializer: createAddInitializerMethod(n, p)\n };\n if (s || 0 !== i && 2 !== i) {\n if (2 === i) f = assertInstanceIfPrivate(function () {\n return a.value;\n });else {\n var h = 0 === i || 1 === i;\n (h || 3 === i) && (f = _bindPropCall(a, \"get\"), s && (f = assertInstanceIfPrivate(f))), (h || 4 === i) && (d = _bindPropCall(a, \"set\"), s && (d = assertInstanceIfPrivate(d)));\n }\n } else f = function f(e) {\n return e[r];\n }, 0 === i && (d = function d(e, t) {\n e[r] = t;\n });\n var m = s ? c.bind() : function (e) {\n return r in e;\n },\n b = v.access = {\n has: m\n };\n f && (b.get = f), d && (b.set = d);\n try {\n return e.call(t, l, v);\n } finally {\n p.v = !0;\n }\n}\nfunction assertCallable(e, t, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must be a function\");\n}\nfunction assertValidReturnValue(e, t) {\n var r = _typeof(t);\n if (1 === e) {\n if (\"object\" !== r || !t) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or void 0\");\n assertCallable(t.get, \"accessor.get\"), assertCallable(t.set, \"accessor.set\"), assertCallable(t.init, \"accessor.init\");\n } else if (\"function\" !== r) throw new TypeError((0 === e ? \"field\" : 5 === e ? \"class\" : \"method\") + \" decorators must return a function or void 0\");\n}\nfunction applyMemberDec(e, t, r, a, n, i, o, s, l, c, u) {\n var f,\n d,\n p,\n v,\n h = r[0],\n m = r[3];\n a || Array.isArray(h) || (h = [h]), s ? f = 0 === i || 1 === i ? {\n get: function get() {\n return m(this);\n },\n set: function set(e) {\n r[4](this, e);\n }\n } : 3 === i ? {\n get: m\n } : 4 === i ? {\n set: m\n } : {\n value: m\n } : 0 !== i && (f = Object.getOwnPropertyDescriptor(t, n)), 1 === i ? p = {\n get: f.get,\n set: f.set\n } : 2 === i ? p = f.value : 3 === i ? p = f.get : 4 === i && (p = f.set);\n for (var b = a ? 2 : 1, y = h.length - 1; y >= 0; y -= b) {\n var g;\n if (void 0 !== (v = memberDec(h[y], a ? h[y - 1] : void 0, n, f, l, i, o, s, p, c, u))) assertValidReturnValue(i, v), 0 === i ? g = v : 1 === i ? (g = v.init, p = {\n get: v.get || p.get,\n set: v.set || p.set\n }) : p = v, void 0 !== g && (void 0 === d ? d = g : \"function\" == typeof d ? d = [d, g] : d.push(g));\n }\n if (0 === i || 1 === i) {\n if (void 0 === d) d = function d(e, t) {\n return t;\n };else if (\"function\" != typeof d) {\n var I = d;\n d = function d(e, t) {\n for (var r = t, a = I.length - 1; a >= 0; a--) r = I[a].call(e, r);\n return r;\n };\n } else {\n var w = d;\n d = d.call.bind(w);\n }\n e.push(d);\n }\n 0 !== i && (1 === i ? (f.get = p.get, f.set = p.set) : 2 === i ? f.value = p : 3 === i ? f.get = p : 4 === i && (f.set = p), s ? 1 === i ? e.push(_bindPropCall(f, \"get\"), _bindPropCall(f, \"set\")) : e.push(2 === i ? p : Function.call.bind(p)) : Object.defineProperty(t, n, f));\n}\nfunction applyMemberDecs(e, t, r, a) {\n var n,\n i,\n o,\n s = [],\n l = new Map(),\n c = new Map();\n function pushInitializers(e) {\n e && s.push(function (t) {\n for (var r = 0; r < e.length; r++) e[r].call(t);\n return t;\n });\n }\n for (var u = 0; u < t.length; u++) {\n var f = t[u];\n if (Array.isArray(f)) {\n var d,\n p,\n v = f[1],\n h = f[2],\n m = f.length > 3,\n b = 16 & v,\n y = !!(8 & v),\n g = r;\n if (v &= 7, y ? (d = e, p = i = i || [], m && !o && (o = function o(t) {\n return checkInRHS(t) === e;\n }), g = o) : (d = e.prototype, p = n = n || []), 0 !== v && !m) {\n var I = y ? c : l,\n w = I.get(h) || 0;\n if (!0 === w || 3 === w && 4 !== v || 4 === w && 3 !== v) throw new Error(\"Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: \" + h);\n I.set(h, !(!w && v > 2) || v);\n }\n applyMemberDec(s, d, f, b, h, v, y, m, p, g, a);\n }\n }\n return pushInitializers(n), pushInitializers(i), s;\n}\nfunction applyClassDecs(e, t, r, a) {\n if (t.length) {\n for (var n = [], i = e, o = e.name, s = r ? 2 : 1, l = t.length - 1; l >= 0; l -= s) {\n var c = {\n v: !1\n };\n try {\n var u = t[l].call(r ? t[l - 1] : void 0, i, {\n kind: \"class\",\n name: o,\n addInitializer: createAddInitializerMethod(n, c),\n metadata: a\n });\n } finally {\n c.v = !0;\n }\n void 0 !== u && (assertValidReturnValue(5, u), i = u);\n }\n return [defineMetadata(i, a), function () {\n for (var e = 0; e < n.length; e++) n[e].call(i);\n }];\n }\n}\nfunction defineMetadata(e, t) {\n return Object.defineProperty(e, Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"), {\n configurable: !0,\n enumerable: !0,\n value: t\n });\n}\nexport default function applyDecs2305(e, t, r, a, n, i) {\n if (arguments.length >= 6) var o = i[Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\")];\n var s = Object.create(void 0 === o ? null : o),\n l = applyMemberDecs(e, t, n, s);\n return r.length || defineMetadata(e, s), {\n e: l,\n get c() {\n return applyClassDecs(e, r, a, s);\n }\n };\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nexport default function _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description Launchpad信息\n * @endpoint GET /api/v1/micro_app_standalone/launchpad_info\n */\nexport var LaunchpadApi_getLaunchpadInfo = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.micro_app_standalone.launchpad.GetLaunchpadInfo@1.1.0 */(yield http.get(\"api/gateway/micro_app_standalone.launchpad.GetLaunchpadInfo/api/v1/micro_app_standalone/launchpad_info\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_getLaunchpadInfo(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=getLaunchpadInfo.js.map","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 新增我的收藏V2\n * @endpoint POST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_createCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.user_service.launchpad.CreateCollectionV2@1.0.0 */(yield http.post(\"api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection\", data, options)).data\n );\n });\n return function LaunchpadApi_createCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=createCollectionV2.js.map","import { http } from \"@next-core/http\";\n\n/**\n * @description 删除我的收藏V2\n * @endpoint DELETE /api/v2/launchpad/collection/:instanceId\n */\nexport var LaunchpadApi_deleteCollectionV2 = (instanceId, options) => /**! @contract easyops.api.user_service.launchpad.DeleteCollectionV2@1.0.0 */http.delete(\"api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/\".concat(instanceId), options);\n//# sourceMappingURL=deleteCollectionV2.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表V2\n * @endpoint LIST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_listCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.launchpad.ListCollectionV2@1.0.0 */(yield http.get(\"api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_listCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listCollectionV2.js.map","export class JsonStorage {\n constructor(\n private storage: Storage,\n private prefix: string = \"brick-next-\"\n ) {}\n\n setItem<T = any>(name: string, value: T): void {\n this.storage.setItem(this.prefix + name, JSON.stringify(value));\n }\n\n getItem<T = any>(name: string): T {\n return JSON.parse(this.storage.getItem(this.prefix + name) as string) as T;\n }\n\n removeItem(name: string): void {\n return this.storage.removeItem(this.prefix + name);\n }\n\n clear(): void {\n return this.storage.clear();\n }\n}\n"],"names":["FAVORITES_LIMIT","RECENT_VISITS_LIMIT","_fetchLaunchpadInfo","_asyncToGenerator","launchpadInfo","LaunchpadApi_getLaunchpadInfo","interceptorParams","ignoreLoadingBar","noAbortOnRouteChange","microAppsById","Map","storyboard","storyboards","app","localeName","getAppLocaleName","locales","name","set","id","menuGroups","customLinksById","group","desktops","items","item","type","get","push","_objectSpread","url","homepage","menuIcon","subItems","subItem","length","apply","arguments","fetchRawFavorites","_fetchRawFavorites","LaunchpadApi_listCollectionV2","page","pageSize","list","_fetchFavorites","stored","fav","relatedApp","favoriteId","instanceId","appId","customItem","relatedCustomItem","link","icon","_favorite","LaunchpadApi_createCollectionV2","relatedInstanceId","_undoFavorite","LaunchpadApi_deleteCollectionV2","then","_list$find","foundId","find","_fav$relatedApp","_fav$relatedCustomIte","console","error","matchMenuItemApp","lowerQ","toLowerCase","includes","matchMenuItemCustom","storageKey","concat","_auth$getAuth","auth","getAuth","org","storage","JsonStorage","localStorage","candidateDesktops","candidateMicroAppsById","candidateCustomLinksById","preLoaded","candidateFavorites","preLoadedFavorites","deferredLaunchpadInfo","DeferredService","fetchLaunchpadInfo","deferredFavorites","fetchFavorites","showErrorAsNotification","showNotification","message","httpErrorToString","useLaunchpadInfo","active","setDesktops","useState","setMicroAppsById","setCustomLinksById","q","setQ","loading","setLoading","loadingFavorites","setLoadingFavorites","storedRecentVisits","setStoredRecentVisits","recentVisits","setRecentVisits","favorites","setFavorites","useEffect","_storage$getItem","getItem","startFetchLaunchpadInfo","_ref3","fetch","handleHttpError","startFetchFavorites","_ref4","visits","map","filter","Boolean","pushRecentVisit","useCallback","_ref5","_storage$getItem2","index","findIndex","visit","splice","unshift","pop","setItem","isStarred","some","matchFavorite","toggleStar","newFavorites","removed","slice","_x2","undoFavorite","catch","showDialog","title","content","_x","favorite","result","useMemo","allMenuGroups","filteredSubItems","sub","search","WrappedIcon","wrapBrick","WrappedLink","unwrapProvider","_EoLaunchpadRecentVis","defineElement","createDecorators","_dec","styleTexts","styleText","EoLaunchpadRecentVisits","ReactNextElement","render","React","EoLaunchpadRecentVisitsComponent","className","key","_extends","onClick","href","target","_class","_initClass","_applyDecs","c","constructor","task","_defineProperty","this","schedulePrefetch","_this","preFetchScheduled","preFetchLaunchpadInfo","_ref","preFetchId","window","requestIdleCallback","setTimeout","eager","promise","cancelIdleCallback","clearTimeout","isFetching","firstFetchPromise","finally","_i18nText","i18nData","Object","fromEntries","entries","lang","resources","_ref2","i18nText","___CSS_LOADER_EXPORT___","module","toString","exports","cssWithMappingToString","needLayer","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","_k","_bindPropCall","e","t","r","a","call","createAddInitializerMethod","v","Error","assertCallable","memberDec","n","o","s","l","u","assertInstanceIfPrivate","TypeError","f","d","p","kind","metadata","addInitializer","value","h","m","bind","b","access","has","assertValidReturnValue","init","applyMemberDec","Array","isArray","getOwnPropertyDescriptor","y","g","I","w","Function","defineProperty","defineMetadata","Symbol","configurable","enumerable","applyDecs2305","create","pushInitializers","prototype","applyMemberDecs","applyClassDecs","asyncGeneratorStep","gen","resolve","reject","_next","_throw","arg","info","done","Promise","fn","self","args","err","_checkInRHS","obj","writable","assign","source","hasOwnProperty","ownKeys","keys","getOwnPropertySymbols","_objectSpread2","forEach","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","input","hint","prim","toPrimitive","res","String","_typeof","iterator","params","options","http","data","post","delete","prefix","JSON","stringify","parse","removeItem","clear"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_next_bricks_nav=self.webpackChunk_next_bricks_nav||[]).push([[979],{2969:(e,n,o)=>{o.r(n),o.d(n,{EoSearchLaunchpad:()=>i,EoSearchLaunchpadComponent:()=>k,WrappedIcon:()=>b});var t,a,r,i,l=o(2604),c=o(8657),s=o.n(c),d=o(2462),m=o(2354),p=(o(9234),o(2222)),u=o(2779),h=o.n(u),g=o(3132),x=o(6176),v=o(3697),b=(o(6527),(0,m.wrapBrick)("eo-icon")),{defineElement:f}=(0,d.createDecorators)();a=f("eo-search-launchpad",{styleTexts:[p.Z]});class y extends m.ReactNextElement{render(){return s().createElement(k,null)}}function k(){var e=(0,c.useRef)(null),n=(0,c.useCallback)((()=>{var n;null===(n=e.current)||void 0===n||n.focus()}),[]),[o,t]=(0,c.useState)(!1),{loading:a,q:r,setQ:i,menuGroups:l,loadingFavorites:d,pushRecentVisit:m,toggleStar:p,isStarred:u}=(0,x.m1)(o),f=!!r,y=(0,c.useCallback)((e=>{i(e.target.value)}),[i]),k=(0,c.useCallback)((()=>{i("")}),[i]);return s().createElement(g.Z.Provider,{value:{searching:f,loadingFavorites:d,pushRecentVisit:m,toggleStar:p,isStarred:u}},s().createElement("div",{className:"container"},s().createElement("div",{className:"search-box",onClick:n},s().createElement(b,{lib:"fa",icon:"magnifying-glass",className:"search-icon"}),s().createElement("input",{ref:e,placeholder:"搜索产品/微应用",value:r,onChange:y,className:"search-input",onFocus:()=>t(!0),onBlur:()=>t(!1)}),s().createElement(b,{lib:"antd",theme:"filled",icon:"close-circle",className:h()("search-clear",{searching:f}),onClick:k,onMouseDown:e=>e.preventDefault()})),s().createElement("div",{className:h()("dropdown",{"dropdown-active":o}),onMouseDown:e=>e.preventDefault()},s().createElement("div",{className:h()("dropdown-content",{loading:a})},s().createElement(w,{loading:a}),s().createElement("ul",{className:"menu-groups"},l.map((e=>s().createElement(v.k,{key:e.name,name:e.name,items:e.items}))))))))}function w(e){var{loading:n}=e;return n&&s().createElement("div",{className:"spinner"},s().createElement(b,{lib:"fa",icon:"spinner",spinning:!0}))}r=y,[i,t]=(0,l.Z)(r,[],[a],0,void 0,m.ReactNextElement).c,t()},1943:(e,n,o)=>{o.d(n,{Z:()=>l});var t=o(9601),a=o.n(t),r=o(2609),i=o.n(r)()(a());i.push([e.id,':root{--eo-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme="dark"],\nhtml[data-theme="dark-v2"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}',""]);const l=i},2222:(e,n,o)=>{o.d(n,{Z:()=>l});var t=o(9601),a=o.n(t),r=o(2609),i=o.n(r)()(a());i.push([e.id,":host{display:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;grid-gap:32px 8px;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:-webkit-min-content;height:-moz-min-content;height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}}",""]);const l=i.toString()},6527:(e,n,o)=>{var t=o(6062),a=o.n(t),r=o(4036),i=o.n(r),l=o(6793),c=o.n(l),s=o(7892),d=o.n(s),m=o(1173),p=o.n(m),u=o(2464),h=o.n(u),g=o(1943),x={};x.styleTagTransform=h(),x.setAttributes=d(),x.insert=c().bind(null,"head"),x.domAPI=i(),x.insertStyleElement=p(),a()(g.Z,x),g.Z&&g.Z.locals&&g.Z.locals}}]);
|
|
2
|
+
//# sourceMappingURL=eo-search-launchpad.2d0cea22.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/eo-search-launchpad.2d0cea22.js","mappings":"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","sources":["webpack:///./src/search-launchpad/index.tsx","webpack:///./src/search-launchpad/host-context.css","webpack:///./src/search-launchpad/styles.shadow.css","webpack:///./src/search-launchpad/host-context.css?4d0b"],"sourcesContent":["import React, { useCallback, useRef, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\nimport classNames from \"classnames\";\nimport { LaunchpadsContext } from \"../launchpad-button-v2/LaunchpadContext\";\nimport { useLaunchpadInfo } from \"../launchpad-button-v2/useLaunchpadInfo\";\nimport { MenuGroup } from \"../launchpad-button-v2/MenuGroup\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport \"./host-context.css\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst { defineElement } = createDecorators();\n\n/**\n * launchpad 搜索\n * @insider\n */\nexport\n@defineElement(\"eo-search-launchpad\", {\n styleTexts: [styleText],\n})\nclass EoSearchLaunchpad extends ReactNextElement {\n render() {\n return <EoSearchLaunchpadComponent />;\n }\n}\n\nexport function EoSearchLaunchpadComponent() {\n const searchInputRef = useRef<HTMLInputElement>(null);\n const handleClickSearchBox = useCallback(() => {\n searchInputRef.current?.focus();\n }, []);\n\n const [active, setActive] = useState(false);\n\n const {\n loading,\n q,\n setQ,\n menuGroups,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n } = useLaunchpadInfo(active);\n const searching = !!q;\n\n const handleSearch = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setQ(e.target.value);\n },\n [setQ]\n );\n\n const clearSearch = useCallback(() => {\n setQ(\"\");\n }, [setQ]);\n\n return (\n <LaunchpadsContext.Provider\n value={{\n searching,\n loadingFavorites,\n pushRecentVisit,\n toggleStar,\n isStarred,\n }}\n >\n <div className=\"container\">\n <div className=\"search-box\" onClick={handleClickSearchBox}>\n <WrappedIcon\n lib=\"fa\"\n icon=\"magnifying-glass\"\n className=\"search-icon\"\n />\n <input\n ref={searchInputRef}\n placeholder=\"搜索产品/微应用\"\n value={q}\n onChange={handleSearch}\n className=\"search-input\"\n onFocus={() => setActive(true)}\n onBlur={() => setActive(false)}\n />\n <WrappedIcon\n lib=\"antd\"\n theme=\"filled\"\n icon=\"close-circle\"\n className={classNames(\"search-clear\", { searching })}\n onClick={clearSearch}\n onMouseDown={(e) => e.preventDefault()}\n />\n </div>\n <div\n className={classNames(\"dropdown\", { \"dropdown-active\": active })}\n onMouseDown={(e) => e.preventDefault()}\n >\n <div className={classNames(\"dropdown-content\", { loading })}>\n <Loading loading={loading} />\n <ul className=\"menu-groups\">\n {menuGroups.map((group) => (\n <MenuGroup\n key={group.name}\n name={group.name}\n items={group.items}\n />\n ))}\n </ul>\n </div>\n </div>\n </div>\n </LaunchpadsContext.Provider>\n );\n}\n\nfunction Loading({ loading }: { loading: boolean }) {\n return (\n loading && (\n <div className=\"spinner\">\n <WrappedIcon lib=\"fa\" icon=\"spinner\" spinning />\n </div>\n )\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.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_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root{--eo-search-launchpad-menu-icon-color:#8c8c8c}html[data-theme=\"dark\"],\nhtml[data-theme=\"dark-v2\"]{--eo-search-launchpad-menu-icon-color:rgba(255,255,255,0.45)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.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_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}.container{position:relative}.dropdown{margin-top:5px;position:absolute;top:100%;left:0px;width:100%;z-index:1050;padding:20px 24px 24px;overflow:hidden;box-sizing:border-box;background-color:var(--antd-select-dropdown-bg);border-radius:4px;box-shadow:var(--antd-box-shadow-base);display:none}.dropdown-active{display:block}.search-box{border-bottom:1px solid var(--color-text-divider-line);display:flex;gap:8px;align-items:center;padding:10px 0;cursor:text}.search-icon{color:var(--color-auxiliary-text)}.search-input{padding:0;margin:0;border:none;outline:none;color:inherit;background-color:transparent;font-size:14px;line-height:22px;flex:1;min-width:0}.search-input::placeholder{color:var(--color-disabled-text);opacity:1}.search-clear{display:none;color:var(--color-secondary-text);cursor:pointer}.search-clear.searching{display:inline-block}.search-clear:hover{color:var(--color-auxiliary-text)}.dropdown-content{min-width:0;display:flex;flex-direction:column;gap:24px;max-height:260px;overflow-y:auto}.spinner{display:flex;justify-content:center;align-items:center;color:var(--theme-doderblue-color);flex:1;font-size:30px}.loading > :not(.spinner){display:none}.menu-group-label,\n.menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-groups,\n.menu,\n.sub-menu{list-style:none;margin:0;padding:0}.menu,\n.sub-menu{display:flex;flex-direction:column;gap:14px}.menu-item > eo-link{display:block;min-width:0}.menu-item > eo-link::part(link){height:20px;display:flex;align-items:center;gap:8px;color:var(--color-header-text)}.menu-groups{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.menu-groups{display:grid;grid-gap:32px 8px;gap:32px 8px}.menu-group{padding-right:12px;color:var(--color-header-text)}.menu-group-label{font-size:var(--card-title-font-size);font-weight:500;color:var(--color-header-text);margin-bottom:14px}.menu-item:not(.folder){display:flex;gap:8px;align-items:center}.menu-icon{color:var(--eo-search-launchpad-menu-icon-color)}.menu-item.active,\n.menu-item.active .menu-icon{color:var(--color-brand-active)}.sub-menu:not(.expanded){display:none}.sub-menu{margin-top:14px;margin-left:8px;border-left:1px solid var(--color-text-divider-line);padding-left:15px}.menu-item-star{cursor:pointer}.menu-item-star,\n.menu-item-toggle{color:var(--color-secondary-text)}.menu-item-star{display:none}.can-star.starred > .menu-item-star,\n.can-star:hover > .menu-item-star{display:inline-block}.can-star:not(.starred) > .menu-item-star{color:var(--color-secondary-text)}.starred > .menu-item-star{color:var(--palette-yellow-6)}.menu-item > eo-link:hover::part(link),\n.menu-item > eo-link:hover .menu-icon,\n.menu-item > eo-link:hover .menu-item-toggle{color:var(--color-brand-hover)}@supports not (inset: 0){.search-box,\n .menu,\n .sub-menu,\n .menu-item:not(.folder),\n .menu-item > eo-link::part(link){gap:0}.dropdown-content{display:grid;grid-auto-flow:row}.dropdown-content:not(.loading){height:-webkit-min-content;height:-moz-min-content;height:min-content}.menu > :not(:first-child),\n .sub-menu > :not(:first-child){margin-top:14px}.search-icon,\n .menu-icon{margin-right:8px}.search-clear,\n .menu-item-star,\n .menu-item-toggle{margin-left:8px}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\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??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./host-context.css\";\n export default content && content.locals ? content.locals : undefined;\n"],"names":["_EoSearchLaunchpad","WrappedIcon","wrapBrick","defineElement","createDecorators","_dec","styleTexts","styleText","EoSearchLaunchpad","ReactNextElement","render","React","EoSearchLaunchpadComponent","searchInputRef","useRef","handleClickSearchBox","useCallback","_searchInputRef$curre","current","focus","active","setActive","useState","loading","q","setQ","menuGroups","loadingFavorites","pushRecentVisit","toggleStar","isStarred","useLaunchpadInfo","searching","handleSearch","e","target","value","clearSearch","LaunchpadsContext","Provider","className","onClick","lib","icon","ref","placeholder","onChange","onFocus","onBlur","theme","classNames","onMouseDown","preventDefault","Loading","map","group","MenuGroup","key","name","items","_ref","spinning","_class","_initClass","_applyDecs","c","___CSS_LOADER_EXPORT___","push","module","id","toString","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals"],"sourceRoot":""}
|