UNPKG

@10yun/open-sdk

Version:

开放平台接入sdk

93 lines (89 loc) 3.01 kB
import './style.js'; import { routeParseQiankun } from '../common/router.js'; /** * 配置 */ const envArr = import.meta.env; export function loadInitConfig() { // const envArr = process.env || {}; // 合并主应用_SY_API_BASE_URL_ const last_api_base_url = window._SY_API_BASE_URL_ || envArr.VITE_SY_API_URL; // 合并主应用_项目接入id const lastAppProjectSign = window['SY-APP-PROJECT-SIGN'] || envArr.VITE_SY_CONNECT_PSIGN; // 合并主应用_应用接入id const lastAppConnectId = window['SY-APP-CONNECT-ID'] || envArr.VITE_SY_CONNECT_APPID; // 合并主应用_应用接入role const lastAppConnectRole = window['SY-APP-CONNECT-ROLE'] || envArr.VITE_SY_CONNECT_ROLE; // 合并主应用_api_flag const last_open_api_flag = window._SY_OPEN_API_FLAG_ || {}; // 合并主应用_api_auth const last_open_api_auth = window._SY_OPEN_API_AUTH_ || {}; /** * 产品信息 */ const last_product_title = envArr.VITE_SY_PRODUCT_TITLE || 'ShiyunProduct'; const last_product_sign = envArr.VITE_SY_PRODUCT_SIGN || 'ShiyunProduct'; const last_vers_alone = envArr.CICD_BUILD_DOMAIN_ALONE || 'off'; return { syProductAlone: last_vers_alone, syProductTitle: last_product_title, syProductSign: last_product_sign, /** * */ syOpenApiFlag: last_open_api_flag, syOpenApiAuth: last_open_api_auth, // syAppUrlBase: lastAppUrlBase, // syAppUrlPay: lastAppUrlPay, // syAppUrlFile: lastAppUrlFile, syApiBaseUrl: last_api_base_url, syAppProjectSign: lastAppProjectSign, syAppConnectRole: lastAppConnectRole, syAppConnectId: lastAppConnectId /** * */ }; } /** * 语言 */ // 获取所有语言文件的路径 const language_glob = import.meta.glob('@/language/modules/**/*.json'); // 语言文件的存储 const language_messages = {}; // 动态加载语言文件 export async function loadLocaleMessages(locale) { if (!language_messages[locale]) { language_messages[locale] = {}; for (const path in language_glob) { if (path.includes(`/${locale}.json`)) { const module = await language_glob[path](); if (module.default) { Object.assign(language_messages[locale], module.default, {}); // console.log(module.default, path, language_messages[locale]); } } } } return language_messages[locale]; } /** * 路由 */ const views_glob = import.meta.glob('@/views/**/*.vue'); const views_path = '/src/views/'; export function loadInitRouter(routes, yyMenuArr) { let last_routes = routeParseQiankun(routes, [...yyMenuArr]); // https://github.com/rollup/plugins/tree/master/packages/dynamic-import-vars#limitations // return () => import(/* @vite-ignore */ itemPath); last_routes.forEach((item, index) => { if (item.component_str) { let globPath = views_path + item.component_str + '.vue'; if (views_glob[globPath]) { item.component = views_glob[globPath]; } } }); return last_routes; }