@mythpe/quasar-ui-qui 0.4.63 → 0.4.65

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mythpe/quasar-ui-qui",
3
- "version": "0.4.63",
3
+ "version": "0.4.65",
4
4
  "description": "MyTh Quasar UI Kit App Extension",
5
5
  "author": {
6
6
  "name": "MyTh Ahmed Faiz",
@@ -46,10 +46,15 @@ type Props = {
46
46
  withShow?: MDatatableProps['withShow'];
47
47
  withUpdate?: MDatatableProps['withUpdate'];
48
48
  hideAddBtn?: boolean;
49
+ storeBtnFn?: MDatatableProps['storeBtnFn'];
49
50
  hideUpdateBtn?: boolean;
51
+ updateBtnFn?: MDatatableProps['updateBtnFn'];
50
52
  cloneBtn?: boolean;
53
+ cloneBtnFn?: MDatatableProps['cloneBtnFn'];
51
54
  hideShowBtn?: boolean;
55
+ showBtnFn?: MDatatableProps['showBtnFn'];
52
56
  hideDestroyBtn?: boolean;
57
+ destroyBtnFn?: MDatatableProps['destroyBtnFn'];
53
58
  storeRoute?: MDatatableProps['storeRoute'];
54
59
  storeQueryParams?: boolean;
55
60
  noStoreClose?: boolean;
@@ -107,7 +112,6 @@ type Props = {
107
112
  }
108
113
 
109
114
  const props = withDefaults(defineProps<Props>(), {
110
- // rows: undefined,
111
115
  rowClass: undefined,
112
116
  control: undefined,
113
117
  defaultItem: undefined,
@@ -128,10 +132,15 @@ const props = withDefaults(defineProps<Props>(), {
128
132
  withShow: undefined,
129
133
  withUpdate: undefined,
130
134
  hideAddBtn: !1,
135
+ storeBtnFn: undefined,
131
136
  hideUpdateBtn: !1,
137
+ updateBtnFn: undefined,
132
138
  cloneBtn: !1,
139
+ cloneBtnFn: undefined,
133
140
  hideShowBtn: !1,
141
+ showBtnFn: undefined,
134
142
  hideDestroyBtn: !1,
143
+ destroyBtnFn: undefined,
135
144
  storeRoute: undefined,
136
145
  storeQueryParams: !1,
137
146
  noStoreClose: !1,
@@ -129,7 +129,7 @@ export const useDtHelpers = (options: MaybeRefOrGetter<MDatatableProps>, emit?:
129
129
  const controlProps = computed<Required<MDtControlOptions>>(() => extend<Required<MDtControlOptions>>({
130
130
  name: 'control',
131
131
  justify: 'end',
132
- style: 'max-width: 150px',
132
+ style: 'max-width: 150px;width: 0;',
133
133
  align: 'right'
134
134
  }, toValue(getProp.value('control'))))
135
135
  const controlKey = computed<string>(() => controlProps.value.name)
@@ -807,15 +807,15 @@ export const useDtHelpers = (options: MaybeRefOrGetter<MDatatableProps>, emit?:
807
807
  click: (item: MDtItem, index: MDtItemIndex) => {
808
808
  openShowDialog(item, index)
809
809
  },
810
- showIf: hasShowBtn.value,
810
+ showIf: props.showBtnFn !== undefined ? (item: any) => !!props.showBtnFn?.(item) : hasShowBtn.value,
811
811
  order: 100
812
812
  },
813
813
  {
814
814
  name: 'clone',
815
815
  label: pluginOptions.value?.dt?.contextmenu?.btnStyle?.showLabel ? 'labels.clone' : undefined,
816
816
  click: onCloneItem,
817
- showIf: hasCloneBtn.value,
818
- order: 200
817
+ showIf: props.cloneBtnFn !== undefined ? (item: any) => !!props.cloneBtnFn?.(item) : hasCloneBtn.value,
818
+ order: 101
819
819
  },
820
820
  {
821
821
  name: 'update',
@@ -823,8 +823,8 @@ export const useDtHelpers = (options: MaybeRefOrGetter<MDatatableProps>, emit?:
823
823
  click: (item: MDtItem, index: MDtItemIndex) => {
824
824
  openUpdateDialog(item, index)
825
825
  },
826
- showIf: hasUpdateBtn.value,
827
- order: 300
826
+ showIf: props.updateBtnFn !== undefined ? (item: any) => !!props.updateBtnFn?.(item) : hasUpdateBtn.value,
827
+ order: 102
828
828
  },
829
829
  {
830
830
  name: 'destroy',
@@ -834,8 +834,11 @@ export const useDtHelpers = (options: MaybeRefOrGetter<MDatatableProps>, emit?:
834
834
  onDeleteItem(item, index)
835
835
  },
836
836
  multiClick: hasDestroyBtn.value && props.multiDestroy && selected.value.length > 1 ? () => deleteSelectionItem() : undefined,
837
- showIf: () => {
837
+ showIf: (item: any) => {
838
838
  if (selected.value.length < 2) {
839
+ if (props.destroyBtnFn !== undefined) {
840
+ return !!props.destroyBtnFn?.(item)
841
+ }
839
842
  return hasDestroyBtn.value
840
843
  }
841
844
  return hasDestroyBtn.value && props.multiDestroy
@@ -843,7 +846,7 @@ export const useDtHelpers = (options: MaybeRefOrGetter<MDatatableProps>, emit?:
843
846
  attr: {
844
847
  color: 'negative'
845
848
  },
846
- order: 400
849
+ order: 103
847
850
  }
848
851
  ].filter(e => !!e), 'name').sort((a, b) => (a.order ?? 0) - (b.order ?? 0))))
849
852
  // const activeContextItems = computed(() => contextmenuItems.value.filter((e, i) => typeof e.showIf === 'function' ? e.showIf(e, i) : e.showIf !== !1) as Required<MDatatableProps['contextItems']> || [])
@@ -258,10 +258,15 @@ export type MDatatableProps<I extends GenericFormValues = GenericFormValues> = O
258
258
  withShow?: string | string[];
259
259
  withUpdate?: string | string[];
260
260
  hideAddBtn?: boolean;
261
+ storeBtnFn?: (item: MDtItem<I>) => boolean;
261
262
  hideUpdateBtn?: boolean;
263
+ updateBtnFn?: (item: MDtItem<I>) => boolean;
262
264
  cloneBtn?: boolean;
265
+ cloneBtnFn?: (item: MDtItem<I>) => boolean;
263
266
  hideShowBtn?: boolean;
267
+ showBtnFn?: (item: MDtItem<I>) => boolean;
264
268
  hideDestroyBtn?: boolean;
269
+ destroyBtnFn?: (item: MDtItem<I>) => boolean;
265
270
  storeRoute?: string | RouteLocationRaw;
266
271
  storeQueryParams?: boolean;
267
272
  noStoreClose?: boolean;