@coreui/vue-pro 4.7.0-alpha.1 → 4.8.0-next.0

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 (46) hide show
  1. package/README.md +1 -1
  2. package/dist/components/calendar/utils.d.ts +23 -0
  3. package/dist/components/element-cover/CElementCover.d.ts +14 -11
  4. package/dist/components/modal/CModal.d.ts +4 -20
  5. package/dist/components/offcanvas/COffcanvas.d.ts +35 -18
  6. package/dist/components/smart-table/CSmartTable.d.ts +83 -94
  7. package/dist/components/smart-table/CSmartTableBody.d.ts +16 -40
  8. package/dist/components/smart-table/CSmartTableHead.d.ts +20 -61
  9. package/dist/components/smart-table/CSmartTableInterface.d.ts +5 -1
  10. package/dist/components/smart-table/types.d.ts +50 -0
  11. package/dist/components/smart-table/utils.d.ts +17 -0
  12. package/dist/components/table/CTable.d.ts +5 -11
  13. package/dist/components/time-picker/types.d.ts +15 -0
  14. package/dist/components/time-picker/utils.d.ts +23 -0
  15. package/dist/index.es.js +1114 -4423
  16. package/dist/index.es.js.map +1 -1
  17. package/dist/index.js +1115 -4424
  18. package/dist/index.js.map +1 -1
  19. package/dist/utils/calendar.d.ts +2 -2
  20. package/dist/utils/index.d.ts +2 -2
  21. package/dist/utils/isInViewport.d.ts +2 -0
  22. package/dist/utils/isObjectInArray.d.ts +2 -0
  23. package/package.json +10 -14
  24. package/src/components/calendar/CCalendar.ts +1 -1
  25. package/src/{utils/calendar.ts → components/calendar/utils.ts} +3 -3
  26. package/src/components/carousel/CCarousel.ts +3 -3
  27. package/src/components/date-range-picker/CDateRangePicker.ts +1 -1
  28. package/src/components/element-cover/CElementCover.ts +45 -30
  29. package/src/components/form/CFormControlWrapper.ts +36 -22
  30. package/src/components/modal/CModal.ts +10 -10
  31. package/src/components/multi-select/CMultiSelect.ts +0 -10
  32. package/src/components/offcanvas/COffcanvas.ts +50 -28
  33. package/src/components/sidebar/CSidebar.ts +5 -5
  34. package/src/components/smart-table/CSmartTable.ts +409 -272
  35. package/src/components/smart-table/CSmartTableBody.ts +126 -137
  36. package/src/components/smart-table/CSmartTableHead.ts +54 -139
  37. package/src/components/smart-table/CSmartTableInterface.ts +7 -1
  38. package/src/components/smart-table/types.ts +61 -0
  39. package/src/components/smart-table/utils.ts +212 -0
  40. package/src/components/table/CTable.ts +45 -42
  41. package/src/components/time-picker/CTimePicker.ts +49 -26
  42. package/src/components/time-picker/types.ts +15 -0
  43. package/src/{utils/time.ts → components/time-picker/utils.ts} +49 -10
  44. package/src/utils/index.ts +2 -2
  45. package/src/utils/isInViewport.ts +11 -0
  46. package/src/utils/isVisible.ts +0 -11
@@ -1,89 +1,51 @@
1
1
  import { PropType } from 'vue';
