@platox/pivot-table 0.0.49 → 0.0.51

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.
@@ -43,7 +43,7 @@ const AddStatisticsModal = ({
43
43
  {
44
44
  className: "config-widget-dialog-preview",
45
45
  style: { borderRight: "1px solid #e0e0e0" },
46
- children: /* @__PURE__ */ jsx(CalendarModule, { customData, moduleDataApi })
46
+ children: open && /* @__PURE__ */ jsx(CalendarModule, { customData, moduleDataApi })
47
47
  }
48
48
  ) }),
49
49
  /* @__PURE__ */ jsxs("div", { className: "config-widget-dialog-panel", style: { borderLeft: "none" }, children: [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-calendar-modal/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport { Button, Modal } from 'antd'\nimport { CloseOutlined } from '@ant-design/icons'\nimport { useTranslation } from 'react-i18next'\nimport EditorHeader from '@platox/pivot-table/components/modal-editor-header'\nimport { EnumDataApi, ModuleDataApi } from '../../../types'\nimport { ModuleData } from '../../module-content'\nimport CalendarModule from '../../module-content/calendar-module'\nimport CustomData, { CalendarCustomeDataTypes } from './custome-data'\n\ninterface AddStatisticsModalProps {\n open: boolean\n onClose?: () => void\n onOk?: (data: Partial<ModuleData>) => void\n\n selectModuleData?: ModuleData\n moduleDataApi?: ModuleDataApi\n enumDataApi?: EnumDataApi\n}\n\nconst AddStatisticsModal: React.FC<AddStatisticsModalProps> = ({\n open,\n onClose,\n onOk,\n moduleDataApi,\n selectModuleData,\n enumDataApi,\n}) => {\n const { t } = useTranslation()\n const [customData, setCustomData] = useState<CalendarCustomeDataTypes>()\n\n useEffect(() => {\n if (selectModuleData) {\n setCustomData(selectModuleData?.customData)\n }\n }, [selectModuleData])\n\n /* ============================== split =============================== */\n const [title, setTitle] = useState<string>('')\n useEffect(() => {\n if (open) {\n setTitle(selectModuleData?.title ? selectModuleData?.title : t('calendarText'))\n }\n }, [open])\n\n return (\n <>\n <Modal\n width=\"65%\"\n title={<EditorHeader value={title} onChange={setTitle} />}\n footer={null}\n open={open}\n onCancel={onClose}\n closeIcon={<CloseOutlined />}\n className=\"ow-modal ow-modal-2\"\n >\n <div className=\"config-widget-dialog-container\">\n <div className=\"config-widget-dialog-content\">\n <div\n className=\"config-widget-dialog-preview\"\n style={{ borderRight: '1px solid #e0e0e0' }}\n >\n <CalendarModule customData={customData} moduleDataApi={moduleDataApi} />\n </div>\n </div>\n <div className=\"config-widget-dialog-panel\" style={{ borderLeft: 'none' }}>\n <div className=\"bitable-dashboard edit-panel-container\" style={{ paddingTop: '20px' }}>\n <CustomData\n enumDataApi={enumDataApi}\n selectModuleData={selectModuleData}\n onAllValuesChange={allVal => {\n setCustomData(allVal)\n }}\n />\n </div>\n <div className=\"button-container\">\n <Button\n type=\"primary\"\n onClick={() => {\n onOk?.({\n id: selectModuleData?.id,\n customData,\n title,\n })\n }}\n >\n {t('confirm')}\n </Button>\n </div>\n </div>\n </div>\n </Modal>\n </>\n )\n}\n\nexport default AddStatisticsModal\n"],"names":[],"mappings":";;;;;;;;AAoBA,MAAM,qBAAwD,CAAC;AAAA,EAC7D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACE,QAAA,EAAE,EAAE,IAAI,eAAe;AAC7B,QAAM,CAAC,YAAY,aAAa,IAAI,SAAmC;AAEvE,YAAU,MAAM;AACd,QAAI,kBAAkB;AACpB,oBAAc,qDAAkB,UAAU;AAAA,IAAA;AAAA,EAC5C,GACC,CAAC,gBAAgB,CAAC;AAGrB,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAiB,EAAE;AAC7C,YAAU,MAAM;AACd,QAAI,MAAM;AACR,gBAAS,qDAAkB,SAAQ,qDAAkB,QAAQ,EAAE,cAAc,CAAC;AAAA,IAAA;AAAA,EAChF,GACC,CAAC,IAAI,CAAC;AAET,SAEI,oBAAA,UAAA,EAAA,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAM;AAAA,MACN,OAAQ,oBAAA,cAAA,EAAa,OAAO,OAAO,UAAU,UAAU;AAAA,MACvD,QAAQ;AAAA,MACR;AAAA,MACA,UAAU;AAAA,MACV,+BAAY,eAAc,EAAA;AAAA,MAC1B,WAAU;AAAA,MAEV,UAAA,qBAAC,OAAI,EAAA,WAAU,kCACb,UAAA;AAAA,QAAC,oBAAA,OAAA,EAAI,WAAU,gCACb,UAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,OAAO,EAAE,aAAa,oBAAoB;AAAA,YAE1C,UAAA,oBAAC,gBAAe,EAAA,YAAwB,cAA8B,CAAA;AAAA,UAAA;AAAA,QAAA,GAE1E;AAAA,QACA,qBAAC,SAAI,WAAU,8BAA6B,OAAO,EAAE,YAAY,OAC/D,GAAA,UAAA;AAAA,UAAA,oBAAC,SAAI,WAAU,0CAAyC,OAAO,EAAE,YAAY,UAC3E,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC;AAAA,cACA;AAAA,cACA,mBAAmB,CAAU,WAAA;AAC3B,8BAAc,MAAM;AAAA,cAAA;AAAA,YACtB;AAAA,UAAA,GAEJ;AAAA,UACA,oBAAC,OAAI,EAAA,WAAU,oBACb,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,SAAS,MAAM;AACN,6CAAA;AAAA,kBACL,IAAI,qDAAkB;AAAA,kBACtB;AAAA,kBACA;AAAA,gBAAA;AAAA,cAEJ;AAAA,cAEC,YAAE,SAAS;AAAA,YAAA;AAAA,UAAA,EAEhB,CAAA;AAAA,QAAA,EACF,CAAA;AAAA,MAAA,EACF,CAAA;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-calendar-modal/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport { Button, Modal } from 'antd'\nimport { CloseOutlined } from '@ant-design/icons'\nimport { useTranslation } from 'react-i18next'\nimport EditorHeader from '@platox/pivot-table/components/modal-editor-header'\nimport { EnumDataApi, ModuleDataApi } from '../../../types'\nimport { ModuleData } from '../../module-content'\nimport CalendarModule from '../../module-content/calendar-module'\nimport CustomData, { CalendarCustomeDataTypes } from './custome-data'\n\ninterface AddStatisticsModalProps {\n open: boolean\n onClose?: () => void\n onOk?: (data: Partial<ModuleData>) => void\n\n selectModuleData?: ModuleData\n moduleDataApi?: ModuleDataApi\n enumDataApi?: EnumDataApi\n}\n\nconst AddStatisticsModal: React.FC<AddStatisticsModalProps> = ({\n open,\n onClose,\n onOk,\n moduleDataApi,\n selectModuleData,\n enumDataApi,\n}) => {\n const { t } = useTranslation()\n const [customData, setCustomData] = useState<CalendarCustomeDataTypes>()\n\n useEffect(() => {\n if (selectModuleData) {\n setCustomData(selectModuleData?.customData)\n }\n }, [selectModuleData])\n\n /* ============================== split =============================== */\n const [title, setTitle] = useState<string>('')\n useEffect(() => {\n if (open) {\n setTitle(selectModuleData?.title ? selectModuleData?.title : t('calendarText'))\n }\n }, [open])\n\n return (\n <>\n <Modal\n width=\"65%\"\n title={<EditorHeader value={title} onChange={setTitle} />}\n footer={null}\n open={open}\n onCancel={onClose}\n closeIcon={<CloseOutlined />}\n className=\"ow-modal ow-modal-2\"\n >\n <div className=\"config-widget-dialog-container\">\n <div className=\"config-widget-dialog-content\">\n <div\n className=\"config-widget-dialog-preview\"\n style={{ borderRight: '1px solid #e0e0e0' }}\n >\n {open && <CalendarModule customData={customData} moduleDataApi={moduleDataApi} />}\n </div>\n </div>\n <div className=\"config-widget-dialog-panel\" style={{ borderLeft: 'none' }}>\n <div className=\"bitable-dashboard edit-panel-container\" style={{ paddingTop: '20px' }}>\n <CustomData\n enumDataApi={enumDataApi}\n selectModuleData={selectModuleData}\n onAllValuesChange={allVal => {\n setCustomData(allVal)\n }}\n />\n </div>\n <div className=\"button-container\">\n <Button\n type=\"primary\"\n onClick={() => {\n onOk?.({\n id: selectModuleData?.id,\n customData,\n title,\n })\n }}\n >\n {t('confirm')}\n </Button>\n </div>\n </div>\n </div>\n </Modal>\n </>\n )\n}\n\nexport default AddStatisticsModal\n"],"names":[],"mappings":";;;;;;;;AAoBA,MAAM,qBAAwD,CAAC;AAAA,EAC7D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACE,QAAA,EAAE,EAAE,IAAI,eAAe;AAC7B,QAAM,CAAC,YAAY,aAAa,IAAI,SAAmC;AAEvE,YAAU,MAAM;AACd,QAAI,kBAAkB;AACpB,oBAAc,qDAAkB,UAAU;AAAA,IAAA;AAAA,EAC5C,GACC,CAAC,gBAAgB,CAAC;AAGrB,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAiB,EAAE;AAC7C,YAAU,MAAM;AACd,QAAI,MAAM;AACR,gBAAS,qDAAkB,SAAQ,qDAAkB,QAAQ,EAAE,cAAc,CAAC;AAAA,IAAA;AAAA,EAChF,GACC,CAAC,IAAI,CAAC;AAET,SAEI,oBAAA,UAAA,EAAA,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAM;AAAA,MACN,OAAQ,oBAAA,cAAA,EAAa,OAAO,OAAO,UAAU,UAAU;AAAA,MACvD,QAAQ;AAAA,MACR;AAAA,MACA,UAAU;AAAA,MACV,+BAAY,eAAc,EAAA;AAAA,MAC1B,WAAU;AAAA,MAEV,UAAA,qBAAC,OAAI,EAAA,WAAU,kCACb,UAAA;AAAA,QAAC,oBAAA,OAAA,EAAI,WAAU,gCACb,UAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,OAAO,EAAE,aAAa,oBAAoB;AAAA,YAEzC,UAAQ,QAAA,oBAAC,gBAAe,EAAA,YAAwB,cAA8B,CAAA;AAAA,UAAA;AAAA,QAAA,GAEnF;AAAA,QACA,qBAAC,SAAI,WAAU,8BAA6B,OAAO,EAAE,YAAY,OAC/D,GAAA,UAAA;AAAA,UAAA,oBAAC,SAAI,WAAU,0CAAyC,OAAO,EAAE,YAAY,UAC3E,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC;AAAA,cACA;AAAA,cACA,mBAAmB,CAAU,WAAA;AAC3B,8BAAc,MAAM;AAAA,cAAA;AAAA,YACtB;AAAA,UAAA,GAEJ;AAAA,UACA,oBAAC,OAAI,EAAA,WAAU,oBACb,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,SAAS,MAAM;AACN,6CAAA;AAAA,kBACL,IAAI,qDAAkB;AAAA,kBACtB;AAAA,kBACA;AAAA,gBAAA;AAAA,cAEJ;AAAA,cAEC,YAAE,SAAS;AAAA,YAAA;AAAA,UAAA,EAEhB,CAAA;AAAA,QAAA,EACF,CAAA;AAAA,MAAA,EACF,CAAA;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -33,7 +33,7 @@ const mapConditionsToPostgrest = (filterData) => {
33
33
  if (child.join) {
34
34
  return loop(child, !shouldMerge ? deep + 1 : deep, group.join);
35
35
  } else {
36
- let value = ` ${encodeURIComponent(child.value)}`;
36
+ let value = `${encodeURIComponent(child.value)}`;
37
37
  return `${child.field}${filedUnit}${child.operator}.${value}`;
38
38
  }
39
39
  });
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../packages/dashboard-workbench/components/module-content/utils.ts"],"sourcesContent":["import dayjs, { Dayjs } from 'dayjs'\nimport { isArray, isNil } from 'lodash-es'\nimport {\n ConditionBlock,\n ConditionListItem,\n} from '../add-module-modal/components/condition-modal/interface'\n\ntype DSLItem = {\n field: string\n value: string\n operator: string\n}\ntype DSLGroup = {\n join: 'and' | 'or'\n children: (DSLGroup | DSLItem)[]\n}\n\nexport const mapConditionsToPostgrest = (filterData: ConditionBlock[]): string => {\n let DSLTree: DSLGroup = {\n join: 'and',\n children: [],\n }\n\n for (const conditionBlock of filterData) {\n let children = (conditionBlock.conditionList ?? [])\n .map(condition => {\n let ret: DSLItem | DSLGroup | null = null\n ret = conditionListItem2DSL(condition)\n return ret\n })\n .filter(v => !!v) as unknown as (DSLItem | DSLGroup)[]\n if (children.length > 0) {\n DSLTree.children.push({\n join: conditionBlock.conditionType === 'all' ? 'and' : 'or',\n children: children,\n })\n }\n }\n\n // 转成字符串\n function loop(node: DSLGroup, deep = 1, parentJoin: 'and' | 'or') {\n //跳过group里面只嵌套单个group的case 减少层级\n let shoudIgnore = (node.children ?? []).length === 1 && (node.children?.[0] as DSLGroup)?.join\n if (shoudIgnore) {\n return loop(node.children[0] as DSLGroup, deep, parentJoin)\n }\n\n let group = node as DSLGroup\n let shouldMerge = group.join === parentJoin\n let isTop = deep === 1\n let filedUnit = isTop && shouldMerge ? '=' : '.'\n let joinUnit = isTop && shouldMerge ? '&' : ','\n\n let strList = group.children.map(child => {\n if ((child as DSLGroup).join) {\n return loop(child as DSLGroup, !shouldMerge ? deep + 1 : deep, group.join)\n } else {\n let value = ` ${encodeURIComponent((child as DSLItem).value)}`\n return `${(child as DSLItem).field}${filedUnit}${(child as DSLItem).operator}.${value}`\n }\n })\n let ret = (\n !shouldMerge\n ? `${group?.join}${deep > 1 ? '' : '='}(${strList.join(joinUnit)})`\n : strList.join(joinUnit)\n ) as string\n return ret\n }\n\n let str = loop(DSLTree, 1, 'and')\n return str\n}\n\nlet mapping = {\n '=': 'eq',\n '!=': 'neq',\n '>': 'gt',\n '>=': 'gte',\n '<': 'lt',\n '=<': 'lte',\n ['include']: 'in',\n ['notinclude']: 'not.in',\n // ['contain']: 'gte,lte', //这个是group的\n ['before']: 'lt',\n ['after']: 'gt',\n // ['null']: 'is.null',\n // ['notnull']: 'not.is.null',\n ['null']: 'is', //这个特殊处理\n ['notnull']: 'not.is', //这个特殊处理\n}\n\nconst getEnumValue = (val: any) => {\n // 懒加载的时候 item :{label: \"xxx\", value: \"xxx\"}\n // 非懒加载的时候 item: \"xxx\"\n return (val as any)?.value ? (val as any)?.value : val\n}\n\nconst conditionListItem2DSL = (condition: ConditionListItem) => {\n const { field, condition: cond, val, val2, rdate, type } = condition\n\n //value 是懒加载时候的数据结构\n let value: any\n if (type === 'enum') {\n let isMultiple = ['include', 'notinclude'].includes(cond)\n if (isMultiple) {\n value = (isArray(val) ? val : [])\n .map(val => {\n return getEnumValue(val)\n })\n .filter(v => !!v)\n } else {\n value = !isArray(val) ? getEnumValue(val) : ''\n }\n } else {\n value = (val as any)?.value ? (val as any)?.value : val // 为啥需要?.value\n }\n\n let ret: DSLItem | DSLGroup | null = null\n switch (cond) {\n case '=':\n {\n if (type !== 'timestamp') {\n if (isInVaildValue(value)) {\n return null\n }\n ret = {\n field,\n value: `${value}`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n } else {\n if (isInVaildValue(rdate)) {\n return null\n }\n ret = getEqualTimeDSL({ rdate: rdate!, field, value })\n }\n }\n break\n case '>':\n case '<':\n {\n if (type === 'timestamp' && rdate === 'today') {\n value = dayjs().format('YYYY-MM-DD')\n } else if (type === 'timestamp' && rdate === 'yesterday') {\n value = dayjs().subtract(1, 'day').format('YYYY-MM-DD')\n }\n if (isInVaildValue(value)) {\n return null\n }\n\n ret = {\n field,\n value: `${value}`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n }\n break\n case 'contain':\n {\n if (isInVaildValue(value) || isInVaildValue(val2)) {\n return null\n }\n ret = {\n join: 'and',\n children: [\n {\n field,\n value: `${value}`,\n operator: 'gte',\n },\n {\n field,\n value: `${val2}`,\n operator: 'lte',\n },\n ],\n } as DSLGroup\n }\n break\n case 'null':\n case 'notnull':\n {\n ret = {\n field,\n value: 'null',\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n }\n break\n case 'include':\n case 'notinclude':\n {\n // 枚举特殊处理\n if (condition.type === 'enum') {\n if (isInVaildValue(value?.[0]) || value.length === 0) {\n return null\n }\n\n if (value.length === 1) {\n ret = {\n field,\n value: `(${value})`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n } else {\n ret = {\n join: cond === 'include' ? 'or' : 'and',\n children: value.map((value: string) => {\n return {\n field,\n value: `(${value})`,\n operator: mapping[cond as keyof typeof mapping],\n }\n }),\n } as DSLGroup\n }\n\n return ret\n } else {\n if (isInVaildValue(value)) {\n return null\n }\n\n ret = {\n field,\n value: `(${value})`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n }\n }\n break\n default: {\n if (isInVaildValue(value)) {\n return null\n }\n ret = {\n field,\n value: `${value}`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n }\n }\n\n return ret\n}\n\nconst getEqualTimeDSL = (props: { rdate: string; field: string; value: string }) => {\n const { rdate, field, value } = props\n switch (rdate) {\n case 'exactdate':\n if (isInVaildValue(value)) {\n return null\n }\n return {\n field,\n value,\n operator: mapping['='],\n } as DSLItem\n case 'today':\n return {\n field,\n value: dayjs().format('YYYY-MM-DD'),\n operator: mapping['='],\n } as DSLItem\n case 'yesterday':\n return {\n field,\n value: dayjs().subtract(1, 'day').format('YYYY-MM-DD'),\n operator: mapping['='],\n } as DSLItem\n case 'thisweek':\n const startOfLastWeek = dayjs().startOf('week').add(1, 'day').format('YYYY-MM-DD')\n const endOfLastWeek = dayjs().endOf('week').add(1, 'day').format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLastWeek,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLastWeek,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n case 'lastweek': {\n const startOfLastWeek = dayjs()\n .subtract(1, 'week')\n .startOf('week')\n .add(1, 'day')\n .format('YYYY-MM-DD')\n const endOfLastWeek = dayjs()\n .subtract(1, 'week')\n .endOf('week')\n .add(1, 'day')\n .format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLastWeek,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLastWeek,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n }\n case 'thismonth':\n let startOfThisMonth = dayjs().startOf('month').format('YYYY-MM-DD')\n let endOfThisMonth = dayjs().endOf('month').format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfThisMonth,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfThisMonth,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n\n case 'lastmonth': {\n const startOfLastMonth = dayjs().subtract(1, 'month').startOf('month').format('YYYY-MM-DD')\n const endOfLastMonth = dayjs().subtract(1, 'month').endOf('month').format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLastMonth,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLastMonth,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n }\n case 'last7days':\n const startOfLast7Days = dayjs().subtract(7, 'days').format('YYYY-MM-DD')\n const endOfLast7Days = dayjs().format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLast7Days,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLast7Days,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n case 'last30days':\n const startOfLast30Days = dayjs().subtract(30, 'days').format('YYYY-MM-DD')\n const endOfLast30Days = dayjs().format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLast30Days,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLast30Days,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n default:\n return null // 对于未支持的 rdate 值返回空字符串\n }\n}\n\nconst isInVaildValue = (date: string | number | Dayjs | undefined) => {\n return isNil(date) || date === ''\n}\n"],"names":["val","value","startOfLastWeek","endOfLastWeek"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../packages/dashboard-workbench/components/module-content/utils.ts"],"sourcesContent":["import dayjs, { Dayjs } from 'dayjs'\nimport { isArray, isNil } from 'lodash-es'\nimport {\n ConditionBlock,\n ConditionListItem,\n} from '../add-module-modal/components/condition-modal/interface'\n\ntype DSLItem = {\n field: string\n value: string\n operator: string\n}\ntype DSLGroup = {\n join: 'and' | 'or'\n children: (DSLGroup | DSLItem)[]\n}\n\nexport const mapConditionsToPostgrest = (filterData: ConditionBlock[]): string => {\n let DSLTree: DSLGroup = {\n join: 'and',\n children: [],\n }\n\n for (const conditionBlock of filterData) {\n let children = (conditionBlock.conditionList ?? [])\n .map(condition => {\n let ret: DSLItem | DSLGroup | null = null\n ret = conditionListItem2DSL(condition)\n return ret\n })\n .filter(v => !!v) as unknown as (DSLItem | DSLGroup)[]\n if (children.length > 0) {\n DSLTree.children.push({\n join: conditionBlock.conditionType === 'all' ? 'and' : 'or',\n children: children,\n })\n }\n }\n\n // 转成字符串\n function loop(node: DSLGroup, deep = 1, parentJoin: 'and' | 'or') {\n //跳过group里面只嵌套单个group的case 减少层级\n let shoudIgnore = (node.children ?? []).length === 1 && (node.children?.[0] as DSLGroup)?.join\n if (shoudIgnore) {\n return loop(node.children[0] as DSLGroup, deep, parentJoin)\n }\n\n let group = node as DSLGroup\n let shouldMerge = group.join === parentJoin\n let isTop = deep === 1\n let filedUnit = isTop && shouldMerge ? '=' : '.'\n let joinUnit = isTop && shouldMerge ? '&' : ','\n\n let strList = group.children.map(child => {\n if ((child as DSLGroup).join) {\n return loop(child as DSLGroup, !shouldMerge ? deep + 1 : deep, group.join)\n } else {\n let value = `${encodeURIComponent((child as DSLItem).value)}`\n return `${(child as DSLItem).field}${filedUnit}${(child as DSLItem).operator}.${value}`\n }\n })\n let ret = (\n !shouldMerge\n ? `${group?.join}${deep > 1 ? '' : '='}(${strList.join(joinUnit)})`\n : strList.join(joinUnit)\n ) as string\n return ret\n }\n\n let str = loop(DSLTree, 1, 'and')\n return str\n}\n\nlet mapping = {\n '=': 'eq',\n '!=': 'neq',\n '>': 'gt',\n '>=': 'gte',\n '<': 'lt',\n '=<': 'lte',\n ['include']: 'in',\n ['notinclude']: 'not.in',\n // ['contain']: 'gte,lte', //这个是group的\n ['before']: 'lt',\n ['after']: 'gt',\n // ['null']: 'is.null',\n // ['notnull']: 'not.is.null',\n ['null']: 'is', //这个特殊处理\n ['notnull']: 'not.is', //这个特殊处理\n}\n\nconst getEnumValue = (val: any) => {\n // 懒加载的时候 item :{label: \"xxx\", value: \"xxx\"}\n // 非懒加载的时候 item: \"xxx\"\n return (val as any)?.value ? (val as any)?.value : val\n}\n\nconst conditionListItem2DSL = (condition: ConditionListItem) => {\n const { field, condition: cond, val, val2, rdate, type } = condition\n\n //value 是懒加载时候的数据结构\n let value: any\n if (type === 'enum') {\n let isMultiple = ['include', 'notinclude'].includes(cond)\n if (isMultiple) {\n value = (isArray(val) ? val : [])\n .map(val => {\n return getEnumValue(val)\n })\n .filter(v => !!v)\n } else {\n value = !isArray(val) ? getEnumValue(val) : ''\n }\n } else {\n value = (val as any)?.value ? (val as any)?.value : val // 为啥需要?.value\n }\n\n let ret: DSLItem | DSLGroup | null = null\n switch (cond) {\n case '=':\n {\n if (type !== 'timestamp') {\n if (isInVaildValue(value)) {\n return null\n }\n ret = {\n field,\n value: `${value}`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n } else {\n if (isInVaildValue(rdate)) {\n return null\n }\n ret = getEqualTimeDSL({ rdate: rdate!, field, value })\n }\n }\n break\n case '>':\n case '<':\n {\n if (type === 'timestamp' && rdate === 'today') {\n value = dayjs().format('YYYY-MM-DD')\n } else if (type === 'timestamp' && rdate === 'yesterday') {\n value = dayjs().subtract(1, 'day').format('YYYY-MM-DD')\n }\n if (isInVaildValue(value)) {\n return null\n }\n\n ret = {\n field,\n value: `${value}`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n }\n break\n case 'contain':\n {\n if (isInVaildValue(value) || isInVaildValue(val2)) {\n return null\n }\n ret = {\n join: 'and',\n children: [\n {\n field,\n value: `${value}`,\n operator: 'gte',\n },\n {\n field,\n value: `${val2}`,\n operator: 'lte',\n },\n ],\n } as DSLGroup\n }\n break\n case 'null':\n case 'notnull':\n {\n ret = {\n field,\n value: 'null',\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n }\n break\n case 'include':\n case 'notinclude':\n {\n // 枚举特殊处理\n if (condition.type === 'enum') {\n if (isInVaildValue(value?.[0]) || value.length === 0) {\n return null\n }\n\n if (value.length === 1) {\n ret = {\n field,\n value: `(${value})`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n } else {\n ret = {\n join: cond === 'include' ? 'or' : 'and',\n children: value.map((value: string) => {\n return {\n field,\n value: `(${value})`,\n operator: mapping[cond as keyof typeof mapping],\n }\n }),\n } as DSLGroup\n }\n\n return ret\n } else {\n if (isInVaildValue(value)) {\n return null\n }\n\n ret = {\n field,\n value: `(${value})`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n }\n }\n break\n default: {\n if (isInVaildValue(value)) {\n return null\n }\n ret = {\n field,\n value: `${value}`,\n operator: mapping[cond as keyof typeof mapping],\n } as DSLItem\n }\n }\n\n return ret\n}\n\nconst getEqualTimeDSL = (props: { rdate: string; field: string; value: string }) => {\n const { rdate, field, value } = props\n switch (rdate) {\n case 'exactdate':\n if (isInVaildValue(value)) {\n return null\n }\n return {\n field,\n value,\n operator: mapping['='],\n } as DSLItem\n case 'today':\n return {\n field,\n value: dayjs().format('YYYY-MM-DD'),\n operator: mapping['='],\n } as DSLItem\n case 'yesterday':\n return {\n field,\n value: dayjs().subtract(1, 'day').format('YYYY-MM-DD'),\n operator: mapping['='],\n } as DSLItem\n case 'thisweek':\n const startOfLastWeek = dayjs().startOf('week').add(1, 'day').format('YYYY-MM-DD')\n const endOfLastWeek = dayjs().endOf('week').add(1, 'day').format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLastWeek,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLastWeek,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n case 'lastweek': {\n const startOfLastWeek = dayjs()\n .subtract(1, 'week')\n .startOf('week')\n .add(1, 'day')\n .format('YYYY-MM-DD')\n const endOfLastWeek = dayjs()\n .subtract(1, 'week')\n .endOf('week')\n .add(1, 'day')\n .format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLastWeek,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLastWeek,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n }\n case 'thismonth':\n let startOfThisMonth = dayjs().startOf('month').format('YYYY-MM-DD')\n let endOfThisMonth = dayjs().endOf('month').format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfThisMonth,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfThisMonth,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n\n case 'lastmonth': {\n const startOfLastMonth = dayjs().subtract(1, 'month').startOf('month').format('YYYY-MM-DD')\n const endOfLastMonth = dayjs().subtract(1, 'month').endOf('month').format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLastMonth,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLastMonth,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n }\n case 'last7days':\n const startOfLast7Days = dayjs().subtract(7, 'days').format('YYYY-MM-DD')\n const endOfLast7Days = dayjs().format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLast7Days,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLast7Days,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n case 'last30days':\n const startOfLast30Days = dayjs().subtract(30, 'days').format('YYYY-MM-DD')\n const endOfLast30Days = dayjs().format('YYYY-MM-DD')\n return {\n join: 'and',\n children: [\n {\n field,\n value: startOfLast30Days,\n operator: mapping['>='],\n },\n {\n field,\n value: endOfLast30Days,\n operator: mapping['=<'],\n },\n ],\n } as DSLGroup\n default:\n return null // 对于未支持的 rdate 值返回空字符串\n }\n}\n\nconst isInVaildValue = (date: string | number | Dayjs | undefined) => {\n return isNil(date) || date === ''\n}\n"],"names":["val","value","startOfLastWeek","endOfLastWeek"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platox/pivot-table",
3
- "version": "0.0.49",
3
+ "version": "0.0.51",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "exports": {