@yelingfeng/pandora2 1.0.2 → 1.0.4

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.
@@ -1,5 +1,5 @@
1
+ import { ComputedRef, Ref } from 'vue';
1
2
  import { IFormProps, IFormSchema } from '../types';
2
- import { Ref, ComputedRef } from 'vue';
3
3
  interface UseFormValuesContext {
4
4
  defaultValueRef: Ref<any>;
5
5
  getSchema: ComputedRef<IFormSchema[]>;
@@ -37,6 +37,7 @@ export type IFormProps = {
37
37
  resetButtonOptions?: Partial<ButtonProps>;
38
38
  submitButtonOptions?: Partial<ButtonProps>;
39
39
  actionColOptions?: Partial<ColProps>;
40
+ actionColStyle?: CSSProperties;
40
41
  showResetButton?: boolean;
41
42
  showSubmitButton?: boolean;
42
43
  hideRequiredAsterisk?: boolean;
@@ -1,4 +1,4 @@
1
- import { isRef, unref, inject, computed, watchEffect, watch, ref, onUnmounted, nextTick, defineComponent, createVNode as createVNode$1, shallowRef, onMounted, onBeforeUnmount, getCurrentInstance, reactive, readonly, provide, resolveComponent, createElementBlock, openBlock, normalizeClass, normalizeStyle as normalizeStyle$1, createBlock, createCommentVNode, normalizeProps, mergeProps, withCtx, createElementVNode, renderSlot, createTextVNode, toDisplayString, toRaw, createSlots, Fragment, renderList, toRefs, withDirectives, h as h$1, vShow, withKeys, guardReactiveProps, createStaticVNode, isVNode } from "vue";
1
+ import { isRef, unref, inject, computed, watchEffect, watch, ref, onUnmounted, nextTick, defineComponent, createVNode as createVNode$1, shallowRef, onMounted, onBeforeUnmount, getCurrentInstance, reactive, readonly, provide, resolveComponent, createElementBlock, openBlock, normalizeClass, normalizeStyle as normalizeStyle$1, createBlock, createCommentVNode, normalizeProps, mergeProps, withCtx, createElementVNode, renderSlot, createTextVNode, toDisplayString, toRaw, createSlots, Fragment, renderList, toRefs, withDirectives, vShow, isVNode, withKeys, guardReactiveProps, createStaticVNode, h as h$1 } from "vue";
2
2
  import { ElButton, ElCol, ElSelect, ElAutocomplete, ElCheckbox, ElCheckboxGroup, ElCascader, ElDatePicker, ElInput, ElInputNumber, ElTimePicker, ElTimeSelect, ElSlider, ElOption, ElSwitch, ElRadio, ElRadioGroup, ElRate, ElDivider, ElTooltip, ElFormItem, ElRow, ElForm, ElIcon, ElTableColumn, ElTable } from "element-plus";
3
3
  const withInstall = (G, Q) => {
4
4
  if (G.install = (H) => {
@@ -50569,9 +50569,14 @@ const prefixCls = "pandora-basic-arrow", _sfc_main$b = /* @__PURE__ */ defineCom
50569
50569
  };
50570
50570
  }), K = computed(() => {
50571
50571
  const { actionColStyle: te } = G;
50572
- return {
50572
+ return te.textAlign === "left" ? {
50573
+ width: "100%",
50574
+ marginLeft: "10px",
50575
+ marginTop: "1px",
50576
+ textAlign: "left"
50577
+ } : {
50573
50578
  width: "100%",
50574
- "text-align": te.textAlign ? te.textAlign : "right"
50579
+ textAlign: te.textAlign ? te.textAlign : "right"
50575
50580
  };
50576
50581
  }), W = computed(() => Object.assign(
50577
50582
  {
@@ -50627,7 +50632,7 @@ function _sfc_render$4(G, Q, H, K, W, X) {
50627
50632
  renderSlot(G.$slots, "advanceBefore"),
50628
50633
  G.showAdvancedButton && !G.hideAdvanceBtn ? (openBlock(), createBlock(ee, {
50629
50634
  key: 2,
50630
- type: "text",
50635
+ link: "",
50631
50636
  size: "small",
50632
50637
  onClick: G.toggleAdvanced
50633
50638
  }, {
@@ -50973,7 +50978,11 @@ const props = {
50973
50978
  }, [getSlot(Q) || createVNode$1(warning_default, null, null)])]
50974
50979
  });
50975
50980
  }
50976
- }), _sfc_main$7 = defineComponent({
50981
+ });
50982
+ function _isSlot$2(G) {
50983
+ return typeof G == "function" || Object.prototype.toString.call(G) === "[object Object]" && !isVNode(G);
50984
+ }
50985
+ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
50977
50986
  name: "PandoraBasicFormItem",
50978
50987
  inheritAttrs: !1,
50979
50988
  props: {
@@ -51004,12 +51013,34 @@ const props = {
51004
51013
  type: Object
51005
51014
  }
51006
51015
  },
51007
- setup(G, { slots: Q }) {
51008
- const { schema: H } = toRefs(G), K = computed(() => {
51009
- const { schema: ie, tableAction: oe, formModel: se, formActionType: Ae } = G, { componentProps: le = {} } = ie;
51010
- return isFunction$2(le) ? le({ schema: ie, tableAction: oe, formModel: se, formActionType: Ae }) ?? {} : le;
51016
+ setup(G, {
51017
+ slots: Q
51018
+ }) {
51019
+ const {
51020
+ schema: H
51021
+ } = toRefs(G), K = computed(() => {
51022
+ const {
51023
+ schema: ie,
51024
+ tableAction: oe,
51025
+ formModel: se,
51026
+ formActionType: Ae
51027
+ } = G, {
51028
+ componentProps: le = {}
51029
+ } = ie;
51030
+ return isFunction$2(le) ? le({
51031
+ schema: ie,
51032
+ tableAction: oe,
51033
+ formModel: se,
51034
+ formActionType: Ae
51035
+ }) ?? {} : le;
51011
51036
  }), W = computed(() => {
51012
- const { allDefaultValues: ie, formModel: oe, schema: se } = G, { mergeDynamicData: Ae } = G.formProps;
51037
+ const {
51038
+ allDefaultValues: ie,
51039
+ formModel: oe,
51040
+ schema: se
51041
+ } = G, {
51042
+ mergeDynamicData: Ae
51043
+ } = G.formProps;
51013
51044
  return {
51014
51045
  field: se.field,
51015
51046
  model: oe,
@@ -51021,18 +51052,39 @@ const props = {
51021
51052
  schema: se
51022
51053
  };
51023
51054
  }), X = computed(() => {
51024
- const { disabled: ie } = G.formProps, { dynamicDisabled: oe } = G.schema, { disabled: se = !1 } = unref(K);
51055
+ const {
51056
+ disabled: ie
51057
+ } = G.formProps, {
51058
+ dynamicDisabled: oe
51059
+ } = G.schema, {
51060
+ disabled: se = !1
51061
+ } = unref(K);
51025
51062
  let Ae = !!ie || se;
51026
51063
  return isBoolean(oe) && (Ae = oe), isFunction$2(oe) && (Ae = oe(unref(W))), Ae;
51027
51064
  });
51028
51065
  function ee() {
51029
- const { show: ie, ifShow: oe } = G.schema, { showAdvancedButton: se } = G.formProps, Ae = se && isBoolean(G.schema.isAdvanced) ? G.schema.isAdvanced : !0;
51066
+ const {
51067
+ show: ie,
51068
+ ifShow: oe
51069
+ } = G.schema, {
51070
+ showAdvancedButton: se
51071
+ } = G.formProps, Ae = se && isBoolean(G.schema.isAdvanced) ? G.schema.isAdvanced : !0;
51030
51072
  let le = !0, ue = !0;
51031
- return isBoolean(ie) && (le = ie), isBoolean(oe) && (ue = oe), isFunction$2(ie) && (le = ie(unref(W))), isFunction$2(oe) && (ue = oe(unref(W))), le = le && Ae, { isShow: le, isIfShow: ue };
51073
+ return isBoolean(ie) && (le = ie), isBoolean(oe) && (ue = oe), isFunction$2(ie) && (le = ie(unref(W))), isFunction$2(oe) && (ue = oe(unref(W))), le = le && Ae, {
51074
+ isShow: le,
51075
+ isIfShow: ue
51076
+ };
51032
51077
  }
51033
51078
  const te = (ie) => {
51034
- const { schema: oe, tableAction: se, formModel: Ae, formActionType: le } = G;
51035
- let { componentProps: ue = {} } = unref(oe) || {};
51079
+ const {
51080
+ schema: oe,
51081
+ tableAction: se,
51082
+ formModel: Ae,
51083
+ formActionType: le
51084
+ } = G;
51085
+ let {
51086
+ componentProps: ue = {}
51087
+ } = unref(oe) || {};
51036
51088
  isFunction$2(ue) && (ue = ue({
51037
51089
  schema: oe,
51038
51090
  tableAction: se,
@@ -51043,21 +51095,40 @@ const props = {
51043
51095
  if (Array.isArray(ce)) {
51044
51096
  if (ie === "CheckboxGroup") {
51045
51097
  const fe = componentMap.get("Checkbox");
51046
- return ce.map(
51047
- ({ label: he, value: de }) => h$1(fe, { label: de, key: de }, () => he)
51048
- );
51098
+ return ce.map(({
51099
+ label: he,
51100
+ value: de
51101
+ }) => createVNode$1(fe, {
51102
+ label: de,
51103
+ key: de
51104
+ }, _isSlot$2(he) ? he : {
51105
+ default: () => [he]
51106
+ }));
51049
51107
  }
51050
51108
  if (ie === "Select") {
51051
51109
  const fe = componentMap.get("SelectOption");
51052
- return ce.map(
51053
- ({ label: he, value: de }) => h$1(fe, { label: he, value: de, key: de }, () => he)
51054
- );
51110
+ return ce.map(({
51111
+ label: he,
51112
+ value: de
51113
+ }) => createVNode$1(fe, {
51114
+ label: he,
51115
+ value: de,
51116
+ key: de
51117
+ }, _isSlot$2(he) ? he : {
51118
+ default: () => [he]
51119
+ }));
51055
51120
  }
51056
51121
  if (ie === "RadioGroup") {
51057
51122
  const fe = componentMap.get("Radio");
51058
- return ce.map(
51059
- ({ label: he, value: de }) => h$1(fe, { label: de, key: de }, () => he)
51060
- );
51123
+ return ce.map(({
51124
+ label: he,
51125
+ value: de
51126
+ }) => createVNode$1(fe, {
51127
+ label: de,
51128
+ key: de
51129
+ }, _isSlot$2(he) ? he : {
51130
+ default: () => [he]
51131
+ }));
51061
51132
  }
51062
51133
  }
51063
51134
  }, re = () => {
@@ -51067,97 +51138,129 @@ const props = {
51067
51138
  field: se,
51068
51139
  changeEvent: Ae = "change",
51069
51140
  valueField: le
51070
- } = G.schema, ue = oe && ["Switch", "Checkbox"].includes(oe), ce = `on${upperFirst(Ae)}`, fe = {
51071
- [ce]: (...ye) => {
51072
- const [_e] = ye;
51073
- de[ce] && de[ce](...ye);
51074
- const Se = _e ? _e.target : null, we = Se ? ue ? Se.checked : Se.value : _e;
51075
- G.setFormModel(se, we);
51076
- }
51077
- }, he = componentMap.get(oe), de = {
51141
+ } = G.schema, ue = oe && ["Switch", "Checkbox"].includes(oe), ce = `on${upperFirst(Ae)}`, fe = componentMap.get(oe);
51142
+ if (!fe) return null;
51143
+ const he = {
51078
51144
  getPopupContainer: (ye) => ye.parentNode,
51079
51145
  ...unref(K),
51080
51146
  disabled: unref(X)
51081
- }, { autoSetPlaceHolder: pe } = G.formProps;
51082
- !de.disabled && pe && oe && (de.placeholder = unref(K)?.placeholder || createPlaceholderMessage(oe)), de.placeholder = unref(K)?.placeholder, de.codeField = se, de.formValues = unref(W);
51083
- const ge = {
51084
- [le || (ue ? "checked" : "value")]: G.formModel[se]
51147
+ }, {
51148
+ autoSetPlaceHolder: de
51149
+ } = G.formProps;
51150
+ !he.disabled && de && oe && (he.placeholder = unref(K)?.placeholder || createPlaceholderMessage(oe)), he.placeholder = unref(K)?.placeholder, he.codeField = se, he.formValues = unref(W);
51151
+ const ve = {
51152
+ [le || (ue ? "checked" : "modelValue")]: G.formModel[se]
51085
51153
  }, me = {
51086
- ...de,
51087
- ...fe,
51088
- ...ge
51154
+ ...he,
51155
+ ...{
51156
+ "onUpdate:modelValue": (...ye) => {
51157
+ const [_e] = ye;
51158
+ he[ce] && he[ce](...ye);
51159
+ const Se = _e ? _e.target : null, we = Se ? ue ? Se.checked : Se.value : _e;
51160
+ G.setFormModel(se, we);
51161
+ }
51162
+ },
51163
+ ...ve
51089
51164
  };
51090
- if (!he) return null;
51091
51165
  if (!ie) {
51092
51166
  const ye = te(oe);
51093
- return h$1(he, me, () => ye);
51167
+ return createVNode$1(fe, me, _isSlot$2(ye) ? ye : {
51168
+ default: () => [ye]
51169
+ });
51094
51170
  }
51095
51171
  if (isFunction$2(ie)) {
51096
51172
  const ye = ie(unref(W)) || {};
51097
- return ye && typeof ye == "object" ? h$1(he, me, ye) : h$1(he, me, { default: () => ye });
51173
+ return ye && typeof ye == "object" ? createVNode$1(fe, me, _isSlot$2(ye) ? ye : {
51174
+ default: () => [ye]
51175
+ }) : createVNode$1(fe, me, {
51176
+ default: () => ye
51177
+ });
51098
51178
  }
51099
- return h$1(he, me, { default: () => ie });
51179
+ return createVNode$1(fe, me, _isSlot$2(ie) ? ie : {
51180
+ default: () => [ie]
51181
+ });
51100
51182
  }, ae = () => {
51101
- const { label: ie, helpMessage: oe, helpComponentProps: se, subLabel: Ae } = G.schema, le = Ae ? h$1("span", null, [
51102
- ie,
51103
- " ",
51104
- h$1("span", { class: "text-secondary" }, Ae)
51105
- ]) : h$1("span", null, ie), ue = isFunction$2(oe) ? oe(unref(W)) : oe;
51106
- return ue !== void 0 || Array.isArray(ue) && ue.length > 0 ? h$1("span", null, [
51107
- le,
51108
- h$1(_sfc_main$8, {
51109
- placement: "top",
51110
- content: ue,
51111
- ...se || {}
51112
- })
51113
- ]) : h$1("span", null, [le]);
51183
+ const {
51184
+ label: ie,
51185
+ helpMessage: oe,
51186
+ helpComponentProps: se,
51187
+ subLabel: Ae
51188
+ } = G.schema, le = Ae ? createVNode$1("span", null, [ie, " ", createVNode$1("span", {
51189
+ class: "text-secondary"
51190
+ }, [Ae])]) : createVNode$1("span", null, [ie]), ue = isFunction$2(oe) ? oe(unref(W)) : oe;
51191
+ return ue !== void 0 || Array.isArray(ue) && ue.length > 0 ? createVNode$1("span", null, [le, createVNode$1(_sfc_main$8, mergeProps({
51192
+ placement: "top",
51193
+ content: ue
51194
+ }, se || {}), null)]) : createVNode$1("span", null, [le]);
51114
51195
  }, ne = () => {
51115
- const { label: ie, slot: oe, rules: se, render: Ae, field: le, suffix: ue, itemProps: ce, component: fe } = G.schema;
51196
+ const {
51197
+ label: ie,
51198
+ slot: oe,
51199
+ rules: se,
51200
+ render: Ae,
51201
+ field: le,
51202
+ suffix: ue,
51203
+ itemProps: ce,
51204
+ component: fe
51205
+ } = G.schema;
51116
51206
  if (fe === "Divider") {
51117
- const he = deepMerge({ contentPosition: "left" }, { ...unref(K) });
51118
- return h$1(
51119
- ElCol,
51120
- { span: 24 },
51121
- () => h$1(ElDivider, he, () => ae())
51122
- );
51123
- } else {
51124
- const he = unref(W), de = () => oe ? getSlot(Q, oe, he) : Ae ? Ae(he) : re(), pe = !!ue, ve = isFunction$2(ue) ? ue(unref(W)) : ue, ge = {
51125
- default: () => h$1(
51126
- "div",
51127
- { style: "display:flex;width:100%;" },
51128
- [
51129
- h$1("div", { style: "flex:1;" }, [de()]),
51130
- pe ? h$1("span", { class: "suffix" }, String(ve)) : null
51131
- ]
51132
- ),
51133
- label: () => ae()
51134
- };
51135
- return h$1(
51136
- ElFormItem,
51137
- {
51138
- prop: le,
51139
- label: ie,
51140
- rules: se,
51141
- ...ce || {}
51142
- },
51143
- ge
51144
- );
51207
+ let ge;
51208
+ const me = deepMerge({
51209
+ contentPosition: "left"
51210
+ }, {
51211
+ ...unref(K)
51212
+ });
51213
+ return createVNode$1(ElCol, {
51214
+ span: 24
51215
+ }, {
51216
+ default: () => [createVNode$1(ElDivider, me, _isSlot$2(ge = ae()) ? ge : {
51217
+ default: () => [ge]
51218
+ })]
51219
+ });
51145
51220
  }
51221
+ const he = unref(W), de = () => oe ? getSlot(Q, oe, he) : Ae ? Ae(he) : re(), pe = !!ue, ve = isFunction$2(ue) ? ue(unref(W)) : ue;
51222
+ return createVNode$1(ElFormItem, mergeProps({
51223
+ prop: le,
51224
+ label: ie,
51225
+ rules: se
51226
+ }, ce || {}), {
51227
+ default: () => createVNode$1("div", {
51228
+ style: "display:flex;width:100%;"
51229
+ }, [createVNode$1("div", {
51230
+ style: "flex:1;"
51231
+ }, [de()]), pe ? createVNode$1("span", {
51232
+ class: "suffix"
51233
+ }, [String(ve)]) : null]),
51234
+ label: () => ae()
51235
+ });
51146
51236
  };
51147
51237
  return onMounted(() => {
51148
- const { field: ie, defaultValue: oe = "" } = unref(H) || {};
51238
+ const {
51239
+ field: ie,
51240
+ defaultValue: oe = ""
51241
+ } = unref(H) || {};
51149
51242
  ie && G.setFormModel(ie, oe);
51150
51243
  }), () => {
51151
- const { colProps: ie = {}, colSlot: oe, renderColContent: se, component: Ae } = G.schema;
51152
- if (!componentMap.has(Ae))
51153
- return console.error(
51154
- `FormItem component:${Ae} is an unregistered component Key`
51155
- ), null;
51156
- const { baseColProps: le = {} } = G.formProps, ue = { ...le, ...ie }, { isShow: ce } = ee(), fe = unref(W), he = () => oe ? getSlot(Q, oe, fe) : se ? se(fe) : ne();
51157
- return withDirectives(
51158
- h$1(ElCol, { ...ue }, () => he()),
51159
- [[vShow, ce]]
51160
- );
51244
+ let ie;
51245
+ const {
51246
+ colProps: oe = {},
51247
+ colSlot: se,
51248
+ renderColContent: Ae,
51249
+ component: le
51250
+ } = G.schema;
51251
+ if (!componentMap.has(le))
51252
+ return console.error(`FormItem component:${le} is an unregistered component Key`), null;
51253
+ const {
51254
+ baseColProps: ue = {}
51255
+ } = G.formProps, ce = {
51256
+ ...ue,
51257
+ ...oe
51258
+ }, {
51259
+ isShow: fe
51260
+ } = ee(), he = unref(W);
51261
+ return withDirectives(createVNode$1(ElCol, ce, _isSlot$2(ie = se ? getSlot(Q, se, he) : Ae ? Ae(he) : ne()) ? ie : {
51262
+ default: () => [ie]
51263
+ }), [[vShow, fe]]);
51161
51264
  };
51162
51265
  }
51163
51266
  });
@@ -51527,7 +51630,7 @@ function useFormValues({
51527
51630
  te.forEach((ae) => {
51528
51631
  const { defaultValue: ne } = ae;
51529
51632
  isNullOrUnDef(ne) || (re[ae.field] = ne, K[ae.field] = ne, K[ae.field] === void 0 && (K[ae.field] = ne));
51530
- }), G.value = cloneDeep(re);
51633
+ }), console.log("initDefault formModel", K), G.value = cloneDeep(re);
51531
51634
  }
51532
51635
  return { handleFormValues: W, initDefault: ee };
51533
51636
  }