2
- import { Column, ColumnFilter, ColumnFilterValue, Item, Sorter, SorterValue } from './CSmartTableInterface';
2
+ import type { Column, ColumnFilter, ColumnFilterValue, Item, Sorter, SorterValue } from './types';
3
3
  declare const CSmartTableHead: import("vue").DefineComponent<{
4
- clearSorterAndFilter: {
5
- type: StringConstructor;
6
- require: boolean;
7
- default: string;
8
- };
9
- columnFilter: {
10
- type: PropType<boolean | ColumnFilter>;
11
- require: boolean;
12
- };
13
- columnFilterValue: {
14
- type: PropType<ColumnFilterValue>;
15
- required: false;
16
- };
17
- columnSorter: {
18
- type: PropType<boolean | Sorter>;
19
- default: undefined;
20
- require: boolean;
21
- };
4
+ columnFilter: PropType<boolean | ColumnFilter>;
5
+ columnFilterValue: PropType<ColumnFilterValue>;
6
+ columnSorter: PropType<boolean | Sorter>;
22
7
  component: {
23
8
  type: StringConstructor;
24
9
  default: string;
25
- require: boolean;
26
10
  };
27
11
  columns: {
28
- type: PropType<string[] | Column[]>;
12
+ type: PropType<(string | Column)[]>;
29
13
  default: () => never[];
30
- required: false;
31
14
  };
32
15
  items: {
33
16
  type: PropType<Item[]>;
34
17
  default: () => never[];
35
- required: false;
36
18
  };
37
19
  selectable: BooleanConstructor;
38
- selectAll: (StringConstructor | BooleanConstructor)[];
39
- sorterState: {
40
- type: PropType<SorterValue>;
41
- default: undefined;
42
- require: boolean;
43
- };
20
+ selectAll: PropType<boolean | {
21
+ external?: boolean | undefined;
22
+ }>;
23
+ selectedAll: (StringConstructor | BooleanConstructor)[];
24
+ sorterState: PropType<SorterValue>;
44
25
  }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
45
26
  [key: string]: any;
46
27
  }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("filterChange" | "customFilterChange" | "filterInput" | "selectAllChecked" | "sortClick")[], "filterChange" | "customFilterChange" | "filterInput" | "selectAllChecked" | "sortClick", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
47
- clearSorterAndFilter: {
48
- type: StringConstructor;
49
- require: boolean;
50
- default: string;
51
- };
52
- columnFilter: {
53
- type: PropType<boolean | ColumnFilter>;
54
- require: boolean;
55
- };
56
- columnFilterValue: {
57
- type: PropType<ColumnFilterValue>;
58
- required: false;
59
- };
60
- columnSorter: {
61
- type: PropType<boolean | Sorter>;
62
- default: undefined;
63
- require: boolean;
64
- };
28
+ columnFilter: PropType<boolean | ColumnFilter>;
29
+ columnFilterValue: PropType<ColumnFilterValue>;
30
+ columnSorter: PropType<boolean | Sorter>;
65
31
  component: {
66
32
  type: StringConstructor;
67
33
  default: string;
68
- require: boolean;
69
34
  };
70
35
  columns: {
71
- type: PropType<string[] | Column[]>;
36
+ type: PropType<(string | Column)[]>;
72
37
  default: () => never[];
73
- required: false;
74
38
  };
75
39
  items: {
76
40
  type: PropType<Item[]>;
77
41
  default: () => never[];
78
- required: false;
79
42
  };
80
43
  selectable: BooleanConstructor;
