var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/algorithmConfig/algorithmConfig.tsx var algorithmConfig_exports = {}; __export(algorithmConfig_exports, { default: () => algorithmConfig_default }); module.exports = __toCommonJS(algorithmConfig_exports); var import_react = __toESM(require("react")); var import_antd = require("antd"); var import_theme = __toESM(require("antd/es/theme")); var import_meta = require("@zhst/meta"); var import_base64Images = require("../utils/base64Images"); var import_algorithmTable = __toESM(require("./components/algorithmTable")); var import_timeTemplateTable = __toESM(require("./components/timeTemplateTable")); var { useToken } = import_theme.default; var Title = (props) => /* @__PURE__ */ import_react.default.createElement("h2", { style: { margin: "18px 16px", fontSize: "14px", color: "rgba(0, 0, 0, 0.88)" } }, props.children); var AlgorithmConfig = (0, import_react.forwardRef)((props) => { const { algorithmTableDataSource = [], timeTemplateDataSource = [], boxList = [], drawListener, cropperImageProps = {}, algorithmTableProps, timeTemplateTableProps, selectedKey, type = "multiple", rowKey = "id", onSelect, title = "盒子名称" } = props; const { token } = useToken(); const { type: cropType } = cropperImageProps; return /* @__PURE__ */ import_react.default.createElement(import_antd.Flex, { style: { border: `1px solid ${token.colorBorder}`, backgroundColor: token.colorBgBase } }, /* @__PURE__ */ import_react.default.createElement("div", { title, style: { width: "13.9%" } }, /* @__PURE__ */ import_react.default.createElement(Title, null, title), /* @__PURE__ */ import_react.default.createElement("div", { style: { borderTop: `1px solid ${token.colorBorder}` } }, boxList.map((item) => { return /* @__PURE__ */ import_react.default.createElement( "p", { key: item.id, onClick: () => onSelect == null ? void 0 : onSelect(item.id, item), style: { margin: 0, padding: `${token.paddingXXS}px ${token.paddingLG}px`, cursor: "pointer", // @ts-ignore color: selectedKey === item[rowKey] ? token.colorPrimary : token.colorText, // @ts-ignore backgroundColor: selectedKey === item[rowKey] ? token.blue1 : token.colorBgBase, transition: "0cancelDraw.2s ease" } }, item.name ); }))), /* @__PURE__ */ import_react.default.createElement("div", { style: { boxSizing: "border-box", width: "46.3%", textAlign: "center", borderLeft: `1px solid ${token.colorBorder}`, borderRight: `1px solid ${token.colorBorder}` } }, type === "single" ? /* @__PURE__ */ import_react.default.createElement( import_meta.CropperImage, { type: "line", onCropEnd: drawListener, ...cropperImageProps } ) : /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: "84px" } }, /* @__PURE__ */ import_react.default.createElement( import_antd.Image, { width: "62.5%", src: import_base64Images.AlgorithmConfigImg, preview: false, fallback: import_base64Images.ErrorImage } ), /* @__PURE__ */ import_react.default.createElement("h2", null, "请进行批量配置"), /* @__PURE__ */ import_react.default.createElement("ul", { style: { display: "inline-block", paddingLeft: 0, width: "51.8%", listStyle: "none", textAlign: "left", color: token.colorTextLabel } }, /* @__PURE__ */ import_react.default.createElement("li", null, "· 盒子批量配置仅支持同型号盒子;"), /* @__PURE__ */ import_react.default.createElement("li", null, "· 采取覆盖式更新,不保留原有配置,且预警检测框默认全屏范围;"), /* @__PURE__ */ import_react.default.createElement("li", null, "· 人流量统计默认检测线为屏幕中央横向线条,且箭头指向下方;"), /* @__PURE__ */ import_react.default.createElement("li", null, "· 优先选择拉流正常的摄像头。")))), /* @__PURE__ */ import_react.default.createElement("div", { style: { width: "39.8%" } }, /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(Title, null, "时间模板"), /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: `${token.paddingMD}px ${token.paddingSM}px`, borderTop: `1px solid ${token.colorBorder}`, borderBottom: `1px solid ${token.colorBorder}` } }, /* @__PURE__ */ import_react.default.createElement( import_timeTemplateTable.default, { dataSource: timeTemplateDataSource, ...timeTemplateTableProps } ))), /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(Title, null, "算法应用"), /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: `${token.paddingMD}px ${token.paddingSM}px`, borderTop: `1px solid ${token.colorBorder}` } }, /* @__PURE__ */ import_react.default.createElement( import_algorithmTable.default, { dataSource: algorithmTableDataSource, tableType: type, ...algorithmTableProps } ))))); }); var algorithmConfig_default = AlgorithmConfig;