@moneko/core 2.0.19 → 2.0.20

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.
Files changed (87) hide show
  1. package/build/common.js +1 -1
  2. package/build/coverage.js +1 -1
  3. package/build/done.js +1 -1
  4. package/build/envFlags.js +1 -1
  5. package/build/has-pkg.js +1 -1
  6. package/build/html-add-entry-attr.js +1 -1
  7. package/build/html-plugin-option.js +1 -1
  8. package/build/index.js +1 -1
  9. package/build/minify.js +1 -1
  10. package/build/modifyVars.js +1 -1
  11. package/build/module-federation.js +1 -1
  12. package/build/module.config.js +1 -1
  13. package/build/process-env.js +1 -1
  14. package/build/resolver-sync.js +1 -1
  15. package/build/seo.js +1 -1
  16. package/build/swcrc.js +1 -1
  17. package/build/tsloader.config.js +1 -1
  18. package/build/utils.js +1 -1
  19. package/build/webpack.common.js +1 -1
  20. package/build/webpack.dev.js +1 -1
  21. package/build/webpack.prod.js +1 -1
  22. package/build/yarn-argv.js +1 -1
  23. package/lib/components/app-router.js +1 -2
  24. package/lib/components/fallback-comp.js +1 -2
  25. package/lib/components/fallback.js +1 -2
  26. package/lib/components/layout-menu.js +1 -2
  27. package/lib/index.d.ts +2 -2
  28. package/lib/index.js +1 -2
  29. package/lib/localizable.d.ts +16 -16
  30. package/lib/localizable.js +1 -2
  31. package/lib/menu.d.ts +23 -67
  32. package/lib/menu.js +1 -2
  33. package/lib/packages/back-stage/app.js +1 -2
  34. package/lib/packages/back-stage/bootstrap.js +1 -2
  35. package/lib/packages/back-stage/index.js +1 -2
  36. package/lib/packages/back-stage/layout.js +1 -2
  37. package/lib/packages/library/app.js +1 -2
  38. package/lib/packages/library/bootstrap.js +1 -2
  39. package/lib/packages/library/index.js +1 -2
  40. package/lib/packages/mobile/app.js +1 -2
  41. package/lib/packages/mobile/index.js +1 -2
  42. package/lib/packages/single-spa/app.js +1 -2
  43. package/lib/packages/single-spa/bootstrap.js +1 -2
  44. package/lib/packages/single-spa/index.js +1 -2
  45. package/lib/packages/single-spa/public-path.js +1 -2
  46. package/lib/packages/site/app.js +1 -2
  47. package/lib/packages/site/bootstrap.js +1 -2
  48. package/lib/packages/site/index.js +1 -2
  49. package/lib/prefix/prefix-remote-react-refresh.js +1 -2
  50. package/lib/prefix/react-router-dom.js +1 -2
  51. package/lib/react-router-dom/link.js +1 -2
  52. package/lib/react-router-dom/use-navgate.js +1 -2
  53. package/lib/router/index.js +1 -2
  54. package/lib/utils/index.d.ts +6 -1
  55. package/lib/utils/index.js +1 -2
  56. package/lib/utils/refresh-rem.js +1 -2
  57. package/package.json +4 -4
  58. package/lib/components/app-router.js.map +0 -1
  59. package/lib/components/fallback-comp.js.map +0 -1
  60. package/lib/components/fallback.js.map +0 -1
  61. package/lib/components/layout-menu.js.map +0 -1
  62. package/lib/index.js.map +0 -1
  63. package/lib/localizable.js.map +0 -1
  64. package/lib/menu.js.map +0 -1
  65. package/lib/packages/back-stage/app.js.map +0 -1
  66. package/lib/packages/back-stage/bootstrap.js.map +0 -1
  67. package/lib/packages/back-stage/index.js.map +0 -1
  68. package/lib/packages/back-stage/layout.js.map +0 -1
  69. package/lib/packages/library/app.js.map +0 -1
  70. package/lib/packages/library/bootstrap.js.map +0 -1
  71. package/lib/packages/library/index.js.map +0 -1
  72. package/lib/packages/mobile/app.js.map +0 -1
  73. package/lib/packages/mobile/index.js.map +0 -1
  74. package/lib/packages/single-spa/app.js.map +0 -1
  75. package/lib/packages/single-spa/bootstrap.js.map +0 -1
  76. package/lib/packages/single-spa/index.js.map +0 -1
  77. package/lib/packages/single-spa/public-path.js.map +0 -1
  78. package/lib/packages/site/app.js.map +0 -1
  79. package/lib/packages/site/bootstrap.js.map +0 -1
  80. package/lib/packages/site/index.js.map +0 -1
  81. package/lib/prefix/prefix-remote-react-refresh.js.map +0 -1
  82. package/lib/prefix/react-router-dom.js.map +0 -1
  83. package/lib/react-router-dom/link.js.map +0 -1
  84. package/lib/react-router-dom/use-navgate.js.map +0 -1
  85. package/lib/router/index.js.map +0 -1
  86. package/lib/utils/index.js.map +0 -1
  87. package/lib/utils/refresh-rem.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/fallback.tsx"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport { useOutlet } from 'react-router-dom';\nimport FallbackComp from './fallback-comp';\n\ndeclare const fallbackCompPath: string;\n\nconst Fallback: React.FC = () => {\n const outlet = useOutlet()?.props.children;\n const [el, setEl] = useState(<>Loading...</>);\n\n useMemo(() => {\n if (typeof fallbackCompPath === 'string') {\n const pat = fallbackCompPath.replace(/@\\//, '').split('/');\n const [directory, ...path] = pat;\n\n setEl(<FallbackComp directory={directory} compName={path.join('/')} />);\n }\n }, []);\n\n return outlet ? outlet : el;\n};\n\nexport default React.memo(Fallback);\n"],"names":["React","useMemo","useState","useOutlet","FallbackComp","Fallback","outlet","props","children","el","setEl","fallbackCompPath","pat","replace","split","directory","path","compName","join","memo"],"mappings":"ykDAAA,OAAOA,OAASC,OAAO,CAAEC,QAAQ,KAAQ,OAAQ,AACjD,QAASC,SAAS,KAAQ,kBAAmB,AAC7C,QAAOC,iBAAkB,iBAAkB,CAI3C,IAAMC,SAAqB,UAAM,KAChBF,WAAf,IAAMG,OAASH,CAAAA,WAAAA,qBAAAA,oBAAAA,KAAAA,EAAAA,WAAaI,MAAMC,QAAQ,CAC1C,IAAoBN,yBAAAA,SAAS,wCAAE,kBAAxBO,GAAaP,aAATQ,MAASR,aAEpBD,QAAQ,UAAM,CACZ,GAAI,OAAOU,mBAAqB,SAAU,CACxC,IAAMC,IAAMD,iBAAiBE,OAAO,CAAC,MAAO,IAAIC,KAAK,CAAC,KACtD,IAA6BF,cAAAA,KAAtBG,UAAsBH,QAAX,AAAGI,KAAQJ,WAAX,GAElBF,MAAM,oBAACN,cAAaW,UAAWA,UAAWE,SAAUD,KAAKE,IAAI,CAAC,OAChE,CAAC,AACH,EAAG,EAAE,EAEL,OAAOZ,OAASA,OAASG,EAAE,AAC7B,CAEA,gBAAeT,MAAMmB,IAAI,CAACd,SAAU"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/layout-menu.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { classNames, isEqual } from '@moneko/common';\nimport { Menu, type MenuProps } from 'antd';\nimport { useSearchParams, Link } from 'react-router-dom';\nimport { localizable } from '../localizable';\nimport { menu, type MenuItem } from '../menu';\n\nexport interface LayoutMenuProps extends MenuProps {\n collapsed?: boolean;\n}\n\nconst LayoutMenu: React.FC<LayoutMenuProps> = (prop) => {\n const { collapsed, ...menuProps } = prop;\n const { menus, kv, activeKey } = menu;\n const { t } = localizable;\n const [search] = useSearchParams();\n const openKeysRef = useRef<string[]>();\n const [openKeys, setOpenKeys] = useState<string[]>([]);\n const handleOpenChange = useCallback(\n (keys: string[]) => {\n if (keys !== openKeys) {\n setOpenKeys(keys as string[]);\n }\n },\n [openKeys]\n );\n\n const filterMenu = useCallback(\n (list: MenuItem[]): MenuItem[] => {\n return list.map((item) => {\n const { icon, itemIcon, disabled, type, key, path, label, children } = item;\n const text = t[label as string];\n const childrens = Array.isArray(children) ? filterMenu(children) : children;\n\n return Object.assign(\n {\n path,\n type,\n disabled,\n key,\n itemIcon,\n icon,\n label:\n path && !childrens?.length ? (\n <Link preventScrollReset to={`${key}?menuId=${key}`}>\n {text}\n </Link>\n ) : (\n text\n ),\n },\n childrens?.length && {\n children: childrens,\n }\n );\n });\n },\n [t]\n );\n\n const menuId = useMemo(() => search.get('menuId'), [search]);\n const items = useMemo(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n () => filterMenu(menus.filter((m: any) => !m.hideMenu)),\n [filterMenu, menus]\n );\n const selectedKeys = useMemo(() => (activeKey ? [activeKey] : []), [activeKey]);\n\n useEffect(() => {\n Object.assign(openKeysRef, {\n current: openKeys,\n });\n }, [openKeys]);\n useEffect(() => {\n const current = menuId && kv[menuId];\n\n if (current && !collapsed && openKeysRef.current) {\n const opk = [...openKeysRef.current];\n\n if (!opk.includes(menuId as string)) opk.push(menuId as string);\n if (current.parentId && !opk.includes(current.parentId)) opk.push(current.parentId);\n if (!isEqual(openKeysRef.current, opk)) setOpenKeys(opk);\n }\n }, [collapsed, menuId, kv]);\n\n useEffect(() => {\n if (menuId !== activeKey && menuId) {\n menu.activeKey = menuId;\n }\n }, [activeKey, menuId]);\n\n return (\n <Menu\n defaultSelectedKeys={selectedKeys}\n selectedKeys={selectedKeys}\n defaultOpenKeys={openKeys}\n // eslint-disable-next-line no-undefined\n openKeys={collapsed ? undefined : openKeys}\n onOpenChange={handleOpenChange}\n mode=\"inline\"\n subMenuCloseDelay={0}\n triggerSubMenuAction=\"click\"\n items={items}\n {...menuProps}\n className={classNames('layout-menu', menuProps.className)}\n />\n );\n};\n\nexport default React.memo(LayoutMenu);\n"],"names":["React","useCallback","useEffect","useMemo","useRef","useState","classNames","isEqual","Menu","useSearchParams","Link","localizable","menu","LayoutMenu","prop","collapsed","menuProps","menus","kv","activeKey","t","search","openKeysRef","openKeys","setOpenKeys","handleOpenChange","keys","filterMenu","list","map","item","icon","itemIcon","disabled","type","key","path","label","children","text","childrens","Array","isArray","Object","assign","length","preventScrollReset","to","menuId","get","items","filter","m","hideMenu","selectedKeys","current","opk","includes","push","parentId","defaultSelectedKeys","defaultOpenKeys","undefined","onOpenChange","mode","subMenuCloseDelay","triggerSubMenuAction","className","memo"],"mappings":"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"}
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './prefix/react-router-dom.js';\nexport * from './utils';\nexport { pathToRegexp } from 'path-to-regexp';\nexport { default as sso } from 'shared-store-object';\nexport { type LocaleConfig, localizable, type LocaleName } from './localizable';\nexport {\n matchUtil,\n router,\n onlyLoginRouter,\n myPkgs,\n myDemoKv,\n mdxComponents,\n type ExampleModule,\n type RouterProps,\n type MyPkg,\n} from './router';\nexport { type TabItem, type MenuItem, type CloseTab, menu } from './menu';\nexport type { LayoutMenuProps } from './components/layout-menu';\nexport { createRouter, prefixRouter, routerData, RouterFragment } from './components/app-router';\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nexport const LayoutMenu = hasAntd ? require('./components/layout-menu').default : null;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nexport const DashboardLayout = hasAntd ? require('./packages/back-stage/layout').default : null;\nexport type {\n ConfigType,\n AppType,\n CommomType,\n ProgramInfoType,\n MemberTransformer,\n CoverageType,\n TerserOptions,\n MinifierType,\n SourceMapDevToolPluginOptions,\n ProjectCoverageType,\n SharedConfig,\n SwcOptions,\n OptimizationSplitChunksOptions,\n SwcImportOnDemandTransform,\n} from '../typings/global';\nimport type { ConfigType, CommomType, CoverageType, ProjectCoverageType } from '../typings/global';\nexport type PartialConfigType<T = 'swc'> = Partial<ConfigType<T>>;\nexport type PartialCommomType<T = 'swc'> = Partial<CommomType<T>>;\ndeclare const projectCoverage: Record<string, CoverageType & Partial<ProjectCoverageType>>;\n\n/** 一些项目基本信息 */\nexport const projectBasicInfo = {\n projectName,\n providerConfig,\n programInfo,\n coverage: projectCoverage,\n};\n"],"names":["pathToRegexp","default","sso","localizable","matchUtil","router","onlyLoginRouter","myPkgs","myDemoKv","mdxComponents","menu","createRouter","prefixRouter","routerData","RouterFragment","LayoutMenu","hasAntd","require","DashboardLayout","projectBasicInfo","projectName","providerConfig","programInfo","coverage","projectCoverage"],"mappings":"AAAA,WAAc,8BAA+B,AAC7C,YAAc,SAAU,AACxB,QAASA,YAAY,KAAQ,gBAAiB,AAC9C,QAASC,WAAWC,GAAG,KAAQ,qBAAsB,AACrD,QAA4BC,WAAW,KAAyB,eAAgB,AAChF,QACEC,SAAS,CACTC,MAAM,CACNC,eAAe,CACfC,MAAM,CACNC,QAAQ,CACRC,aAAa,KAIR,UAAW,AAClB,QAAqDC,IAAI,KAAQ,QAAS,AAE1E,QAASC,YAAY,CAAEC,YAAY,CAAEC,UAAU,CAAEC,cAAc,KAAQ,yBAA0B,AAEjG,QAAO,IAAMC,WAAaC,QAAUC,QAAQ,4BAA4BhB,OAAO,CAAG,IAAI,AAAC,AAEvF,QAAO,IAAMiB,gBAAkBF,QAAUC,QAAQ,gCAAgChB,OAAO,CAAG,IAAI,AAAC,AAuBhG,QAAO,IAAMkB,iBAAmB,CAC9BC,YAAAA,YACAC,eAAAA,eACAC,YAAAA,YACAC,SAAUC,eACZ,CAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/localizable.ts"],"sourcesContent":["import type { ReactNode } from 'react';\nimport sso from 'shared-store-object';\n\nexport type LocaleName =\n | 'ar_EG'\n | 'az_AZ'\n | 'bg_BG'\n | 'bn_BD'\n | 'by_BY'\n | 'ca_ES'\n | 'cs_CZ'\n | 'da_DK'\n | 'de_DE'\n | 'el_GR'\n | 'en_GB'\n | 'en_US'\n | 'es_ES'\n | 'et_EE'\n | 'fa_IR'\n | 'fi_FI'\n | 'fr_BE'\n | 'fr_CA'\n | 'fr_FR'\n | 'ga_IE'\n | 'gl_ES'\n | 'he_IL'\n | 'hi_IN'\n | 'hr_HR'\n | 'hu_HU'\n | 'hy_AM'\n | 'id_ID'\n | 'is_IS'\n | 'it_IT'\n | 'ja_JP'\n | 'ka_GE'\n | 'kk_KZ'\n | 'kmr_IQ'\n | 'km_KH'\n | 'kn_IN'\n | 'ko_KR'\n | 'ku_IQ'\n | 'lt_LT'\n | 'lv_LV'\n | 'mk_MK'\n | 'ml_IN'\n | 'mn_MN'\n | 'ms_MY'\n | 'nb_NO'\n | 'ne_NP'\n | 'nl_BE'\n | 'nl_NL'\n | 'pl_PL'\n | 'pt_BR'\n | 'pt_PT'\n | 'ro_RO'\n | 'ru_RU'\n | 'sk_SK'\n | 'sl_SI'\n | 'sr_RS'\n | 'sv_SE'\n | 'ta_IN'\n | 'th_TH'\n | 'tr_TR'\n | 'uk_UA'\n | 'ur_PK'\n | 'vi_VN'\n | 'zh_CN'\n | 'zh_HK'\n | 'zh_TW';\n\nlet models = {\n keys: () => [],\n} as unknown as __WebpackModuleApi.RequireContext;\n\ndeclare const hasLocales: boolean;\n\ntry {\n models = hasLocales // eslint-disable-next-line\n ? require.context('@/locales/', true, /\\.(t|j)s$/) // eslint-disable-next-line\n : ({\n keys: () => [],\n } as unknown as __WebpackModuleApi.RequireContext);\n} catch (error) {\n // eslint-disable-next-line no-console\n console.warn(error);\n}\nexport type LocaleConfig = {\n /** 语言名称 (未设置时使用文件名)*/\n language?: LocaleName;\n /** 描述 */\n title: string;\n /** Icon */\n icon?: ReactNode | string;\n /** 翻译字典 */\n translation: Record<string, string>;\n};\ntype LocaleConfigMap = Record<LocaleName, Locale>;\nconst resources: Partial<LocaleConfigMap> = {};\nconst locales: Pick<Locale, 'language' | 'icon' | 'title'>[] = [];\n\nmodels.keys?.()?.map((path: string, i: number) => {\n let item: LocaleConfigMap[LocaleName] | null = models(path).default;\n\n if (item && Object.prototype.toString.call(item) === '[object Object]') {\n const {\n language = path.replace(/(.*\\/)*([^.]+).*/gi, '$2') as LocaleName,\n title = language,\n icon,\n translation = {},\n } = item;\n\n if (i === 0) {\n locales.splice(0);\n }\n locales.push({\n language,\n title,\n icon,\n });\n resources[language] = {\n language,\n title,\n icon,\n translation: new Proxy(translation, {\n get(target, key) {\n return target[key as string] || key;\n },\n }),\n };\n }\n item = null;\n});\n\ninterface Locale extends LocaleConfig {\n language: LocaleName;\n}\nconst defaultLocale: Locale = Object.assign(\n {\n title: '简体中文',\n language: 'zh_CN',\n translation: {},\n },\n resources.zh_CN\n);\n\nexport const localizable = sso({\n /** 使用的语言 */\n language: 'zh_CN' as LocaleName,\n /** 获取本地化文本 */\n t: defaultLocale.translation,\n /** 本地化支持列表 */\n locales: locales,\n /** 设置使用的语言\n * @param {LocaleName} lang 语言\n * @constructor\n */\n set(lang: LocaleName) {\n localizable.language = lang;\n localizable.t = resources[lang]?.translation || defaultLocale.translation;\n },\n});\n"],"names":["models","sso","keys","hasLocales","require","context","error","console","warn","resources","locales","map","path","i","item","default","Object","prototype","toString","call","language","replace","title","icon","translation","splice","push","Proxy","get","target","key","defaultLocale","assign","zh_CN","localizable","t","set","lang"],"mappings":"IAoGAA,aAAAA,iBAnGA,QAAOC,QAAS,qBAAsB,CAqEtC,IAAID,OAAS,CACXE,KAAM,iBAAM,EAAE,CAChB,EAIA,GAAI,CACFF,OAASG,WACLC,QAAQC,OAAO,CAAC,aAAc,IAAI,CAAE,aACnC,CACCH,KAAM,iBAAM,EAAE,CAChB,CAAkD,AACxD,CAAE,MAAOI,MAAO,CAEdC,QAAQC,IAAI,CAACF,MACf,CAYA,IAAMG,UAAsC,CAAC,EAC7C,IAAMC,QAAyD,EAAE,AAEjEV,EAAAA,aAAAA,OAAOE,IAAI,UAAXF,sBAAAA,KAAAA,EAAAA,CAAAA,kBAAAA,aAAAA,KAAAA,iBAAAA,2BAAAA,KAAAA,EAAAA,kBAAiBW,IAAI,SAACC,KAAcC,EAAc,CAChD,IAAIC,KAA2Cd,OAAOY,MAAMG,OAAO,CAEnE,GAAID,MAAQE,OAAOC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACL,QAAU,kBAAmB,CACtE,mBAKIA,KAJFM,SAAAA,iCAAWR,KAAKS,OAAO,CAAC,qBAAsB,iCAI5CP,KAHFQ,MAAAA,2BAAQF,qBACRG,KAEET,KAFFS,uBAEET,KADFU,YAAAA,uCAAc,CAAC,oBAGjB,GAAIX,IAAM,EAAG,CACXH,QAAQe,MAAM,CAAC,EACjB,CAAC,AACDf,QAAQgB,IAAI,CAAC,CACXN,SAAAA,SACAE,MAAAA,MACAC,KAAAA,IACF,EACAd,CAAAA,SAAS,CAACW,SAAS,CAAG,CACpBA,SAAAA,SACAE,MAAAA,MACAC,KAAAA,KACAC,YAAa,IAAIG,MAAMH,YAAa,CAClCI,IAAAA,SAAAA,IAAIC,MAAM,CAAEC,GAAG,CAAE,CACf,OAAOD,MAAM,CAACC,IAAc,EAAIA,GAClC,CACF,EACF,CACF,CAAC,AACDhB,KAAO,IAAI,AACb,GAKA,IAAMiB,cAAwBf,OAAOgB,MAAM,CACzC,CACEV,MAAO,OACPF,SAAU,QACVI,YAAa,CAAC,CAChB,EACAf,UAAUwB,KAAK,CAGjB,QAAO,IAAMC,YAAcjC,IAAI,CAE7BmB,SAAU,QAEVe,EAAGJ,cAAcP,WAAW,CAE5Bd,QAASA,QAKT0B,IAAAA,SAAAA,IAAIC,IAAgB,CAAE,KAEJ5B,eADhByB,CAAAA,YAAYd,QAAQ,CAAGiB,IACvBH,CAAAA,YAAYC,CAAC,CAAG1B,CAAAA,CAAAA,gBAAAA,SAAS,CAAC4B,KAAK,UAAf5B,yBAAAA,KAAAA,EAAAA,gBAAiBe,WAAW,AAAD,GAAKO,cAAcP,WAAW,AAC3E,CACF,EAAG"}
package/lib/menu.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/menu.ts"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { isEqual, isFunction } from '@moneko/common';\nimport sso from 'shared-store-object';\nimport type { RouterProps } from './router';\n\nexport type CloseTab = 'left' | 'right' | 'other' | 'self';\nexport interface TabItem extends RouterProps {\n key: string;\n url?: string;\n path?: string;\n closable?: boolean;\n icon?: ReactNode;\n label?: ReactNode;\n dynamicTitle?: string;\n}\nexport interface MenuItem extends RouterProps {\n key: string;\n type?: string;\n label?: ReactNode;\n children?: MenuItem[];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n}\n// eslint-disable-next-line no-unused-vars\ntype ClosedCallback = (closes?: TabItem[], next?: TabItem) => void;\n\nconst getItems = (arr: MenuItem[], result: MenuItem[] = []): MenuItem[] => {\n if (arr.length === 0) {\n return result;\n }\n const { children = [], i18n, label, hideMenu, ...args } = arr[0];\n const item: MenuItem = Object.create(null);\n\n Object.assign(item, args, { label: i18n || label });\n if (children.length) {\n item.children = getItems(children);\n }\n if (!hideMenu) {\n result.push(item);\n }\n return getItems(arr.slice(1), result);\n};\nconst getMenuKV = (arr: MenuItem[], obj: Record<string, MenuItem>): void => {\n for (const item of arr) {\n const { children, ...args } = item;\n\n obj[item.key] = args;\n if (children?.length) {\n getMenuKV(children, obj);\n }\n }\n};\n\nexport const menu = sso({\n /** 当前菜单 */\n activeKey: 'home',\n /** 当前用户可访问的菜单列表 */\n menus: [] as MenuItem[],\n /** 菜单列表的kv数据, 根据menus自动生成 */\n kv: {} as Record<string, MenuItem>,\n /** 选项卡数据 */\n tabs: [] as TabItem[],\n /** 设置菜单列表\n * @param {MenuItem[]} data 菜单数据\n * @constructor\n */\n setMenu(data: MenuItem[]) {\n const items = getItems(data),\n kv: Record<string, MenuItem> = {};\n\n getMenuKV(items, kv);\n menu.menus = items;\n menu.kv = kv;\n },\n /** 添加选项卡\n * @param {TabItem} tab 选项卡\n * @constructor\n */\n addTab(tab: TabItem) {\n const current = menu.kv[tab.key];\n\n if (current && !menu.tabs.find((item) => item.key === tab.key)) {\n const ntabs: TabItem[] = [\n ...menu.tabs,\n {\n ...current,\n i18n: current.i18n || `route-${current.key}`,\n ...tab,\n },\n ];\n\n if (!isEqual(ntabs, menu.tabs)) {\n menu.tabs = ntabs;\n }\n }\n },\n /** 打开选项卡\n * @param {TabItem} tab 选项卡\n * @constructor\n */\n openTab(tab: TabItem) {\n menu.addTab(tab);\n menu.activeKey = tab.key;\n },\n /** 关闭选项卡\n * @param {string} key 选项卡key\n * @param {CloseTab} type 操作类型,如何关闭\n * @param {ClosedCallback} callback 回调函数\n * @constructor\n */\n closeTab(key: string, type: CloseTab = 'self', callback: ClosedCallback) {\n if (!key) return;\n const { tabs, activeKey } = menu;\n let nActiveKey = activeKey;\n const closeTabs: TabItem[] = [];\n const nTabs: TabItem[] = [];\n let nextTab: TabItem | null = null;\n // 关闭当前tab\n const isCloseSelf = type === 'self';\n const idx = tabs.findIndex((t) => t.key === key);\n const isNotClose = (item: TabItem, i: number) => {\n return (\n item.closable === false ||\n {\n left: i >= idx,\n right: i <= idx,\n other: i === idx,\n self: key !== item.key,\n }[type]\n );\n };\n\n for (let i = 0; i < tabs.length; i++) {\n const item = tabs[i];\n const notClose = isNotClose(item, i);\n\n if (isCloseSelf) {\n if (!notClose) {\n if (key === nActiveKey) {\n const adx: number | null = i ? i - 1 : i + 1;\n\n if (tabs[adx]) {\n nActiveKey = tabs[adx].key;\n nextTab = tabs[adx];\n }\n }\n }\n } else if (notClose && item.key === key && nActiveKey !== key) {\n nActiveKey = key;\n nextTab = tabs[i];\n }\n if (!notClose) {\n closeTabs.push(item);\n }\n if (notClose) {\n nTabs.push(item);\n }\n }\n\n menu.tabs = nTabs;\n menu.activeKey = nActiveKey;\n if (isFunction(callback)) {\n callback(closeTabs, nextTab);\n return;\n }\n },\n});\n"],"names":["isEqual","isFunction","sso","getItems","arr","result","length","children","i18n","label","hideMenu","args","item","Object","create","assign","push","slice","getMenuKV","obj","key","menu","activeKey","menus","kv","tabs","setMenu","data","items","addTab","tab","current","find","ntabs","openTab","closeTab","type","callback","nActiveKey","closeTabs","nTabs","nextTab","isCloseSelf","idx","findIndex","t","isNotClose","i","closable","left","right","other","self","notClose","adx"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/back-stage/app.tsx"],"sourcesContent":["import React, { type FC, useEffect } from 'react';\nimport { ConfigProvider } from 'antd';\nimport en_US from 'antd/es/locale/en_US';\nimport zh_CN from 'antd/es/locale/zh_CN';\nimport dayjs from 'dayjs';\nimport relativeTime from 'dayjs/plugin/relativeTime';\nimport { RouterProvider } from 'react-router-dom';\nimport {\n createRouter,\n prefixRouter,\n routerData,\n RouterFragment,\n} from '../../components/app-router';\nimport Fallback from '../../components/fallback';\nimport { type LocaleName, localizable } from '../../localizable';\nimport { onlyLoginRouter } from '../../router';\nimport 'dayjs/locale/zh.js';\nimport 'dayjs/locale/en.js';\nimport { watermark } from '../../utils';\nimport type { Locale } from 'antd/es/locale-provider';\nimport { global } from '@/store';\n\nconst localeDictionary: Partial<Record<LocaleName, Locale>> = {\n zh_CN,\n en_US,\n};\n\ndayjs.extend(relativeTime);\nConfigProvider.config({\n prefixCls: providerConfig.prefixCls,\n iconPrefixCls: providerConfig.iconPrefixCls,\n theme: providerConfig.theme,\n});\n\nconst App: FC = () => {\n const { isLogin } = global;\n const { language, t } = localizable;\n\n useEffect(() => {\n document.body.style.backgroundImage = `url(${watermark({\n text: projectName,\n })})`;\n }, []);\n\n return (\n <RouterFragment>\n <ConfigProvider\n {...providerConfig}\n locale={localeDictionary[language] || zh_CN}\n form={{\n validateMessages: {\n required: `${t['ph:please-fill']}\\${label}!`,\n types: {\n email: `\\${label}${t['wrong-format']}`,\n },\n pattern: {\n mismatch: `${t['ph:fill-correct']}\\${label}!`,\n },\n },\n }}\n >\n <RouterProvider\n router={createRouter(isLogin ? routerData : prefixRouter(onlyLoginRouter, <Fallback />), {\n basename: programInfo.routeBaseName,\n window: window,\n })}\n fallbackElement={<Fallback />}\n />\n </ConfigProvider>\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","useEffect","ConfigProvider","en_US","zh_CN","dayjs","relativeTime","RouterProvider","createRouter","prefixRouter","routerData","RouterFragment","Fallback","localizable","onlyLoginRouter","watermark","global","localeDictionary","extend","config","prefixCls","providerConfig","iconPrefixCls","theme","App","isLogin","language","t","document","body","style","backgroundImage","text","projectName","locale","form","validateMessages","required","types","email","pattern","mismatch","router","basename","programInfo","routeBaseName","window","fallbackElement"],"mappings":"oRAAA,OAAOA,OAAkBC,SAAS,KAAQ,OAAQ,AAClD,QAASC,cAAc,KAAQ,MAAO,AACtC,QAAOC,UAAW,sBAAuB,AACzC,QAAOC,UAAW,sBAAuB,AACzC,QAAOC,UAAW,OAAQ,AAC1B,QAAOC,iBAAkB,2BAA4B,AACrD,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QACEC,YAAY,CACZC,YAAY,CACZC,UAAU,CACVC,cAAc,KACT,6BAA8B,AACrC,QAAOC,aAAc,2BAA4B,AACjD,QAA0BC,WAAW,KAAQ,mBAAoB,AACjE,QAASC,eAAe,KAAQ,cAAe,AAC/C,OAAO,oBAAqB,AAC5B,OAAO,oBAAqB,AAC5B,QAASC,SAAS,KAAQ,aAAc,AAExC,QAASC,MAAM,KAAQ,SAAU,CAEjC,IAAMC,iBAAwD,CAC5Db,MAAAA,MACAD,MAAAA,KACF,EAEAE,MAAMa,MAAM,CAACZ,cACbJ,eAAeiB,MAAM,CAAC,CACpBC,UAAWC,eAAeD,SAAS,CACnCE,cAAeD,eAAeC,aAAa,CAC3CC,MAAOF,eAAeE,KAAK,AAC7B,GAEA,IAAMC,IAAU,UAAM,CACpB,IAAM,AAAEC,QAAYT,OAAZS,QACR,IAAQC,SAAgBb,YAAhBa,SAAUC,EAAMd,YAANc,EAElB1B,UAAU,UAAM,CACd2B,SAASC,IAAI,CAACC,KAAK,CAACC,eAAe,CAAG,AAAC,OAEpC,OAF0ChB,UAAU,CACrDiB,KAAMC,WACR,GAAG,IACL,EAAG,EAAE,EAEL,OACE,oBAACtB,oBACC,oBAACT,2BACKmB,gBACJa,OAAQjB,gBAAgB,CAACS,SAAS,EAAItB,MACtC+B,KAAM,CACJC,iBAAkB,CAChBC,SAAU,AAAC,GAAsB,OAApBV,CAAC,CAAC,iBAAiB,CAAC,aACjCW,MAAO,CACLC,MAAO,AAAC,WAA6B,OAAlBZ,CAAC,CAAC,eAAe,CACtC,EACAa,QAAS,CACPC,SAAU,AAAC,GAAuB,OAArBd,CAAC,CAAC,kBAAkB,CAAC,YACpC,CACF,CACF,IAEA,oBAACpB,gBACCmC,OAAQlC,aAAaiB,QAAUf,WAAaD,aAAaK,gBAAiB,oBAACF,eAAY,CAAE,CACvF+B,SAAUC,YAAYC,aAAa,CACnCC,OAAQA,MACV,GACAC,gBAAiB,oBAACnC,kBAK5B,CAEA,gBAAeY,GAAI"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/back-stage/bootstrap.tsx"],"sourcesContent":["import React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nif (version >= 18) {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <App />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<App />);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n} else {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<App />, container);\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","version","parseFloat","container","document","getElementById","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","mount","module","hot","hydrate"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAE5E,IAAME,aAAeD,QAAQE,cAC7B,IAAMC,QAAUC,WAAWT,MAAMQ,OAAO,EACxC,IAAME,UAAYC,SAASC,cAAc,CAAC,QAE1C,GAAIJ,SAAW,GAAI,CACjB,GAAIP,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,GAAIC,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGX,aAAaY,WAAW,CAACR,UAAW,oBAACR,UAC7D,KAAO,CACLc,OAAOC,YAAY,CAAGX,aAAaa,UAAU,CAACT,WAC9CM,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAAClB,UAC9B,CAAC,AACD,GAAID,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EAAG,CAC/BlB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EACjB,CAAC,AACH,KAAO,CACL,GAAIpB,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,IAAMO,OAASE,OAAOC,GAAG,CAAGjB,aAAac,MAAM,CAAGd,aAAakB,OAAO,CAEtEJ,OAAO,oBAAClB,UAAQQ,WAChB,GAAIT,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EAAG,CAC/BlB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EACjB,CAAC,AACH,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/back-stage/index.ts"],"sourcesContent":["import '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/back-stage/layout.tsx"],"sourcesContent":["import React, { type ReactNode, useCallback, useEffect, useMemo, useState, type FC } from 'react';\nimport { ReloadOutlined, DeleteRowOutlined, CloseOutlined } from '@ant-design/icons';\nimport { css, injectGlobal } from '@emotion/css';\nimport { Tabs, Layout, Dropdown } from 'antd';\nimport { useAliveController } from 'react-activation';\nimport { useSearchParams, useOutlet, useNavigate } from 'react-router-dom';\nimport FallbackComp from '../../components/fallback-comp';\nimport LayoutMenu from '../../components/layout-menu';\nimport { localizable } from '../../localizable';\nimport { menu, type CloseTab, type TabItem } from '../../menu';\nimport type { MenuItemType } from 'antd/es/menu/hooks/useItems';\n\ndeclare const favicon: string;\n\nconst { prefixCls } = providerConfig;\nconst c = (s: string) => `${prefixCls}-dashboard-${s}`;\nconst cls = {\n tabs: c('tabs'),\n layout: c('layout'),\n sider: c('sider'),\n header: c('header'),\n logo: c('logo'),\n section: c('section'),\n content: c('content'),\n view: c('view'),\n};\nconst layoutCss = css`\n .${cls.header}, .${cls.tabs} {\n z-index: 2;\n }\n .${cls.tabs} {\n position: sticky;\n top: 64px;\n overflow: initial !important;\n margin: 16px 16px 0 !important;\n\n > .${prefixCls}-tabs-nav {\n .${prefixCls}-tabs-tab {\n border-color: var(--border-color, rgb(5 5 5 / 6%)) !important;\n border-bottom-color: var(--border-color, rgb(5 5 5 / 6%)) !important;\n border-radius: var(--border-radius) !important;\n backdrop-filter: blur(16px);\n background-color: rgba(255, 255, 255, 0.8);\n &.${prefixCls}-tabs-tab-active {\n background-color: rgba(255, 255, 255, 0.9);\n }\n }\n\n &::before {\n content: none;\n }\n }\n }\n .${cls.layout} {\n width: 100% !important;\n min-height: 100vh !important;\n }\n .${cls.sider}, .${cls.section} {\n overflow-y: auto;\n max-height: 100vh;\n }\n .${cls.section} {\n overflow-y: auto;\n }\n .${cls.sider} {\n overflow-y: auto;\n }\n .${cls.content} {\n display: flex;\n margin: 0 16px;\n flex-direction: column;\n z-index: 1;\n }\n .${cls.view} {\n border-radius: var(--border-radius);\n padding: 24px;\n background: var(--component-card-bg, #fff);\n box-shadow: var(--box-shadow-lite);\n flex: 1;\n transition-property: background-color, box-shadow;\n }\n .${cls.view}, .${cls.logo}, .${cls.logo} > svg {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n .${cls.logo} {\n position: sticky;\n top: 0;\n z-index: 1;\n display: flex;\n gap: 10px;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n padding: 14px;\n height: 68px;\n text-align: center;\n color: #de4553;\n transition-property: background-color, border-color;\n cursor: pointer;\n user-select: none;\n\n > svg,\n &::before {\n transition-property: opacity;\n }\n\n > svg {\n height: 32px;\n opacity: 0;\n }\n\n &::before {\n display: block;\n width: 22px;\n height: 32px;\n background: url(${require(favicon)}) no-repeat center center / contain;\n opacity: 1;\n content: '';\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n }\n`;\n\ninjectGlobal([layoutCss]);\n\nconst closeTabs: ({ key: CloseTab | 'refresh' } & Omit<MenuItemType, 'key'>)[] = [\n {\n label: '关闭左侧标签',\n icon: <DeleteRowOutlined style={{ transform: 'scaleX(-1)' }} />,\n key: 'left',\n },\n {\n label: '关闭右侧标签',\n icon: <DeleteRowOutlined />,\n key: 'right',\n },\n {\n label: '关闭其他标签',\n icon: <CloseOutlined />,\n key: 'other',\n },\n {\n label: '刷新标签页',\n icon: <ReloadOutlined />,\n key: 'refresh',\n },\n];\nconst DashboardLayout: FC<{ children?: ReactNode }> = ({ children }) => {\n const { activeKey, tabs, openTab, closeTab, kv } = menu;\n const { t } = localizable;\n const outlet = useOutlet();\n const navigate = useNavigate();\n const { dropScope } = useAliveController();\n const [search] = useSearchParams();\n const [collapsed, setCollapsed] = useState<boolean>(false);\n const handleCollapsed = useCallback((value: boolean) => {\n if (value) {\n let _timer: number | null = window.setTimeout(() => {\n setCollapsed(value);\n window.clearTimeout(_timer as number);\n _timer = null;\n }, 0);\n } else {\n setCollapsed(value);\n let _timer: number | null = window.setTimeout(() => {\n window.clearTimeout(_timer as number);\n _timer = null;\n }, 30);\n }\n }, []);\n const closedTab = useCallback(\n (tabKey?: string, type?: CloseTab | 'refresh') => {\n if (type === 'refresh') {\n navigate('/refresh');\n return;\n }\n if (tabKey) {\n closeTab(tabKey, type, function (closes?: TabItem[], next?: TabItem) {\n closes?.forEach((item) => {\n if (item.path && dropScope) {\n dropScope(item.path);\n }\n });\n if (next) {\n navigate(`${next.path}?menuId=${next.key}`);\n }\n });\n }\n },\n [closeTab, dropScope, navigate]\n );\n\n const { menuId, dynamicLabel } = useMemo(\n () => ({\n menuId: search.get('menuId'),\n dynamicLabel: search.get('dynamicTitle') || '',\n }),\n [search]\n );\n\n useEffect(() => {\n if (menuId) {\n openTab({\n key: menuId,\n dynamicTitle: dynamicLabel,\n });\n }\n }, [dynamicLabel, menuId, openTab]);\n\n const getItems = useCallback(\n (key: string) =>\n key === activeKey ? closeTabs : closeTabs.filter((i) => i?.key !== 'refresh'),\n [activeKey]\n );\n const handleTabEdit = useCallback(\n (\n targetKey: string | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent<Element>,\n action: 'add' | 'remove'\n ) => {\n if (action === 'remove' && typeof targetKey === 'string') {\n closedTab(targetKey);\n }\n },\n [closedTab]\n );\n const handleClick = useCallback(\n (key: string) => {\n navigate(`${kv[key].key}?menuId=${kv[key].key}`);\n },\n [kv, navigate]\n );\n const tabPanel = useMemo(() => {\n return tabs.map(({ key, icon, label, dynamicTitle, closable }: TabItem) => {\n return {\n key,\n label: (\n <Dropdown\n menu={{\n items: getItems(key),\n onClick: (info) => {\n info.domEvent.stopPropagation();\n closedTab(key, info.key as CloseTab);\n },\n }}\n trigger={['contextMenu']}\n destroyPopupOnHide\n >\n <div>\n {icon}\n {t[(label as string) || `route-${key}`] + (dynamicTitle || '')}\n </div>\n </Dropdown>\n ),\n closable,\n };\n });\n }, [closedTab, getItems, t, tabs]);\n\n return (\n <Layout className={cls.layout}>\n {layoutSider ? (\n <Layout.Sider\n className={cls.sider}\n trigger={null}\n collapsible\n collapsed={collapsed}\n onBreakpoint={(broken: boolean) => handleCollapsed(broken)}\n onCollapse={(_collapsed: boolean) => handleCollapsed(_collapsed)}\n theme=\"light\"\n breakpoint=\"md\"\n {...layoutSider}\n >\n <div className={cls.logo} data-title={projectName}>\n <FallbackComp compName=\"logo\" show={!collapsed} />\n </div>\n <LayoutMenu collapsed={collapsed} theme={layoutSider.theme} />\n </Layout.Sider>\n ) : null}\n <Layout className={cls.section}>\n <FallbackComp\n compName=\"layout-header\"\n className={cls.header}\n collapsed={collapsed}\n onCollapsed={() => handleCollapsed(!collapsed)}\n />\n <Tabs\n className={cls.tabs}\n hideAdd\n onTabClick={handleClick}\n activeKey={activeKey}\n type=\"editable-card\"\n onEdit={handleTabEdit}\n items={tabPanel}\n animated\n />\n <Layout.Content className={cls.content}>\n <div className={cls.view}>{children || outlet}</div>\n <FallbackComp compName=\"layout-footer\" />\n </Layout.Content>\n </Layout>\n </Layout>\n );\n};\n\nexport default DashboardLayout;\n"],"names":["React","useCallback","useEffect","useMemo","useState","ReloadOutlined","DeleteRowOutlined","CloseOutlined","css","injectGlobal","Tabs","Layout","Dropdown","useAliveController","useSearchParams","useOutlet","useNavigate","FallbackComp","LayoutMenu","localizable","menu","prefixCls","providerConfig","c","s","cls","tabs","layout","sider","header","logo","section","content","view","layoutCss","require","favicon","closeTabs","label","icon","style","transform","key","DashboardLayout","children","activeKey","openTab","closeTab","kv","t","outlet","navigate","dropScope","search","collapsed","setCollapsed","handleCollapsed","value","_timer","window","setTimeout","clearTimeout","closedTab","tabKey","type","closes","next","forEach","item","path","menuId","get","dynamicLabel","dynamicTitle","getItems","filter","i","handleTabEdit","targetKey","action","handleClick","tabPanel","map","closable","items","onClick","info","domEvent","stopPropagation","trigger","destroyPopupOnHide","div","className","layoutSider","Sider","collapsible","onBreakpoint","broken","onCollapse","_collapsed","theme","breakpoint","data-title","projectName","compName","show","onCollapsed","hideAdd","onTabClick","onEdit","animated","Content"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/library/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n })}\n fallbackElement={<Fallback />}\n />\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","App","router","basename","programInfo","routeBaseName","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAEjD,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACJ,oBACC,oBAACD,gBACCM,OAAQH,aAAaD,WAAY,CAC/BK,SAAUC,YAAYC,aAAa,AACrC,GACAC,gBAAiB,oBAACN,iBAI1B,CAEA,gBAAeC,GAAI"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/library/bootstrap.tsx"],"sourcesContent":["import React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\n\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nif (version >= 18) {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <App />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<App />);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n} else {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<App />, container);\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","version","parseFloat","container","document","getElementById","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","mount","module","hot","hydrate"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAE5E,IAAME,aAAeD,QAAQE,cAE7B,IAAMC,QAAUC,WAAWT,MAAMQ,OAAO,EACxC,IAAME,UAAYC,SAASC,cAAc,CAAC,QAE1C,GAAIJ,SAAW,GAAI,CACjB,GAAIP,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,GAAIC,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGX,aAAaY,WAAW,CAACR,UAAW,oBAACR,UAC7D,KAAO,CACLc,OAAOC,YAAY,CAAGX,aAAaa,UAAU,CAACT,WAC9CM,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAAClB,UAC9B,CAAC,AACD,GAAID,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EAAG,CAC/BlB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EACjB,CAAC,AACH,KAAO,CACL,GAAIpB,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,IAAMO,OAASE,OAAOC,GAAG,CAAGjB,aAAac,MAAM,CAAGd,aAAakB,OAAO,CAEtEJ,OAAO,oBAAClB,UAAQQ,WAChB,GAAIT,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EAAG,CAC/BlB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EACjB,CAAC,AACH,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/library/index.ts"],"sourcesContent":["import '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/mobile/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n window: window,\n })}\n fallbackElement={<Fallback />}\n />\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","App","router","basename","programInfo","routeBaseName","window","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAEjD,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACJ,oBACC,oBAACD,gBACCM,OAAQH,aAAaD,WAAY,CAC/BK,SAAUC,YAAYC,aAAa,CACnCC,OAAQA,MACV,GACAC,gBAAiB,oBAACP,iBAI1B,CAEA,gBAAeC,GAAI"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/mobile/index.tsx"],"sourcesContent":["import '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\nimport React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\n\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nconst bootstrap = () => {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (version >= 18) {\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <App />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<App />);\n }\n } else {\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<App />, container);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n};\n\ninterface Window {\n H5RemoteRuntime: {\n bootstrap: () => void;\n };\n}\n\n(window as unknown as Window).H5RemoteRuntime = {\n bootstrap: bootstrap,\n};\n\nbootstrap();\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","version","parseFloat","container","document","getElementById","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","module","hot","hydrate","mount","H5RemoteRuntime"],"mappings":"AAAA,MAAO,yBAA0B,AACjC,OAAO,4BAA6B,AACpC,QAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAE7B,IAAMC,QAAUC,WAAWT,MAAMQ,OAAO,EACxC,IAAME,UAAYC,SAASC,cAAc,CAAC,QAE1C,IAAMC,UAAY,UAAM,CACtB,GAAIZ,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,GAAIL,SAAW,GAAI,CACjB,GAAIM,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGX,aAAaY,WAAW,CAACR,UAAW,oBAACR,UAC7D,KAAO,CACLc,OAAOC,YAAY,CAAGX,aAAaa,UAAU,CAACT,WAC9CM,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAAClB,UAC9B,CAAC,AACH,KAAO,CACL,IAAMkB,OAASC,OAAOC,GAAG,CAAGhB,aAAac,MAAM,CAAGd,aAAaiB,OAAO,CAEtEH,OAAO,oBAAClB,UAAQQ,UAClB,CAAC,AACD,GAAIT,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUqB,KAAK,EAAG,CAC/BrB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUqB,KAAK,EACjB,CAAC,AACH,CAQA,CAACR,OAA6BS,eAAe,CAAG,CAC9CZ,UAAWA,SACb,EAEAA"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/single-spa/app.tsx"],"sourcesContent":["import React, { useEffect, type FC, type ReactElement } from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\nimport { type LocaleName, localizable } from '../../localizable';\n\nconst App: FC<{ basename?: string; fallback?: ReactElement; language?: LocaleName }> = ({\n basename = programInfo.routeBaseName,\n fallback = <Fallback />,\n language,\n}) => {\n useEffect(() => {\n if (language && language !== localizable.language) {\n localizable.set(language);\n }\n }, [language]);\n return (\n <RouterFragment>\n <RouterProvider\n router={createRouter(routerData, {\n basename: basename,\n window: window,\n })}\n fallbackElement={fallback}\n />\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","useEffect","RouterProvider","RouterFragment","routerData","createRouter","Fallback","localizable","App","basename","programInfo","routeBaseName","fallback","language","set","router","window","fallbackElement"],"mappings":"AAAA,OAAOA,OAASC,SAAS,KAAoC,OAAQ,AACrE,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,AACjD,QAA0BC,WAAW,KAAQ,mBAAoB,CAEjE,IAAMC,IAAiF,eAIjF,2BAHJC,SAAAA,kCAAWC,YAAYC,aAAa,uCACpCC,SAAAA,kCAAW,oBAACN,+BACZO,eAAAA,SAEAZ,UAAU,UAAM,CACd,GAAIY,UAAYA,WAAaN,YAAYM,QAAQ,CAAE,CACjDN,YAAYO,GAAG,CAACD,SAClB,CAAC,AACH,EAAG,CAACA,SAAS,EACb,OACE,oBAACV,oBACC,oBAACD,gBACCa,OAAQV,aAAaD,WAAY,CAC/BK,SAAUA,SACVO,OAAQA,MACV,GACAC,gBAAiBL,WAIzB,CAEA,gBAAeJ,GAAI"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/single-spa/bootstrap.tsx"],"sourcesContent":["import React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\nimport { type LocaleName } from '../../localizable';\n\ntype AppEntryMethods = {\n unmount?: Promise<void>;\n mount?: Promise<void>;\n bootstrap?: Promise<void>;\n};\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\nconst _version = parseFloat(React.version);\n\ntype RenderParamsType = {\n container?: HTMLElement;\n basename?: string;\n fallback?: React.ReactElement;\n language?: LocaleName;\n};\n\nfunction render(props: RenderParamsType) {\n const { container, basename, fallback, language, ...args } = props;\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n const appProps = {\n basename,\n fallback,\n language,\n };\n\n window.primaryApp = {\n ...args,\n container: _container,\n };\n if (_version >= 18) {\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(\n _container as HTMLElement,\n <App {...appProps} />\n );\n } else {\n window.rootInstance = SafeReactDOM.createRoot(_container as HTMLElement);\n window.rootInstance.render(<App {...appProps} />);\n }\n } else {\n const reactRender = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n reactRender(<App {...appProps} />, _container);\n }\n}\n\nif (!window.__POWERED_BY_QIANKUN__) {\n render({});\n}\n\nexport async function bootstrap(): Promise<void> {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function unmount(props: any): Promise<void> {\n if (isFunction(appEntry?.unmount)) {\n appEntry?.unmount(props);\n }\n const { container } = props;\n\n if (_version >= 18) {\n window.rootInstance.unmount();\n } else {\n const _container = container?.querySelector('#root') || document.querySelector('#root');\n\n SafeReactDOM.unmountComponentAtNode(_container);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function mount(props: any): Promise<void> {\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount(props);\n }\n render(props);\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","_version","parseFloat","version","render","props","container","basename","fallback","language","args","_container","querySelector","document","appProps","window","primaryApp","programInfo","renderMode","rootInstance","hydrateRoot","createRoot","reactRender","module","hot","hydrate","__POWERED_BY_QIANKUN__","bootstrap","unmount","unmountComponentAtNode","mount"],"mappings":"s5HAAA,QAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CASxB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAC7B,IAAMC,SAAWC,WAAWT,MAAMU,OAAO,EASzC,SAASC,OAAOC,KAAuB,CAAE,CACvC,IAAQC,UAAqDD,MAArDC,UAAWC,SAA0CF,MAA1CE,SAAUC,SAAgCH,MAAhCG,SAAUC,SAAsBJ,MAAtBI,SAAaC,8BAASL,OAArDC,YAAWC,WAAUC,WAAUC,aACvC,IAAME,WAAaL,CAAAA,kBAAAA,mBAAAA,KAAAA,EAAAA,UAAWM,aAAa,CAAC,WAAYC,SAASD,aAAa,CAAC,SAC/E,IAAME,SAAW,CACfP,SAAAA,SACAC,SAAAA,SACAC,SAAAA,QACF,CAEAM,CAAAA,OAAOC,UAAU,CAAG,oCACfN,OACHJ,UAAWK,aAEb,GAAIV,UAAY,GAAI,CAClB,GAAIgB,YAAYC,UAAU,GAAK,MAAO,CACpCH,OAAOI,YAAY,CAAGpB,aAAaqB,WAAW,CAC5CT,WACA,oBAAChB,gBAAQmB,WAEb,KAAO,CACLC,OAAOI,YAAY,CAAGpB,aAAasB,UAAU,CAACV,YAC9CI,OAAOI,YAAY,CAACf,MAAM,CAAC,oBAACT,gBAAQmB,WACtC,CAAC,AACH,KAAO,CACL,IAAMQ,YAAcC,OAAOC,GAAG,CAAGzB,aAAaK,MAAM,CAAGL,aAAa0B,OAAO,CAE3EH,YAAY,oBAAC3B,gBAAQmB,WAAcH,WACrC,CAAC,AACH,CAEA,GAAI,CAACI,OAAOW,sBAAsB,CAAE,CAClCtB,OAAO,CAAC,EACV,CAAC,AAED,gBAAsBuB,mBAAAA,iCAIrB,SAJqBA,aAAAA,WAAf,kBAAA,UAA0C,0CAC/C,GAAIjC,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU+B,SAAS,EAAG,CACnC/B,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAU+B,SAAS,EACrB,CAAC,WACH,UAJsBA,iCAOtB,gBAAsBC,QAAQvB,KAAU,SAAlBuB,+BAarB,SAbqBA,WAAAA,SAAf,kBAAA,SAAuBvB,KAAU,CAAiB,KAI/CC,UAKAK,oDARR,GAAIjB,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUgC,OAAO,EAAG,CACjChC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUgC,OAAO,CAACvB,MACpB,CAAC,AACOC,UAAcD,MAAdC,UAER,GAAIL,UAAY,GAAI,CAClBc,OAAOI,YAAY,CAACS,OAAO,EAC7B,KAAO,CACCjB,WAAaL,CAAAA,kBAAAA,mBAAAA,KAAAA,EAAAA,UAAWM,aAAa,CAAC,WAAYC,SAASD,aAAa,CAAC,SAE/Eb,aAAa8B,sBAAsB,CAAClB,WACtC,CAAC,WACH,UAbsBiB,+BAgBtB,gBAAsBE,MAAMzB,KAAU,SAAhByB,6BAKrB,SALqBA,SAAAA,OAAf,kBAAA,SAAqBzB,KAAU,CAAiB,0CACrD,GAAIX,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkC,KAAK,EAAG,CAC/BlC,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkC,KAAK,CAACzB,MAClB,CAAC,AACDD,OAAOC,kBACT,UALsByB"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/single-spa/index.ts"],"sourcesContent":["import './public-path';\nimport '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst { bootstrap, mount, unmount } = await import('./bootstrap');\n\nexport { bootstrap, mount, unmount };\n"],"names":["bootstrap","mount","unmount"],"mappings":"AAAA,MAAO,eAAgB,AACvB,OAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAsC,KAAA,MAAM,MAAM,CAAC,eAA3CA,UAA8B,KAA9BA,UAAWC,MAAmB,KAAnBA,MAAOC,QAAY,KAAZA,OAE1B,QAASF,SAAS,CAAEC,KAAK,CAAEC,OAAO,CAAG"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/single-spa/public-path.ts"],"sourcesContent":["if (window.__POWERED_BY_QIANKUN__) {\n __webpack_public_path__ = window.__INJECTED_PUBLIC_PATH_BY_QIANKUN__;\n}\n"],"names":["window","__POWERED_BY_QIANKUN__","__webpack_public_path__","__INJECTED_PUBLIC_PATH_BY_QIANKUN__"],"mappings":"AAAA,GAAIA,OAAOC,sBAAsB,CAAE,CACjCC,wBAA0BF,OAAOG,mCAAmC,AACtE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/site/app.tsx"],"sourcesContent":["import React from 'react';\nimport { RouterProvider } from 'react-router-dom';\nimport { RouterFragment, routerData, createRouter } from '../../components/app-router';\nimport Fallback from '../../components/fallback';\n\nconst App: React.FC = () => {\n return (\n <RouterFragment>\n <RouterProvider\n router={createRouter(routerData, {\n basename: programInfo.routeBaseName,\n window: window,\n })}\n fallbackElement={<Fallback />}\n />\n </RouterFragment>\n );\n};\n\nexport default App;\n"],"names":["React","RouterProvider","RouterFragment","routerData","createRouter","Fallback","App","router","basename","programInfo","routeBaseName","window","fallbackElement"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,cAAc,KAAQ,kBAAmB,AAClD,QAASC,cAAc,CAAEC,UAAU,CAAEC,YAAY,KAAQ,6BAA8B,AACvF,QAAOC,aAAc,2BAA4B,CAEjD,IAAMC,IAAgB,UAAM,CAC1B,OACE,oBAACJ,oBACC,oBAACD,gBACCM,OAAQH,aAAaD,WAAY,CAC/BK,SAAUC,YAAYC,aAAa,CACnCC,OAAQA,MACV,GACAC,gBAAiB,oBAACP,iBAI1B,CAEA,gBAAeC,GAAI"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/site/bootstrap.tsx"],"sourcesContent":["import React from 'react';\nimport { isFunction } from '@moneko/common';\nimport App from './app';\n\nconst appEntry: AppEntryMethods | null = APPENTRY ? require(APPENTRY) : null;\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst SafeReactDOM = require(ReactDOMPath);\n\nconst version = parseFloat(React.version);\nconst container = document.getElementById('root') as HTMLElement;\n\nif (version >= 18) {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n if (programInfo.renderMode === 'ssr') {\n window.rootInstance = SafeReactDOM.hydrateRoot(container, <App />);\n } else {\n window.rootInstance = SafeReactDOM.createRoot(container);\n window.rootInstance.render(<App />);\n }\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n} else {\n if (isFunction(appEntry?.bootstrap)) {\n appEntry?.bootstrap();\n }\n const render = module.hot ? SafeReactDOM.render : SafeReactDOM.hydrate;\n\n render(<App />, container);\n if (isFunction(appEntry?.mount)) {\n appEntry?.mount();\n }\n}\n"],"names":["React","isFunction","App","appEntry","APPENTRY","require","SafeReactDOM","ReactDOMPath","version","parseFloat","container","document","getElementById","bootstrap","programInfo","renderMode","window","rootInstance","hydrateRoot","createRoot","render","mount","module","hot","hydrate"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAASC,UAAU,KAAQ,gBAAiB,AAC5C,QAAOC,QAAS,OAAQ,CAExB,IAAMC,SAAmCC,SAAWC,QAAQD,UAAY,IAAI,CAG5E,IAAME,aAAeD,QAAQE,cAE7B,IAAMC,QAAUC,WAAWT,MAAMQ,OAAO,EACxC,IAAME,UAAYC,SAASC,cAAc,CAAC,QAE1C,GAAIJ,SAAW,GAAI,CACjB,GAAIP,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,GAAIC,YAAYC,UAAU,GAAK,MAAO,CACpCC,OAAOC,YAAY,CAAGX,aAAaY,WAAW,CAACR,UAAW,oBAACR,UAC7D,KAAO,CACLc,OAAOC,YAAY,CAAGX,aAAaa,UAAU,CAACT,WAC9CM,OAAOC,YAAY,CAACG,MAAM,CAAC,oBAAClB,UAC9B,CAAC,AACD,GAAID,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EAAG,CAC/BlB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EACjB,CAAC,AACH,KAAO,CACL,GAAIpB,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EAAG,CACnCV,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUU,SAAS,EACrB,CAAC,AACD,IAAMO,OAASE,OAAOC,GAAG,CAAGjB,aAAac,MAAM,CAAGd,aAAakB,OAAO,CAEtEJ,OAAO,oBAAClB,UAAQQ,WAChB,GAAIT,WAAWE,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EAAG,CAC/BlB,iBAAAA,kBAAAA,KAAAA,EAAAA,SAAUkB,KAAK,EACjB,CAAC,AACH,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/packages/site/index.ts"],"sourcesContent":["import '../../utils/refresh-rem';\nimport '../../styles/normalize.css';\n\nconst bootstrap = await import('./bootstrap');\n\nexport default bootstrap;\n"],"names":["bootstrap"],"mappings":"AAAA,MAAO,yBAA0B,AACjC,OAAO,4BAA6B,CAEpC,IAAMA,UAAY,MAAM,MAAM,CAAC,cAE/B,gBAAeA,SAAU"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/prefix/prefix-remote-react-refresh.ts"],"sourcesContent":["import ReactDOM from 'react-dom';\n\nexport const injectRemoteReactRefresh = () => {\n const {\n injectIntoGlobalHook,\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n } = require('react-refresh/cjs/react-refresh-runtime.development.js');\n\n injectIntoGlobalHook(window);\n window.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject(ReactDOM);\n};\n"],"names":["ReactDOM","injectRemoteReactRefresh","injectIntoGlobalHook","require","window","__REACT_DEVTOOLS_GLOBAL_HOOK__","inject"],"mappings":"AAAA,OAAOA,aAAc,WAAY,AAEjC,QAAO,IAAMC,yBAA2B,UAAM,CAC5C,IAAM,AACJC,qBAEEC,QAAQ,0DAFVD,qBAIFA,qBAAqBE,QACrBA,OAAOC,8BAA8B,CAACC,MAAM,CAACN,SAC/C,CAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/prefix/react-router-dom.js"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nconst ReactRouterDom = require('react-router-dom');\nconst Link = require('../react-router-dom/link').default;\nconst useNavigate = require('../react-router-dom/use-navgate').default;\nconst { useNavigate: useNavigateReactRouter, Link: LinkReactRouter, ...other } = ReactRouterDom;\n\nmodule.exports = {\n useNavigateForReactRouter: useNavigateReactRouter,\n useNavigate: useNavigate,\n LinkReactRouter: LinkReactRouter,\n Link: Link,\n ...other,\n};\n"],"names":["ReactRouterDom","require","Link","default","useNavigate","useNavigateReactRouter","LinkReactRouter","other","module","exports","useNavigateForReactRouter"],"mappings":"qyCACA,IAAMA,eAAiBC,QAAQ,oBAC/B,IAAMC,KAAOD,QAAQ,4BAA4BE,OAAO,CACxD,IAAMC,YAAcH,QAAQ,mCAAmCE,OAAO,CACtE,IAAQC,AAAaC,uBAA4DL,eAAzEI,YAAqCF,AAAMI,gBAA8BN,eAApCE,KAA0BK,+BAAUP,gBAAzEI,cAAqCF,QAE7CM,CAAAA,OAAOC,OAAO,CAAG,eACfC,0BAA2BL,uBAC3BD,YAAaA,YACbE,gBAAiBA,gBACjBJ,KAAMA,MACHK"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/react-router-dom/link.tsx"],"sourcesContent":["import React, { useMemo, type FC } from 'react';\nimport {\n Link as ReactRouterLink,\n useSearchParams,\n type LinkProps as ReactRouterLinkProps,\n type To,\n} from 'react-router-dom';\n\nexport interface LinkProps extends Omit<ReactRouterLinkProps, 'to'> {\n /** search保留字 */\n reserved?: string | string[];\n to: To | -1;\n}\n\nconst Link: FC<LinkProps> = ({ reserved, to, children, ...props }) => {\n const reservedWord = Array.from(\n new Set(['menuId', 'dynamicTitle'].concat(reserved || ''))\n ).filter(Boolean);\n const [search] = useSearchParams();\n const toUrl = useMemo(() => {\n if (to === -1) {\n return -1;\n }\n /** 提取保留字属性 */\n const nextSerach: Record<string, string> = {};\n\n search.forEach((val, key) => {\n if (reservedWord.includes(key)) {\n Object.assign(nextSerach, {\n [key]: val,\n });\n }\n });\n\n let entryUrl = to as string;\n const entrySearchIdx = (entryUrl as string).indexOf('?');\n\n if (entrySearchIdx !== -1) {\n const searchByToUrl = new URLSearchParams(entryUrl.slice(entrySearchIdx));\n\n searchByToUrl.forEach((val, key) => {\n Object.assign(nextSerach, {\n [key]: val,\n });\n });\n entryUrl = entryUrl.substring(0, entrySearchIdx);\n }\n const searchString = new URLSearchParams(nextSerach).toString();\n\n return searchString?.trim().length ? [entryUrl, searchString].join('?') : entryUrl;\n }, [reservedWord, search, to]);\n\n return (\n <ReactRouterLink {...props} to={toUrl as To}>\n {children}\n </ReactRouterLink>\n );\n};\n\nexport default Link;\n"],"names":["React","useMemo","Link","ReactRouterLink","useSearchParams","reserved","to","children","props","reservedWord","Array","from","Set","concat","filter","Boolean","search","toUrl","nextSerach","forEach","val","key","includes","Object","assign","entryUrl","entrySearchIdx","indexOf","searchByToUrl","URLSearchParams","slice","substring","searchString","toString","trim","length","join"],"mappings":"s8EAAA,OAAOA,OAASC,OAAO,KAAiB,OAAQ,AAChD,QACEC,QAAQC,eAAe,CACvBC,eAAe,KAGV,kBAAmB,CAQ1B,IAAMF,KAAsB,gBAA0C,KAAvCG,gBAAAA,SAAUC,UAAAA,GAAIC,gBAAAA,SAAaC,uCAA3BH,WAAUC,KAAIC,aAC3C,IAAME,aAAeC,MAAMC,IAAI,CAC7B,IAAIC,IAAI,CAAC,SAAU,eAAe,CAACC,MAAM,CAACR,UAAY,MACtDS,MAAM,CAACC,SACT,IAAiBX,gCAAAA,qBAAVY,OAAUZ,oBACjB,IAAMa,MAAQhB,QAAQ,UAAM,CAC1B,GAAIK,KAAO,CAAC,EAAG,CACb,MAAO,CAAC,CACV,CAAC,AAED,IAAMY,WAAqC,CAAC,EAE5CF,OAAOG,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAC3B,GAAIZ,aAAaa,QAAQ,CAACD,KAAM,CAC9BE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,CAAC,AACH,GAEA,IAAIK,SAAWnB,GACf,IAAMoB,eAAiB,AAACD,SAAoBE,OAAO,CAAC,KAEpD,GAAID,iBAAmB,CAAC,EAAG,CACzB,IAAME,cAAgB,IAAIC,gBAAgBJ,SAASK,KAAK,CAACJ,iBAEzDE,cAAcT,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAClCE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,GACAK,SAAWA,SAASM,SAAS,CAAC,EAAGL,eACnC,CAAC,AACD,IAAMM,aAAe,IAAIH,gBAAgBX,YAAYe,QAAQ,GAE7D,MAAOD,CAAAA,qBAAAA,sBAAAA,KAAAA,EAAAA,aAAcE,IAAI,GAAGC,MAAM,EAAG,CAACV,SAAUO,aAAa,CAACI,IAAI,CAAC,KAAOX,QAAQ,AACpF,EAAG,CAAChB,aAAcO,OAAQV,GAAG,EAE7B,OACE,oBAACH,4BAAoBK,OAAOF,GAAIW,QAC7BV,SAGP,CAEA,gBAAeL,IAAK"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/react-router-dom/use-navgate.ts"],"sourcesContent":["import {\n useNavigate as useNavigateReactRouter,\n useSearchParams,\n type NavigateOptions,\n type To,\n} from 'react-router-dom';\n\nconst useNavigate = (\n /** search保留字 */\n reserved?: string | string[]\n) => {\n const reservedWord = Array.from(\n new Set(['menuId', 'dynamicTitle'].concat(reserved || ''))\n ).filter(Boolean);\n const navigates = useNavigateReactRouter();\n const [search] = useSearchParams();\n\n const navigate = (to: To | -1, options?: NavigateOptions) => {\n if (to === -1) {\n navigates(-1);\n return;\n }\n /** 提取保留字属性 */\n const nextSerach: Record<string, string> = {};\n\n search.forEach((val, key) => {\n if (reservedWord.includes(key)) {\n Object.assign(nextSerach, {\n [key]: val,\n });\n }\n });\n\n let entryUrl = to as string;\n const entrySearchIdx = (entryUrl as string).indexOf('?');\n\n if (entrySearchIdx !== -1) {\n const searchByToUrl = new URLSearchParams(entryUrl.slice(entrySearchIdx));\n\n searchByToUrl.forEach((val, key) => {\n Object.assign(nextSerach, {\n [key]: val,\n });\n });\n entryUrl = entryUrl.substring(0, entrySearchIdx);\n }\n\n const searchObj = new URLSearchParams(nextSerach);\n const searchString = searchObj.toString();\n const toUrl = searchString?.trim().length ? [entryUrl, searchString].join('?') : entryUrl;\n\n navigates(toUrl, options);\n };\n\n return navigate;\n};\n\nexport default useNavigate;\n"],"names":["useNavigate","useNavigateReactRouter","useSearchParams","reserved","reservedWord","Array","from","Set","concat","filter","Boolean","navigates","search","navigate","to","options","nextSerach","forEach","val","key","includes","Object","assign","entryUrl","entrySearchIdx","indexOf","searchByToUrl","URLSearchParams","slice","substring","searchObj","searchString","toString","toUrl","trim","length","join"],"mappings":"8+CAAA,OACEA,eAAeC,sBAAsB,CACrCC,eAAe,KAGV,kBAAmB,CAE1B,IAAMF,YAAc,SAElBG,SACG,CACH,IAAMC,aAAeC,MAAMC,IAAI,CAC7B,IAAIC,IAAI,CAAC,SAAU,eAAe,CAACC,MAAM,CAACL,UAAY,MACtDM,MAAM,CAACC,SACT,IAAMC,UAAYV,yBAClB,IAAiBC,gCAAAA,qBAAVU,OAAUV,oBAEjB,IAAMW,SAAW,SAACC,GAAaC,QAA8B,CAC3D,GAAID,KAAO,CAAC,EAAG,CACbH,UAAU,CAAC,GACX,MACF,CAAC,AAED,IAAMK,WAAqC,CAAC,EAE5CJ,OAAOK,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAC3B,GAAIf,aAAagB,QAAQ,CAACD,KAAM,CAC9BE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,CAAC,AACH,GAEA,IAAIK,SAAWT,GACf,IAAMU,eAAiB,AAACD,SAAoBE,OAAO,CAAC,KAEpD,GAAID,iBAAmB,CAAC,EAAG,CACzB,IAAME,cAAgB,IAAIC,gBAAgBJ,SAASK,KAAK,CAACJ,iBAEzDE,cAAcT,OAAO,CAAC,SAACC,IAAKC,IAAQ,CAClCE,OAAOC,MAAM,CAACN,WACZ,mBAACG,IAAMD,KAEX,GACAK,SAAWA,SAASM,SAAS,CAAC,EAAGL,eACnC,CAAC,AAED,IAAMM,UAAY,IAAIH,gBAAgBX,YACtC,IAAMe,aAAeD,UAAUE,QAAQ,GACvC,IAAMC,MAAQF,CAAAA,qBAAAA,sBAAAA,KAAAA,EAAAA,aAAcG,IAAI,GAAGC,MAAM,EAAG,CAACZ,SAAUQ,aAAa,CAACK,IAAI,CAAC,KAAOb,QAAQ,CAEzFZ,UAAUsB,MAAOlB,QACnB,EAEA,OAAOF,QACT,CAEA,gBAAeb,WAAY"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["import { createElement, type FC, lazy, type ReactNode } from 'react';\nimport { isUndefined } from '@moneko/common';\nimport { pathToRegexp } from 'path-to-regexp';\nimport { Outlet } from 'react-router-dom';\nimport type { KeepAliveProps } from 'react-activation';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Any = any;\n// eslint-disable-next-line no-unused-vars\ntype MDXComponents = Record<string, FC<Any>>;\nexport interface RouterProps {\n /** 菜单id */\n key: string;\n alive?: KeepAliveProps | boolean;\n /** 菜单图标 */\n icon?: ReactNode;\n dynamicTitle?: string;\n /** 菜单名 */\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n /** 菜单父id */\n parentId?: string;\n root?: boolean;\n path?: string;\n element?: Any;\n fallback?: ReactNode;\n /** 可否关闭标签 */\n closable?: boolean;\n /** 子菜单 */\n children?: RouterProps[];\n props?: {\n path: string;\n components?: MDXComponents;\n [key: string]: Any;\n };\n}\nexport function lazyImport(filePath: string) {\n return lazy(function () {\n return new Promise(function (resolve) {\n return import(\n /* webpackChunkName: \"[request]\" */\n '@/pages/' + filePath.replace(/:/g, '$').replace(/^\\//, '')\n )\n .then(resolve)\n .catch(function () {\n return Promise.resolve({\n default: Outlet,\n });\n });\n });\n });\n}\n\nexport interface ExampleModule {\n code: string;\n title?: string;\n description?: string | null;\n noInline: boolean;\n language: never;\n}\nexport type MyPkg = RouterProps & {\n type: string;\n title: string;\n subtitle?: string;\n icon?: string;\n};\nexport const myPkgs: MyPkg[] = [];\nexport const myDemoKv: Record<string, ExampleModule[]> = {};\nexport const mdxComponents: MDXComponents = {};\n\n// function getLastJsx(str: string) {\n// const matchArr = str.match(\n// /<(\\w+)(?:(?!\\/>|>)[\\s\\S])*?(?:(\\/>|>((?:(?!<\\1(?:(?!\\/>|>|\\s)[\\s\\S])*?(?:\\/\\s*)?>)[\\s\\S])*?)<\\/\\1\\s*>))/gms\n// );\n\n// if (matchArr !== null) {\n// return matchArr[matchArr.length - 1];\n// }\n// return '';\n// }\nfunction heading(p: Any, level: number) {\n return createElement(`h${level}`, {\n 'data-prefix': '# ',\n role: 'heading',\n 'aria-level': level,\n ...p,\n });\n}\nfunction pre(p: Any) {\n const c = createElement('code', p);\n\n if (p.className) {\n return createElement(\n mdxComponents.CodeBlock || 'pre',\n { lang: p.className.replace('language-', '').replace(/ .*$/, '') },\n c\n );\n }\n return c;\n}\nif (APPTYPE === 'library') {\n const models = require.context('@pkg/', true, /README\\.mdx?$/);\n let overrideComps: MDXComponents = {};\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n overrideComps = require('@/components/components').default;\n } catch (error) {\n /* empty */\n }\n\n Object.assign(mdxComponents, {\n h1: function (p: Any) {\n return heading(p, 1);\n },\n h2: function (p: Any) {\n return heading(p, 2);\n },\n h3: function (p: Any) {\n return heading(p, 3);\n },\n h4: function (p: Any) {\n return heading(p, 4);\n },\n h5: function (p: Any) {\n return heading(p, 5);\n },\n h6: function (p: Any) {\n return heading(p, 6);\n },\n pre: pre,\n ...overrideComps,\n });\n\n models.keys()?.forEach(function (item: string) {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n const { basic, default: Child } = models(item);\n\n myPkgs.push({\n key: key,\n path: key,\n element: Child,\n ...basic,\n props: {\n components: mdxComponents,\n path: key,\n },\n });\n });\n\n const allDemo = require.context('@pkg/', true, /\\/examples\\/(.+)\\.mdx$/);\n\n allDemo.keys()?.forEach(function (e: string) {\n const k = e.substring(2),\n arr = k.split('/'),\n name = arr[0];\n\n if (!Array.isArray(myDemoKv[name])) {\n myDemoKv[name] = [];\n }\n\n const exampleStr = allDemo(e);\n const m = exampleStr.matchAll(/```([^\\r\\n]+)?\\r?\\n([\\s\\S]*?)\\r?\\n```/g);\n let code = '',\n language = '';\n let description: string | null = null;\n\n for (const match of m) {\n language = match[1] || 'tsx';\n code = match[2];\n description = exampleStr.replace(match[0], '');\n }\n\n myDemoKv[name].push({\n language: language as never,\n code: code,\n description: description,\n title: arr.pop()?.replace(/\\.mdx$/, ''),\n noInline: /render\\([^\\\\)]*\\);?(?=\\s*$)/.test(code),\n });\n });\n}\n\nlet list: RouterProps[] = [];\n\ntry {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n list = require('@/router').default;\n} catch (error) {\n // eslint-disable-next-line no-console\n console.info('自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]', error);\n}\nfunction prefixKey(path?: string, prev?: string) {\n // eslint-disable-next-line no-undefined\n return [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n}\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nfunction pathToTree(input: string[]) {\n const root: RouterProps[] = [];\n\n for (let i = 0; i < input.length; i++) {\n const chain = input[i].split('/').slice(0, -1);\n let curr = root;\n\n for (let j = 0; j < chain.length; j++) {\n let pathRule = chain[j];\n\n if (pathRule === '') {\n continue;\n }\n if (pathRule === '.') {\n pathRule = '*';\n }\n const lastHierarchy = curr;\n\n // 遍历root是否已有该层级\n if (Array.isArray(curr)) {\n for (let k = 0; k < curr.length; k++) {\n if (curr[k].path === pathRule) {\n curr = curr[k].children as RouterProps[];\n break;\n }\n }\n }\n\n if (lastHierarchy === curr) {\n let key: string = j === chain.length - 1 ? input[i] : chain.slice(0, j + 1).join('/') + '/';\n\n // 截取最后一个 / 前面的数据\n key = key.substring(2, key.lastIndexOf('/'));\n\n const node: RouterProps = {\n key: key,\n path: pathRule,\n i18n: 'route-' + key,\n children: [],\n alive: false,\n element: lazyImport(key) as unknown as ReactNode,\n hideMenu: key.includes(':'),\n props: { path: key },\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) {\n curr.push(node);\n }\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n}\nconst routers: RouterProps[] = pathToTree(\n models.keys().map(function (item: string) {\n return item.replace(/\\$/g, ':');\n })\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find(function (item) {\n return item.path === child.path;\n });\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = prefixKey(_.path, prev);\n if (isUndefined(_.i18n)) {\n _.i18n = 'route-' + _.key;\n }\n if (isUndefined(_.alive)) {\n _.alive = false;\n }\n if (isUndefined(_.element) && child.element) {\n _.element = child.element;\n _.props = child.props;\n }\n if (isUndefined(_.hideMenu)) {\n _.hideMenu = _.path === '*' ? true : _.key.includes(':');\n }\n\n Object.assign(_, {\n ...child,\n ..._,\n });\n if (child.children) {\n if (!_.children && Array.isArray(child.children)) {\n _.children = child.children;\n }\n child.children?.forEach(function (childData) {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nfunction findLogin(rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] {\n return rs\n .map(function (e) {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = prefixKey(e.path, prevKey);\n }\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (_.path === '*' && typeof _.hideMenu === 'undefined') {\n _.hideMenu = true;\n }\n if (Array.isArray(_.children)) {\n // eslint-disable-next-line no-undefined\n _.children = _.children.length ? findLogin(_.children, onlyLogin, _.key) : undefined;\n }\n if (!_.element) {\n _.element = lazyImport(_.key) as unknown as ReactNode;\n _.props = { path: _.key };\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n}\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach(function (item: RouterProps) {\n merge(_router, item);\n});\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport function matchUtil(pathname: string) {\n let p: RouterProps = { key: '' };\n\n function findPath(rs: RouterProps[]) {\n rs.forEach(function (item) {\n if (item.path && item.path !== '*' && item.key) {\n try {\n if (pathToRegexp(item.key).exec(pathname.substring(1) as string)) {\n p = item;\n return;\n }\n } catch (error) {\n /* empty */\n }\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n }\n\n findPath(router);\n return p;\n}\n"],"names":["createElement","lazy","isUndefined","pathToRegexp","Outlet","lazyImport","filePath","Promise","resolve","replace","then","catch","default","myPkgs","myDemoKv","mdxComponents","heading","p","level","role","pre","c","className","CodeBlock","lang","APPTYPE","models","allDemo","require","context","overrideComps","error","Object","assign","h1","h2","h3","h4","h5","h6","keys","forEach","item","key","substring","split","slice","join","basic","Child","push","path","element","props","components","e","arr","k","name","Array","isArray","exampleStr","m","matchAll","code","language","description","match","title","pop","noInline","test","list","console","info","prefixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","children","lastIndexOf","node","i18n","alive","hideMenu","includes","routers","map","merge","source","child","_","find","childData","findLogin","rs","onlyLogin","prevKey","_router","onlyLoginRouter","router","matchUtil","pathname","findPath","exec"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const translatFunction = (func: string, val?: number | string | any): string => {\n try {\n if (typeof val !== 'undefined') {\n return eval(func);\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(error);\n }\n return func;\n};\n\nexport type WatermarkParamsType = {\n text: string;\n x?: number;\n y?: number;\n width?: number;\n height?: number;\n fontSize?: number;\n angle?: number;\n opacity?: number;\n color?: string;\n};\n\nexport const watermark = ({\n text,\n x = 19.5,\n y = 55,\n width = 100,\n height = 100,\n fontSize = 14,\n angle = -45,\n opacity = 0.1,\n color = '#000',\n}: WatermarkParamsType): string => {\n const svgStr =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"' +\n width +\n '\" height=\"' +\n height +\n '\"><g><title>Layer 1</title><text x=\"' +\n x +\n '\" y=\"' +\n y +\n '\" textAnchor=\"middle\" dominantBaseline=\"middle\" stroke-opacity=\"' +\n opacity +\n '\" stroke=\"' +\n color +\n '\" fill=\"none\" transform=\"rotate(' +\n angle +\n ' ' +\n width / 2 +\n ',' +\n height / 2 +\n ')\" font-size=\"' +\n fontSize +\n '\" font-family=\"-apple-system, BlinkMacSystemFont, ' +\n \"'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans'\" +\n '\">' +\n text +\n '</text></g></svg>';\n\n return 'data:image/svg+xml;base64,' + window.btoa(decodeURIComponent(encodeURIComponent(svgStr)));\n};\n"],"names":["translatFunction","func","val","eval","error","console","warn","watermark","text","x","y","width","height","fontSize","angle","opacity","color","svgStr","window","btoa","decodeURIComponent","encodeURIComponent"],"mappings":"AACA,OAAO,IAAMA,iBAAmB,SAACC,KAAcC,IAAwC,CACrF,GAAI,CACF,GAAI,OAAOA,MAAQ,YAAa,CAC9B,OAAOC,KAAKF,KACd,CAAC,AACH,CAAE,MAAOG,MAAO,CAEdC,QAAQC,IAAI,CAACF,MACf,CACA,OAAOH,IACT,CAAE,AAcF,QAAO,IAAMM,UAAY,eAUU,KATjCC,WAAAA,oBACAC,EAAAA,oBAAI,6BACJC,EAAAA,oBAAI,+BACJC,MAAAA,4BAAQ,qCACRC,OAAAA,8BAAS,wCACTC,SAAAA,kCAAW,sCACXC,MAAAA,4BAAQ,CAAC,qCACTC,QAAAA,gCAAU,qCACVC,MAAAA,4BAAQ,oBAER,IAAMC,OACJ,kDACAN,MACA,aACAC,OACA,uCACAH,EACA,QACAC,EACA,mEACAK,QACA,aACAC,MACA,mCACAF,MACA,IACAH,MAAQ,EACR,IACAC,OAAS,EACT,iBACAC,SACA,qDACA,8NACA,KACAL,KACA,oBAEF,MAAO,6BAA+BU,OAAOC,IAAI,CAACC,mBAAmBC,mBAAmBJ,SAC1F,CAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/refresh-rem.ts"],"sourcesContent":["(function (doc, win) {\n function refreshRem() {\n const docEl = doc.documentElement;\n const clientWidth = docEl.clientWidth || doc.body.clientWidth;\n const _designSize = clientWidth <= 375 ? 375 : programInfo.designSize;\n let unitSize = clientWidth;\n\n if (clientWidth <= 375) {\n unitSize = clientWidth;\n } else if (clientWidth <= programInfo.designSize) {\n unitSize = _designSize;\n } else {\n unitSize = clientWidth;\n }\n // 窗口大于设计尺寸的时候,使用窗口大小\n // const unitSize = clientWidth > designSize ? designSize : clientWidth;\n // const rootSize = (16 / designSize) * unitSize + 'px';\n // 保持设计比例\n const rootSize = (16 / _designSize) * unitSize + 'px';\n\n if (rootSize !== docEl.style.fontSize) {\n docEl.style.fontSize = rootSize;\n }\n }\n refreshRem();\n if ('addEventListener' in doc) {\n const resizeEvt = 'orientationchange' in win ? 'orientationchange' : 'resize';\n\n win.addEventListener(resizeEvt, refreshRem, false);\n }\n /**\n * 判断 window 及元素节点对象下是否存在 scrollTo 属性,\n * 不存在则自定义,这样就可以解决 IE 下不兼容 scrollTo 的问题\n */\n\n if (!window.scrollTo) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n window.scrollTo = function (option: any) {\n window.scrollLeft = option.left;\n window.scrollTop = option.top;\n };\n }\n\n if (!document.body.scrollTo) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n Element.prototype.scrollTo = function (option: any) {\n this.scrollLeft = option.left;\n this.scrollTop = option.top;\n };\n }\n})(document, window);\n"],"names":["doc","win","refreshRem","docEl","documentElement","clientWidth","body","_designSize","programInfo","designSize","unitSize","rootSize","style","fontSize","resizeEvt","addEventListener","window","scrollTo","option","scrollLeft","left","scrollTop","top","document","Element","prototype"],"mappings":"AAAC,CAAA,SAAUA,GAAG,CAAEC,GAAG,CAAE,KACVC,WAAT,SAASA,YAAa,CACpB,IAAMC,MAAQH,IAAII,eAAe,CACjC,IAAMC,YAAcF,MAAME,WAAW,EAAIL,IAAIM,IAAI,CAACD,WAAW,CAC7D,IAAME,YAAcF,aAAe,IAAM,IAAMG,YAAYC,UAAU,CACrE,IAAIC,SAAWL,YAEf,GAAIA,aAAe,IAAK,CACtBK,SAAWL,WACb,MAAO,GAAIA,aAAeG,YAAYC,UAAU,CAAE,CAChDC,SAAWH,WACb,KAAO,CACLG,SAAWL,WACb,CAAC,AAKD,IAAMM,SAAW,AAAC,GAAKJ,YAAeG,SAAW,KAEjD,GAAIC,WAAaR,MAAMS,KAAK,CAACC,QAAQ,CAAE,CACrCV,MAAMS,KAAK,CAACC,QAAQ,CAAGF,QACzB,CAAC,AACH,EACAT,aACA,GAAI,qBAAsBF,IAAK,CAC7B,IAAMc,UAAY,sBAAuBb,IAAM,oBAAsB,QAAQ,CAE7EA,IAAIc,gBAAgB,CAACD,UAAWZ,WAAY,KAAK,CACnD,CAAC,AAMD,GAAI,CAACc,OAAOC,QAAQ,CAAE,CAEpBD,OAAOC,QAAQ,CAAG,SAAUC,MAAW,CAAE,CACvCF,OAAOG,UAAU,CAAGD,OAAOE,IAAI,AAC/BJ,CAAAA,OAAOK,SAAS,CAAGH,OAAOI,GAAG,AAC/B,CACF,CAAC,AAED,GAAI,CAACC,SAASjB,IAAI,CAACW,QAAQ,CAAE,CAE3BO,QAAQC,SAAS,CAACR,QAAQ,CAAG,SAAUC,MAAW,CAAE,CAClD,IAAI,CAACC,UAAU,CAAGD,OAAOE,IAAI,AAC7B,CAAA,IAAI,CAACC,SAAS,CAAGH,OAAOI,GAAG,AAC7B,CACF,CAAC,AACH,CAAA,EAAGC,SAAUP"}