81
- selectAll: (StringConstructor | BooleanConstructor)[];
82
- sorterState: {
83
- type: PropType<SorterValue>;
84
- default: undefined;
85
- require: boolean;
86
- };
44
+ selectAll: PropType<boolean | {
45
+ external?: boolean | undefined;
46
+ }>;
47
+ selectedAll: (StringConstructor | BooleanConstructor)[];
48
+ sorterState: PropType<SorterValue>;
87
49
  }>> & {
88
50
  onFilterChange?: ((...args: any[]) => any) | undefined;
89
51
  onCustomFilterChange?: ((...args: any[]) => any) | undefined;
@@ -93,10 +55,7 @@ declare const CSmartTableHead: import("vue").DefineComponent<{
93
55
  }, {
94
56
  component: string;
95
57
  items: Item[];
96
- columns: string[] | Column[];
58
+ columns: (string | Column)[];
97
59
  selectable: boolean;
98
- clearSorterAndFilter: string;
99
- columnSorter: boolean | Sorter;
100
- sorterState: SorterValue;
101
60
  }>;
102
61
  export { CSmartTableHead };
@@ -17,9 +17,13 @@ export interface ColumnFilter {
17
17
  export interface ColumnFilterValue {
18
18
  [key: string]: number | string | any;
19
19
  }
20
+ export type FooterItem = {
21
+ label?: string;
22
+ _props?: any;
23
+ };
20
24
  export type Item = {
21
25
  [key: string]: number | string | any;
22
- _id: number;
26
+ _cellProps?: any;
23
27
  _props: Object;
24
28
  _selected: boolean;
25
29
  };
@@ -0,0 +1,50 @@
1
+ import { VNode } from 'vue';
2
+ export type Column = {
3
+ filter?: boolean | ((values: any[], onChange: (value: any) => void) => VNode);
4
+ key: string;
5
+ label?: string;
6
+ sorter?: boolean;
7
+ _style?: any;
8
+ _props?: any;
9
+ };
10
+ export type ColumnFilter = {
11
+ lazy?: boolean;
12
+ external?: boolean;
13
+ };
14
+ export type ColumnFilterValue = {
15
+ [key: string]: any;
16
+ };
17
+ export type FooterItem = {
18
+ label?: string;
19
+ _props?: any;
20
+ };
21
+ export type Item = {
22
+ [key: string]: number | string | any;
23
+ _cellProps?: any;
24
+ _props?: any;
25
+ _selected?: boolean;
26
+ };
27
+ export type ItemsPerPageSelect = {
28
+ external?: boolean;
29
+ label?: string;
30
+ values?: Array<number>;
31
+ };
32
+ export type Pagination = {
33
+ external?: boolean;
34
+ };
35
+ export type Sorter = {
36
+ resetable?: boolean;
37
+ external?: boolean;
38
+ };
39
+ export type ScopedColumns = {
40
+ [key: string]: any;
41
+ details?: (a: Item, b: number) => VNode;
42
+ };
43
+ export type SorterValue = {
44
+ column?: string;
45
+ state?: number | string;
46
+ };
47
+ export type TableFilter = {
48
+ lazy?: boolean;
49
+ external?: boolean;
50
+ };
@@ -0,0 +1,17 @@
1
+ import type { Column, ColumnFilter, ColumnFilterValue, Item, Sorter, SorterValue, TableFilter } from './types';
2
+ export declare const filterColumns: (items: Item[], columnFilter: boolean | ColumnFilter | undefined, columnFilterState: ColumnFilterValue, itemsDataColumns: string[]) => Item[];
3
+ export declare const filterTable: (items: Item[], tableFilter: boolean | TableFilter | undefined, tableFilterState: string, itemsDataColumns: string[]) => Item[];
4
+ export declare const getClickedColumnName: (target: HTMLTextAreaElement, columnNames: string[]) => string;
5
+ export declare const getColumnKey: (column: Column | string) => string;
6
+ export declare const getColumnLabel: (column: Column | string) => string;
7
+ export declare const getColumnNames: (columns: (string | Column)[] | undefined, items: Item[]) => string[];
8
+ export declare const getColumnNamesFromItems: (items: Item[]) => string[];
9
+ export declare const getColumnSorterState: (key: string, sorterState: SorterValue | undefined) => string | number;
10
+ export declare const getColumnValues: (items: Item[], key: string) => any[];
11
+ export declare const getTableDataCellProps: (item: Item, colName: string) => any;
12
+ export declare const getTableHeaderCellProps: (column: Column | string) => any;
13
+ export declare const getTableHeaderCellStyles: (column: Column | string, columnSorter: boolean | Sorter | undefined) => any;
14
+ export declare const isObjectInArray: <T>(array: T[], item: T, ignore?: string[]) => boolean;
15
+ export declare const isSortable: (i: number, columns: (string | Column)[] | undefined, columnSorter: Sorter | boolean | undefined, itemsDataColumns: string[], columnNames: string[]) => boolean | undefined;
16
+ export declare const pretifyName: (name: string) => string;
17
+ export declare const sortItems: (columnSorter: boolean | Sorter | undefined, items: Item[], itemsDataColumns: string[], sorterState: SorterValue) => Item[];
@@ -82,7 +82,7 @@ declare const CTable: import("vue").DefineComponent<{
82
82
  * @since 4.5.0
83
83
  */
84
84
  columns: {
85
- type: PropType<string[] | Column[]>;
85
+ type: PropType<(string | Column)[]>;
86
86
  required: false;
87
87
  };
88
88
  /**
@@ -105,8 +105,7 @@ declare const CTable: import("vue").DefineComponent<{
105
105
  * @since 4.5.0
106
106
  */
107
107
  footer: {
108
- type: PropType<FooterItem[]>;
109
- default: () => never[];
108
+ type: PropType<(string | FooterItem)[]>;
110
109
  required: false;
111
110
  };
112
111
  /**
@@ -126,7 +125,6 @@ declare const CTable: import("vue").DefineComponent<{
126
125
  */
127
126
  items: {
128
127
  type: PropType<Item[]>;
129
- default: () => never[];
130
128
  required: false;
131
129
  };
132
130
  responsive: {
@@ -251,7 +249,7 @@ declare const CTable: import("vue").DefineComponent<{
251
249
  * @since 4.5.0
252
250
  */
253
251
  columns: {
254
- type: PropType<string[] | Column[]>;
252
+ type: PropType<(string | Column)[]>;
255
253
  required: false;
256
254
  };
257
255
  /**
@@ -274,8 +272,7 @@ declare const CTable: import("vue").DefineComponent<{
274
272
  * @since 4.5.0
275
273
  */
276
274
  footer: {
277
- type: PropType<FooterItem[]>;
278
- default: () => never[];
275
+ type: PropType<(string | FooterItem)[]>;
279
276
  required: false;
280
277
  };
281
278
  /**
@@ -295,7 +292,6 @@ declare const CTable: import("vue").DefineComponent<{
295
292
  */
296
293
  items: {
297
294
  type: PropType<Item[]>;
298
- default: () => never[];
299
295
  required: false;
300
296
  };
301
297
  responsive: {
@@ -352,15 +348,13 @@ declare const CTable: import("vue").DefineComponent<{
352
348
  }>>, {
353
349
  small: boolean;
354
350
  hover: boolean;
355
- items: Item[];
356
- footer: FooterItem[];
357
351
  caption: string;
358
352
  align: string;
353
+ responsive: string | boolean;
359
354
  striped: boolean;
360
355
  bordered: boolean;
361
356
  borderless: boolean;
362
357
  captionTop: string;
363
- responsive: string | boolean;
364
358
  stripedColumns: boolean;
365
359
  tableFootProps: Record<string, any>;
366
360
  tableHeadProps: Record<string, any>;
@@ -0,0 +1,15 @@
1
+ export type LocalizedTimePartials = {
2
+ listOfHours: {
3
+ value: number;
4
+ label: string;
5
+ }[];
6
+ listOfMinutes: {
7
+ value: number;
8
+ label: string;
9
+ }[];
10
+ listOfSeconds: {
11
+ value: number;
12
+ label: string;
13
+ }[];
14
+ hour12: boolean;
15
+ };
@@ -0,0 +1,23 @@
1
+ import type { LocalizedTimePartials } from './types';
2
+ export declare const convert12hTo24h: (abbr: 'am' | 'pm', hour: number) => number;
3
+ export declare const convert24hTo12h: (hour: number) => number;
4
+ export declare const convertTimeToDate: (time: Date | string | null | undefined) => Date | null;
5
+ export declare const getAmPm: (date: Date, locale: string) => "am" | "pm";
6
+ export declare const getListOfHours: (locale: string, ampm?: 'auto' | boolean) => {
7
+ value: number;
8
+ label: string;
9
+ }[];
10
+ export declare const getListOfMinutes: (locale: string, valueAsString?: boolean) => {
11
+ value: string | number;
12
+ label: string;
13
+ }[];
14
+ export declare const getListOfSeconds: (locale: string, valueAsString?: boolean) => {
15
+ value: string | number;
16
+ label: string;
17
+ }[];
18
+ export declare const getLocalizedTimePartials: (locale: string, ampm?: 'auto' | boolean) => LocalizedTimePartials;
19
+ export declare const getSelectedHour: (date: Date | null, locale: string, ampm?: 'auto' | boolean) => number | "";
20
+ export declare const getSelectedMinutes: (date: Date | null) => number | "";
21
+ export declare const getSelectedSeconds: (date: Date | null) => number | "";
22
+ export declare const isAmPm: (locale: string) => boolean;
23
+ export declare const isValidTime: (time: string) => number | false;