;
+ required: true;
+ };
+};
+type __VLS_WithDefaults = {
+ [K in keyof Pick
]: K extends keyof D ? __VLS_Prettify
: P[K];
+};
+type __VLS_Prettify = {
+ [K in keyof T]: T[K];
+} & {};
+type __VLS_WithTemplateSlots = T & {
+ new (): {
+ $slots: S;
+ };
+};
diff --git a/dist/plugin/components/TableLoader.vue.d.ts b/dist/plugin/components/TableLoader.vue.d.ts
index dbdf320..9fde03c 100644
--- a/dist/plugin/components/TableLoader.vue.d.ts
+++ b/dist/plugin/components/TableLoader.vue.d.ts
@@ -1,86 +1,17 @@
-declare const _default: import("vue").DefineComponent<{
- height: {
- type: globalThis.PropType;
- default: number;
- };
- loading: {
- type: globalThis.PropType;
- required: true;
- };
- loadingText: {
- type: globalThis.PropType;
- default: string;
- };
- colspan: {
- type: globalThis.PropType;
- required: true;
- };
- size: {
- type: globalThis.PropType;
- default: string;
- };
- colors: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- loaderType: {
- type: globalThis.PropType;
- required: true;
- default: string;
- };
- loaderProps: {
- type: globalThis.PropType;
- };
- textLoader: {
- type: globalThis.PropType;
- default: boolean;
- };
-}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly;
- default: number;
- };
- loading: {
- type: globalThis.PropType;
- required: true;
- };
- loadingText: {
- type: globalThis.PropType;
- default: string;
- };
- colspan: {
- type: globalThis.PropType;
- required: true;
- };
- size: {
- type: globalThis.PropType;
- default: string;
- };
- colors: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- loaderType: {
- type: globalThis.PropType;
- required: true;
- default: string;
- };
- loaderProps: {
- type: globalThis.PropType;
- };
- textLoader: {
- type: globalThis.PropType;
- default: boolean;
- };
-}>>, {
+import { TableLoader } from '../../types';
+declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps, {
+ height: number;
+ loaderType: string;
+ loadingText: string;
+ size: string;
+ textLoader: boolean;
+}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly, {
+ height: number;
+ loaderType: string;
+ loadingText: string;
+ size: string;
+ textLoader: boolean;
+}>>>, {
height: string | number;
loadingText: string;
size: string | number;
@@ -88,3 +19,20 @@ declare const _default: import("vue").DefineComponent<{
textLoader: boolean;
}, {}>;
export default _default;
+type __VLS_NonUndefinedable = T extends undefined ? never : T;
+type __VLS_TypePropsToRuntimeProps = {
+ [K in keyof T]-?: {} extends Pick ? {
+ type: import('vue').PropType<__VLS_NonUndefinedable>;
+ } : {
+ type: import('vue').PropType;
+ required: true;
+ };
+};
+type __VLS_WithDefaults = {
+ [K in keyof Pick
]: K extends keyof D ? __VLS_Prettify
: P[K];
+};
+type __VLS_Prettify = {
+ [K in keyof T]: T[K];
+} & {};
diff --git a/dist/plugin/slots/BottomSlot.vue.d.ts b/dist/plugin/slots/BottomSlot.vue.d.ts
index a37e32b..e0d7a0d 100644
--- a/dist/plugin/slots/BottomSlot.vue.d.ts
+++ b/dist/plugin/slots/BottomSlot.vue.d.ts
@@ -1,59 +1,25 @@
-declare const _default: __VLS_WithTemplateSlots) => boolean;
- isSelected: (items: import('../../types').DataTableItem | import('../../types').DataTableItem[]) => boolean;
- items: readonly import('../../types').DataTableItem[];
- itemsPerPage: string | number | undefined;
- page: string | number | undefined;
- pageCount: number;
- select: (items: import('../../types').DataTableItem[], value: boolean) => void;
- selectAll: (value: boolean) => void;
- setItemsPerPage: (itemsPerPage: number) => void;
- someSelected: boolean;
- sortBy: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleExpand: (item: import('../../types').DataTableItem) => void;
- toggleSelect: (item: import('../../types').DataTableItem) => void;
- toggleSort: (column: import('../../types').InternalDataTableHeader) => void;
- }>;
- required: true;
- };
-}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly) => boolean;
- isSelected: (items: import('../../types').DataTableItem | import('../../types').DataTableItem[]) => boolean;
- items: readonly import('../../types').DataTableItem[];
- itemsPerPage: string | number | undefined;
- page: string | number | undefined;
- pageCount: number;
- select: (items: import('../../types').DataTableItem[], value: boolean) => void;
- selectAll: (value: boolean) => void;
- setItemsPerPage: (itemsPerPage: number) => void;
- someSelected: boolean;
- sortBy: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleExpand: (item: import('../../types').DataTableItem) => void;
- toggleSelect: (item: import('../../types').DataTableItem) => void;
- toggleSort: (column: import('../../types').InternalDataTableHeader) => void;
- }>;
- required: true;
- };
-}>>, {}, {}>, {
+import { VDataTableSlotProps } from '../../types';
+declare const _default: __VLS_WithTemplateSlots, {}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly, {}>>>, {}, {}>, {
bottom?(_: {}): any;
}>;
export default _default;
+type __VLS_NonUndefinedable = T extends undefined ? never : T;
+type __VLS_TypePropsToRuntimeProps = {
+ [K in keyof T]-?: {} extends Pick ? {
+ type: import('vue').PropType<__VLS_NonUndefinedable>;
+ } : {
+ type: import('vue').PropType;
+ required: true;
+ };
+};
+type __VLS_WithDefaults = {
+ [K in keyof Pick
]: K extends keyof D ? __VLS_Prettify
: P[K];
+};
+type __VLS_Prettify = {
+ [K in keyof T]: T[K];
+} & {};
type __VLS_WithTemplateSlots = T & {
new (): {
$slots: S;
diff --git a/dist/plugin/slots/HeadersSlot.vue.d.ts b/dist/plugin/slots/HeadersSlot.vue.d.ts
index 52741d2..6f20740 100644
--- a/dist/plugin/slots/HeadersSlot.vue.d.ts
+++ b/dist/plugin/slots/HeadersSlot.vue.d.ts
@@ -1,181 +1,40 @@
-import { ColorsObject, Column, InternalDataTableHeader } from '../../types';
-declare const _default: __VLS_WithTemplateSlots;
- required: true;
- };
- sortAscIcon: {
- type: globalThis.PropType;
- };
- sortBy: {
- type: globalThis.PropType;
- required: true;
- };
- showSelect: {
- type: globalThis.PropType;
- default: boolean;
- };
- selectStrategy: {
- type: globalThis.PropType<"page" | "all" | "single" | undefined>;
- required: true;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- colors: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- columnWidths: {
- type: globalThis.PropType;
- required: true;
- };
- matchColumnWidths: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- allSelected?: boolean | undefined;
- columns: Column[];
- getSortIcon: (column: InternalDataTableHeader) => string | import("vue").JSXComponent | (string | [path: string, opacity: number])[];
- index?: number | undefined;
- item?: any;
- selectAll: (value: boolean) => void;
- someSelected: boolean;
- sortBy: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleSort: (column: InternalDataTableHeader) => void;
- }>;
- required: true;
- };
- loaderSettings: {
- type: globalThis.PropType<{
- colspan: number;
- height?: string | number | undefined;
- loaderType: string | false | string[] | null | undefined;
- loading: string | boolean | undefined;
- loadingText?: string | undefined;
- size?: string | number | undefined;
- textLoader?: boolean | undefined;
- }>;
- required: true;
- };
- isTheadSlot: {
- type: globalThis.PropType;
- default: boolean;
- };
- loaderProps: {
- type: globalThis.PropType;
- };
- tableModelValue: {
- type: globalThis.PropType;
- };
-}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
+import { Column, HeaderSlotProps } from '../../types';
+declare const _default: __VLS_WithTemplateSlots, {
+ isTheadSlot: boolean;
+ showSelect: boolean;
+}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
"click:selectAll": (...args: any[]) => void;
-}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly;
- required: true;
- };
- sortAscIcon: {
- type: globalThis.PropType;
- };
- sortBy: {
- type: globalThis.PropType;
- required: true;
- };
- showSelect: {
- type: globalThis.PropType;
- default: boolean;
- };
- selectStrategy: {
- type: globalThis.PropType<"page" | "all" | "single" | undefined>;
- required: true;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- colors: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- columnWidths: {
- type: globalThis.PropType;
- required: true;
- };
- matchColumnWidths: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- allSelected?: boolean | undefined;
- columns: Column[];
- getSortIcon: (column: InternalDataTableHeader) => string | import("vue").JSXComponent | (string | [path: string, opacity: number])[];
- index?: number | undefined;
- item?: any;
- selectAll: (value: boolean) => void;
- someSelected: boolean;
- sortBy: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleSort: (column: InternalDataTableHeader) => void;
- }>;
- required: true;
- };
- loaderSettings: {
- type: globalThis.PropType<{
- colspan: number;
- height?: string | number | undefined;
- loaderType: string | false | string[] | null | undefined;
- loading: string | boolean | undefined;
- loadingText?: string | undefined;
- size?: string | number | undefined;
- textLoader?: boolean | undefined;
- }>;
- required: true;
- };
- isTheadSlot: {
- type: globalThis.PropType;
- default: boolean;
- };
- loaderProps: {
- type: globalThis.PropType;
- };
- tableModelValue: {
- type: globalThis.PropType;
- };
-}>> & {
+}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly, {
+ isTheadSlot: boolean;
+ showSelect: boolean;
+}>>> & {
"onClick:selectAll"?: ((...args: any[]) => any) | undefined;
}, {
showSelect: boolean;
isTheadSlot: boolean;
-}, {}>, Partial, Partial any>> & {
"header.sortIcon"?(_: {}): any;
}>;
export default _default;
+type __VLS_NonUndefinedable = T extends undefined ? never : T;
+type __VLS_TypePropsToRuntimeProps = {
+ [K in keyof T]-?: {} extends Pick ? {
+ type: import('vue').PropType<__VLS_NonUndefinedable>;
+ } : {
+ type: import('vue').PropType;
+ required: true;
+ };
+};
+type __VLS_WithDefaults = {
+ [K in keyof Pick
]: K extends keyof D ? __VLS_Prettify
: P[K];
+};
+type __VLS_Prettify = {
+ [K in keyof T]: T[K];
+} & {};
type __VLS_WithTemplateSlots = T & {
new (): {
$slots: S;
diff --git a/dist/plugin/slots/ItemSlot.vue.d.ts b/dist/plugin/slots/ItemSlot.vue.d.ts
index 10ea322..9d846d4 100644
--- a/dist/plugin/slots/ItemSlot.vue.d.ts
+++ b/dist/plugin/slots/ItemSlot.vue.d.ts
@@ -1,106 +1,31 @@
-import { Column, DataTableItem } from '../../types';
-declare const _default: __VLS_WithTemplateSlots;
- required: true;
- };
- showSelect: {
- type: globalThis.PropType;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- itemSelectable: {
- type: globalThis.PropType, fallback?: any) => any) | null | undefined>;
- required: true;
- };
- expandOnClick: {
- type: globalThis.PropType;
- required: true;
- };
- showExpand: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- columns: Column[];
- index?: number | undefined;
- internalItem: any;
- isExpanded: (item: DataTableItem) => boolean;
- isSelected: (items: DataTableItem | DataTableItem[]) => boolean;
- item: any;
- level: number;
- toggleExpand: (item: DataTableItem) => void;
- toggleSelect: (item: DataTableItem) => void;
- }>;
- required: true;
- };
- levels: {
- type: globalThis.PropType;
- required: true;
- };
-}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
+import { ItemSlotProps } from '../../types';
+declare const _default: __VLS_WithTemplateSlots, {}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
"update:expanded": (...args: any[]) => void;
"click:row": (...args: any[]) => void;
"click:row:checkbox": (...args: any[]) => void;
-}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly;
- required: true;
- };
- showSelect: {
- type: globalThis.PropType;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- itemSelectable: {
- type: globalThis.PropType, fallback?: any) => any) | null | undefined>;
- required: true;
- };
- expandOnClick: {
- type: globalThis.PropType;
- required: true;
- };
- showExpand: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- columns: Column[];
- index?: number | undefined;
- internalItem: any;
- isExpanded: (item: DataTableItem) => boolean;
- isSelected: (items: DataTableItem | DataTableItem[]) => boolean;
- item: any;
- level: number;
- toggleExpand: (item: DataTableItem) => void;
- toggleSelect: (item: DataTableItem) => void;
- }>;
- required: true;
- };
- levels: {
- type: globalThis.PropType;
- required: true;
- };
-}>> & {
+}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly, {}>>> & {
"onClick:row"?: ((...args: any[]) => any) | undefined;
"onUpdate:expanded"?: ((...args: any[]) => any) | undefined;
"onClick:row:checkbox"?: ((...args: any[]) => any) | undefined;
}, {}, {}>, Readonly>>;
export default _default;
+type __VLS_NonUndefinedable = T extends undefined ? never : T;
+type __VLS_TypePropsToRuntimeProps = {
+ [K in keyof T]-?: {} extends Pick ? {
+ type: import('vue').PropType<__VLS_NonUndefinedable>;
+ } : {
+ type: import('vue').PropType;
+ required: true;
+ };
+};
+type __VLS_WithDefaults = {
+ [K in keyof Pick
]: K extends keyof D ? __VLS_Prettify
: P[K];
+};
+type __VLS_Prettify = {
+ [K in keyof T]: T[K];
+} & {};
type __VLS_WithTemplateSlots = T & {
new (): {
$slots: S;
diff --git a/dist/plugin/slots/TfootSlot.vue.d.ts b/dist/plugin/slots/TfootSlot.vue.d.ts
index 1664c48..e0f8dde 100644
--- a/dist/plugin/slots/TfootSlot.vue.d.ts
+++ b/dist/plugin/slots/TfootSlot.vue.d.ts
@@ -1,164 +1,29 @@
-import { ColorsObject, Column } from '../../types';
-declare const _default: __VLS_WithTemplateSlots;
- required: true;
- };
- selectStrategy: {
- type: globalThis.PropType<"page" | "all" | "single" | undefined>;
- required: true;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- colors: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- allSelected?: boolean | undefined;
- columns: Column[];
- getFixedStyles?: ((column: import('../../types').InternalDataTableHeader, y: number) => globalThis.CSSProperties | undefined) | undefined;
- getSortIcon?: ((column: import('../../types').InternalDataTableHeader) => string | import("vue").JSXComponent | (string | [path: string, opacity: number])[]) | undefined;
- headers?: import("vue").DeepReadonly<{
- key?: (string & {}) | "data-table-group" | "data-table-select" | "data-table-expand" | undefined;
- value?: string | boolean | (string | number)[] | ((item: Record, fallback?: any) => any) | null | undefined;
- title: string;
- colspan?: number | undefined;
- rowspan?: number | undefined;
- fixed?: boolean | undefined;
- align?: "start" | "end" | "center" | undefined;
- width?: string | number | undefined;
- minWidth?: string | undefined;
- maxWidth?: string | undefined;
- sortable?: boolean | undefined;
- sort?: ((a: any, b: any) => number) | undefined;
- }[] | {
- key?: (string & {}) | "data-table-group" | "data-table-select" | "data-table-expand" | undefined;
- value?: string | boolean | (string | number)[] | ((item: Record, fallback?: any) => any) | null | undefined;
- title: string;
- colspan?: number | undefined;
- rowspan?: number | undefined;
- fixed?: boolean | undefined;
- align?: "start" | "end" | "center" | undefined;
- width?: string | number | undefined;
- minWidth?: string | undefined;
- maxWidth?: string | undefined;
- sortable?: boolean | undefined;
- sort?: ((a: any, b: any) => number) | undefined;
- }[][]> | undefined;
- index?: number | undefined;
- isExpanded: (item: import('../../types').DataTableItem) => boolean;
- item?: any;
- selectAll: (value: boolean) => void;
- someSelected?: boolean | undefined;
- sortBy?: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleExpand: (item: import('../../types').DataTableItem) => void;
- toggleSelect: (item: import('../../types').DataTableItem) => void;
- toggleSort?: ((column: import('../../types').InternalDataTableHeader) => void) | undefined;
- }>;
- required: true;
- };
- tableModelValue: {
- type: globalThis.PropType;
- };
- footers: {
- type: globalThis.PropType;
- required: true;
- };
-}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
+import { Column, TFootSlotProps } from '../../types';
+declare const _default: __VLS_WithTemplateSlots, {}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
"click:selectAll": (...args: any[]) => void;
-}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly;
- required: true;
- };
- selectStrategy: {
- type: globalThis.PropType<"page" | "all" | "single" | undefined>;
- required: true;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- colors: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- allSelected?: boolean | undefined;
- columns: Column[];
- getFixedStyles?: ((column: import('../../types').InternalDataTableHeader, y: number) => globalThis.CSSProperties | undefined) | undefined;
- getSortIcon?: ((column: import('../../types').InternalDataTableHeader) => string | import("vue").JSXComponent | (string | [path: string, opacity: number])[]) | undefined;
- headers?: import("vue").DeepReadonly<{
- key?: (string & {}) | "data-table-group" | "data-table-select" | "data-table-expand" | undefined;
- value?: string | boolean | (string | number)[] | ((item: Record, fallback?: any) => any) | null | undefined;
- title: string;
- colspan?: number | undefined;
- rowspan?: number | undefined;
- fixed?: boolean | undefined;
- align?: "start" | "end" | "center" | undefined;
- width?: string | number | undefined;
- minWidth?: string | undefined;
- maxWidth?: string | undefined;
- sortable?: boolean | undefined;
- sort?: ((a: any, b: any) => number) | undefined;
- }[] | {
- key?: (string & {}) | "data-table-group" | "data-table-select" | "data-table-expand" | undefined;
- value?: string | boolean | (string | number)[] | ((item: Record, fallback?: any) => any) | null | undefined;
- title: string;
- colspan?: number | undefined;
- rowspan?: number | undefined;
- fixed?: boolean | undefined;
- align?: "start" | "end" | "center" | undefined;
- width?: string | number | undefined;
- minWidth?: string | undefined;
- maxWidth?: string | undefined;
- sortable?: boolean | undefined;
- sort?: ((a: any, b: any) => number) | undefined;
- }[][]> | undefined;
- index?: number | undefined;
- isExpanded: (item: import('../../types').DataTableItem) => boolean;
- item?: any;
- selectAll: (value: boolean) => void;
- someSelected?: boolean | undefined;
- sortBy?: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleExpand: (item: import('../../types').DataTableItem) => void;
- toggleSelect: (item: import('../../types').DataTableItem) => void;
- toggleSort?: ((column: import('../../types').InternalDataTableHeader) => void) | undefined;
- }>;
- required: true;
- };
- tableModelValue: {
- type: globalThis.PropType;
- };
- footers: {
- type: globalThis.PropType;
- required: true;
- };
-}>> & {
+}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly, {}>>> & {
"onClick:selectAll"?: ((...args: any[]) => any) | undefined;
-}, {}, {}>, Partial, Partial any>>>;
export default _default;
+type __VLS_NonUndefinedable = T extends undefined ? never : T;
+type __VLS_TypePropsToRuntimeProps = {
+ [K in keyof T]-?: {} extends Pick ? {
+ type: import('vue').PropType<__VLS_NonUndefinedable>;
+ } : {
+ type: import('vue').PropType;
+ required: true;
+ };
+};
+type __VLS_WithDefaults = {
+ [K in keyof Pick
]: K extends keyof D ? __VLS_Prettify
: P[K];
+};
+type __VLS_Prettify = {
+ [K in keyof T]: T[K];
+} & {};
type __VLS_WithTemplateSlots = T & {
new (): {
$slots: S;
diff --git a/dist/plugin/slots/TheadSlot.vue.d.ts b/dist/plugin/slots/TheadSlot.vue.d.ts
index 6a4ef4e..51e6530 100644
--- a/dist/plugin/slots/TheadSlot.vue.d.ts
+++ b/dist/plugin/slots/TheadSlot.vue.d.ts
@@ -1,149 +1,32 @@
-import { Column } from '../../types';
-declare const _default: import("vue").DefineComponent<{
- density: {
- type: globalThis.PropType;
- required: true;
- };
- sortBy: {
- type: globalThis.PropType;
- required: true;
- };
- showSelect: {
- type: globalThis.PropType;
- default: boolean;
- };
- selectStrategy: {
- type: globalThis.PropType<"page" | "all" | "single" | undefined>;
- required: true;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- colors: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- columnWidths: {
- type: globalThis.PropType;
- required: true;
- };
- matchColumnWidths: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- allSelected?: boolean | undefined;
- columns: Column[];
- getSortIcon: (column: import('../../types').InternalDataTableHeader) => string | import("vue").JSXComponent | (string | [path: string, opacity: number])[];
- index?: number | undefined;
- item?: any;
- selectAll: (value: boolean) => void;
- someSelected: boolean;
- sortBy: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleSort: (column: import('../../types').InternalDataTableHeader) => void;
- }>;
- required: true;
- };
- loaderSettings: {
- type: globalThis.PropType<{
- colspan: number;
- height?: string | number | undefined;
- loaderType: string | false | string[] | null | undefined;
- loading: string | boolean | undefined;
- loadingText?: string | undefined;
- size?: string | number | undefined;
- textLoader?: boolean | undefined;
- }>;
- required: true;
- };
-}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
+import { THeadSlotProps } from '../../types';
+declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps, {
+ showSelect: boolean;
+}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
"click:selectAll": (...args: any[]) => void;
"update:sortBy": (...args: any[]) => void;
-}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly;
- required: true;
- };
- sortBy: {
- type: globalThis.PropType;
- required: true;
- };
- showSelect: {
- type: globalThis.PropType;
- default: boolean;
- };
- selectStrategy: {
- type: globalThis.PropType<"page" | "all" | "single" | undefined>;
- required: true;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- colors: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- columnWidths: {
- type: globalThis.PropType;
- required: true;
- };
- matchColumnWidths: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- allSelected?: boolean | undefined;
- columns: Column[];
- getSortIcon: (column: import('../../types').InternalDataTableHeader) => string | import("vue").JSXComponent | (string | [path: string, opacity: number])[];
- index?: number | undefined;
- item?: any;
- selectAll: (value: boolean) => void;
- someSelected: boolean;
- sortBy: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleSort: (column: import('../../types').InternalDataTableHeader) => void;
- }>;
- required: true;
- };
- loaderSettings: {
- type: globalThis.PropType<{
- colspan: number;
- height?: string | number | undefined;
- loaderType: string | false | string[] | null | undefined;
- loading: string | boolean | undefined;
- loadingText?: string | undefined;
- size?: string | number | undefined;
- textLoader?: boolean | undefined;
- }>;
- required: true;
- };
-}>> & {
+}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly, {
+ showSelect: boolean;
+}>>> & {
"onClick:selectAll"?: ((...args: any[]) => any) | undefined;
"onUpdate:sortBy"?: ((...args: any[]) => any) | undefined;
}, {
showSelect: boolean;
}, {}>;
export default _default;
+type __VLS_NonUndefinedable = T extends undefined ? never : T;
+type __VLS_TypePropsToRuntimeProps = {
+ [K in keyof T]-?: {} extends Pick ? {
+ type: import('vue').PropType<__VLS_NonUndefinedable>;
+ } : {
+ type: import('vue').PropType;
+ required: true;
+ };
+};
+type __VLS_WithDefaults = {
+ [K in keyof Pick
]: K extends keyof D ? __VLS_Prettify
: P[K];
+};
+type __VLS_Prettify = {
+ [K in keyof T]: T[K];
+} & {};
diff --git a/dist/plugin/slots/TopSlot.vue.d.ts b/dist/plugin/slots/TopSlot.vue.d.ts
index fe7e598..55eb1e5 100644
--- a/dist/plugin/slots/TopSlot.vue.d.ts
+++ b/dist/plugin/slots/TopSlot.vue.d.ts
@@ -1,112 +1,10 @@
-import { KeyStringAny } from '../../types';
+import { TopSlotProps } from '../../types';
declare function selectAllCallback(val: boolean): void;
declare function toggleSelectAllCallback(): void;
-declare const _default: __VLS_WithTemplateSlots;
- required: true;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- allSelected: boolean;
- columns: import('../../types').InternalDataTableHeader[];
- headers: import('../../types').InternalDataTableHeader[][];
- isExpanded: (item: import('../../types').DataTableItem) => boolean;
- isSelected: (items: import('../../types').DataTableItem | import('../../types').DataTableItem[]) => boolean;
- items: readonly import('../../types').DataTableItem[];
- itemsPerPage: string | number | undefined;
- page: string | number | undefined;
- pageCount: number;
- select: (items: import('../../types').DataTableItem[], value: boolean) => void;
- selectAll: (value: boolean) => void;
- setItemsPerPage: (itemsPerPage: number) => void;
- someSelected: boolean;
- sortBy: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleExpand: (item: import('../../types').DataTableItem) => void;
- toggleSelect: (item: import('../../types').DataTableItem) => void;
- toggleSort: (column: import('../../types').InternalDataTableHeader) => void;
- }>;
- required: true;
- };
- searchContainerCols: {
- type: globalThis.PropType;
- };
- searchEvents: {
- type: globalThis.PropType>;
- };
- searchProps: {
- type: globalThis.PropType>;
- };
- showSearch: {
- type: globalThis.PropType;
- required: true;
- };
-}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
+declare const _default: __VLS_WithTemplateSlots, {}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
"click:selectAll": (...args: any[]) => void;
"update:search": (...args: any[]) => void;
-}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly;
- required: true;
- };
- items: {
- type: globalThis.PropType;
- required: true;
- };
- level: {
- type: globalThis.PropType;
- required: true;
- };
- slotProps: {
- type: globalThis.PropType<{
- allSelected: boolean;
- columns: import('../../types').InternalDataTableHeader[];
- headers: import('../../types').InternalDataTableHeader[][];
- isExpanded: (item: import('../../types').DataTableItem) => boolean;
- isSelected: (items: import('../../types').DataTableItem | import('../../types').DataTableItem[]) => boolean;
- items: readonly import('../../types').DataTableItem[];
- itemsPerPage: string | number | undefined;
- page: string | number | undefined;
- pageCount: number;
- select: (items: import('../../types').DataTableItem[], value: boolean) => void;
- selectAll: (value: boolean) => void;
- setItemsPerPage: (itemsPerPage: number) => void;
- someSelected: boolean;
- sortBy: readonly {
- key: string;
- order?: boolean | "asc" | "desc" | undefined;
- }[] | undefined;
- toggleExpand: (item: import('../../types').DataTableItem) => void;
- toggleSelect: (item: import('../../types').DataTableItem) => void;
- toggleSort: (column: import('../../types').InternalDataTableHeader) => void;
- }>;
- required: true;
- };
- searchContainerCols: {
- type: globalThis.PropType;
- };
- searchEvents: {
- type: globalThis.PropType>;
- };
- searchProps: {
- type: globalThis.PropType>;
- };
- showSearch: {
- type: globalThis.PropType;
- required: true;
- };
-}>> & {
+}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly, {}>>> & {
"onClick:selectAll"?: ((...args: any[]) => any) | undefined;
"onUpdate:search"?: ((...args: any[]) => any) | undefined;
}, {}, {}>, {
@@ -157,6 +55,23 @@ declare const _default: __VLS_WithTemplateSlots;
export default _default;
+type __VLS_NonUndefinedable = T extends undefined ? never : T;
+type __VLS_TypePropsToRuntimeProps = {
+ [K in keyof T]-?: {} extends Pick ? {
+ type: import('vue').PropType<__VLS_NonUndefinedable>;
+ } : {
+ type: import('vue').PropType;
+ required: true;
+ };
+};
+type __VLS_WithDefaults = {
+ [K in keyof Pick
]: K extends keyof D ? __VLS_Prettify
: P[K];
+};
+type __VLS_Prettify = {
+ [K in keyof T]: T[K];
+} & {};
type __VLS_WithTemplateSlots = T & {
new (): {
$slots: S;
diff --git a/dist/plugin/utils/props.d.ts b/dist/plugin/utils/props.d.ts
index d2f5ce3..b19ad44 100644
--- a/dist/plugin/utils/props.d.ts
+++ b/dist/plugin/utils/props.d.ts
@@ -1,33 +1,33 @@
-import { Column } from '../../types';
+import { Column, DefaultColors } from '../../types';
+export declare const defaultColorValues: DefaultColors;
export declare const AllProps: {
+ colorPercentageChange: number;
+ colorPercentageDirection: "desc";
colors: () => {
- readonly default: {
- readonly background: "primary";
- readonly base: "primary";
- readonly border: "primary";
- readonly color: "on-primary";
- };
+ readonly default: DefaultColors;
readonly footer: {
- readonly background: "--v-theme-surface";
- readonly color: "--v-theme-on-surface";
+ readonly background: undefined;
+ readonly color: undefined;
};
readonly header: {
- readonly background: "primary";
- readonly color: "on-primary";
+ readonly background: undefined;
+ readonly color: undefined;
};
readonly percentageChange: 15;
readonly percentageDirection: "desc";
- readonly table: {
- readonly bottomBorder: "primary";
- };
};
columnWidths: () => never[];
+ defaultColors: () => DefaultColors;
density: string;
drilldownKey: string;
elevation: number;
expandOnClick: boolean;
filterKeys: undefined;
+ footerBackgroundColor: undefined;
+ footerColor: undefined;
footers: () => Column[];
+ headerBackgroundColor: undefined;
+ headerColor: undefined;
height: string;
hideNoData: boolean;
hover: boolean;
@@ -62,7 +62,6 @@ export declare const AllProps: {
loading: boolean;
loadingText: string;
matchColumnWidths: boolean;
- multiSort: boolean;
noDataText: string;
noFilter: boolean;
page: number;
diff --git a/dist/types/index.d.ts b/dist/types/index.d.ts
index 3c1338d..475e157 100644
--- a/dist/types/index.d.ts
+++ b/dist/types/index.d.ts
@@ -43,13 +43,14 @@ export interface KeyStringAny {
export interface TableColors {
[key: string]: T;
}
+export type DefaultColors = {
+ background?: string;
+ base?: string;
+ border?: string | null;
+ color?: string;
+};
export type ColorsObject = {
- default?: {
- base?: string;
- background?: string;
- border?: string | null;
- color?: string;
- };
+ default: DefaultColors;
footer?: {
background?: string;
color?: string;
@@ -60,14 +61,11 @@ export type ColorsObject = {
};
percentageChange?: number;
percentageDirection?: 'asc' | 'desc';
- table?: {
- bottomBorder?: string;
- };
};
export type LevelColorResponse = {
background?: string;
base?: string;
- bottomBorder?: string;
+ border?: string;
circular?: string;
color?: string;
linear?: string;
@@ -110,10 +108,13 @@ export interface Column {
}
export type TableType = VDataTable | VDataTableServer | unknown;
export interface Props {
- colors?: ColorsObject | null;
+ colorPercentageChange?: ColorsObject['percentageChange'];
+ colorPercentageDirection?: ColorsObject['percentageDirection'];
+ colors?: NonNullable;
columnWidths?: number[];
customFilter?: VDataTable['$props']['customFilter'];
customKeyFilter?: VDataTable['$props']['customKeyFilter'];
+ defaultColors?: ColorsObject['default'];
density?: VDataTable['$options']['density'];
drilldown?: object;
drilldownKey?: string;
@@ -124,8 +125,12 @@ export interface Props {
filterMode?: VDataTable['$props']['filterMode'];
fixedFooter?: boolean;
fixedHeader?: boolean;
+ footerBackgroundColor?: string | undefined;
+ footerColor?: string | undefined;
footers?: Column[];
groupBy?: VDataTable['$props']['groupBy'];
+ headerBackgroundColor?: string | undefined;
+ headerColor?: string | undefined;
headers?: VDataTable['$props']['headers'];
height?: string | number | undefined;
hideNoData?: VDataTable['$props']['hideNoData'];
@@ -217,7 +222,12 @@ export interface TopSlotProps extends VDataTableSlotProps {
showSearch: boolean;
}
export interface HeaderSlotProps extends AllSlotProps {
+ colorPercentageChange?: Props['colorPercentageChange'];
+ colorPercentageDirection?: Props['colorPercentageDirection'];
+ colors: Props['colors'];
columnWidths: Props['columnWidths'];
+ headerBackgroundColor?: Props['headerBackgroundColor'];
+ headerColor?: Props['headerColor'];
isTheadSlot?: boolean;
items: Props['items'];
loaderProps?: LoaderProps;
@@ -267,6 +277,10 @@ export interface ItemSlotProps extends Omit {
};
}
export interface TFootSlotProps extends Omit {
+ colorPercentageChange?: Props['colorPercentageChange'];
+ colorPercentageDirection?: Props['colorPercentageDirection'];
+ footerBackgroundColor?: Props['footerBackgroundColor'];
+ footerColor?: Props['footerColor'];
footers: Column[];
items: Props['items'];
selectStrategy: Props['selectStrategy'];
@@ -349,7 +363,7 @@ export interface UseGetHeaderColumnWidths {
}
export interface UseGetLevelColors {
(options: {
- colors: ColorsObject | undefined | null;
+ colors: Props['colors'];
level: Props['level'];
prop: string;
themeColors: ThemeInstance;
@@ -358,7 +372,7 @@ export interface UseGetLevelColors {
}
export interface ConvertLevelColors {
(options: {
- colors: ColorsObject;
+ colors: NonNullable;
level: Props['level'];
prop: string;
theme: ThemeInstance;
@@ -366,7 +380,7 @@ export interface ConvertLevelColors {
}): LevelColorResponse;
}
export interface LevelPercentage {
- (colors: ColorsObject, level: number, direction: string): number;
+ (colors: Props['colors'], level: number, direction: string): number;
}
export interface UseGetSortDirection {
(options: {
@@ -422,7 +436,6 @@ export interface UseCheckBoxClasses {
}
export interface UseHeaderCellClasses {
(options: {
- colors: ColorsObject | undefined | null | false;
column: Column;
level: Props['level'];
slotName?: string;
@@ -471,26 +484,29 @@ export interface UseTFootRowClasses {
}
export interface UseHeaderCellStyles {
(options: {
- colors: ColorsObject | undefined | null | false;
+ colors: Props['colors'];
column: {
width?: string | number;
};
dataTableExpand: boolean;
+ headerBackgroundColor?: Props['headerBackgroundColor'];
+ headerColor?: Props['headerColor'];
level: Props['level'];
theme: ThemeInstance;
}): CSSProperties;
}
export interface UseTableStyles {
(options: {
- colors: ColorsObject | undefined | null | false;
+ colors: Props['colors'];
level: Props['level'];
theme: ThemeInstance;
}): StyleValue;
}
export interface UseTFootCellStyles {
(options: {
- colors: ColorsObject | undefined | null | false;
+ colors: Props['colors'];
elm: string;
+ footerColor?: Props['footerColor'];
level: Props['level'];
theme: ThemeInstance;
}): CSSProperties;
@@ -499,7 +515,7 @@ export type DrilldownEvent = {
$event?: MouseEvent | undefined;
columns?: object;
index?: number;
- internalItem: DataTableItem | any;
+ internalItem: DataTableItem['internalItem'];
isExpanded: IsExpanded;
isRow?: boolean;
item: DataTableItem | any;
@@ -512,6 +528,7 @@ export type ClickRowCheckboxEvent = {
columns?: object;
index?: number;
item?: object;
+ internalItem?: DataTableItem['internalItem'];
level?: Props['level'];
toggleSelect(item?: object): void;
};
diff --git a/dist/vuetify-drilldown-table.cjs.js b/dist/vuetify-drilldown-table.cjs.js
index 898bec8..b7b5fec 100644
--- a/dist/vuetify-drilldown-table.cjs.js
+++ b/dist/vuetify-drilldown-table.cjs.js
@@ -1,12 +1,12 @@
"use strict";/**
- * @name vuetify-drilldown-table
- * @version 1.0.0-beta-13
+ * @name @wdns/vuetify-drilldown-table
+ * @version 1.0.0-beta-14
* @description The Vuetify Drilldown Table is a powerful component that enhances the functionality of the Vuetify framework's VDataTable and VDataTableServer. It provides a recursive table structure, allowing you to display hierarchical data in a nested format.
* @author WebDevNerdStuff & Bunnies... lots and lots of bunnies! (https://webdevnerdstuff.com)
* @copyright Copyright 2023, WebDevNerdStuff
* @homepage https://webdevnerdstuff.github.io/vuetify-drilldown-table/
* @repository https://github.com/webdevnerdstuff/vuetify-drilldown-table
* @license MIT License
- */const t=require("vue"),Tt=require("vuetify"),de=typeof window<"u",fl=de&&"IntersectionObserver"in window;function In(e,n,l){const o=n.length-1;if(o<0)return e===void 0?l:e;for(let a=0;aNe(e[o],n[o]))}function Ye(e,n,l){return e!=null&&n&&typeof n=="string"?e[n]!==void 0?e[n]:In(e,(n=(n=n.replace(/\[(\w+)\]/g,".$1")).replace(/^\./,"")).split("."),l):l}function re(e,n,l){if(n===!0)return e===void 0?l:e;if(n==null||typeof n=="boolean")return l;if(e!==Object(e)){if(typeof n!="function")return l;const a=n(e,l);return a===void 0?l:a}if(typeof n=="string")return Ye(e,n,l);if(Array.isArray(n))return In(e,n,l);if(typeof n!="function")return l;const o=n(e,l);return o===void 0?l:o}function Qt(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Array.from({length:e},(l,o)=>n+o)}function G(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"px";return e==null||e===""?void 0:isNaN(+e)?String(e):isFinite(+e)?`${Number(e)}${n}`:void 0}function el(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function tl(e){return e&&"$el"in e?e.$el:e}const Dl=Object.freeze({enter:13,tab:9,delete:46,esc:27,space:32,up:38,down:40,left:37,right:39,end:35,home:36,del:46,backspace:8,insert:45,pageup:33,pagedown:34,shift:16});function jt(e,n){return n.every(l=>e.hasOwnProperty(l))}function De(e,n,l){const o=Object.create(null),a=Object.create(null);for(const s in e)n.some(r=>r instanceof RegExp?r.test(s):r===s)&&!(l!=null&&l.some(r=>r===s))?o[s]=e[s]:a[s]=e[s];return[o,a]}function tt(e,n){const l={...e};return n.forEach(o=>delete l[o]),l}const Tn=/^on[^a-z]/,ll=e=>Tn.test(e),Ra=["onAfterscriptexecute","onAnimationcancel","onAnimationend","onAnimationiteration","onAnimationstart","onAuxclick","onBeforeinput","onBeforescriptexecute","onChange","onClick","onCompositionend","onCompositionstart","onCompositionupdate","onContextmenu","onCopy","onCut","onDblclick","onFocusin","onFocusout","onFullscreenchange","onFullscreenerror","onGesturechange","onGestureend","onGesturestart","onGotpointercapture","onInput","onKeydown","onKeypress","onKeyup","onLostpointercapture","onMousedown","onMousemove","onMouseout","onMouseover","onMouseup","onMousewheel","onPaste","onPointercancel","onPointerdown","onPointerenter","onPointerleave","onPointermove","onPointerout","onPointerover","onPointerup","onReset","onSelect","onSubmit","onTouchcancel","onTouchend","onTouchmove","onTouchstart","onTransitioncancel","onTransitionend","onTransitionrun","onTransitionstart","onWheel"];function ml(e){const[n,l]=De(e,[Tn]),o=tt(n,Ra),[a,s]=De(l,["class","style","id",/^data-/]);return Object.assign(a,n),Object.assign(s,o),[a,s]}function ce(e){return e==null?[]:Array.isArray(e)?e:[e]}function xe(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1;return Math.max(n,Math.min(l,e))}function Rl(e,n){return e+(arguments.length>2&&arguments[2]!==void 0?arguments[2]:"0").repeat(Math.max(0,n-e.length))}function _e(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=arguments.length>2?arguments[2]:void 0;const o={};for(const a in e)o[a]=e[a];for(const a in n){const s=e[a],r=n[a];el(s)&&el(r)?o[a]=_e(s,r,l):Array.isArray(s)&&Array.isArray(r)&&l?o[a]=l(s,r):o[a]=r}return o}function Dn(e){return e.map(n=>n.type===t.Fragment?Dn(n.children):n).flat()}function Ce(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(Ce.cache.has(e))return Ce.cache.get(e);const n=e.replace(/[^a-z]/gi,"-").replace(/\B([A-Z])/g,"-$1").toLowerCase();return Ce.cache.set(e,n),n}function mt(e,n){if(!n||typeof n!="object")return[];if(Array.isArray(n))return n.map(l=>mt(e,l)).flat(1);if(Array.isArray(n.children))return n.children.map(l=>mt(e,l)).flat(1);if(n.component){if(Object.getOwnPropertySymbols(n.component.provides).includes(e))return[n.component];if(n.component.subTree)return mt(e,n.component.subTree).flat(1)}return[]}function gl(e){const n=t.reactive({}),l=t.computed(e);return t.watchEffect(()=>{for(const o in l.value)n[o]=l.value[o]},{flush:"sync"}),t.toRefs(n)}function yt(e,n){return e.includes(n)}function Ol(e){return e[2].toLowerCase()+e.slice(3)}Ce.cache=new Map;const fe=()=>[Function,Array];function Ll(e,n){return!!(e[n="on"+t.capitalize(n)]||e[`${n}Once`]||e[`${n}Capture`]||e[`${n}OnceCapture`]||e[`${n}CaptureOnce`])}function nl(e){let n=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];const l=["button","[href]",'input:not([type="hidden"])',"select","textarea","[tabindex]"].map(o=>`${o}${n?':not([tabindex="-1"])':""}:not([disabled])`).join(", ");return[...e.querySelectorAll(l)]}function Rn(e,n,l){let o,a=e.indexOf(document.activeElement);const s=n==="next"?1:-1;do a+=s,o=e[a];while((!o||o.offsetParent==null||!((l==null?void 0:l(o))??1))&&a