@katlux/toolkit 0.1.0-beta.41 → 0.1.0-beta.43

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 (48) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/runtime/components/KButton/KButton.logic.d.ts +1 -1
  3. package/dist/runtime/components/KCombobox/KCombobox.global.d.vue.ts +8 -9
  4. package/dist/runtime/components/KCombobox/KCombobox.global.vue +1 -1
  5. package/dist/runtime/components/KCombobox/KCombobox.global.vue.d.ts +8 -9
  6. package/dist/runtime/components/KCombobox/KCombobox.logic.d.ts +73 -0
  7. package/dist/runtime/components/KCombobox/KCombobox.logic.js +4 -3
  8. package/dist/runtime/components/KDatatable/KDataIterator.logic.d.ts +20 -0
  9. package/dist/runtime/components/KDatatable/KDatatable.logic.d.ts +12 -0
  10. package/dist/runtime/components/KDatePicker/KDatePicker.global.d.vue.ts +6 -6
  11. package/dist/runtime/components/KDatePicker/KDatePicker.global.vue +1 -1
  12. package/dist/runtime/components/KDatePicker/KDatePicker.global.vue.d.ts +6 -6
  13. package/dist/runtime/components/KDatePicker/KDatePicker.logic.d.ts +1 -0
  14. package/dist/runtime/components/KDateTimePicker/KDateTimePicker.global.d.vue.ts +6 -6
  15. package/dist/runtime/components/KDateTimePicker/KDateTimePicker.global.vue +1 -1
  16. package/dist/runtime/components/KDateTimePicker/KDateTimePicker.global.vue.d.ts +6 -6
  17. package/dist/runtime/components/KDateTimePicker/KDateTimePicker.logic.d.ts +1 -0
  18. package/dist/runtime/components/KDateTimePicker/KDateTimePicker.logic.js +12 -1
  19. package/dist/runtime/components/KDropdown/KDropdown.global.d.vue.ts +9 -0
  20. package/dist/runtime/components/KDropdown/KDropdown.global.vue +4 -2
  21. package/dist/runtime/components/KDropdown/KDropdown.global.vue.d.ts +9 -0
  22. package/dist/runtime/components/KDropdown/KDropdown.logic.d.ts +19 -0
  23. package/dist/runtime/components/KDropdown/KDropdown.logic.js +43 -1
  24. package/dist/runtime/components/KHourPicker/KHourPicker.global.d.vue.ts +1 -1
  25. package/dist/runtime/components/KHourPicker/KHourPicker.global.vue +1 -1
  26. package/dist/runtime/components/KHourPicker/KHourPicker.global.vue.d.ts +1 -1
  27. package/dist/runtime/components/KIcon/KIcon.global.d.vue.ts +1 -1
  28. package/dist/runtime/components/KIcon/KIcon.global.vue.d.ts +1 -1
  29. package/dist/runtime/components/KMaskTextbox/KMaskTextbox.global.d.vue.ts +1 -1
  30. package/dist/runtime/components/KMaskTextbox/KMaskTextbox.global.vue +1 -1
  31. package/dist/runtime/components/KMaskTextbox/KMaskTextbox.global.vue.d.ts +1 -1
  32. package/dist/runtime/components/KTextbox/KTextbox.global.vue +3 -2
  33. package/dist/runtime/components/KTreePicker/KTreePicker.global.d.vue.ts +4 -4
  34. package/dist/runtime/components/KTreePicker/KTreePicker.global.vue.d.ts +4 -4
  35. package/dist/runtime/components/KTreePicker/KTreePicker.logic.d.ts +77 -0
  36. package/dist/runtime/components/KTreeView/KTreeView.global.d.vue.ts +3 -3
  37. package/dist/runtime/components/KTreeView/KTreeView.global.vue.d.ts +3 -3
  38. package/dist/runtime/presets/default/components/KCombobox/KCombobox.vue +5 -4
  39. package/dist/runtime/presets/default/components/KDatePicker/KDatePicker.vue +5 -4
  40. package/dist/runtime/presets/default/components/KDateTimePicker/KDateTimePicker.vue +10 -15
  41. package/dist/runtime/presets/default/components/KDropdown/KDropdown.d.vue.ts +6 -0
  42. package/dist/runtime/presets/default/components/KDropdown/KDropdown.vue +19 -16
  43. package/dist/runtime/presets/default/components/KDropdown/KDropdown.vue.d.ts +6 -0
  44. package/dist/runtime/presets/default/components/KGantt/KGantt.vue +1 -1
  45. package/dist/runtime/presets/default/components/KHourPicker/KHourPicker.vue +6 -4
  46. package/dist/runtime/presets/default/components/KModal/KModal.vue +53 -30
  47. package/dist/runtime/presets/default/components/KTreePicker/KTreePicker.vue +1 -0
  48. package/package.json +1 -1
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@katlux/toolkit",
3
3
  "configKey": "katluxToolkit",
