cosey 0.4.35 → 0.4.37

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.
@@ -3,7 +3,7 @@ declare const _default: <T extends FieldType>(__VLS_props: NonNullable<Awaited<t
3
3
  props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, never> & FeildProps<T> & Partial<{}>> & import("vue").PublicProps;
4
4
  expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
5
5
  attrs: any;
6
- slots: FeildProps<T>;
6
+ slots: {};
7
7
  emit: {};
8
8
  }>) => import("vue").VNode & {
9
9
  __ctx?: Awaited<typeof __VLS_setup>;
@@ -1,4 +1,4 @@
1
- import { defineComponent, useSlots, computed, createBlock, openBlock, resolveDynamicComponent, unref } from 'vue';
1
+ import { defineComponent, computed, createBlock, openBlock, resolveDynamicComponent, unref } from 'vue';
2
2
  import { mapFieldTypeComponent } from './field.js';
3
3
  import { defineTemplate } from '../../utils/vue.js';
4
4
 
@@ -32,7 +32,6 @@ var stdin_default = /* @__PURE__ */defineComponent({
32
32
  },
33
33
  setup(__props) {
34
34
  const props = __props;
35
- const slots = useSlots();
36
35
  const component = computed(() => {
37
36
  return mapFieldTypeComponent[props.type || "input"];
38
37
  });
@@ -46,7 +45,7 @@ var stdin_default = /* @__PURE__ */defineComponent({
46
45
  return h(component.value, {
47
46
  readonly: props.readonly,
48
47
  componentProps: mergedComponentProps.value
49
- }, slots);
48
+ }, props.componentSlots);
50
49
  });
51
50
  return (_ctx, _cache) => {
52
51
  return openBlock(), createBlock(resolveDynamicComponent(unref(template)));
@@ -1,6 +1,6 @@
1
1
  export * from './field';
2
2
  declare const _Field: (<T extends import("./field").FieldType>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: {
3
- slots: import("./field").FeildProps<T>;
3
+ slots: {};
4
4
  attrs: any;
5
5
  emit: {};
6
6
  }, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
@@ -13,7 +13,7 @@ declare const _Field: (<T extends import("./field").FieldType>(__VLS_props: NonN
13
13
  } & import("vue").PublicProps;
14
14
  expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
15
15
  attrs: any;
16
- slots: import("./field").FeildProps<T>;
16
+ slots: {};
17
17
  emit: {};
18
18
  }>) => import("vue").VNode & {
19
19
  __ctx?: Awaited<typeof __VLS_setup>;
@@ -14,6 +14,7 @@ export declare const mapFormItemWidth: {
14
14
  export interface FormItemProps<T extends FieldType> extends Partial<ElFormItemProps> {
15
15
  fieldType?: T;
16
16
  fieldProps?: MapFieldTypeComponentProps[T]['componentProps'];
17
+ fieldSlots?: MapFieldTypeComponentProps[FieldType]['componentSlots'];
17
18
  fieldRef?: (el: any) => void;
18
19
  modelValue?: NonNullable<MapFieldTypeComponentProps[T]['componentProps']>['modelValue'] | null;
19
20
  width?: FormItemWidth;
@@ -33,7 +34,10 @@ export declare const defaultFormItemProps: {
33
34
  disabled: boolean;
34
35
  readonly: boolean;
35
36
  };
36
- export interface ElFormItemSlots {
37
+ export declare const exlucdeFieldSlotNames: readonly ["error", "label", "default", "tooltip", "extra"];
38
+ type ExlucdeFieldSlotNames = (typeof exlucdeFieldSlotNames)[number];
39
+ type OptionExlucdeFieldSlotNames = `option-${ExlucdeFieldSlotNames}`;
40
+ export type ElFormItemSlots = {
37
41
  default?: (props: Record<string, any>) => any;
38
42
  label?: (props: {
39
43
  label: string;
@@ -43,7 +47,9 @@ export interface ElFormItemSlots {
43
47
  }) => any;
44
48
  tooltip?: (props: Record<string, any>) => any;
45
49
  extra?: (props: Record<string, any>) => any;
46
- }
50
+ } & {
51
+ [K in OptionExlucdeFieldSlotNames]?: (...args: any[]) => any;
52
+ };
47
53
  export type FormItemSlots<T extends FieldType> = NonNullable<MapFieldTypeComponentProps[T]['componentSlots']> & ElFormItemSlots;
48
54
  export declare const formItemProps: {
49
55
  fieldType: {
@@ -131,3 +137,4 @@ export interface FormItemEmits {
131
137
  export declare const formItemExposeKeys: string[];
132
138
  export interface FormItemExpose extends FormItemInstance {
133
139
  }
140
+ export {};
@@ -15,6 +15,7 @@ const defaultFormItemProps = {
15
15
  disabled: false,
16
16
  readonly: false
17
17
  };
18
+ const exlucdeFieldSlotNames = ["error", "label", "default", "tooltip", "extra"];
18
19
  const formItemProps = {
19
20
  ...formItemProps$1,
20
21
  fieldType: {
@@ -39,4 +40,4 @@ const elFormItemExposeKeys = [
39
40
  ];
40
41
  const formItemExposeKeys = [...elFormItemExposeKeys];
41
42
 
42
- export { defaultFormItemProps, formItemExposeKeys, formItemProps, formItemPropsKeys, mapFormItemWidth };
43
+ export { defaultFormItemProps, exlucdeFieldSlotNames, formItemExposeKeys, formItemProps, formItemPropsKeys, mapFormItemWidth };
@@ -1,5 +1,5 @@
1
- import { defineComponent, mergeDefaults, useAttrs, useSlots, inject, useTemplateRef, computed, mergeProps, resolveComponent, createBlock, openBlock, unref, withCtx, createVNode, createSlots, createElementVNode, normalizeStyle, normalizeClass, renderSlot, createElementBlock, createCommentVNode, renderList, normalizeProps, guardReactiveProps, resolveDynamicComponent } from 'vue';
2
- import { defaultFormItemProps, formItemExposeKeys } from './form-item.js';
1
+ import { defineComponent, mergeDefaults, useAttrs, useSlots, inject, useTemplateRef, computed, mergeProps, resolveComponent, createBlock, openBlock, unref, withCtx, createVNode, createSlots, createElementVNode, normalizeStyle, normalizeClass, renderSlot, createElementBlock, createCommentVNode, resolveDynamicComponent, renderList, normalizeProps, guardReactiveProps } from 'vue';
2
+ import { exlucdeFieldSlotNames, defaultFormItemProps, formItemExposeKeys } from './form-item.js';
3
3
  import { formContextSymbol } from './form.js';
4
4
  import { Field as _Field } from '../field/index.js';
5
5
  import { formQueryContextSymbol } from '../form-query/form-query.js';
@@ -10,6 +10,7 @@ import { useFormItemWidth } from './useFormItemWidth.js';
10
10
  import { ElFormItem } from 'element-plus';
11
11
  import { reactiveOmit } from '@vueuse/core';
12
12
  import { useToken } from '../theme/util/useToken.js';
13
+ import { omit } from 'lodash-es';
13
14
  import { omitUndefined } from '../../utils/object.js';
14
15
  import { useComponentConfig } from '../config-provider/config-provider.js';
15
16
  import { useLocale } from '../../hooks/useLocale.js';
@@ -32,6 +33,10 @@ var stdin_default = /* @__PURE__ */defineComponent({
32
33
  type: Object,
33
34
  required: false
34
35
  },
36
+ fieldSlots: {
37
+ type: null,
38
+ required: false
39
+ },
35
40
  fieldRef: {
36
41
  type: Function,
37
42
  required: false
@@ -215,9 +220,12 @@ var stdin_default = /* @__PURE__ */defineComponent({
215
220
  return formContext?.readonly || props.readonly;
216
221
  });
217
222
  const formItemSlotNames = ["error"];
218
- const exlucdeFieldSlotNames = ["error", "label", "default", "tooltip", "extra"];
219
- const fieldSlotNames = computed(() => {
220
- return Object.keys(slots).filter(key => !exlucdeFieldSlotNames.includes(key));
223
+ const fieldSlots = computed(() => {
224
+ return {
225
+ ...Object.fromEntries(exlucdeFieldSlotNames.map(name => [name, slots[`field-${name}`]])),
226
+ ...omit(slots, exlucdeFieldSlotNames),
227
+ ...props.fieldSlots
228
+ };
221
229
  });
222
230
  const labelTemplate = defineTemplate(() => props.label);
223
231
  const tooptipTemplate = defineTemplate(() => props.tooltip);
@@ -240,16 +248,9 @@ var stdin_default = /* @__PURE__ */defineComponent({
240
248
  readonly: mergedReadonly.value,
241
249
  type: _ctx.fieldType,
242
250
  "component-props": mergedFieldProps.value,
251
+ "component-slots": fieldSlots.value,
243
252
  "component-ref": _ctx.fieldRef
244
- }, createSlots({
245
- _: 2
246
- /* DYNAMIC */
247
- }, [renderList(fieldSlotNames.value, name => {
248
- return {
249
- name,
250
- fn: withCtx(slotProps => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps)))])
251
- };
252
- })]), 1032, ["readonly", "type", "component-props", "component-ref"])]), _ctx.extra || _ctx.$slots.extra ? (openBlock(), createElementBlock("div", {
253
+ }, null, 8, ["readonly", "type", "component-props", "component-slots", "component-ref"])]), _ctx.extra || _ctx.$slots.extra ? (openBlock(), createElementBlock("div", {
253
254
  key: 0,
254
255
  class: normalizeClass(`${unref(prefixCls)}-item-extra`)
255
256
  }, [_ctx.extra ? (openBlock(), createBlock(resolveDynamicComponent(unref(extraTemplate)), {
@@ -481,6 +481,7 @@ declare const _FormItem: (<T extends import("..").FieldType>(__VLS_props: NonNul
481
481
  readonly "onUpdate:modelValue"?: ((value: unknown) => any) | undefined;
482
482
  fieldType?: T | undefined;
483
483
  fieldProps?: import("..").MapFieldTypeComponentProps[T]["componentProps"] | undefined;
484
+ fieldSlots?: import("..").MapFieldTypeComponentProps[import("..").FieldType]["componentSlots"];
484
485
  fieldRef?: ((el: any) => void) | undefined;
485
486
  modelValue?: NonNullable<import("..").MapFieldTypeComponentProps[T]["componentProps"]>["modelValue"] | null | undefined;
486
487
  width?: import("./form-item").FormItemWidth | undefined;
@@ -5,7 +5,7 @@ export { useBubbleTemplate } from './useBubbleTemplate.js';
5
5
  export { useFormTemplate } from './useFormTemplate.js';
6
6
  export { getFormItemWidth, useFormItemWidth } from './useFormItemWidth.js';
7
7
  export { formBubbleContextSymbol, formContextSymbol, formExposeKeys, formProps, formPropsOmit } from './form.js';
8
- export { defaultFormItemProps, formItemExposeKeys, formItemProps, formItemPropsKeys, mapFormItemWidth } from './form-item.js';
8
+ export { defaultFormItemProps, exlucdeFieldSlotNames, formItemExposeKeys, formItemProps, formItemPropsKeys, mapFormItemWidth } from './form-item.js';
9
9
 
10
10
  const _Form = withInstall(stdin_default$1);
11
11
  const _FormItem = withInstall(stdin_default$2);
@@ -64,6 +64,10 @@ var stdin_default = /* @__PURE__ */defineComponent({
64
64
  type: Object,
65
65
  required: false
66
66
  },
67
+ fieldSlots: {
68
+ type: null,
69
+ required: false
70
+ },
67
71
  fieldRef: {
68
72
  type: Function,
69
73
  required: false
@@ -42,6 +42,7 @@ declare const _FormList: (<T extends import("./form-list").FormListRow = import(
42
42
  onBlur?: (evt: FocusEvent) => void;
43
43
  onClear?: () => void;
44
44
  }) | undefined;
45
+ fieldSlots?: import("..").MapFieldTypeComponentProps[import("..").FieldType]["componentSlots"];
45
46
  fieldRef?: ((el: any) => void) | undefined;
46
47
  colProps?: import("..").ColProps | undefined;
47
48
  internalIndex?: number | undefined;
@@ -61,7 +61,7 @@ export { defaultEditorProps } from './editor/editor.js';
61
61
  export { mapFieldTypeComponent } from './field/field.js';
62
62
  export { defaultFileCardProps } from './file-card/file-card.js';
63
63
  export { formBubbleContextSymbol, formContextSymbol, formExposeKeys, formProps, formPropsOmit } from './form/form.js';
64
- export { defaultFormItemProps, formItemExposeKeys, formItemProps, formItemPropsKeys, mapFormItemWidth } from './form/form-item.js';
64
+ export { defaultFormItemProps, exlucdeFieldSlotNames, formItemExposeKeys, formItemProps, formItemPropsKeys, mapFormItemWidth } from './form/form-item.js';
65
65
  export { getFormItemWidth, useFormItemWidth } from './form/useFormItemWidth.js';
66
66
  export { useBubbleTemplate } from './form/useBubbleTemplate.js';
67
67
  export { useFormTemplate } from './form/useFormTemplate.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cosey",
3
- "version": "0.4.35",
3
+ "version": "0.4.37",
4
4
  "description": "基于 Vue3 + vite 的后台管理系统框架",
5
5
  "type": "module",
6
6
  "main": "index.js",