@ibiz-template/mob-vue3-components 0.0.7 → 0.0.9

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.
Files changed (63) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/index.system.min.js +5 -5
  3. package/dist/index.system.min.js.map +1 -1
  4. package/dist/tree-xaVRfp-8.js +2 -0
  5. package/dist/tree-xaVRfp-8.js.map +1 -0
  6. package/es/control/app-menu-icon-view/app-menu-icon-view.css +1 -1
  7. package/es/control/app-menu-list-view/app-menu-list-view.css +1 -1
  8. package/es/control/calendar/calendar.d.ts +2 -3
  9. package/es/control/calendar/calendar.mjs +38 -67
  10. package/es/control/calendar/date-util.d.ts +20 -0
  11. package/es/control/calendar/date-util.mjs +32 -0
  12. package/es/control/calendar/index.d.ts +2 -3
  13. package/es/control/caption-bar/caption-bar.css +1 -1
  14. package/es/control/caption-bar/caption-bar.mjs +5 -2
  15. package/es/control/toolbar/index.d.ts +1 -1
  16. package/es/control/toolbar/toolbar.css +1 -1
  17. package/es/control/toolbar/toolbar.d.ts +1 -1
  18. package/es/control/toolbar/toolbar.mjs +8 -4
  19. package/es/control/tree/tree.d.ts +4 -4
  20. package/es/control/tree/tree.mjs +2 -2
  21. package/es/editor/common/data-mpicker/ibiz-data-mpicker.mjs +6 -2
  22. package/es/editor/common/index.d.ts +2 -0
  23. package/es/editor/common/index.mjs +4 -0
  24. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  25. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +11 -7
  26. package/es/editor/data-picker/ibiz-picker/ibiz-picker.css +1 -1
  27. package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.d.ts +1 -5
  28. package/es/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.css +1 -1
  29. package/es/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.mjs +20 -9
  30. package/es/editor/index.d.ts +20 -0
  31. package/es/editor/index.mjs +27 -1
  32. package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.mjs +5 -4
  33. package/es/editor/span/span/span.mjs +1 -1
  34. package/es/index.mjs +62 -0
  35. package/es/view-engine/mob-edit-view.engine.mjs +2 -0
  36. package/es/view-engine/mob-wf-dyna-edit-view.engine.mjs +2 -1
  37. package/es/view-engine/wf-step-trace-view.engine.mjs +4 -1
  38. package/lib/control/app-menu-icon-view/app-menu-icon-view.css +1 -1
  39. package/lib/control/app-menu-list-view/app-menu-list-view.css +1 -1
  40. package/lib/control/calendar/calendar.cjs +37 -66
  41. package/lib/control/calendar/date-util.cjs +35 -0
  42. package/lib/control/caption-bar/caption-bar.cjs +5 -2
  43. package/lib/control/caption-bar/caption-bar.css +1 -1
  44. package/lib/control/toolbar/toolbar.cjs +8 -4
  45. package/lib/control/toolbar/toolbar.css +1 -1
  46. package/lib/control/tree/tree.cjs +2 -2
  47. package/lib/editor/common/data-mpicker/ibiz-data-mpicker.cjs +6 -2
  48. package/lib/editor/common/index.cjs +9 -0
  49. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +11 -7
  50. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
  51. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.css +1 -1
  52. package/lib/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.cjs +20 -9
  53. package/lib/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.css +1 -1
  54. package/lib/editor/index.cjs +88 -0
  55. package/lib/editor/radio-button-list/ibiz-radio/ibiz-radio.cjs +4 -3
  56. package/lib/editor/span/span/span.cjs +1 -1
  57. package/lib/index.cjs +124 -0
  58. package/lib/view-engine/mob-edit-view.engine.cjs +2 -0
  59. package/lib/view-engine/mob-wf-dyna-edit-view.engine.cjs +2 -1
  60. package/lib/view-engine/wf-step-trace-view.engine.cjs +4 -1
  61. package/package.json +6 -6
  62. package/dist/tree-SFO3fWSy.js +0 -2
  63. package/dist/tree-SFO3fWSy.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ System.register(["vue","@ibiz-template/vue3-util","@ibiz-template/runtime","qx-util","@ibiz-template-package/vs-tree-ex"],function(g){"use strict";var l,a,u,s,c,d,h,m,f,p;return{setters:[function(t){l=t.defineComponent,a=t.computed,u=t.ref,s=t.createVNode,c=t.resolveComponent},function(t){d=t.useControlController,h=t.useNamespace},function(t){m=t.TreeController},function(t){f=t.createUUID},function(t){p=t.VsTreeComponent}],execute:function(){const t=l({name:"IBizTreeControl",components:{"vs-tree":p},props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},mdctrlActiveMode:{type:Number,default:2},singleSelect:{type:Boolean,default:!0}},setup(){var C,b;const o=d((...e)=>new m(...e)),D=h(`control-${o.model.controlType.toLowerCase()}`),T=a(()=>o.state.selectedData.map(e=>e.srfkey)),k=f(),N=u(!0),x=a(()=>o.state.isLoaded?o.model.rootVisible?o.state.rootNodes:o.state.rootNodes.reduce((e,r)=>r.children?e.concat(r.children):e,[]):[]),z=async(e,r)=>{if(!o.state.isLoaded)return;const n=await o.loadNodes(e.data);r(n)},L=(e,r)=>{const{originData:n}=r;o.onTreeNodeClick(n,e)},v=(e,r)=>{e.stopPropagation();const{originData:n}=r;n.leaf&&o.onTreeNodeClick(n,e)},w=e=>({id:e.srfkey,name:e.text,children:e.children,isLeaf:e.leaf}),B=(e,r)=>{const{originData:n}=r;if(!n.leaf)return e("div",{text:"\u4E0B\u7EA7",className:"tree-button",click:(j,i)=>{i.store.breadcrumb.list.push(i),i.setExpand(!0)}})},V=(e,r)=>{const{checked:n}=r;r.setChecked(!n),v(e,r)},y={maxHeight:"100%",checkInherit:!1,nocheckParent:!0,rootName:(b=(C=o.model.detreeNodes)==null?void 0:C.find(e=>e.rootNode))==null?void 0:b.name,renderContent:B,customNodeClick:V};return N.value&&Object.assign(y,{breadcrumb:{el:`#breadcrumb${k}`,link:(e,r)=>r.name}}),{c:o,ns:D,treeData:x,options:y,breadcrumb:N,checkedKeys:T,uuid:k,onNodeCheck:L,onNodeClick:v,loadData:z,treeDataFormat:w}},render(){return s(c("iBizControlBase"),{controller:this.c},{default:()=>[this.breadcrumb&&s(c("van-sticky"),null,{default:()=>[s("div",{id:`breadcrumb${this.uuid}`,class:[this.ns.b("header")]},null)]}),this.c.state.isCreated&&this.c.state.isLoaded&&s(c("vs-tree"),{"show-line":!0,class:[this.ns.b("content")],lazy:!0,strictLeaf:!0,options:this.options,"show-checkbox":!this.c.state.singleSelect,data:this.treeData,highlightCurrent:!0,checkedKeys:this.checkedKeys,format:this.treeDataFormat,load:this.loadData,onCheck:this.onNodeCheck},null)]})}});g({TreeControl:t,default:t})}}});