4
- "version": "0.1.0-beta.41",
4
+ "version": "0.1.0-beta.43",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.2",
7
7
  "unbuild": "3.6.1"
@@ -22,7 +22,7 @@ export interface KButtonEmits {
22
22
  export declare function useKButtonLogic(props: KButtonProps, emit: KButtonEmits): {
23
23
  isLink: import("vue").ComputedRef<boolean>;
24
24
  isDisabled: import("vue").ComputedRef<boolean | undefined>;
25
- buttonClasses: import("vue").ComputedRef<("info" | "default" | "small" | "primary" | "danger" | "success" | "warning" | "light" | "dark" | "large" | "medium" | {
25
+ buttonClasses: import("vue").ComputedRef<("info" | "default" | "primary" | "danger" | "success" | "warning" | "light" | "dark" | "small" | "large" | "medium" | {
26
26
  disabled: boolean | undefined;
27
27
  })[]>;
28
28
  onClick: () => void;
@@ -1,6 +1,6 @@
1
1
  declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
2
  dataProvider: {
3
- type: PropType<import("@katlux/providers").ADataProvider>;
3
+ type: import("vue").PropType<import("@katlux/providers").ADataProvider>;
4
4
  required: boolean;
5
5
  };
6
6
  closeOnSelect: {
@@ -28,7 +28,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
28
28
  default: boolean;
29
29
  };
30
30
  visibleFields: {
31
- type: PropType<Array<String>>;
31
+ type: import("vue").PropType<Array<String>>;
32
32
  default: null;
33
33
  };
34
34
  labelField: {
@@ -36,14 +36,14 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
36
36
  required: boolean;
37
37
  };
38
38
  modelValue: {
39
- type: PropType<import("./KCombobox.logic.js").ComboboxItem | import("./KCombobox.logic.js").ComboboxItem[] | null>;
39
+ type: import("vue").PropType<import("./KCombobox.logic.js").ComboboxItem | import("./KCombobox.logic.js").ComboboxItem[] | null>;
40
40
  default: null;
41
41
  };
42
42
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
43
43
  "update:modelValue": (value: import("@katlux/providers").TDataRow | import("@katlux/providers").TDataRow[] | null) => any;
44
44
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
45
45
  dataProvider: {
46
- type: PropType<import("@katlux/providers").ADataProvider>;
46
+ type: import("vue").PropType<import("@katlux/providers").ADataProvider>;
47
47
  required: boolean;
48
48
  };
49
49
  closeOnSelect: {
@@ -71,7 +71,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
71
71
  default: boolean;
72
72
  };
73
73
  visibleFields: {
74
- type: PropType<Array<String>>;
74
+ type: import("vue").PropType<Array<String>>;
75
75
  default: null;
76
76
  };
77
77
  labelField: {
@@ -79,21 +79,20 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
79
79
  required: boolean;
80
80
  };
81
81
  modelValue: {
82
- type: PropType<import("./KCombobox.logic.js").ComboboxItem | import("./KCombobox.logic.js").ComboboxItem[] | null>;
82
+ type: import("vue").PropType<import("./KCombobox.logic.js").ComboboxItem | import("./KCombobox.logic.js").ComboboxItem[] | null>;
83
83
  default: null;
84
84
  };
85
85
  }>> & Readonly<{
86
86
  "onUpdate:modelValue"?: ((value: import("@katlux/providers").TDataRow | import("@katlux/providers").TDataRow[] | null) => any) | undefined;
87
87
  }>, {
88
88
  disabled: boolean;
89
+ modelValue: import("@katlux/providers").TDataRow | import("@katlux/providers").TDataRow[] | null;
90
+ visibleFields: String[];
89
91
  searchbox: boolean;
90
92
  placeholder: string;
91
- dataProvider: any;
92
93
  closeOnSelect: boolean;
93
94
  multiSelect: boolean;
94
95
  maxSelectedDisplay: string | number | boolean;
95
- visibleFields: any;
96
- modelValue: any;
97
96
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
98
97
  declare const _default: typeof __VLS_export;
99
98
  export default _default;
@@ -39,5 +39,5 @@ function updateSearchText(val) {
39
39
  </script>
40
40
 
41
41
  <template lang="pug">
42
- component(:is="presetComponent" v-bind="templateProps" @update:searchtext="updateSearchText")
42
+ component(:is="presetComponent" v-bind="{...templateProps, ...$attrs}" @update:searchtext="updateSearchText")
43
43
  </template>
@@ -1,6 +1,6 @@
1
1
  declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
2
  dataProvider: {
3
- type: PropType<import("@katlux/providers").ADataProvider>;
3
+ type: import("vue").PropType<import("@katlux/providers").ADataProvider>;
4
4
  required: boolean;
5
5
  };
6
6
  closeOnSelect: {
@@ -28,7 +28,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
28
28
  default: boolean;
29
29
  };
30
30
  visibleFields: {
31
- type: PropType<Array<String>>;
31
+ type: import("vue").PropType<Array<String>>;
32
32
  default: null;
33
33
  };
34
34
  labelField: {
@@ -36,14 +36,14 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
36
36
  required: boolean;
37
37
  };
38
38
  modelValue: {
39
- type: PropType<import("./KCombobox.logic.js").ComboboxItem | import("./KCombobox.logic.js").ComboboxItem[] | null>;
39
+ type: import("vue").PropType<import("./KCombobox.logic.js").ComboboxItem | import("./KCombobox.logic.js").ComboboxItem[] | null>;
40
40
  default: null;
41
41
  };
42
42
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
43
43
  "update:modelValue": (value: import("@katlux/providers").TDataRow | import("@katlux/providers").TDataRow[] | null) => any;
44
44
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
45
45
  dataProvider: {
46
- type: PropType<import("@katlux/providers").ADataProvider>;
46
+ type: import("vue").PropType<import("@katlux/providers").ADataProvider>;
47
47
  required: boolean;
48
48
  };
49
49
  closeOnSelect: {
@@ -71,7 +71,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
71
71
  default: boolean;
72
72
  };
73
73
  visibleFields: {
74
- type: PropType<Array<String>>;
74
+ type: import("vue").PropType<Array<String>>;
75
75
  default: null;
76
76
  };
77
77
  labelField: {
@@ -79,21 +79,20 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
79
79
  required: boolean;
80
80
  };
81
81
  modelValue: {
82
- type: PropType<import("./KCombobox.logic.js").ComboboxItem | import("./KCombobox.logic.js").ComboboxItem[] | null>;
82
+ type: import("vue").PropType<import("./KCombobox.logic.js").ComboboxItem | import("./KCombobox.logic.js").ComboboxItem[] | null>;
83
83
  default: null;
84
84
  };
85
85
  }>> & Readonly<{
86
86
  "onUpdate:modelValue"?: ((value: import("@katlux/providers").TDataRow | import("@katlux/providers").TDataRow[] | null) => any) | undefined;
87
87
  }>, {
88
88
  disabled: boolean;
89
+ modelValue: import("@katlux/providers").TDataRow | import("@katlux/providers").TDataRow[] | null;
90
+ visibleFields: String[];
89
91
  searchbox: boolean;
90
92
  placeholder: string;
91
- dataProvider: any;
92
93
  closeOnSelect: boolean;
93
94
  multiSelect: boolean;
94
95
  maxSelectedDisplay: string | number | boolean;
95
- visibleFields: any;
96
- modelValue: any;
97
96
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
98
97
  declare const _default: typeof __VLS_export;
99
98
  export default _default;
@@ -0,0 +1,73 @@
1
+ import type { ADataProvider } from '@katlux/providers';
2
+ import { type TDataRow } from '@katlux/providers';
3
+ import { type PropType } from 'vue';
4
+ export type ComboboxItem = TDataRow;
5
+ export interface KComboboxProps {
6
+ dataProvider: ADataProvider;
7
+ closeOnSelect?: boolean;
8
+ disabled?: boolean;
9
+ multiSelect?: boolean;
10
+ maxSelectedDisplay?: number | string | false;
11
+ placeholder?: string;
12
+ searchbox?: boolean;
13
+ visibleFields?: Array<String> | null;
14
+ labelField: string;
15
+ modelValue?: ComboboxItem | ComboboxItem[] | null;
16
+ }
17
+ export interface KComboboxEmits {
18
+ (e: 'update:modelValue', value: ComboboxItem | ComboboxItem[] | null): void;
19
+ }
20
+ export declare const KComboboxDefaultProps: {
21
+ dataProvider: {
22
+ type: PropType<ADataProvider>;
23
+ required: boolean;
24
+ };
25
+ closeOnSelect: {
26
+ type: BooleanConstructor;
27
+ default: boolean;
28
+ };
29
+ disabled: {
30
+ type: BooleanConstructor;
31
+ default: boolean;
32
+ };
33
+ multiSelect: {
34
+ type: BooleanConstructor;
35
+ default: boolean;
36
+ };
37
+ maxSelectedDisplay: {
38
+ type: (BooleanConstructor | NumberConstructor | StringConstructor)[];
39
+ default: boolean;
40
+ };
41
+ placeholder: {
42
+ type: StringConstructor;
43
+ default: string;
44
+ };
45
+ searchbox: {
46
+ type: BooleanConstructor;
47
+ default: boolean;
48
+ };
49
+ visibleFields: {
50
+ type: PropType<Array<String>>;
51
+ default: null;
52
+ };
53
+ labelField: {
54
+ type: StringConstructor;
55
+ required: boolean;
56
+ };
57
+ modelValue: {
58
+ type: PropType<ComboboxItem | ComboboxItem[] | null>;
59
+ default: null;
60
+ };
61
+ };
62
+ export declare function useKComboboxLogic(props: KComboboxProps, emit: KComboboxEmits): {
63
+ selectedItems: import("vue").Ref<TDataRow[] | null, TDataRow[] | null>;
64
+ isOptionsOpen: import("vue").Ref<boolean, boolean>;
65
+ searchtext: import("vue").Ref<string, string>;
66
+ selectItem: (option: ComboboxItem) => void;
67
+ isSelected: (option: ComboboxItem) => boolean | undefined;
68
+ getSelectedContent: () => TDataRow[];
69
+ toggleDropdown: () => void;
70
+ closeDropdown: () => void;
71
+ filteredOptions: import("vue").ComputedRef<TDataRow[]>;
72
+ loading: import("vue").ComputedRef<Boolean>;
73
+ };
@@ -102,6 +102,7 @@ export function useKComboboxLogic(props, emit) {
102
102
  watch(
103
103
  () => searchtext.value,
104
104
  (newText) => {
105
+ if (!props.dataProvider) return;
105
106
  const filter = {
106
107
  operator: EDataFilterOperator.In,
107
108
  field: { [props.labelField]: newText.trim().toLowerCase() },
@@ -111,11 +112,11 @@ export function useKComboboxLogic(props, emit) {
111
112
  }
112
113
  );
113
114
  const filteredOptions = computed(() => {
114
- return props.dataProvider.pageData.value;
115
+ return props.dataProvider?.pageData.value || [];
115
116
  });
116
117
  onMounted(() => {
117
118
  selectedItems.value = Array.isArray(props.modelValue) ? props.modelValue : props.modelValue ? [props.modelValue] : null;
118
- if (props.searchbox) {
119
+ if (props.searchbox && props.dataProvider) {
119
120
  props.dataProvider.filter.value = null;
120
121
  }
121
122
  });
@@ -135,6 +136,6 @@ export function useKComboboxLogic(props, emit) {
135
136
  toggleDropdown,
136
137
  closeDropdown,
137
138
  filteredOptions,
138
- loading: props.dataProvider.loading
139
+ loading: computed(() => props.dataProvider?.loading.value ?? false)
139
140
  };
140
141
  }
@@ -0,0 +1,20 @@
1
+ import { ADataProvider } from '@katlux/providers';
2
+ export interface KDataIteratorProps {
3
+ dataProvider: ADataProvider;
4
+ visibleFields?: Array<string> | null;
5
+ loading?: boolean;
6
+ search?: string;
7
+ itemsPerPage?: number;
8
+ page?: number;
9
+ }
10
+ export declare const KDataIteratorDefaultProps: {
11
+ visibleFields: null;
12
+ loading: boolean;
13
+ search: string;
14
+ itemsPerPage: number;
15
+ page: number;
16
+ };
17
+ export declare function useKDataIteratorLogic(props: KDataIteratorProps): {
18
+ selectedRows: import("vue").Ref<any[], any[]>;
19
+ selectAll: import("vue").Ref<boolean, boolean>;
20
+ };
@@ -0,0 +1,12 @@
1
+ import { ADataProvider } from '@katlux/providers';
2
+ export interface KDatatableProps {
3
+ dataProvider: ADataProvider;
4
+ visibleFields?: Array<string> | null;
5
+ }
6
+ export declare const KDatatableDefaultProps: {
7
+ visibleFields: null;
8
+ };
9
+ export declare function useKDatatableLogic(props: KDatatableProps): {
10
+ selectedRows: import("vue").Ref<any[], any[]>;
11
+ selectAll: import("vue").Ref<boolean, boolean>;
12
+ };
@@ -8,11 +8,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
8
8
  default: undefined;
9
9
  };
10
10
  calendarDefinedDays: {
11
- type: PropType<IDefinedDay[]>;
11
+ type: import("vue").PropType<IDefinedDay[]>;
12
12
  default: () => never[];
13
13
  };
14
14
  calendarMarkedDays: {
15
- type: PropType<IMarkedDay[]>;
15
+ type: import("vue").PropType<IMarkedDay[]>;
16
16
  default: () => never[];
17
17
  };
18
18
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -25,18 +25,18 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
25
25
  default: undefined;
26
26
  };
27
27
  calendarDefinedDays: {
28
- type: PropType<IDefinedDay[]>;
28
+ type: import("vue").PropType<IDefinedDay[]>;
29
29
  default: () => never[];
30
30
  };
31
31
  calendarMarkedDays: {
32
- type: PropType<IMarkedDay[]>;
32
+ type: import("vue").PropType<IMarkedDay[]>;
33
33
  default: () => never[];
34
34
  };
35
35
  }>> & Readonly<{}>, {
36
36
  day: string | Date;
37
37
  format: string;
38
- calendarDefinedDays: any;
39
- calendarMarkedDays: any;
38
+ calendarDefinedDays: IDefinedDay[];
39
+ calendarMarkedDays: IMarkedDay[];
40
40
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
41
41
  declare const _default: typeof __VLS_export;
42
42
  export default _default;
@@ -38,7 +38,7 @@ const handleDateSelected = (date) => {
38
38
  <template lang="pug">
39
39
  component(
40
40
  :is="presetComponent"
41
- v-bind="templateProps"
41
+ v-bind="{ ...templateProps, ...$attrs }"
42
42
  @update:maskedModel="updateMaskedModel"
43
43
  @update:calendarShow="updateCalendarShow"
44
44
  )
@@ -8,11 +8,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
8
8
  default: undefined;
9
9
  };
10
10
  calendarDefinedDays: {
11
- type: PropType<IDefinedDay[]>;
11
+ type: import("vue").PropType<IDefinedDay[]>;
12
12
  default: () => never[];
13
13
  };
14
14
  calendarMarkedDays: {
15
- type: PropType<IMarkedDay[]>;
15
+ type: import("vue").PropType<IMarkedDay[]>;
16
16
  default: () => never[];
17
17
  };
18
18
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -25,18 +25,18 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
25
25
  default: undefined;
26
26
  };
27
27
  calendarDefinedDays: {
28
- type: PropType<IDefinedDay[]>;
28
+ type: import("vue").PropType<IDefinedDay[]>;
29
29
  default: () => never[];
30
30
  };
31
31
  calendarMarkedDays: {
32
- type: PropType<IMarkedDay[]>;
32
+ type: import("vue").PropType<IMarkedDay[]>;
33
33
  default: () => never[];
34
34
  };
35
35
  }>> & Readonly<{}>, {
36
36
  day: string | Date;
37
37
  format: string;
38
- calendarDefinedDays: any;
39
- calendarMarkedDays: any;
38
+ calendarDefinedDays: IDefinedDay[];
39
+ calendarMarkedDays: IMarkedDay[];
40
40
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
41
41
  declare const _default: typeof __VLS_export;
42
42
  export default _default;
@@ -1,3 +1,4 @@
1
+ import { type PropType } from 'vue';
1
2
  import type { IMarkedDay, IDefinedDay } from '@katlux/toolkit/components/KCalendar/types.ts';
2
3
  export interface KDatePickerProps {
3
4
  format: string;
@@ -16,11 +16,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
16
16
  default: number;
17
17
  };
18
18
  calendarDefinedDays: {
19
- type: PropType<IDefinedDay[]>;
19
+ type: import("vue").PropType<IDefinedDay[]>;
20
20
  default: () => never[];
21
21
  };
22
22
  calendarMarkedDays: {
23
- type: PropType<IMarkedDay[]>;
23
+ type: import("vue").PropType<IMarkedDay[]>;
24
24
  default: () => never[];
25
25
  };
26
26
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -41,18 +41,18 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
41
41
  default: number;
42
42
  };
43
43
  calendarDefinedDays: {
44
- type: PropType<IDefinedDay[]>;
44
+ type: import("vue").PropType<IDefinedDay[]>;
45
45
  default: () => never[];
46
46
  };
47
47
  calendarMarkedDays: {
48
- type: PropType<IMarkedDay[]>;
48
+ type: import("vue").PropType<IMarkedDay[]>;
49
49
  default: () => never[];
50
50
  };
51
51
  }>> & Readonly<{}>, {
52
52
  day: string | Date;
53
53
  format: string;
54
- calendarDefinedDays: any;
55
- calendarMarkedDays: any;
54
+ calendarDefinedDays: IDefinedDay[];
55
+ calendarMarkedDays: IMarkedDay[];
56
56
  timeFormat: string;
57
57
  timeStep: number;
58
58
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -41,7 +41,7 @@ const updateCalendarShow = (val) => {
41
41
  <template lang="pug">
42
42
  component(
43
43
  :is="presetComponent"
44
- v-bind="templateProps"
44
+ v-bind="{ ...templateProps, ...$attrs }"
45
45
  @update:maskedModel="updateMaskedModel"
46
46
  @update:calendarShow="updateCalendarShow"
47
47
  )
@@ -16,11 +16,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
16
16
  default: number;
17
17
  };
18
18
  calendarDefinedDays: {
19
- type: PropType<IDefinedDay[]>;
19
+ type: import("vue").PropType<IDefinedDay[]>;
20
20
  default: () => never[];
21
21
  };
22
22
  calendarMarkedDays: {
23
- type: PropType<IMarkedDay[]>;
23
+ type: import("vue").PropType<IMarkedDay[]>;
24
24
  default: () => never[];
25
25
  };
26
26
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -41,18 +41,18 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
41
41
  default: number;
42
42
  };
43
43
  calendarDefinedDays: {
44
- type: PropType<IDefinedDay[]>;
44
+ type: import("vue").PropType<IDefinedDay[]>;
45
45
  default: () => never[];
46
46
  };
47
47
  calendarMarkedDays: {
48
- type: PropType<IMarkedDay[]>;
48
+ type: import("vue").PropType<IMarkedDay[]>;
49
49
  default: () => never[];
50
50
  };
51
51
  }>> & Readonly<{}>, {
52
52
  day: string | Date;
53
53
  format: string;
54
- calendarDefinedDays: any;
55
- calendarMarkedDays: any;
54
+ calendarDefinedDays: IDefinedDay[];
55
+ calendarMarkedDays: IMarkedDay[];
56
56
  timeFormat: string;
57
57
  timeStep: number;
58
58
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -1,3 +1,4 @@
1
+ import { type PropType } from 'vue';
1
2
  import type { IMarkedDay, IDefinedDay } from '@katlux/toolkit/components/KCalendar/types.ts';
2
3
  export interface KDateTimePickerProps {
3
4
  format?: string;
@@ -1,4 +1,4 @@
1
- import { ref, computed } from "vue";
1
+ import { ref, onMounted, computed } from "vue";
2
2
  export const KDateTimePickerDefaultProps = {
3
3
  format: {
4
4
  type: String,
@@ -40,6 +40,7 @@ export function useKDateTimePickerLogic(props) {
40
40
  const timeSelected = (time) => {
41
41
  _time.value = time;
42
42
  updateMaskedModel();
43
+ calendarShow.value = false;
43
44
  };
44
45
  const updateMaskedModel = () => {
45
46
  if (_date.value && _time.value) {
@@ -64,6 +65,16 @@ export function useKDateTimePickerLogic(props) {
64
65
  }
65
66
  return /* @__PURE__ */ new Date();
66
67
  });
68
+ onMounted(() => {
69
+ if (props.day) {
70
+ _date.value = props.day;
71
+ if (typeof _date.value === "string" && _date.value.includes(":")) {
72
+ const parts = _date.value.split(" ");
73
+ _time.value = parts[1] || "";
74
+ }
75
+ updateMaskedModel();
76
+ }
77
+ });
67
78
  return {
68
79
  _date,
69
80
  _time,
@@ -7,6 +7,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
7
7
  type: BooleanConstructor;
8
8
  default: boolean;
9
9
  };
10
+ anchorEl: {
11
+ type: import("vue").PropType<HTMLElement>;
12
+ default: undefined;
13
+ };
10
14
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
11
15
  "update:isOpen": (value: boolean) => any;
12
16
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -18,11 +22,16 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
18
22
  type: BooleanConstructor;
19
23
  default: boolean;
20
24
  };
25
+ anchorEl: {
26
+ type: import("vue").PropType<HTMLElement>;
27
+ default: undefined;
28
+ };
21
29
  }>> & Readonly<{
22
30
  "onUpdate:isOpen"?: ((value: boolean) => any) | undefined;
23
31
  }>, {
24
32
  isOpen: boolean;
25
33
  fullWidth: boolean;
34
+ anchorEl: HTMLElement;
26
35
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
36
  declare const _default: typeof __VLS_export;
28
37
  export default _default;
@@ -5,17 +5,19 @@ import { computed } from "vue";
5
5
  import KDropdownDefault from "../../presets/default/components/KDropdown/KDropdown.vue";
6
6
  const props = defineProps(KDropdownDefaultProps);
7
7
  const emit = defineEmits(["update:isOpen"]);
8
- const { open, clickoutside } = useKDropdownLogic(props, emit);
8
+ const { open, dropdownRect, clickoutside } = useKDropdownLogic(props, emit);
9
9
  const presetComponent = usePresetComponent("KDropdown", KDropdownDefault);
10
10
  const templateProps = computed(() => ({
11
11
  open: open.value,
12
12
  fullWidth: props.fullWidth,
13
+ anchorEl: props.anchorEl,
14
+ dropdownRect: dropdownRect.value,
13
15
  clickoutside
14
16
  }));
15
17
  </script>
16
18
 
17
19
  <template lang="pug">
18
- component(:is="presetComponent" v-bind="templateProps")
20
+ component(:is="presetComponent" v-bind="{ ...templateProps, ...$attrs }")
19
21
  template(v-for="(_, slot) in $slots" #[slot]="scope")
20
22
  slot(:name="slot" v-bind="scope")
21
23
  </template>
@@ -7,6 +7,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
7
7
  type: BooleanConstructor;
8
8
  default: boolean;
9
9
  };
10
+ anchorEl: {
11
+ type: import("vue").PropType<HTMLElement>;
12
+ default: undefined;
13
+ };
10
14
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
11
15
  "update:isOpen": (value: boolean) => any;
12
16
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -18,11 +22,16 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
18
22
  type: BooleanConstructor;
19
23
  default: boolean;
20
24
  };
25
+ anchorEl: {
26
+ type: import("vue").PropType<HTMLElement>;
27
+ default: undefined;
28
+ };
21
29
  }>> & Readonly<{
22
30
  "onUpdate:isOpen"?: ((value: boolean) => any) | undefined;
23
31
  }>, {
24
32
  isOpen: boolean;
25
33
  fullWidth: boolean;
34
+ anchorEl: HTMLElement;
26
35
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
36
  declare const _default: typeof __VLS_export;
28
37
  export default _default;
@@ -1,6 +1,8 @@
1
+ import { type PropType } from 'vue';
1
2
  export interface KDropdownProps {
2
3
  isOpen: boolean;
3
4
  fullWidth: boolean;
5
+ anchorEl?: HTMLElement;
4
6
  }
5
7
  export interface KDropdownEmits {
6
8
  (e: 'update:isOpen', value: boolean): void;
@@ -14,8 +16,25 @@ export declare const KDropdownDefaultProps: {
14
16
  type: BooleanConstructor;
15
17
  default: boolean;
16
18
  };
19
+ anchorEl: {
20
+ type: PropType<HTMLElement>;
21
+ default: undefined;
22
+ };
17
23
  };
18
24
  export declare function useKDropdownLogic(props: KDropdownProps, emit: KDropdownEmits): {
19
25
  open: import("vue").Ref<boolean, boolean>;
26
+ dropdownRect: import("vue").Ref<{
27
+ top: number;
28
+ left: number;
29
+ width: number;
30
+ }, {
31
+ top: number;
32
+ left: number;
33
+ width: number;
34
+ } | {
35
+ top: number;
36
+ left: number;
37
+ width: number;
38
+ }>;
20
39
  clickoutside: () => void;
21
40
  };