UNPKG

ze-react-component-library

Version:
869 lines (731 loc) 32.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; require("antd/lib/button/style"); var _button = _interopRequireDefault(require("antd/lib/button")); require("antd/lib/menu/style"); var _menu = _interopRequireDefault(require("antd/lib/menu")); require("antd/lib/dropdown/style"); var _dropdown = _interopRequireDefault(require("antd/lib/dropdown")); require("antd/lib/tag/style"); var _tag = _interopRequireDefault(require("antd/lib/tag")); require("antd/lib/tooltip/style"); var _tooltip = _interopRequireDefault(require("antd/lib/tooltip")); require("antd/lib/badge/style"); var _badge = _interopRequireDefault(require("antd/lib/badge")); var _react = _interopRequireWildcard(require("react")); var _zeroetpApiSdk = require("zeroetp-api-sdk"); var _hooks = require("@umijs/hooks"); var _icons = require("@ant-design/icons"); var _Entity = _interopRequireDefault(require("../components/Entity")); var _util = require("../util"); var _request = require("../request"); var _PropertyFilter = _interopRequireDefault(require("../components/PropertyFilter")); var _SimilarWords = _interopRequireDefault(require("./SimilarWords")); var _useLocale = _interopRequireDefault(require("../hooks/useLocale")); require("./index.less"); var _useFrontConfig = require("../hooks/useFrontConfig"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } var __assign = void 0 && (void 0).__assign || function () { __assign = Object.assign || function (t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) { if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } } return t; }; return __assign.apply(this, arguments); }; var __rest = void 0 && (void 0).__rest || function (s, e) { var t = {}; for (var p in s) { if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; } if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; var __spreadArray = void 0 && (void 0).__spreadArray || function (to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) { to[j] = from[i]; } return to; }; var setPropertySchemaID = function setPropertySchemaID(schema, property) { if (property && !property.schemaID) { property.schemaID = schema === null || schema === void 0 ? void 0 : schema._id; } return property; }; var findChainProperty = function findChainProperty(_schema, _k) { var propChain = []; var finalProperty; var schema = _schema; _k.split("_").forEach(function (p, i) { var _a; var isLast = i > 0 && i === _k.split("_").length - 1; var property = schema === null || schema === void 0 ? void 0 : schema.properties.find(function (d) { return d.name === p; }); setPropertySchemaID(schema, property); // 如果最后一个是名称属性则不展示 if (property) { schema = property.schema; if (isLast) { if (!(property.is_name || ((_a = property.ui) === null || _a === void 0 ? void 0 : _a.name)) && property.type !== "ID") { propChain.push(p); finalProperty = property; } } else { propChain.push(p); finalProperty = property; } } else { propChain.push(p); finalProperty = property; } }); return { propChain: propChain, finalProperty: finalProperty, schema: schema }; }; var getNewQuery = function getNewQuery(_a) { var logicform = _a.logicform, _queryKey = _a.queryKey, showKey = _a.showKey, v = _a.value, prop = _a.prop; var newLF = JSON.parse(JSON.stringify(logicform)); newLF.query = (0, _util.unnormalizeQuery)(newLF.query, true); (0, _util.filterValueToLogicformQuery)({ queryKey: _queryKey, v: v, newLF: newLF, property: prop }); if (!v) { delete newLF.query[_queryKey]; } else { var prefix = _queryKey.split(showKey)[0] || ""; var val = newLF.query[_queryKey]; // 空值{$exists: false}的情况 var valIsNullQuery = (0, _util.isNullQuery)(JSON.stringify(val)); var queryKey = prefix + showKey; // object类型,搜索的其实是名称 if (prop.primal_type === "object" && queryKey.endsWith(prop.name) && prop.schema && !valIsNullQuery) { var nameProps = (0, _zeroetpApiSdk.getNameProperty)(prop.schema); queryKey = [queryKey, nameProps.name].filter(function (f) { return f; }).join("_"); } // name类型 if (prop.is_name && !queryKey.endsWith(prop.name) && !valIsNullQuery) { queryKey = [queryKey, prop.name].join("_"); } if (queryKey !== _queryKey) { var val_1 = newLF.query[_queryKey]; delete newLF.query[_queryKey]; newLF.query[queryKey] = val_1; } } return newLF.query; }; var CustomBadge = function CustomBadge(_a) { var _b, _c, _d, _e, _f; var $entityQuery = _a.$entityQuery, _g = _a.queryKey, queryKey = _g === void 0 ? "" : _g, logicform = _a.logicform, showKey = _a.showKey, text = _a.text, value = _a.value, mode = _a.mode, property = _a.property, onQueryChange = _a.onQueryChange, disableFilter = _a.disableFilter, props = __rest(_a, ["$entityQuery", "queryKey", "logicform", "showKey", "text", "value", "mode", "property", "onQueryChange", "disableFilter"]); var t = (0, _useLocale.default)().t; var notEntity = (property === null || property === void 0 ? void 0 : property.primal_type) !== "object" || !$entityQuery; var _confirm = function confirm(v) { onQueryChange === null || onQueryChange === void 0 ? void 0 : onQueryChange(getNewQuery({ logicform: logicform, queryKey: queryKey, showKey: showKey, value: v, prop: property })); }; // 获取entity var data = (0, _hooks.useRequest)(function () { if (notEntity) { return Promise.resolve(null); } var lf = { schema: $entityQuery.schema, query: $entityQuery.query }; if ($entityQuery.entity_id) { lf.query._id = $entityQuery.entity_id; } return (0, _request.requestLogicform)(lf); }, { refreshDeps: [JSON.stringify($entityQuery), notEntity] }).data; var entityArr = data === null || data === void 0 ? void 0 : data.result; var idProp = data ? (0, _zeroetpApiSdk.getIDProperty)(data === null || data === void 0 ? void 0 : data.schema) : undefined; var nameProp = data ? (0, _zeroetpApiSdk.getNameProperty)(data === null || data === void 0 ? void 0 : data.schema) : undefined; var showProp = nameProp || idProp; // object类型会省略id var isObject = ((_c = (_b = data === null || data === void 0 ? void 0 : data.columnProperties) === null || _b === void 0 ? void 0 : _b.find(function (d) { return queryKey.endsWith(d.name); })) === null || _c === void 0 ? void 0 : _c.primal_type) === "object"; var isId = idProp && queryKey.endsWith(idProp.name); var isName = (_e = (_d = data === null || data === void 0 ? void 0 : data.columnProperties) === null || _d === void 0 ? void 0 : _d.find(function (d) { return queryKey.endsWith(d.name); })) === null || _e === void 0 ? void 0 : _e.is_name; var renderEntity = function renderEntity(entity, showID) { if (entity && _typeof(entity) === "object" && showProp.type === "object" && showProp.schema) { var show = showID ? (0, _zeroetpApiSdk.getIDProperty)(showProp.schema) : (0, _zeroetpApiSdk.getNameProperty)(showProp.schema) || (0, _zeroetpApiSdk.getIDProperty)(showProp.schema); return entity[show.name]; } return entity; }; var finalText; if ((entityArr === null || entityArr === void 0 ? void 0 : entityArr.length) > 0 && (isObject || isName || isId)) { finalText = /*#__PURE__*/_react.default.createElement("span", null, showKey + "\uFF1A ", entityArr === null || entityArr === void 0 ? void 0 : entityArr.map(function (entity, i) { return /*#__PURE__*/_react.default.createElement(_Entity.default, { key: String(i), property: { schema: data.schema, ref: data.schema._id, name: data.schema.name, type: "object", primal_type: "object" }, entityIDProperty: idProp, entityNameProperty: nameProp, entity: entity }, renderEntity(entity === null || entity === void 0 ? void 0 : entity[showProp === null || showProp === void 0 ? void 0 : showProp.name]), mode === "verbose" ? "(" + renderEntity(entity === null || entity === void 0 ? void 0 : entity[idProp === null || idProp === void 0 ? void 0 : idProp.name], true) + ")" : "", i === entityArr.length - 1 ? "" : ","); })); } else { finalText = /*#__PURE__*/_react.default.createElement("span", null, showKey + "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, _typeof(value) === "object" ? (0, _util.basicValueDisplay)((value === null || value === void 0 ? void 0 : value.$eq) || (value === null || value === void 0 ? void 0 : value.$ne) || ((_f = value === null || value === void 0 ? void 0 : value.$in) === null || _f === void 0 ? void 0 : _f.map(function (m) { return (0, _util.basicValueDisplay)(m); }).join(" , ")), t) : (0, _util.basicValueDisplay)(value, t))); } var filter = (0, _util.logicformValueToColumnFilter)(value, showProp, null); var selectedKeys = filter instanceof Array ? filter : [filter]; if (notEntity) { var filter_1 = (0, _util.logicformValueToColumnFilter)(value, property, null); var selectedKeys_1 = filter_1 instanceof Array ? filter_1 : [filter_1]; // @ts-ignore if (property && !property.schemaID) { // @ts-ignore property.schemaID = $entityQuery === null || $entityQuery === void 0 ? void 0 : $entityQuery.schema; } return /*#__PURE__*/_react.default.createElement(_badge.default, __assign({}, props, { text: property && !disableFilter ? /*#__PURE__*/_react.default.createElement(_PropertyFilter.default, { property: property, selectedKeys: selectedKeys_1, displayText: text, confirm: function confirm(v) { _confirm(v); } }) : text })); } return /*#__PURE__*/_react.default.createElement(_badge.default, __assign({}, props, { text: showProp && !disableFilter ? /*#__PURE__*/_react.default.createElement(_PropertyFilter.default, { property: showProp, key: showKey, selectedKeys: selectedKeys, displayText: finalText, confirm: function confirm(v) { _confirm(v); } }) : finalText })); }; /** * 注意,ZELogicformVisualizer从2022年2月8日开始只接受norm后的logicform */ var ZELogicformVisualizer = function ZELogicformVisualizer(_a) { var initLogicform = _a.logicform, badgeColor = _a.badgeColor, _b = _a.display, display = _b === void 0 ? {} : _b, _c = _a.mode, mode = _c === void 0 ? "normal" : _c, _d = _a.filters, filters = _d === void 0 ? {} : _d, onQueryChange = _a.onQueryChange, onChange = _a.onChange, onChangeWord = _a.onChangeWord, _e = _a.showQueryFilter, showQueryFilter = _e === void 0 ? true : _e, _f = _a.className, className = _f === void 0 ? "" : _f, getProperty = _a.getProperty; var t = (0, _useLocale.default)().t; var allSchemas = (0, _useFrontConfig.useAllSchemas)(); var datasource = (0, _util.getDatasourceFromLogicform)(initLogicform, allSchemas); var __schema = datasource.find(function (f) { return f._id === (initLogicform === null || initLogicform === void 0 ? void 0 : initLogicform.schema); }); // 不能去掉,若该组件不在ZECard里使用,而是单独使用的话,datasource会为空 var _schema = (0, _hooks.useRequest)(function () { return !__schema && initLogicform.schema ? (0, _zeroetpApiSdk.getSchemaByID)(initLogicform.schema) : Promise.resolve({ schema: __schema }); }, { refreshDeps: [initLogicform.schema], formatResult: function formatResult(res) { return res === null || res === void 0 ? void 0 : res.schema; } }).data; if ((datasource === null || datasource === void 0 ? void 0 : datasource.length) === 0) { datasource = [_schema].filter(function (f) { return f; }); } var badges = []; var filterColor = "green"; if (mode === "compact") { display.groupby = false; display.preds = false; display.sort = false; } else if (mode === "normal") { display.sort = false; display.groupby = true; } // unnormalizeQuery var logicform = JSON.parse(JSON.stringify(initLogicform)); logicform.query = (0, _util.unnormalizeQuery)(logicform.query || {}); // entity详情不要显示pred if (logicform.entity_id) { display.preds = false; } // helper function var stringifyPredItem = function stringifyPredItem(predItem) { if (typeof predItem === "string") { return predItem; } if (_typeof(predItem) === "object" && predItem.operator) { return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("strong", null, predItem.operator), predItem.pred && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "(", stringifyPredItem(predItem.pred), ")")); } if (_typeof(predItem) === "object" && predItem.name) { return predItem.name; } throw new Error("unexpected pred item: " + JSON.stringify(predItem)); }; if (!(display.schema === false) && logicform.schema) { badges.push({ color: "red", text: /*#__PURE__*/_react.default.createElement("span", null, t("visualizer.datasource"), "\uFF1A", datasource.map(function (m, i) { return /*#__PURE__*/_react.default.createElement(_react.Fragment, { key: m._id }, /*#__PURE__*/_react.default.createElement(_tooltip.default, { title: m._id }, /*#__PURE__*/_react.default.createElement("strong", null, m.name)), i !== datasource.length - 1 && /*#__PURE__*/_react.default.createElement("span", { style: { margin: "0 4px" } }, ",")); })) }); } if (!(display.groupby === false) && logicform.groupby) { var doWithGroupbyItem_1 = function doWithGroupbyItem_1(groupbyItem) { if (_typeof(groupbyItem) === "object") { if (groupbyItem.level) { return groupbyItem._id + "(" + groupbyItem.level + ")"; } return groupbyItem._id; } return groupbyItem; }; var groupbyItems_1 = []; if (Array.isArray(logicform.groupby)) { groupbyItems_1.push.apply(groupbyItems_1, logicform.groupby); } else { groupbyItems_1.push(logicform.groupby); } var renderGroupby = function renderGroupby() { return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, groupbyItems_1.map(function (d, i) { var label = doWithGroupbyItem_1(d); var closable = !logicform.having; return /*#__PURE__*/_react.default.createElement(_tag.default, { closable: closable, key: label, style: { margin: 0, border: "none" }, onClose: function onClose() { var g = groupbyItems_1.filter(function (f) { return doWithGroupbyItem_1(f) !== label; }); onChange === null || onChange === void 0 ? void 0 : onChange({ groupby: g.length > 0 ? g : undefined }); } }, label); })); }; badges.push({ color: "purple", disableFilter: true, text: /*#__PURE__*/_react.default.createElement("span", { style: { display: "inline-flex", alignItems: "center", gap: 8 } }, t("按"), " ", renderGroupby(), " ", t("分组")) }); } if (!(display.query === false) && logicform.query) { var query_1 = logicform.query; if (logicform.having) { query_1 = __assign(__assign({}, query_1), logicform.having); } var addQuery_1 = function addQuery_1(query, prefix) { if (prefix === void 0) { prefix = ""; } Object.entries(query).filter(function (_a) { var k = _a[0]; // feat: 隐藏_authQueryKeys if (logicform._authQueryKeys) { if (logicform._authQueryKeys.indexOf(prefix.length > 0 ? prefix + "_" + k : k) >= 0) { return false; } } return true; }).forEach(function (_a) { var _b; var _k = _a[0], v = _a[1]; if (!(_k in filters)) { var _c = findChainProperty(_schema, _k), propChain = _c.propChain, finalProperty_1 = _c.finalProperty; if (!finalProperty_1 && getProperty) { finalProperty_1 = getProperty(_k); } var k_1 = propChain.join("_"); // 如果在filters里面,那么由另外的代码来管 if (prefix.length > 0) { k_1 = prefix + "_" + k_1; } // _名称结尾时,名称不展示 if ((finalProperty_1 === null || finalProperty_1 === void 0 ? void 0 : finalProperty_1.is_name) && k_1.endsWith("_" + finalProperty_1.name)) { k_1 = k_1.replace("_" + finalProperty_1.name, ""); } // 20230725,只显示chain的最后一个 if (mode !== "verbose") { k_1 = k_1.split("_").pop(); } if (v === null) { // 基本属性 badges.push({ color: filterColor, showKey: k_1, queryKey: _k, value: v, property: finalProperty_1, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, "\u672A\u9009\u62E9")) }); } else if (typeof v === "boolean" || _typeof(v) !== "object" || v.$lte && v.$gte || (0, _zeroetpApiSdk.isRelativeDateForm)(v)) { // 农历 var calendarString = void 0; if (v.$calendar === "lunar") { calendarString = "农历"; } // 基本属性 badges.push({ color: filterColor, showKey: k_1, queryKey: _k, value: v, property: finalProperty_1, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, calendarString, (0, _util.basicValueDisplay)(v, t))) }); // $month, $year,etc.. if (_typeof(v) === "object") { var supportedTimeWindows = ["second", "minute", "hour", "day", "week", "month", "quarter", "year"]; var twToChinese = function twToChinese(tw) { var map = { year: t("年"), quarter: t("季度"), month: t("月"), week: t("周"), day: t("日"), hour: t("点"), minute: t("分"), second: t("秒") }; return map[tw]; }; for (var _i = 0, supportedTimeWindows_1 = supportedTimeWindows; _i < supportedTimeWindows_1.length; _i++) { var tw = supportedTimeWindows_1[_i]; if ("$" + tw in v) { var dateOperator = v["$" + tw]; if (_typeof(dateOperator) === "object") { if (dateOperator.$in) { badges.push({ color: filterColor, queryKey: _k, showKey: k_1, disableFilter: true, property: finalProperty_1, value: dateOperator, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, "" + dateOperator.$in.join(",") + twToChinese(tw))) }); } else if (dateOperator.$gte && dateOperator.$lte) { badges.push({ color: filterColor, queryKey: _k, showKey: k_1, property: finalProperty_1, value: dateOperator, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, dateOperator.$gte + "~" + dateOperator.$lte + twToChinese(tw))) }); } else if (dateOperator.$ne) { badges.push({ color: filterColor, queryKey: _k, showKey: k_1, disableFilter: true, property: finalProperty_1, value: dateOperator, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, t("除了"), " ", "" + dateOperator.$ne + twToChinese(tw))) }); } } else { badges.push({ color: filterColor, queryKey: _k, showKey: k_1, property: finalProperty_1, value: dateOperator, disableFilter: true, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, dateOperator + twToChinese(tw))) }); } } } } } else if ("$entityQuery" in v) { badges.push({ color: filterColor, property: finalProperty_1, showKey: k_1, queryKey: _k, value: v.value, $entityQuery: v.$entityQuery, text: /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(_tooltip.default, { title: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, t("visualizer.datasource"), ":", " ", ((_b = allSchemas === null || allSchemas === void 0 ? void 0 : allSchemas[v.$entityQuery.schema]) === null || _b === void 0 ? void 0 : _b.name) || v.$entityQuery.schema) }, k_1), "\uFF1A ", /*#__PURE__*/_react.default.createElement("strong", null, (0, _util.basicValueDisplay)(v, t))) }); } else if (_util.filterValueOperators.some(function (s) { return s in v; })) { _util.filterValueOperators.forEach(function (op) { if (op in v) { badges.push({ color: filterColor, queryKey: _k, showKey: k_1, property: finalProperty_1, value: v, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, /*#__PURE__*/_react.default.createElement("span", { style: { margin: "0 4px" } }, (0, _util.operatorDisplay)(op)), /*#__PURE__*/_react.default.createElement("strong", null, (0, _util.basicValueDisplay)(v[op], t))) }); } }); } else if (v.operator === "$ent" && !v.level) { // TODO: 20201103:level的显示不应该在query里面。但是现在在query里面。 badges.push({ color: filterColor, property: finalProperty_1, value: v, queryKey: _k, showKey: k_1, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, v.name)) }); } else if ("$or" in v) { // TODO: 应该把这个包起来 v.$or.forEach(function (orItem) { var _a; addQuery_1((_a = {}, _a[k_1] = orItem, _a)); }); } else if ("$exists" in v) { badges.push({ color: filterColor, property: finalProperty_1, value: v, queryKey: _k, showKey: k_1, text: /*#__PURE__*/_react.default.createElement("span", null, k_1, " ", /*#__PURE__*/_react.default.createElement("strong", null, v.$exists ? t("不为空") : t("为空"))) }); } else if (v.schema && v.query) { addQuery_1(v.query, k_1); } } }); }; addQuery_1(query_1); Object.entries(filters).forEach(function (_a) { var _b; var k = _a[0], v = _a[1]; if (v.show === false) return; var finalProperty = findChainProperty(_schema, k).finalProperty; var parsedQuery = (0, _util.unnormalizeQuery)(query_1, true); var value = parsedQuery[k]; if (!value) { value = ["全部"]; } else if (_typeof(value) === "object" && !(value instanceof Array)) { if ("$and" in value) { value = value["$and"]; } } badges.push({ color: filterColor, value: query_1[k], queryKey: k, showKey: k, property: finalProperty, disableFilter: true, text: /*#__PURE__*/_react.default.createElement("span", null, k, "\uFF1A", /*#__PURE__*/_react.default.createElement(_dropdown.default, { trigger: ["click"], overlay: /*#__PURE__*/_react.default.createElement(_menu.default, { items: __spreadArray([v.support_all && { label: "全部", key: "全部" }], (_b = v.distincts) === null || _b === void 0 ? void 0 : _b.map(function (m) { return { label: m, key: m }; })), selectedKeys: value, onClick: function onClick(info) { onQueryChange === null || onQueryChange === void 0 ? void 0 : onQueryChange(getNewQuery({ logicform: initLogicform, queryKey: k, showKey: k, value: info.key === "全部" ? null : info.key, prop: finalProperty })); } }) }, /*#__PURE__*/_react.default.createElement(_button.default, { type: "primary", shape: "round", size: "small" }, (0, _util.basicValueDisplay)(query_1[k], t), /*#__PURE__*/_react.default.createElement(_icons.DownOutlined, null)))) }); }); } // Verbose show entityID if (mode === "verbose") { if (_schema && logicform.entity_id) { var IDProp = _schema.properties.find(function (p) { return p.type === "ID"; }); setPropertySchemaID(_schema, IDProp); if (IDProp) { badges.push({ color: filterColor, value: logicform.entity_id, property: IDProp, queryKey: IDProp.name, showKey: IDProp.name, text: /*#__PURE__*/_react.default.createElement("span", null, IDProp.name, "\uFF1A", /*#__PURE__*/_react.default.createElement("strong", null, logicform.entity_id)) }); } } } if (!(display.preds === false) && logicform.preds) { var preds = logicform.preds.map(function (p, index) { return /*#__PURE__*/_react.default.createElement("span", { key: index }, _typeof(p) === "object" && p.operator && stringifyPredItem(p), _typeof(p) === "object" && p.operator && p.query && /*#__PURE__*/_react.default.createElement(_tooltip.default, { placement: "top", color: "white", title: /*#__PURE__*/_react.default.createElement(ZELogicformVisualizer, { logicform: { schema: p.schema && p.schema !== logicform.schema ? p.schema : null, query: p.query } }) }, /*#__PURE__*/_react.default.createElement(_icons.QuestionCircleOutlined, { style: { marginLeft: 3 } })), (_typeof(p) !== "object" || !p.operator) && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, _typeof(p) === "object" ? p.pred : p), index < logicform.preds.length - 1 && ","); }); if (!(0, _zeroetpApiSdk.isSimpleQuery)(logicform)) { badges.push({ color: "orange", text: /*#__PURE__*/_react.default.createElement("span", null, t("公式"), "\uFF1A ", preds) }); } else {// 20220328:字段显示不需要,太多了。 // badges.push({ // color: "orange", // text: ( // <span> // 字段: <strong>{preds}</strong> // </span> // ), // }); } } if (!(display.sort === false) && logicform.sort) { Object.entries(logicform.sort).forEach(function (_a) { var k = _a[0], v = _a[1]; badges.push({ color: "gold", text: /*#__PURE__*/_react.default.createElement("span", null, t("按"), " ", /*#__PURE__*/_react.default.createElement("strong", null, k), " ", v === -1 ? t("倒序") : t("正序")) }); }); } if (!(display.sort === false) && logicform.limit && logicform.limit > 0) { badges.push({ color: "pink", text: /*#__PURE__*/_react.default.createElement("span", null, t("显示"), /*#__PURE__*/_react.default.createElement("strong", null, logicform.limit), t("条记录")) }); } // badge color if (badgeColor) { badges.forEach(function (b) { return b.color = badgeColor; }); } return /*#__PURE__*/_react.default.createElement("div", { className: "ze-lf-visualizer " + className }, logicform._unknown && logicform._unknown.filter(function (u) { return u.length > 1 && !u.match(/^[a-z]+$/); }).map(function (u) { return /*#__PURE__*/_react.default.createElement(_SimilarWords.default, { key: u, word: u, onChangeWord: onChangeWord }); }), badges.map(function (badge, index) { return ( /*#__PURE__*/ // eslint-disable-next-line react/no-array-index-key _react.default.createElement(CustomBadge, __assign({ key: "" + index }, badge, { disableFilter: showQueryFilter ? badge.disableFilter : true, style: { marginRight: 25 }, mode: mode, onQueryChange: onQueryChange, logicform: initLogicform, property: badge.property || (getProperty === null || getProperty === void 0 ? void 0 : getProperty(badge.queryKey)) })) ); })); }; var _default = ZELogicformVisualizer; exports.default = _default;