2
+ //# sourceMappingURL=tree-xaVRfp-8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-xaVRfp-8.js","sources":["../src/control/tree/tree.tsx"],"sourcesContent":["import { useControlController, useNamespace } from '@ibiz-template/vue3-util';\nimport { computed, defineComponent, PropType, ref, VNode } from 'vue';\nimport { IDETree } from '@ibiz/model-core';\nimport { ITreeNodeData, TreeController } from '@ibiz-template/runtime';\nimport { createUUID } from 'qx-util';\nimport { VsTreeComponent } from '@ibiz-template-package/vs-tree-ex';\nimport './tree.scss';\n\nexport const TreeControl = defineComponent({\n name: 'IBizTreeControl',\n components: {\n 'vs-tree': VsTreeComponent,\n },\n props: {\n modelData: { type: Object as PropType<IDETree>, required: true },\n context: { type: Object as PropType<IContext>, required: true },\n params: { type: Object as PropType<IParams>, default: () => ({}) },\n /**\n * 部件行数据默认激活模式\n * - 0 不激活\n * - 1 单击激活\n * - 2 双击激活(默认值)\n *\n * @type {(number | 0 | 1 | 2)}\n */\n mdctrlActiveMode: { type: Number, default: 2 },\n\n /**\n * 是否为单选\n * - true 单选\n * - false 多选\n *\n * @type {(Boolean)}\n */\n singleSelect: { type: Boolean, default: true },\n },\n setup() {\n const c = useControlController<TreeController>(\n (...args) => new TreeController(...args),\n );\n const ns = useNamespace(`control-${c.model.controlType!.toLowerCase()}`);\n // 默认选中项\n const checkedKeys = computed(() => {\n return c.state.selectedData.map(item => item.srfkey);\n });\n\n const uuid = createUUID();\n\n // 启用面包屑功能\n const breadcrumb = ref(true);\n // 节点单击\n\n /** 树展示数据 */\n const treeData = computed(() => {\n if (!c.state.isLoaded) {\n return [];\n }\n return c.model.rootVisible\n ? c.state.rootNodes\n : c.state.rootNodes.reduce<ITreeNodeData[]>((result, nodeData) => {\n if (nodeData.children) {\n return result.concat(nodeData.children);\n }\n return result;\n }, []);\n });\n\n /**\n * 触发节点加载数据\n * @author zk\n * @date 2023-05-29 09:16:07\n * @param {IData} item\n * @param {(nodes: IData[]) => void} callback\n */\n const loadData = async (\n item: IData,\n callback: (nodes: IData[]) => void,\n ) => {\n // 没加载前拦截\n if (!c.state.isLoaded) {\n return;\n }\n // 加载时拦截点击事件\n const nodes = await c.loadNodes(item.data);\n callback(nodes);\n };\n\n /**\n * 多选时选中节点变更\n *\n * @param {ITreeNodeData} nodeData\n */\n const onNodeCheck = (event: MouseEvent, opts: IData) => {\n const { originData } = opts;\n c.onTreeNodeClick(originData, event);\n };\n\n const onNodeClick = (event: MouseEvent, opts: IData) => {\n event.stopPropagation();\n const { originData } = opts;\n if (!originData.leaf) {\n return;\n }\n c.onTreeNodeClick(originData, event);\n };\n\n /**\n * 树数据格式化\n *\n * @author zk\n * @date 2023-07-03 11:07:59\n * @param {ITreeNodeData} data\n * @return {*}\n */\n const treeDataFormat = (data: ITreeNodeData) => {\n return {\n id: data.srfkey,\n name: data.text,\n children: data.children,\n isLeaf: data.leaf,\n };\n };\n\n const renderContent = (\n h: (tag: string, opt: IData) => VNode,\n opts: IData,\n ) => {\n const { originData } = opts;\n if (!originData.leaf) {\n return h('div', {\n text: '下级',\n className: 'tree-button',\n click: (e: Event, _opts: IData) => {\n _opts.store.breadcrumb.list.push(_opts);\n _opts.setExpand(true);\n },\n });\n }\n };\n\n const customNodeClick = (event: MouseEvent, opts: IData) => {\n const { checked } = opts;\n opts.setChecked(!checked);\n onNodeClick(event, opts);\n };\n\n // vs树配置项\n const options = {\n maxHeight: '100%',\n // 继承父状态\n checkInherit: false,\n // 不能选择父节点\n nocheckParent: true,\n rootName: c.model.detreeNodes?.find(item => item.rootNode)?.name,\n renderContent,\n customNodeClick,\n };\n\n if (breadcrumb.value) {\n Object.assign(options, {\n breadcrumb: {\n el: `#breadcrumb${uuid}`,\n link: (node: IData, data: IData) => {\n return data.name;\n },\n },\n });\n }\n return {\n c,\n ns,\n treeData,\n options,\n breadcrumb,\n checkedKeys,\n uuid,\n onNodeCheck,\n onNodeClick,\n loadData,\n treeDataFormat,\n };\n },\n render() {\n return (\n <iBizControlBase controller={this.c}>\n {this.breadcrumb && (\n <van-sticky>\n <div\n id={`breadcrumb${this.uuid}`}\n class={[this.ns.b('header')]}\n ></div>\n </van-sticky>\n )}\n {this.c.state.isCreated && this.c.state.isLoaded && (\n <vs-tree\n show-line\n class={[this.ns.b('content')]}\n lazy={true}\n strictLeaf={true}\n options={this.options}\n show-checkbox={!this.c.state.singleSelect}\n data={this.treeData}\n highlightCurrent={true}\n checkedKeys={this.checkedKeys}\n format={this.treeDataFormat}\n load={this.loadData}\n onCheck={this.onNodeCheck}\n ></vs-tree>\n )}\n </iBizControlBase>\n );\n },\n});\n\nexport default TreeControl;\n"],"names":["TreeControl","defineComponent","components","VsTreeComponent","props","modelData","type","required","context","params","Object","default","setup","c","_a","_b","useControlController","args","TreeController","checkedKeys","useNamespace","computed","item","breadcrumb","ref","result","nodeData","model","loadData","callback","nodes","onNodeCheck","event","opts","originData","onNodeClick","treeDataFormat","data","renderContent","h","e","_opts","customNodeClick","checked","options","srfkey","text","uuid","className","ns","treeData","maxHeight","checkInherit","_createVNode","_resolveComponent","nocheckParent","rootName","value","assign","link","node"],"mappings":"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"}
@@ -1 +1 @@
1
- .ibiz-control-appmenu-iconview{--ibiz-control-appmenu-icon-width:100%;--ibiz-control-appmenu-icon-view-icon-size:2.1875rem;--ibiz-control-appmenu-icon-view-icon-margin:0.3125rem}.ibiz-control-appmenu-iconview .van-grid-item__text{display:-webkit-box;flex:1;height:-moz-fit-content;height:fit-content;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ibiz-control-appmenu-iconview .van-badge__wrapper{display:flex;justify-content:center;width:100%}.ibiz-control-appmenu-iconview .van-grid-item__content--clickable:active{background-color:inherit}.ibiz-control-appmenu-iconview .ibiz-control-appmenu-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-appmenu-icon-width);margin-bottom:var(--ibiz-control-appmenu-icon-view-icon-margin);font-size:var(--ibiz-control-appmenu-icon-view-icon-size)}
1
+ .ibiz-control-appmenu-iconview{--ibiz-control-appmenu-icon-width:100%;--ibiz-control-appmenu-icon-view-icon-size:2.1875rem;--ibiz-control-appmenu-icon-view-icon-margin:0.3125rem;--ibiz-control-appmenu-icon-color:var(--ibiz-color-text-0)}.ibiz-control-appmenu-iconview .van-grid-item__text{display:-webkit-box;flex:1;height:-moz-fit-content;height:fit-content;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ibiz-control-appmenu-iconview .van-badge__wrapper{display:flex;justify-content:center;width:100%}.ibiz-control-appmenu-iconview .van-grid-item__content--clickable:active{background-color:inherit}.ibiz-control-appmenu-iconview .ibiz-control-appmenu-icon{display:flex;align-items:center;justify-content:center;width:var(--ibiz-control-appmenu-icon-view-icon-size);height:var(--ibiz-control-appmenu-icon-view-icon-size);margin-bottom:var(--ibiz-control-appmenu-icon-view-icon-margin);font-size:var(--ibiz-control-appmenu-icon-view-icon-size);color:var(--ibiz-control-appmenu-icon-color)}.ibiz-control-appmenu-iconview .ibiz-control-appmenu-icon .ibiz-icon{width:100%;height:100%}.ibiz-control-appmenu-iconview .ibiz-control-appmenu-icon svg.icon{width:100%;height:100%}.ibiz-control-appmenu-iconview .ibiz-control-appmenu-icon svg.icon path{fill:var(--ibiz-control-appmenu-icon-color)}.ibiz-icon svg.icon{width:100%;height:100%}.ibiz-icon svg.icon path{fill:currentcolor}
@@ -1 +1 @@
1
- .ibiz-control-appmenu-listview{--ibiz-control-appmenu-list-view-icon-size:var(--ibiz-font-size-header-4);--ibiz-control-appmenu-list-view-font-size:var(--ibiz-font-size-regular);--ibiz-control-appmenu-list-view-padding:0;--ibiz-control-appmenu-list-view-item-padding:0.5rem 1rem;--van-cell-border-color:var(--ibiz-color-border);--van-divider-margin:0.125rem;--van-divider-border-color:transparent;--van-cell-horizontal-padding:0.75rem;--van-cell-active-color:transparent;--van-cell-right-icon-color:var(--van-gray-6);border-radius:var(--ibiz-border-radius-small)}.ibiz-control-appmenu-listview .ibiz-control-appmenu-item{padding:var(--ibiz-control-appmenu-list-view-item-padding);font-size:var(--ibiz-control-appmenu-list-view-font-size)}.ibiz-control-appmenu-listview .ibiz-control-appmenu-item:last-child{border-width:0}.ibiz-control-appmenu-listview .van-cell::after{left:0}.ibiz-control-appmenu-listview .ibiz-control-appmenu-icon{display:flex;align-items:center;justify-content:center;margin-right:var(--ibiz-spacing-tight);font-size:var(--ibiz-control-appmenu-list-view-icon-size)}
1
+ .ibiz-control-appmenu-listview{--ibiz-control-appmenu-list-view-icon-size:var(--ibiz-font-size-header-4);--ibiz-control-appmenu-list-view-font-size:var(--ibiz-font-size-regular);--ibiz-control-appmenu-list-view-color:var(--ibiz-font-size-regular);--ibiz-control-appmenu-list-view-padding:0;--ibiz-control-appmenu-list-view-item-padding:0.5rem 1rem;--ibiz-control-appmenu-list-view-item-color:var(--ibiz-color-text-1);--van-cell-border-color:var(--ibiz-color-border);--van-divider-margin:0.125rem;--van-divider-border-color:transparent;--van-cell-horizontal-padding:0.75rem;--van-cell-active-color:transparent;--van-cell-right-icon-color:var(--van-gray-6);border-radius:var(--ibiz-border-radius-small)}.ibiz-control-appmenu-listview .ibiz-control-appmenu-item{padding:var(--ibiz-control-appmenu-list-view-item-padding);font-size:var(--ibiz-control-appmenu-list-view-font-size);color:var(--ibiz-control-appmenu-list-view-item-color)}.ibiz-control-appmenu-listview .ibiz-control-appmenu-item:last-child{border-width:0}.ibiz-control-appmenu-listview .van-cell::after{left:0}.ibiz-control-appmenu-listview .ibiz-control-appmenu-icon{display:flex;align-items:center;justify-content:center;margin-right:var(--ibiz-spacing-tight);font-size:var(--ibiz-control-appmenu-list-view-icon-size)}.ibiz-control-appmenu-listview .ibiz-control-appmenu-icon .ibiz-icon{display:flex;align-items:center}
@@ -30,11 +30,10 @@ export declare const CalendarControl: import("vue").DefineComponent<{
30
30
  }, {
31
31
  c: CalendarController;
32
32
  ns: import("@ibiz-template/core").Namespace;
33
- calendarRef: Ref<IData | undefined>;
34
33
  markerData: import("vue").ComputedRef<IData>;
35
- selectDate: (tag: string) => void;
34
+ loadItems: Ref<ICalendarItemData[]>;
36
35
  calcItemStyle: (data: ICalendarItemData) => IData;
37
- onClick: (date: string) => Promise<void>;
36
+ dateChange: (newDate: Date) => void;
38
37
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
39
38
  modelData: {
40
39
  type: PropType<ISysCalendar>;
@@ -1,10 +1,11 @@
1
- import { isVNode, ref, watch, computed, createVNode, resolveComponent, defineComponent } from 'vue';
1
+ import { isVNode, ref, computed, createVNode, resolveComponent, defineComponent } from 'vue';
2
2
  import { useControlController, useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './calendar.css';
4
4
  import { CalendarController } from '@ibiz-template/runtime';
5
5
  import dayjs from 'dayjs';
6
6
  import stdin_default from '../../node_modules/.pnpm/vue3-hash-calendar@1.1.3_vue@3.3.9/node_modules/vue3-hash-calendar/es/index.mjs';
7
7
  import 'vue3-hash-calendar/es/index.css';
8
+ import { getCurSelectMonthDate, getCurSelectDayDate } from './date-util.mjs';
8
9
 
9
10
  "use strict";
10
11
  function _isSlot(s) {
@@ -37,52 +38,20 @@ const CalendarControl = /* @__PURE__ */ defineComponent({
37
38
  },
38
39
  loadDefault: {
39
40
  type: Boolean,
40
- default: true
41
+ default: false
41
42
  }
42
43
  },
43
44
  setup() {
44
45
  const c = useControlController((...args) => new CalendarController(...args));
45
46
  const ns = useNamespace(`control-${c.model.controlType.toLowerCase()}`);
46
- const calendarRef = ref();
47
- const selectDate = (tag) => {
48
- if (!calendarRef.value)
49
- return;
50
- calendarRef.value.selectDate(tag);
51
- };
47
+ const loadItems = ref([]);
52
48
  const markDateItems = ref({});
53
- const getDayStartAndNextDayStart = (date) => {
54
- const dayStart = new Date(date);
55
- dayStart.setHours(0, 0, 0, 0);
56
- const nextDayStart = new Date(date);
57
- nextDayStart.setDate(nextDayStart.getDate() + 1);
58
- nextDayStart.setHours(0, 0, 0, 0);
59
- return {
60
- dayStart,
61
- nextDayStart
62
- };
63
- };
64
- watch(() => c.state.selectedDate, (oldVal, newVal) => {
65
- const oldDateString = dayjs(oldVal).format("YYYY-MM");
66
- const newDateString = dayjs(newVal).format("YYYY-MM");
67
- if (oldDateString === newDateString) {
68
- return;
69
- }
70
- const loadParam = {};
71
- const {
72
- dayStart,
73
- nextDayStart
74
- } = getDayStartAndNextDayStart(c.state.selectedDate);
75
- Object.assign(loadParam, {
76
- srfstartdate: dayjs(dayStart).format("YYYY-MM-DD HH:mm:ss"),
77
- srfenddate: dayjs(nextDayStart).format("YYYY-MM-DD HH:mm:ss")
78
- });
79
- c.load(loadParam);
80
- });
49
+ const loadMarkerItems = ref([]);
81
50
  const setMarkDate = (date) => {
82
51
  const copyDate = new Date(date);
83
52
  const items = markDateItems.value[dayjs(copyDate).format("YYYY-MM")];
84
53
  if (!items) {
85
- markDateItems.value[dayjs(copyDate).format("YYYY-MM")] = [...c.state.items];
54
+ markDateItems.value[dayjs(copyDate).format("YYYY-MM")] = [...loadMarkerItems.value];
86
55
  } else {
87
56
  const mergeAndFilter = (arr1, arr2) => {
88
57
  const mergedArray = arr1.concat(arr2);
@@ -100,6 +69,19 @@ const CalendarControl = /* @__PURE__ */ defineComponent({
100
69
  markDateItems.value[dayjs(copyDate).format("YYYY-MM")] = mergeAndFilter(markDateItems.value[dayjs(copyDate).format("YYYY-MM")], c.state.items);
101
70
  }
102
71
  };
72
+ const loadMarkerData = async (date) => {
73
+ const param = getCurSelectMonthDate(date);
74
+ loadMarkerItems.value = await c.load({
75
+ viewParam: param
76
+ });
77
+ setMarkDate(c.state.selectedDate);
78
+ };
79
+ const loadData = async (date) => {
80
+ const param = getCurSelectDayDate(date);
81
+ loadItems.value = await c.load({
82
+ viewParam: param
83
+ });
84
+ };
103
85
  const calcItemStyle = (data) => {
104
86
  return {
105
87
  color: data.color,
@@ -125,34 +107,26 @@ const CalendarControl = /* @__PURE__ */ defineComponent({
125
107
  });
126
108
  return date;
127
109
  });
128
- const onClick = async (date) => {
129
- c.state.selectedDate = new Date(date);
130
- const loadParam = {};
131
- const {
132
- dayStart,
133
- nextDayStart
134
- } = getDayStartAndNextDayStart(c.state.selectedDate);
135
- Object.assign(loadParam, {
136
- viewParam: {
137
- srfstartdate: dayjs(dayStart).format("YYYY-MM-DD HH:mm:ss"),
138
- srfenddate: dayjs(nextDayStart).format("YYYY-MM-DD HH:mm:ss")
139
- }
140
- });
141
- setTimeout(() => {
142
- c.load(loadParam);
143
- }, 200);
144
- };
145
- c.evt.on("onLoadSuccess", () => {
146
- setMarkDate(c.state.selectedDate);
110
+ c.evt.on("onMounted", () => {
111
+ loadMarkerData(c.state.selectedDate || /* @__PURE__ */ new Date());
112
+ loadData(c.state.selectedDate || /* @__PURE__ */ new Date());
147
113
  });
114
+ const dateChange = (newDate) => {
115
+ c.state.selectedDate = newDate;
116
+ loadData(c.state.selectedDate);
117
+ const items = markDateItems.value[dayjs(newDate).format("YYYY-MM")];
118
+ if (items) {
119
+ return;
120
+ }
121
+ loadMarkerData(c.state.selectedDate);
122
+ };
148
123
  return {
149
124
  c,
150
125
  ns,
151
- calendarRef,
152
126
  markerData,
153
- selectDate,
127
+ loadItems,
154
128
  calcItemStyle,
155
- onClick
129
+ dateChange
156
130
  };
157
131
  },
158
132
  render() {
@@ -230,23 +204,20 @@ const CalendarControl = /* @__PURE__ */ defineComponent({
230
204
  });
231
205
  };
232
206
  const renderCalendarListByItemType = (itemType) => {
233
- const list = this.c.state.items.filter((item) => item.itemType === itemType);
207
+ const list = this.loadItems.filter((item) => item.itemType === itemType);
234
208
  return renderCalendarList(list);
235
209
  };
236
- return createVNode(resolveComponent("iBizControlBase"), {
210
+ return this.c.state.isCreated && createVNode(resolveComponent("iBizControlBase"), {
237
211
  "controller": this.c
238
212
  }, {
239
213
  default: () => [createVNode("div", {
240
214
  "class": this.ns.b("content")
241
215
  }, [createVNode(stdin_default, {
242
216
  "show-week-view": true,
217
+ "pickerType": "date",
243
218
  "onChange": (date) => {
244
- this.c.state.selectedDate = date;
245
- },
246
- "onClick": (date) => {
247
- this.onClick(date);
248
- },
249
- "ref": "calendarRef"
219
+ this.dateChange(date);
220
+ }
250
221
  }, {
251
222
  day: ({
252
223
  date
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 获取当前选中月份区间日期
3
+ *
4
+ * @author zk
5
+ * @date 2023-12-21 05:12:44
6
+ * @export
7
+ * @param {Date} selectedDate
8
+ * @return {*} {IData}
9
+ */
10
+ export declare function getCurSelectMonthDate(selectedDate: Date): IData;
11
+ /**
12
+ * 获取当前选中日区间日期
13
+ *
14
+ * @author zk
15
+ * @date 2023-12-21 05:12:28
16
+ * @export
17
+ * @param {Date} selectedDate
18
+ * @return {*} {IData}
19
+ */
20
+ export declare function getCurSelectDayDate(date: Date): IData;
@@ -0,0 +1,32 @@
1
+ import dayjs from 'dayjs';
2
+
3
+ "use strict";
4
+ function getCurSelectMonthDate(selectedDate) {
5
+ const firstDayOfMonth = new Date(
6
+ selectedDate.getFullYear(),
7
+ selectedDate.getMonth(),
8
+ 1
9
+ );
10
+ const lastDayOfMonth = new Date(
11
+ selectedDate.getFullYear(),
12
+ selectedDate.getMonth() + 1,
13
+ 1
14
+ );
15
+ return {
16
+ srfstartdate: dayjs(firstDayOfMonth).format("YYYY-MM-DD HH:mm:ss"),
17
+ srfenddate: dayjs(lastDayOfMonth).format("YYYY-MM-DD HH:mm:ss")
18
+ };
19
+ }
20
+ function getCurSelectDayDate(date) {
21
+ const dayStart = new Date(date);
22
+ dayStart.setHours(0, 0, 0, 0);
23
+ const nextDayStart = new Date(date);
24
+ nextDayStart.setDate(nextDayStart.getDate() + 1);
25
+ nextDayStart.setHours(0, 0, 0, 0);
26
+ return {
27
+ srfstartdate: dayjs(dayStart).format("YYYY-MM-DD HH:mm:ss"),
28
+ srfenddate: dayjs(nextDayStart).format("YYYY-MM-DD HH:mm:ss")
29
+ };
30
+ }
31
+
32
+ export { getCurSelectDayDate, getCurSelectMonthDate };
@@ -26,11 +26,10 @@ export declare const IBizCalendarControl: import("@ibiz-template/vue3-util").Typ
26
26
  }, {
27
27
  c: import("@ibiz-template/runtime").CalendarController;
28
28
  ns: import("@ibiz-template/core").Namespace;
29
- calendarRef: import("vue").Ref<IData | undefined>;
30
29
  markerData: import("vue").ComputedRef<IData>;
31
- selectDate: (tag: string) => void;
30
+ loadItems: import("vue").Ref<import("@ibiz-template/runtime").ICalendarItemData[]>;
32
31
  calcItemStyle: (data: import("@ibiz-template/runtime").ICalendarItemData) => IData;
33
- onClick: (date: string) => Promise<void>;
32
+ dateChange: (newDate: Date) => void;
34
33
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
35
34
  modelData: {
36
35
  type: import("vue").PropType<import("@ibiz/model-core").ISysCalendar>;
@@ -1 +1 @@
1
- .ibiz-control-captionbar{--ibiz-control-captionbar-color:var(--ibiz-color-text-0);--ibiz-control-captionbar-font-size:var(--ibiz-font-size-header-5);--ibiz-control-captionbar-sub-main-font-size:var(--ibiz-font-size-header-6);--ibiz-control-captionbar-font-weight:var(--ibiz-font-weight-bold);--ibiz-control-captionbar-line-height:1.625rem;--ibiz-control-captionbar-text-align:center;--ibiz-control-captionbar-min-height:var(--ibiz-spacing-super-loose);--ibiz-control-captionbar-sub-caption-font-size:var(--ibiz-font-size-regular);--ibiz-control-captionbar-sub-caption-color:var(--ibiz-color-text-2);--ibiz-control-captionbar-padding:var(--ibiz-spacing-tight) 0;position:relative;display:flex;flex-direction:column;align-items:center;height:100%;min-height:var(--ibiz-control-captionbar-min-height);padding:var(--ibiz-control-captionbar-padding)}.ibiz-control-captionbar.is-hasSub .ibiz-control-captionbar-caption{font-size:var(--ibiz-control-captionbar-sub-main-font-size)}.ibiz-control-captionbar .ibiz-control-captionbar-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative;width:100%;height:100%;font-size:var(--ibiz-control-captionbar-font-size);font-weight:var(--ibiz-control-captionbar-font-weight);line-height:var(--ibiz-control-captionbar-line-height);color:var(--ibiz-control-captionbar-color);text-align:var(--ibiz-control-captionbar-text-align)}.ibiz-control-captionbar .ibiz-control-captionbar-sub-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:var(--ibiz-control-captionbar-sub-caption-font-size);color:var(--ibiz-control-captionbar-sub-caption-color);text-align:var(--ibiz-control-captionbar-text-align)}
1
+ .ibiz-control-captionbar{--ibiz-control-captionbar-color:var(--ibiz-color-text-0);--ibiz-control-captionbar-font-size:var(--ibiz-font-size-header-5);--ibiz-control-captionbar-sub-main-font-size:var(--ibiz-font-size-header-6);--ibiz-control-captionbar-font-weight:var(--ibiz-font-weight-bold);--ibiz-control-captionbar-line-height:1.625rem;--ibiz-control-captionbar-text-align:center;--ibiz-control-captionbar-min-height:var(--ibiz-spacing-super-loose);--ibiz-control-captionbar-sub-caption-font-size:var(--ibiz-font-size-regular);--ibiz-control-captionbar-sub-caption-color:var(--ibiz-color-text-2);--ibiz-control-captionbar-padding:var(--ibiz-spacing-tight) 0;position:relative;display:flex;flex-direction:column;align-items:center;height:100%;min-height:var(--ibiz-control-captionbar-min-height);padding:var(--ibiz-control-captionbar-padding)}.ibiz-control-captionbar.is-hasSub .ibiz-control-captionbar-caption{font-size:var(--ibiz-control-captionbar-sub-main-font-size)}.ibiz-control-captionbar-caption__icon{display:inline;margin-right:var(--ibiz-spacing-tight)}.ibiz-control-captionbar .ibiz-control-captionbar-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative;display:flex;width:100%;height:100%;font-size:var(--ibiz-control-captionbar-font-size);font-weight:var(--ibiz-control-captionbar-font-weight);line-height:var(--ibiz-control-captionbar-line-height);color:var(--ibiz-control-captionbar-color);text-align:var(--ibiz-control-captionbar-text-align)}.ibiz-control-captionbar .ibiz-control-captionbar-sub-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:var(--ibiz-control-captionbar-sub-caption-font-size);color:var(--ibiz-control-captionbar-sub-caption-color);text-align:var(--ibiz-control-captionbar-text-align)}
@@ -31,11 +31,14 @@ const CaptionBarControl = /* @__PURE__ */ defineComponent({
31
31
  render() {
32
32
  return createVNode(resolveComponent("iBizControlBase"), {
33
33
  "controller": this.c,
34
- "class": [this.ns.b(), this.ns.is("hasSub", Boolean(this.modelData.subCaption))]
34
+ "class": [this.ns.b(), this.ns.is("hasSub", Boolean(this.modelData.subCaption)), this.ns.is("show-icon", !!this.c.model.sysImage)]
35
35
  }, {
36
36
  default: () => [createVNode("div", {
37
37
  "class": this.ns.b("caption")
38
- }, [this.c.state.caption]), this.modelData.subCaption && createVNode("div", {
38
+ }, [this.c.model.sysImage && createVNode(resolveComponent("iBizIcon"), {
39
+ "class": [this.ns.be("caption", "icon")],
40
+ "icon": this.c.model.sysImage
41
+ }, null), this.c.state.caption]), this.modelData.subCaption && createVNode("div", {
39
42
  "class": this.ns.b("sub-caption")
40
43
  }, [this.modelData.subCaption])]
41
44
  });
@@ -13,7 +13,7 @@ export declare const IBizToolbarControl: import("@ibiz-template/vue3-util").Type
13
13
  };
14
14
  }, {
15
15
  c: import("@ibiz-template/runtime").ToolbarController<import("@ibiz/model-core").IControl, import("@ibiz-template/runtime").IToolbarState, import("@ibiz-template/runtime").IToolbarEvent>;
16
- btnSize: import("vue").ComputedRef<string>;
16
+ btnSize: import("vue").ComputedRef<"small" | "normal">;
17
17
  ns: import("@ibiz-template/core").Namespace;
18
18
  position: string;
19
19
  handleClick: (item: import("@ibiz/model-core").IDEToolbarItem | import("@ibiz-template/runtime").IExtraButton, event: MouseEvent) => Promise<void>;
@@ -1 +1 @@
1
- .ibiz-control-toolbar{--ibiz-control-toolbar-item-margin:0 0.25rem;--ibiz-control-toolbar-icon-margin:0 0.3125rem 0 0;--ibiz-control-toolbar-icon-max-width:1rem;--ibiz-control-toolbar-icon-max-height:1rem;--ibiz-control-toolbar-icon-font-size:1.25rem;display:flex;height:100%}.ibiz-control-toolbar__item{display:flex;align-items:center;margin:var(--ibiz-control-toolbar-item-margin)}.ibiz-control-toolbar__item-left{margin-left:0}.ibiz-control-toolbar__item-left .van-button{background-color:transparent;border:none}.ibiz-control-toolbar__item-left .van-button ion-icon{font-size:var(--ibiz-control-toolbar-icon-font-size)}.ibiz-control-toolbar__item-left .van-button .van-button__text{display:flex;align-items:center}.ibiz-control-toolbar__item-right{margin-right:0;background-color:transparent}.ibiz-control-toolbar__item-right .van-button{background-color:transparent;border:none}.ibiz-control-toolbar__item-right .van-button ion-icon{font-size:var(--ibiz-control-toolbar-icon-font-size)}.ibiz-control-toolbar__item-right .van-button .van-button__text{display:flex;align-items:center}.ibiz-control-toolbar__item-separator+.ibiz-control-toolbar__item-separator,.ibiz-control-toolbar__item-separator:first-child{display:none}.ibiz-control-toolbar-mobnavrightmenu__item{margin-right:0}.ibiz-control-toolbar-right{justify-content:flex-end}
1
+ .ibiz-control-toolbar{--ibiz-control-toolbar-item-margin:0 0.25rem;--ibiz-control-toolbar-icon-margin:0 0.3125rem 0 0;--ibiz-control-toolbar-icon-max-width:1rem;--ibiz-control-toolbar-icon-max-height:1rem;--ibiz-control-toolbar-icon-font-size:1.25rem;--ibiz-control-toolbar-toolbar-bottom-padding:var(--ibiz-spacing-base-tight);display:flex;height:100%}.ibiz-control-toolbar__item{display:flex;align-items:center;margin:var(--ibiz-control-toolbar-item-margin)}.ibiz-control-toolbar__item-left{margin-left:0}.ibiz-control-toolbar__item-left .van-button{background-color:transparent;border:none}.ibiz-control-toolbar__item-left .van-button ion-icon{font-size:var(--ibiz-control-toolbar-icon-font-size)}.ibiz-control-toolbar__item-left .van-button .van-button__text{display:flex;align-items:center}.ibiz-control-toolbar__item-right{margin-right:0;background-color:transparent}.ibiz-control-toolbar__item-right .van-button{background-color:transparent;border:none}.ibiz-control-toolbar__item-right .van-button ion-icon{font-size:var(--ibiz-control-toolbar-icon-font-size)}.ibiz-control-toolbar__item-right .van-button .van-button__text{display:flex;align-items:center}.ibiz-control-toolbar__item-separator+.ibiz-control-toolbar__item-separator,.ibiz-control-toolbar__item-separator:first-child{display:none}.ibiz-control-toolbar-mobnavrightmenu__item{margin-right:0}.ibiz-control-toolbar-right{justify-content:flex-end}.ibiz-control-toolbar-bottom{display:flex;padding:var(--ibiz-control-toolbar-toolbar-bottom-padding)}.ibiz-control-toolbar-bottom .ibiz-control-toolbar__item{flex:1;--van-button-default-height:2.5rem}.ibiz-control-toolbar-bottom .ibiz-control-toolbar__item button{width:100%}.ibiz-control-toolbar-bottom .ibiz-control-toolbar__item .van-button__text{display:flex;gap:8px;align-items:center}
@@ -17,7 +17,7 @@ export declare const ToolbarControl: import("vue").DefineComponent<{
17
17
  };
18
18
  }, {
19
19
  c: ToolbarController<import("@ibiz/model-core").IControl, import("@ibiz-template/runtime").IToolbarState, import("@ibiz-template/runtime").IToolbarEvent>;
20
- btnSize: import("vue").ComputedRef<string>;
20
+ btnSize: import("vue").ComputedRef<"small" | "normal">;
21
21
  ns: import("@ibiz-template/core").Namespace;
22
22
  position: string;
23
23
  handleClick: (item: IDEToolbarItem | IExtraButton, event: MouseEvent) => Promise<void>;
@@ -44,9 +44,6 @@ const ToolbarControl = /* @__PURE__ */ defineComponent({
44
44
  setup(props) {
45
45
  const c = useControlController((...args) => new ToolbarController(...args));
46
46
  const ns = useNamespace(`control-${c.model.controlType.toLowerCase()}`);
47
- const btnSize = computed(() => {
48
- return c.state.viewMode === "EMBED" ? "small" : "small";
49
- });
50
47
  const handleClick = async (item, event) => {
51
48
  await c.onItemClick(item, event);
52
49
  };
@@ -58,12 +55,18 @@ const ToolbarControl = /* @__PURE__ */ defineComponent({
58
55
  case "MOBNAVLEFTMENU":
59
56
  position = "left";
60
57
  break;
61
- case "MOBNAVBOTTOMMENU":
58
+ case "MOBBOTTOMMENU":
62
59
  position = "bottom";
63
60
  break;
64
61
  default:
65
62
  break;
66
63
  }
64
+ const btnSize = computed(() => {
65
+ return position === "bottom" ? "normal" : "small";
66
+ });
67
+ const btnType = (item) => {
68
+ return item.actionLevel > 100 ? "primary " : "default";
69
+ };
67
70
  const renderExtraButtons = (extraButtons) => {
68
71
  return extraButtons.map((button) => {
69
72
  let _slot;
@@ -116,6 +119,7 @@ const ToolbarControl = /* @__PURE__ */ defineComponent({
116
119
  }, [createVNode(resolveComponent("van-button"), {
117
120
  "title": item.tooltip,
118
121
  "size": btnSize.value,
122
+ "type": btnType(item),
119
123
  "loading": c.state.buttonsState[itemId].loading,
120
124
  "disabled": c.state.buttonsState[itemId].disabled,
121
125
  "onClick": (e) => handleClick(item, e)
@@ -39,7 +39,7 @@ export declare const TreeControl: import("vue").DefineComponent<{
39
39
  default: boolean;
40
40
  };
41
41
  }, {
42
- c: TreeController;
42
+ c: TreeController<IDETree, import("@ibiz-template/runtime").ITreeState, import("@ibiz-template/runtime").ITreeEvent>;
43
43
  ns: import("@ibiz-template/core").Namespace;
44
44
  treeData: import("vue").ComputedRef<ITreeNodeData[]>;
45
45
  options: {
@@ -50,13 +50,13 @@ export declare const TreeControl: import("vue").DefineComponent<{
50
50
  renderContent: (h: (tag: string, opt: IData) => VNode, opts: IData) => VNode<import("vue").RendererNode, import("vue").RendererElement, {
51
51
  [key: string]: any;
52
52
  }> | undefined;
53
- customNodeClick: (event: Event, opts: IData) => void;
53
+ customNodeClick: (event: MouseEvent, opts: IData) => void;
54
54
  };
55
55
  breadcrumb: import("vue").Ref<boolean>;
56
56
  checkedKeys: import("vue").ComputedRef<any[]>;
57
57
  uuid: string;
58
- onNodeCheck: (event: Event, opts: IData) => void;
59
- onNodeClick: (event: Event, opts: IData) => void;
58
+ onNodeCheck: (event: MouseEvent, opts: IData) => void;
59
+ onNodeClick: (event: MouseEvent, opts: IData) => void;
60
60
  loadData: (item: IData, callback: (nodes: IData[]) => void) => Promise<void>;
61
61
  treeDataFormat: (data: ITreeNodeData) => {
62
62
  id: string | undefined;
@@ -79,7 +79,7 @@ const TreeControl = /* @__PURE__ */ defineComponent({
79
79
  const {
80
80
  originData
81
81
  } = opts;
82
- c.onTreeNodeClick(originData);
82
+ c.onTreeNodeClick(originData, event);
83
83
  };
84
84
  const onNodeClick = (event, opts) => {
85
85
  event.stopPropagation();
@@ -89,7 +89,7 @@ const TreeControl = /* @__PURE__ */ defineComponent({
89
89
  if (!originData.leaf) {
90
90
  return;
91
91
  }
92
- c.onTreeNodeClick(originData);
92
+ c.onTreeNodeClick(originData, event);
93
93
  };
94
94
  const treeDataFormat = (data) => {
95
95
  return {
@@ -74,7 +74,10 @@ const IBizDataMPicker = /* @__PURE__ */ defineComponent({
74
74
  render() {
75
75
  const renderToolbar = () => {
76
76
  return createVNode("div", {
77
- "class": this.ns.b("toolbar")
77
+ "class": this.ns.b("toolbar"),
78
+ "onClick": (e) => {
79
+ e.stopPropagation();
80
+ }
78
81
  }, [createVNode("button", {
79
82
  "type": "button",
80
83
  "class": this.ns.be("toolbar", "cancel"),
@@ -102,7 +105,8 @@ const IBizDataMPicker = /* @__PURE__ */ defineComponent({
102
105
  return createVNode(resolveComponent("van-cell"), {
103
106
  "title": item.text,
104
107
  "clickable": true,
105
- "onClick": () => {
108
+ "onClick": (e) => {
109
+ e.stopPropagation();
106
110
  this.toggle(index);
107
111
  }
108
112
  }, {
@@ -0,0 +1,2 @@
1
+ export { IBizDataMPicker } from './data-mpicker/ibiz-data-mpicker';
2
+ export { IBizCommonRightIcon } from './right-icon/right-icon';
@@ -0,0 +1,4 @@
1
+ export { IBizDataMPicker } from './data-mpicker/ibiz-data-mpicker.mjs';
2
+ export { IBizCommonRightIcon } from './right-icon/right-icon.mjs';
3
+
4
+ "use strict";
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-mpicker{--van-tag-radius:3.125rem}.ibiz-mpicker .van-field{font-size:var(--ibiz-form-item-font-size)}.ibiz-mpicker .van-field::after{display:none}.ibiz-mpicker .van-field__right-icon button{color:var(--van-field-right-icon-color);border:none}.ibiz-mpicker .van-field__control--custom{flex-wrap:wrap}.ibiz-mpicker .van-field__control{gap:.5rem}.ibiz-mpicker .van-field__control .van-tag{height:100%;padding:.3125rem;--van-tag-font-size:var(--ibiz-form-item-font-size)}.ibiz-mpicker input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-mpicker--disabled{opacity:.8}.ibiz-mpicker--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}
1
+ @charset "UTF-8";.ibiz-mpicker .van-field{font-size:var(--ibiz-form-item-font-size)}.ibiz-mpicker .van-field::after{display:none}.ibiz-mpicker .van-field__right-icon button{color:var(--van-field-right-icon-color);border:none}.ibiz-mpicker .van-field__control--custom{flex-wrap:wrap}.ibiz-mpicker .van-field__control{gap:var(--ibiz-spacing-tight)}.ibiz-mpicker input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-mpicker--disabled{opacity:.8}.ibiz-mpicker--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}.ibiz-mpicker .ibiz-mpicker-select-item{display:flex;gap:var(--ibiz-spacing-tight);align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-tight);background-color:var(--ibiz-color-disabled-bg);border-radius:var(--ibiz-border-radius-small)}
@@ -174,15 +174,19 @@ const IBizMPicker = /* @__PURE__ */ defineComponent({
174
174
  }, {
175
175
  input: () => {
176
176
  return this.selectItems.map((item) => {
177
- return createVNode(resolveComponent("van-tag"), {
178
- "closeable": true,
179
- "type": "primary",
180
- "onClose": () => {
177
+ return createVNode("div", {
178
+ "class": this.ns.b("select-item")
179
+ }, [createVNode("div", {
180
+ "class": this.ns.be("select-item", "text")
181
+ }, [item.srfmajortext]), createVNode("div", {
182
+ "class": this.ns.be("select-item", "close")
183
+ }, [createVNode(resolveComponent("van-icon"), {
184
+ "name": "cross",
185
+ "onClick": (e) => {
186
+ e.stopPropagation();
181
187
  this.onRemove(item[this.c.keyName]);
182
188
  }
183
- }, {
184
- default: () => [item.srfmajortext]
185
- });
189
+ }, null)])]);
186
190
  });
187
191
  },
188
192
  "right-icon": () => {
@@ -1 +1 @@
1
- .ibiz-picker{height:100%}.ibiz-picker .van-field{font-size:var(--ibiz-form-item-font-size)}.ibiz-picker .van-field__button button{color:var(--van-field-right-icon-color);border:none}.ibiz-picker ion-icon{cursor:pointer}.ibiz-picker__buns-position{position:relative;display:inline-block}.ibiz-picker__btns{position:absolute;right:0;display:flex}.ibiz-picker__btns span{display:flex;flex-flow:column nowrap;justify-content:center}.ibiz-picker__autocomplete{display:flex}.ibiz-picker__autocomplete .el-autocomplete{width:100%}.ibiz-picker__transfer-item{padding:.3125rem;cursor:pointer}.ibiz-picker__transfer-item:hover{background-color:var(--ibiz-form-item-hover-bg-color)}.ibiz-picker__link{width:2rem;height:2rem;padding:0 .375rem}.ibiz-picker--disabled ion-icon{pointer-events:none}.ibiz-picker--readonly{color:var(--ibiz-form-item-readonly-color)}.ibiz-picker input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-picker--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}
1
+ .ibiz-picker{height:100%}.ibiz-picker .van-field{font-size:var(--ibiz-form-item-font-size)}.ibiz-picker .van-field::after{display:none}.ibiz-picker .van-field__button button{color:var(--van-field-right-icon-color);border:none}.ibiz-picker ion-icon{cursor:pointer}.ibiz-picker__buns-position{position:relative;display:inline-block}.ibiz-picker__btns{position:absolute;right:0;display:flex}.ibiz-picker__btns span{display:flex;flex-flow:column nowrap;justify-content:center}.ibiz-picker__autocomplete{display:flex}.ibiz-picker__autocomplete .el-autocomplete{width:100%}.ibiz-picker__transfer-item{padding:.3125rem;cursor:pointer}.ibiz-picker__transfer-item:hover{background-color:var(--ibiz-form-item-hover-bg-color)}.ibiz-picker__link{width:2rem;height:2rem;padding:0 .375rem}.ibiz-picker--disabled ion-icon{pointer-events:none}.ibiz-picker--readonly{color:var(--ibiz-form-item-readonly-color)}.ibiz-picker input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-picker--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}
@@ -27,12 +27,8 @@ export declare const IBizPickerSelectView: import("vue").DefineComponent<{
27
27
  context: Ref<{
28
28
  [x: string]: any;
29
29
  [x: symbol]: any;
30
- srfsandbox?: string | undefined;
30
+ srfsessionid: string;
31
31
  srfappid: string;
32
- getOwnContext: () => IData;
33
- destroy: () => void;
34
- clone: () => IContext;
35
- reset: (context?: IData | undefined, parent?: IContext | undefined) => void;
36
32
  }>;
37
33
  params: Ref<IParams>;
38
34
  editorRef: Ref<any>;
@@ -1 +1 @@
1
- .ibiz-dropdown-list{height:100%;--van-tag-radius:3.125rem}.ibiz-dropdown-list .van-field__control{gap:.5rem}.ibiz-dropdown-list .van-field__control .van-tag{height:100%;padding:.3125rem;--van-tag-font-size:var(--ibiz-form-item-font-size)}.ibiz-dropdown-list .van-picker .van-picker__mask{background-image:var(--ibiz-color-overlay-bg)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar button{padding:0;background-color:transparent;border:none}.ibiz-dropdown-list-toolbar__confirm{color:var(--ibiz-color-primary)}.ibiz-dropdown-list-toolbar__cancel{color:var(--ibiz-color-text-3)}.ibiz-dropdown-list .ibiz-dropdown-list-columns{min-height:30vh;max-height:50vh;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell-group{height:100%;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell{padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-dropdown-list--disabled{opacity:.8}.ibiz-dropdown-list--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}.ibiz-dropdown-list .van-cell-group--inset{margin:0}.ibiz-dropdown-list__select::after{display:none}.ibiz-dropdown-list .van-cell__title,.ibiz-dropdown-list .van-cell__value{text-align:left}
1
+ .ibiz-dropdown-list{height:100%}.ibiz-dropdown-list .van-field__control{gap:var(--ibiz-spacing-tight)}.ibiz-dropdown-list .van-picker .van-picker__mask{background-image:var(--ibiz-color-overlay-bg)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar button{padding:0;background-color:transparent;border:none}.ibiz-dropdown-list-toolbar__confirm{color:var(--ibiz-color-primary)}.ibiz-dropdown-list-toolbar__cancel{color:var(--ibiz-color-text-3)}.ibiz-dropdown-list .ibiz-dropdown-list-columns{min-height:30vh;max-height:50vh;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell-group{height:100%;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell{padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-dropdown-list--disabled{opacity:.8}.ibiz-dropdown-list--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}.ibiz-dropdown-list .van-cell-group--inset{margin:0}.ibiz-dropdown-list .ibiz-dropdown-list-select-item{display:flex;gap:var(--ibiz-spacing-tight);align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-tight);background-color:var(--ibiz-color-disabled-bg);border-radius:var(--ibiz-border-radius-small)}.ibiz-dropdown-list__select::after{display:none}.ibiz-dropdown-list .van-cell__title,.ibiz-dropdown-list .van-cell__value{text-align:left}
@@ -20,13 +20,20 @@ const IBizDropdownList = /* @__PURE__ */ defineComponent({
20
20
  if (!props.value) {
21
21
  return [];
22
22
  }
23
- return items.value.filter((item) => (props.value.split(",") || []).findIndex((value) => item.value === value) !== -1);
23
+ return items.value.filter((item) => (props.value.split(",") || []).findIndex(
24
+ // 不用判断类型兼容类型不匹配
25
+ // eslint-disable-next-line eqeqeq
26
+ (value) => item.value == value
27
+ ) !== -1);
24
28
  });
25
29
  const selectKeys = computed(() => {
26
30
  if (!props.value) {
27
31
  return [];
28
32
  }
29
- return items.value.filter((item) => (props.value.split(",") || []).findIndex((value) => item.value === value) !== -1).map((item) => item.value);
33
+ return items.value.filter((item) => (props.value.split(",") || []).findIndex(
34
+ // eslint-disable-next-line eqeqeq
35
+ (value) => item.value == value
36
+ ) !== -1).map((item) => item.value);
30
37
  });
31
38
  c.loadCodeList(props.data).then((codeList) => {
32
39
  items.value = codeList;
@@ -93,15 +100,19 @@ const IBizDropdownList = /* @__PURE__ */ defineComponent({
93
100
  "right-icon": createVNode(IBizCommonRightIcon, null, null),
94
101
  input: () => {
95
102
  return this.selectItems.map((item) => {
96
- return createVNode(resolveComponent("van-tag"), {
97
- "closeable": true,
98
- "type": "primary",
99
- "onClose": () => {
103
+ return createVNode("div", {
104
+ "class": this.ns.b("select-item")
105
+ }, [createVNode("div", {
106
+ "class": this.ns.be("select-item", "text")
107
+ }, [item.text]), createVNode("div", {
108
+ "class": this.ns.be("select-item", "close")
109
+ }, [createVNode(resolveComponent("van-icon"), {
110
+ "name": "cross",
111
+ "onClick": (e) => {
112
+ e.stopPropagation();
100
113
  this.onRemove(item);
101
114
  }
102
- }, {
103
- default: () => [item.text]
104
- });
115
+ }, null)])]);
105
116
  });
106
117
  }
107
118
  }), createVNode(IBizDataMPicker, {
@@ -3,3 +3,23 @@ export declare const IBizEditor: {
3
3
  install: (v: App) => void;
4
4
  };
5
5
  export default IBizEditor;
6
+ export * from './cascader';
7
+ export * from './check-box';
8
+ export * from './check-box-list';
9
+ export * from './data-picker';
10
+ export * from './date-picker';
11
+ export * from './date-range';
12
+ export * from './dropdown-list';
13
+ export * from './markdown';
14
+ export * from './number-range';
15
+ export * from './radio-button-list';
16
+ export * from './radio-button-list';
17
+ export * from './rate';
18
+ export * from './slider';
19
+ export * from './span';
20
+ export * from './stepper';
21
+ export * from './switch';
22
+ export * from './text-box';
23
+ export * from './upload';
24
+ export * from './color-picker';
25
+ export * from './common';