UNPKG

@wufengteam/inputs

Version:

平台提供的右侧属性编辑器,需要在主工程中注册

81 lines (80 loc) 2.85 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.buildPcUrl = buildPcUrl; exports.checkDomain = checkDomain; exports.isJSONString = void 0; exports.isPlainObject = isPlainObject; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } /* eslint-disable no-underscore-dangle */ var _toString = Object.prototype.toString; /** * 判断是否是一个普通对象 * @param obj 任意值 * @returns boolean */ function isPlainObject(obj) { return _toString.call(obj) === '[object Object]'; } /** * 判断是否json字符串 * @param str 任意值 * @returns boolean */ var isJSONString = exports.isJSONString = function isJSONString(str) { if (typeof str === 'string') { try { var obj = JSON.parse(str); if (_typeof(obj) === 'object' && obj) { return true; } return false; } catch (e) { return false; } } return false; }; /** * domain 判断 */ function checkDomain() { var ipReg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/; var isValidIP = ipReg.test(document.domain); return !isValidIP; } /** * 是否应用渲染引擎预览地址 * 应用预览(非门户)地址-携带/lcdp-app * @param {pageUrl} pageUrl 预览地址 * @return 是否应用渲染引擎预览地址 */ var isLcdpWeb = function isLcdpWeb(pageUrl) { return pageUrl && pageUrl.includes('/lcdp-app'); }; /** * 构造 PC 端预览地址 * * @param {UrlData} urlData 地址信息 * @param {string} appId 应用 ID * @param {Object?} selectedPage 当前编辑的页面 * @param {opsIsShow} opsIsShow 是否显示运维中心菜单 * @param {opsIsShow} userInfo 用户信息 * @return {string} 预览地址 */ function buildPcUrl(_ref) { var urlData = _ref.urlData, appId = _ref.appId, selectedPage = _ref.selectedPage; if (!urlData.portalUrl && !urlData.webUrl) { return ''; } var pageUrl = checkDomain() && urlData.domainWebUrl ? urlData.domainWebUrl : urlData.webUrl; var pagePath = selectedPage && selectedPage.pagePath ? selectedPage.pagePath : '/'; // 在基础中心中的地址 var basicPath = selectedPage && selectedPage.basicPath ? selectedPage.basicPath : '/'; // 零代码里暂未用到这个 // const opsIsShowEncode = opsIsShow ? `&opsIsShow=${encrypt(`${appId}_${userInfo?.userName}`)}` : ''; return isLcdpWeb(pageUrl) ? "".concat(pageUrl, "#").concat(pagePath, "?appId=").concat(appId, "&layout=BaseLayout") : "".concat(pageUrl, "#").concat(basicPath); }