giime 0.9.0 → 0.9.1
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/dist/index.css +125 -122
- package/es/components/src/base/alert/Alert.vue.d.ts +1 -1
- package/es/components/src/base/alert/index.d.ts +3 -3
- package/es/components/src/base/cascader/Cascader.vue.d.ts +1 -1
- package/es/components/src/base/cascader/index.d.ts +3 -3
- package/es/components/src/base/col/Col.vue.d.ts +1 -1
- package/es/components/src/base/col/index.d.ts +3 -3
- package/es/components/src/base/dropdown/Dropdown.vue.d.ts +1 -1
- package/es/components/src/base/dropdown/index.d.ts +3 -3
- package/es/components/src/base/image/Image.vue.d.ts +3 -3
- package/es/components/src/base/image/image.d.ts +1 -1
- package/es/components/src/base/image/index.d.ts +7 -7
- package/es/components/src/base/popconfirm/Popconfirm.vue.d.ts +1 -1
- package/es/components/src/base/popconfirm/index.d.ts +3 -3
- package/es/components/src/base/popover/Popover.vue.d.ts +1 -1
- package/es/components/src/base/popover/index.d.ts +3 -3
- package/es/components/src/base/radioGroup/RadioGroup.vue.d.ts +1 -1
- package/es/components/src/base/radioGroup/index.d.ts +3 -3
- package/es/components/src/base/select/Select.vue.d.ts +1 -1
- package/es/components/src/base/select/index.d.ts +3 -3
- package/es/components/src/base/selectV2/SelectV2.vue.d.ts +1 -1
- package/es/components/src/base/selectV2/index.d.ts +3 -3
- package/es/components/src/base/space/Space.vue.d.ts +1 -1
- package/es/components/src/base/space/index.d.ts +3 -3
- package/es/components/src/base/table/Table.vue.d.ts +4 -4
- package/es/components/src/base/table/index.d.ts +8 -8
- package/es/components/src/base/table/table.d.ts +2 -2
- package/es/components/src/base/tableColumn/TableColumn.vue.d.ts +3 -3
- package/es/components/src/base/tableColumn/index.d.ts +7 -7
- package/es/components/src/base/tableColumn/tableColumn.d.ts +1 -1
- package/es/components/src/base/tag/Tag.vue.d.ts +1 -1
- package/es/components/src/base/tag/index.d.ts +3 -3
- package/es/components/src/base/timeSelect/TimeSelect.vue.d.ts +1 -1
- package/es/components/src/base/timeSelect/index.d.ts +3 -3
- package/es/components/src/base/tooltip/Tooltip.vue.d.ts +1 -1
- package/es/components/src/base/tooltip/index.d.ts +3 -3
- package/es/components/src/base/treeSelect/TreeSelect.vue.d.ts +1 -1
- package/es/components/src/business/loginDialog/LoginDialog.vue2.mjs +55 -5
- package/es/components/src/business/loginDialog/LoginDialog.vue2.mjs.map +1 -1
- package/es/components/src/composite/selectOptions/SelectOptions.vue.d.ts +1 -1
- package/es/components/src/composite/selectOptions/index.d.ts +3 -3
- package/es/components/src/composite/tableCustom/TableColumnVNodeRenderer.d.ts +35 -0
- package/es/components/src/composite/tableCustom/TableColumnVNodeRenderer.mjs +102 -0
- package/es/components/src/composite/tableCustom/TableColumnVNodeRenderer.mjs.map +1 -0
- package/es/components/src/composite/tableCustom/TableCustom.vue.d.ts +5 -5
- package/es/components/src/composite/tableCustom/TableCustom.vue.mjs +1 -1
- package/es/components/src/composite/tableCustom/TableCustom.vue2.mjs +5 -7
- package/es/components/src/composite/tableCustom/TableCustom.vue2.mjs.map +1 -1
- package/es/components/src/composite/tableCustom/index.d.ts +11 -11
- package/es/components/src/composite/tableCustom/tableCustom.d.ts +2 -2
- package/es/components/src/composite/tablePro/TablePro.vue.d.ts +5 -5
- package/es/components/src/composite/tablePro/index.d.ts +11 -11
- package/es/components/src/composite/tablePro/tableColumnPro/TableColumnPro.vue.d.ts +3 -3
- package/es/components/src/composite/tablePro/tableColumnPro/index.d.ts +7 -7
- package/es/components/src/composite/tablePro/tableColumnPro/tableColumnPro.d.ts +1 -1
- package/es/components/src/composite/tablePro/tablePro.d.ts +2 -2
- package/es/giime/version.d.ts +1 -1
- package/es/giime/version.mjs +1 -1
- package/es/giime/version.mjs.map +1 -1
- package/es/hooks/store/useLogin/index.d.ts +20 -2
- package/es/hooks/store/useLogin/index.mjs +29 -3
- package/es/hooks/store/useLogin/index.mjs.map +1 -1
- package/es/index.css +125 -122
- package/lib/components/src/base/alert/Alert.vue.d.ts +1 -1
- package/lib/components/src/base/alert/index.d.ts +3 -3
- package/lib/components/src/base/cascader/Cascader.vue.d.ts +1 -1
- package/lib/components/src/base/cascader/index.d.ts +3 -3
- package/lib/components/src/base/col/Col.vue.d.ts +1 -1
- package/lib/components/src/base/col/index.d.ts +3 -3
- package/lib/components/src/base/dropdown/Dropdown.vue.d.ts +1 -1
- package/lib/components/src/base/dropdown/index.d.ts +3 -3
- package/lib/components/src/base/image/Image.vue.d.ts +3 -3
- package/lib/components/src/base/image/image.d.ts +1 -1
- package/lib/components/src/base/image/index.d.ts +7 -7
- package/lib/components/src/base/popconfirm/Popconfirm.vue.d.ts +1 -1
- package/lib/components/src/base/popconfirm/index.d.ts +3 -3
- package/lib/components/src/base/popover/Popover.vue.d.ts +1 -1
- package/lib/components/src/base/popover/index.d.ts +3 -3
- package/lib/components/src/base/radioGroup/RadioGroup.vue.d.ts +1 -1
- package/lib/components/src/base/radioGroup/index.d.ts +3 -3
- package/lib/components/src/base/select/Select.vue.d.ts +1 -1
- package/lib/components/src/base/select/index.d.ts +3 -3
- package/lib/components/src/base/selectV2/SelectV2.vue.d.ts +1 -1
- package/lib/components/src/base/selectV2/index.d.ts +3 -3
- package/lib/components/src/base/space/Space.vue.d.ts +1 -1
- package/lib/components/src/base/space/index.d.ts +3 -3
- package/lib/components/src/base/table/Table.vue.d.ts +4 -4
- package/lib/components/src/base/table/index.d.ts +8 -8
- package/lib/components/src/base/table/table.d.ts +2 -2
- package/lib/components/src/base/tableColumn/TableColumn.vue.d.ts +3 -3
- package/lib/components/src/base/tableColumn/index.d.ts +7 -7
- package/lib/components/src/base/tableColumn/tableColumn.d.ts +1 -1
- package/lib/components/src/base/tag/Tag.vue.d.ts +1 -1
- package/lib/components/src/base/tag/index.d.ts +3 -3
- package/lib/components/src/base/timeSelect/TimeSelect.vue.d.ts +1 -1
- package/lib/components/src/base/timeSelect/index.d.ts +3 -3
- package/lib/components/src/base/tooltip/Tooltip.vue.d.ts +1 -1
- package/lib/components/src/base/tooltip/index.d.ts +3 -3
- package/lib/components/src/base/treeSelect/TreeSelect.vue.d.ts +1 -1
- package/lib/components/src/business/loginDialog/LoginDialog.vue2.js +53 -3
- package/lib/components/src/business/loginDialog/LoginDialog.vue2.js.map +1 -1
- package/lib/components/src/composite/selectOptions/SelectOptions.vue.d.ts +1 -1
- package/lib/components/src/composite/selectOptions/index.d.ts +3 -3
- package/lib/components/src/composite/tableCustom/TableColumnVNodeRenderer.d.ts +35 -0
- package/lib/components/src/composite/tableCustom/TableColumnVNodeRenderer.js +106 -0
- package/lib/components/src/composite/tableCustom/TableColumnVNodeRenderer.js.map +1 -0
- package/lib/components/src/composite/tableCustom/TableCustom.vue.d.ts +5 -5
- package/lib/components/src/composite/tableCustom/TableCustom.vue.js +1 -1
- package/lib/components/src/composite/tableCustom/TableCustom.vue2.js +5 -7
- package/lib/components/src/composite/tableCustom/TableCustom.vue2.js.map +1 -1
- package/lib/components/src/composite/tableCustom/index.d.ts +11 -11
- package/lib/components/src/composite/tableCustom/tableCustom.d.ts +2 -2
- package/lib/components/src/composite/tablePro/TablePro.vue.d.ts +5 -5
- package/lib/components/src/composite/tablePro/index.d.ts +11 -11
- package/lib/components/src/composite/tablePro/tableColumnPro/TableColumnPro.vue.d.ts +3 -3
- package/lib/components/src/composite/tablePro/tableColumnPro/index.d.ts +7 -7
- package/lib/components/src/composite/tablePro/tableColumnPro/tableColumnPro.d.ts +1 -1
- package/lib/components/src/composite/tablePro/tablePro.d.ts +2 -2
- package/lib/giime/version.d.ts +1 -1
- package/lib/giime/version.js +1 -1
- package/lib/giime/version.js.map +1 -1
- package/lib/hooks/store/useLogin/index.d.ts +20 -2
- package/lib/hooks/store/useLogin/index.js +28 -2
- package/lib/hooks/store/useLogin/index.js.map +1 -1
- package/lib/index.css +125 -122
- package/package.json +1 -1
|
@@ -100,7 +100,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
100
100
|
defaultExpandAll: BooleanConstructor;
|
|
101
101
|
defaultSort: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").Sort | undefined>;
|
|
102
102
|
tooltipEffect: StringConstructor;
|
|
103
|
-
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
103
|
+
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
104
104
|
spanMethod: import("vue").PropType<((data: {
|
|
105
105
|
row: any;
|
|
106
106
|
rowIndex: number;
|
|
@@ -141,7 +141,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
141
141
|
default: string;
|
|
142
142
|
};
|
|
143
143
|
flexible: BooleanConstructor;
|
|
144
|
-
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
144
|
+
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
145
145
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util.js").TableOverflowTooltipFormatter<any> | undefined>;
|
|
146
146
|
appendFilterPanelTo: StringConstructor;
|
|
147
147
|
scrollbarTabindex: {
|
|
@@ -222,10 +222,10 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
222
222
|
offset?: number | undefined;
|
|
223
223
|
placement?: import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, import("element-plus").Placement, unknown> | undefined;
|
|
224
224
|
appendTo?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>) | ((new (...args: any[]) => string | HTMLElement) | (() => import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>))[], unknown, unknown> | undefined;
|
|
225
|
+
effect?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect) | ((new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect))[], unknown, unknown> | undefined;
|
|
225
226
|
transition?: string | undefined;
|
|
226
227
|
showAfter?: number | undefined;
|
|
227
228
|
hideAfter?: number | undefined;
|
|
228
|
-
effect?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect) | ((new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect))[], unknown, unknown> | undefined;
|
|
229
229
|
popperClass?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | {
|
|
230
230
|
[x: string]: boolean;
|
|
231
231
|
} | (string | {
|
|
@@ -473,7 +473,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
473
473
|
defaultExpandAll: BooleanConstructor;
|
|
474
474
|
defaultSort: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").Sort | undefined>;
|
|
475
475
|
tooltipEffect: StringConstructor;
|
|
476
|
-
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
476
|
+
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
477
477
|
spanMethod: import("vue").PropType<((data: {
|
|
478
478
|
row: any;
|
|
479
479
|
rowIndex: number;
|
|
@@ -514,7 +514,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
514
514
|
default: string;
|
|
515
515
|
};
|
|
516
516
|
flexible: BooleanConstructor;
|
|
517
|
-
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
517
|
+
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
518
518
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util.js").TableOverflowTooltipFormatter<any> | undefined>;
|
|
519
519
|
appendFilterPanelTo: StringConstructor;
|
|
520
520
|
scrollbarTabindex: {
|
|
@@ -690,7 +690,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
690
690
|
defaultExpandAll: BooleanConstructor;
|
|
691
691
|
defaultSort: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").Sort | undefined>;
|
|
692
692
|
tooltipEffect: StringConstructor;
|
|
693
|
-
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
693
|
+
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
694
694
|
spanMethod: import("vue").PropType<((data: {
|
|
695
695
|
row: any;
|
|
696
696
|
rowIndex: number;
|
|
@@ -731,7 +731,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
731
731
|
default: string;
|
|
732
732
|
};
|
|
733
733
|
flexible: BooleanConstructor;
|
|
734
|
-
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
734
|
+
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
735
735
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util.js").TableOverflowTooltipFormatter<any> | undefined>;
|
|
736
736
|
appendFilterPanelTo: StringConstructor;
|
|
737
737
|
scrollbarTabindex: {
|
|
@@ -812,10 +812,10 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
812
812
|
offset?: number | undefined;
|
|
813
813
|
placement?: import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, import("element-plus").Placement, unknown> | undefined;
|
|
814
814
|
appendTo?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>) | ((new (...args: any[]) => string | HTMLElement) | (() => import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>))[], unknown, unknown> | undefined;
|
|
815
|
+
effect?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect) | ((new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect))[], unknown, unknown> | undefined;
|
|
815
816
|
transition?: string | undefined;
|
|
816
817
|
showAfter?: number | undefined;
|
|
817
818
|
hideAfter?: number | undefined;
|
|
818
|
-
effect?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect) | ((new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect))[], unknown, unknown> | undefined;
|
|
819
819
|
popperClass?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | {
|
|
820
820
|
[x: string]: boolean;
|
|
821
821
|
} | (string | {
|
|
@@ -1080,7 +1080,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
1080
1080
|
defaultExpandAll: BooleanConstructor;
|
|
1081
1081
|
defaultSort: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").Sort | undefined>;
|
|
1082
1082
|
tooltipEffect: StringConstructor;
|
|
1083
|
-
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
1083
|
+
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
1084
1084
|
spanMethod: import("vue").PropType<((data: {
|
|
1085
1085
|
row: any;
|
|
1086
1086
|
rowIndex: number;
|
|
@@ -1121,7 +1121,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
1121
1121
|
default: string;
|
|
1122
1122
|
};
|
|
1123
1123
|
flexible: BooleanConstructor;
|
|
1124
|
-
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
1124
|
+
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
1125
1125
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util.js").TableOverflowTooltipFormatter<any> | undefined>;
|
|
1126
1126
|
appendFilterPanelTo: StringConstructor;
|
|
1127
1127
|
scrollbarTabindex: {
|
|
@@ -1202,10 +1202,10 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
|
|
|
1202
1202
|
offset?: number | undefined;
|
|
1203
1203
|
placement?: import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, import("element-plus").Placement, unknown> | undefined;
|
|
1204
1204
|
appendTo?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>) | ((new (...args: any[]) => string | HTMLElement) | (() => import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>))[], unknown, unknown> | undefined;
|
|
1205
|
+
effect?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect) | ((new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect))[], unknown, unknown> | undefined;
|
|
1205
1206
|
transition?: string | undefined;
|
|
1206
1207
|
showAfter?: number | undefined;
|
|
1207
1208
|
hideAfter?: number | undefined;
|
|
1208
|
-
effect?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect) | ((new (...args: any[]) => string) | (() => import("element-plus/es/components/popper/index.js").PopperEffect))[], unknown, unknown> | undefined;
|
|
1209
1209
|
popperClass?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | {
|
|
1210
1210
|
[x: string]: boolean;
|
|
1211
1211
|
} | (string | {
|
|
@@ -64,7 +64,7 @@ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<{
|
|
|
64
64
|
align: StringConstructor;
|
|
65
65
|
headerAlign: StringConstructor;
|
|
66
66
|
showOverflowTooltip: {
|
|
67
|
-
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
67
|
+
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
68
68
|
default: undefined;
|
|
69
69
|
};
|
|
70
70
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util").TableOverflowTooltipFormatter<any> | undefined>;
|
|
@@ -143,7 +143,7 @@ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<{
|
|
|
143
143
|
align: StringConstructor;
|
|
144
144
|
headerAlign: StringConstructor;
|
|
145
145
|
showOverflowTooltip: {
|
|
146
|
-
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
146
|
+
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
147
147
|
default: undefined;
|
|
148
148
|
};
|
|
149
149
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util").TableOverflowTooltipFormatter<any> | undefined>;
|
|
@@ -168,7 +168,7 @@ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<{
|
|
|
168
168
|
minWidth: string | number;
|
|
169
169
|
width: string | number;
|
|
170
170
|
resizable: boolean;
|
|
171
|
-
showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
171
|
+
showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined;
|
|
172
172
|
sortable: string | boolean;
|
|
173
173
|
reserveSelection: boolean;
|
|
174
174
|
filterMultiple: boolean;
|
|
@@ -60,7 +60,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
|
|
|
60
60
|
align: StringConstructor;
|
|
61
61
|
headerAlign: StringConstructor;
|
|
62
62
|
showOverflowTooltip: {
|
|
63
|
-
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
63
|
+
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
64
64
|
default: undefined;
|
|
65
65
|
};
|
|
66
66
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util.js").TableOverflowTooltipFormatter<any> | undefined>;
|
|
@@ -139,7 +139,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
|
|
|
139
139
|
align: StringConstructor;
|
|
140
140
|
headerAlign: StringConstructor;
|
|
141
141
|
showOverflowTooltip: {
|
|
142
|
-
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
142
|
+
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
143
143
|
default: undefined;
|
|
144
144
|
};
|
|
145
145
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util.js").TableOverflowTooltipFormatter<any> | undefined>;
|
|
@@ -164,7 +164,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
|
|
|
164
164
|
minWidth: string | number;
|
|
165
165
|
width: string | number;
|
|
166
166
|
resizable: boolean;
|
|
167
|
-
showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
167
|
+
showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined;
|
|
168
168
|
sortable: string | boolean;
|
|
169
169
|
reserveSelection: boolean;
|
|
170
170
|
filterMultiple: boolean;
|
|
@@ -238,7 +238,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
|
|
|
238
238
|
align: StringConstructor;
|
|
239
239
|
headerAlign: StringConstructor;
|
|
240
240
|
showOverflowTooltip: {
|
|
241
|
-
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
241
|
+
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
242
242
|
default: undefined;
|
|
243
243
|
};
|
|
244
244
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util.js").TableOverflowTooltipFormatter<any> | undefined>;
|
|
@@ -263,7 +263,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
|
|
|
263
263
|
minWidth: string | number;
|
|
264
264
|
width: string | number;
|
|
265
265
|
resizable: boolean;
|
|
266
|
-
showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
266
|
+
showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined;
|
|
267
267
|
sortable: string | boolean;
|
|
268
268
|
reserveSelection: boolean;
|
|
269
269
|
filterMultiple: boolean;
|
|
@@ -334,7 +334,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
|
|
|
334
334
|
align: StringConstructor;
|
|
335
335
|
headerAlign: StringConstructor;
|
|
336
336
|
showOverflowTooltip: {
|
|
337
|
-
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
337
|
+
type: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
338
338
|
default: undefined;
|
|
339
339
|
};
|
|
340
340
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util.js").TableOverflowTooltipFormatter<any> | undefined>;
|
|
@@ -359,7 +359,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
|
|
|
359
359
|
minWidth: string | number;
|
|
360
360
|
width: string | number;
|
|
361
361
|
resizable: boolean;
|
|
362
|
-
showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
362
|
+
showOverflowTooltip: boolean | Partial<Pick<import("element-plus/es/components/tooltip/index.js").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined;
|
|
363
363
|
sortable: string | boolean;
|
|
364
364
|
reserveSelection: boolean;
|
|
365
365
|
filterMultiple: boolean;
|
|
@@ -68,7 +68,7 @@ export declare const tableColumnProProps: {
|
|
|
68
68
|
align: StringConstructor;
|
|
69
69
|
headerAlign: StringConstructor;
|
|
70
70
|
showOverflowTooltip: {
|
|
71
|
-
type: PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
71
|
+
type: PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
72
72
|
default: undefined;
|
|
73
73
|
};
|
|
74
74
|
tooltipFormatter: PropType<import("element-plus/es/components/table/src/util").TableOverflowTooltipFormatter<any> | undefined>;
|
|
@@ -98,7 +98,7 @@ export declare const tableProProps: {
|
|
|
98
98
|
defaultExpandAll: BooleanConstructor;
|
|
99
99
|
defaultSort: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").Sort | undefined>;
|
|
100
100
|
tooltipEffect: StringConstructor;
|
|
101
|
-
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
101
|
+
tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
102
102
|
spanMethod: import("vue").PropType<((data: {
|
|
103
103
|
row: any;
|
|
104
104
|
rowIndex: number;
|
|
@@ -139,7 +139,7 @@ export declare const tableProProps: {
|
|
|
139
139
|
default: string;
|
|
140
140
|
};
|
|
141
141
|
flexible: BooleanConstructor;
|
|
142
|
-
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "
|
|
142
|
+
showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus/es/components/tooltip").ElTooltipProps, "offset" | "placement" | "appendTo" | "effect" | "transition" | "showAfter" | "hideAfter" | "popperClass" | "popperOptions" | "showArrow" | "enterable">> | undefined>;
|
|
143
143
|
tooltipFormatter: import("vue").PropType<import("element-plus/es/components/table/src/util").TableOverflowTooltipFormatter<any> | undefined>;
|
|
144
144
|
appendFilterPanelTo: StringConstructor;
|
|
145
145
|
scrollbarTabindex: {
|
package/lib/giime/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "0.9.
|
|
1
|
+
export declare const version = "0.9.1";
|
package/lib/giime/version.js
CHANGED
package/lib/giime/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.9.
|
|
1
|
+
{"version":3,"file":"version.js","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.9.1';\n"],"names":[],"mappings":";;AAAO,MAAM,OAAA,GAAU;;;;"}
|
|
@@ -18,6 +18,12 @@ export declare const useLoginStore: import("pinia").StoreDefinition<"gmLoginStor
|
|
|
18
18
|
onLoginResultPromise: () => Promise<unknown>;
|
|
19
19
|
/**监听登录弹窗关闭 promise版 */
|
|
20
20
|
onCloseLoginResultPromise: () => Promise<undefined>;
|
|
21
|
+
/** 是否被阻止登录(30秒内触发超过5次) */
|
|
22
|
+
isLoginBlocked: import("vue").ComputedRef<boolean>;
|
|
23
|
+
/** 记录登录弹窗触发时间 */
|
|
24
|
+
recordLoginTrigger: () => void;
|
|
25
|
+
/** 重置登录阻止状态 */
|
|
26
|
+
resetLoginBlock: () => void;
|
|
21
27
|
}, "showLogin" | "userToken" | "userId">, Pick<{
|
|
22
28
|
/**是否显示登录弹窗 */
|
|
23
29
|
showLogin: import("vue").Ref<boolean>;
|
|
@@ -30,7 +36,13 @@ export declare const useLoginStore: import("pinia").StoreDefinition<"gmLoginStor
|
|
|
30
36
|
onLoginResultPromise: () => Promise<unknown>;
|
|
31
37
|
/**监听登录弹窗关闭 promise版 */
|
|
32
38
|
onCloseLoginResultPromise: () => Promise<undefined>;
|
|
33
|
-
|
|
39
|
+
/** 是否被阻止登录(30秒内触发超过5次) */
|
|
40
|
+
isLoginBlocked: import("vue").ComputedRef<boolean>;
|
|
41
|
+
/** 记录登录弹窗触发时间 */
|
|
42
|
+
recordLoginTrigger: () => void;
|
|
43
|
+
/** 重置登录阻止状态 */
|
|
44
|
+
resetLoginBlock: () => void;
|
|
45
|
+
}, "isLoginBlocked">, Pick<{
|
|
34
46
|
/**是否显示登录弹窗 */
|
|
35
47
|
showLogin: import("vue").Ref<boolean>;
|
|
36
48
|
userToken: import("@vueuse/shared").RemovableRef<string | undefined>;
|
|
@@ -42,4 +54,10 @@ export declare const useLoginStore: import("pinia").StoreDefinition<"gmLoginStor
|
|
|
42
54
|
onLoginResultPromise: () => Promise<unknown>;
|
|
43
55
|
/**监听登录弹窗关闭 promise版 */
|
|
44
56
|
onCloseLoginResultPromise: () => Promise<undefined>;
|
|
45
|
-
|
|
57
|
+
/** 是否被阻止登录(30秒内触发超过5次) */
|
|
58
|
+
isLoginBlocked: import("vue").ComputedRef<boolean>;
|
|
59
|
+
/** 记录登录弹窗触发时间 */
|
|
60
|
+
recordLoginTrigger: () => void;
|
|
61
|
+
/** 重置登录阻止状态 */
|
|
62
|
+
resetLoginBlock: () => void;
|
|
63
|
+
}, "triggerLoginResult" | "onLoginResult" | "onLoginResultPromise" | "onCloseLoginResultPromise" | "recordLoginTrigger" | "resetLoginBlock">>;
|
|
@@ -4,11 +4,27 @@ var vue = require('vue');
|
|
|
4
4
|
var pinia = require('pinia');
|
|
5
5
|
var core = require('@vueuse/core');
|
|
6
6
|
|
|
7
|
+
const LOGIN_WINDOW_MS = 30 * 1e3;
|
|
8
|
+
const LOGIN_MAX_TRIGGERS = 5;
|
|
7
9
|
const useLoginStore = pinia.defineStore("gmLoginStore", () => {
|
|
8
10
|
const showLogin = vue.ref(false);
|
|
9
11
|
const userToken = core.useSessionStorage("gmUserToken", void 0);
|
|
10
12
|
const userId = core.useSessionStorage("gmUserId", void 0);
|
|
11
13
|
const loginResult = core.createEventHook();
|
|
14
|
+
const loginTriggerTimestamps = vue.ref([]);
|
|
15
|
+
const isLoginBlocked = vue.computed(() => {
|
|
16
|
+
const now = Date.now();
|
|
17
|
+
const recentCount = loginTriggerTimestamps.value.filter((t) => now - t < LOGIN_WINDOW_MS).length;
|
|
18
|
+
return recentCount >= LOGIN_MAX_TRIGGERS;
|
|
19
|
+
});
|
|
20
|
+
const recordLoginTrigger = () => {
|
|
21
|
+
const now = Date.now();
|
|
22
|
+
loginTriggerTimestamps.value = loginTriggerTimestamps.value.filter((t) => now - t < LOGIN_WINDOW_MS);
|
|
23
|
+
loginTriggerTimestamps.value.push(now);
|
|
24
|
+
};
|
|
25
|
+
const resetLoginBlock = () => {
|
|
26
|
+
loginTriggerTimestamps.value = [];
|
|
27
|
+
};
|
|
12
28
|
const triggerLoginResult = loginResult.trigger;
|
|
13
29
|
const onLoginResultPromise = () => new Promise((resolve) => {
|
|
14
30
|
loginResult.on(resolve);
|
|
@@ -18,7 +34,10 @@ const useLoginStore = pinia.defineStore("gmLoginStore", () => {
|
|
|
18
34
|
const onCloseLoginResultPromise = () => new Promise((resolve) => {
|
|
19
35
|
closeLoginResult.on(resolve);
|
|
20
36
|
});
|
|
21
|
-
vue.watch(showLogin, (newValue) => {
|
|
37
|
+
vue.watch(showLogin, (newValue, oldValue) => {
|
|
38
|
+
if (newValue && !oldValue) {
|
|
39
|
+
recordLoginTrigger();
|
|
40
|
+
}
|
|
22
41
|
if (!newValue) {
|
|
23
42
|
triggerCloseLoginResult();
|
|
24
43
|
}
|
|
@@ -34,7 +53,14 @@ const useLoginStore = pinia.defineStore("gmLoginStore", () => {
|
|
|
34
53
|
/** 监听登录成功 promise版 */
|
|
35
54
|
onLoginResultPromise,
|
|
36
55
|
/**监听登录弹窗关闭 promise版 */
|
|
37
|
-
onCloseLoginResultPromise
|
|
56
|
+
onCloseLoginResultPromise,
|
|
57
|
+
// 401循环保护相关
|
|
58
|
+
/** 是否被阻止登录(30秒内触发超过5次) */
|
|
59
|
+
isLoginBlocked,
|
|
60
|
+
/** 记录登录弹窗触发时间 */
|
|
61
|
+
recordLoginTrigger,
|
|
62
|
+
/** 重置登录阻止状态 */
|
|
63
|
+
resetLoginBlock
|
|
38
64
|
};
|
|
39
65
|
});
|
|
40
66
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../packages/hooks/store/useLogin/index.ts"],"sourcesContent":["import { ref, watch } from 'vue';\nimport { defineStore } from 'pinia';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars // 下面行不能删除,否则会报错\nimport { type EventHookOn, type EventHookTrigger, createEventHook, useSessionStorage } from '@vueuse/core';\n/**监听登录成功响应的数据 */\nexport interface LoggedResultData {\n token: string;\n userId: string;\n}\n/**登录store */\nexport const useLoginStore = defineStore('gmLoginStore', () => {\n const showLogin = ref(false);\n const userToken = useSessionStorage<string | undefined>('gmUserToken', undefined);\n const userId = useSessionStorage<string | undefined>('gmUserId', undefined);\n const loginResult = createEventHook();\n const triggerLoginResult = loginResult.trigger;\n /**监听登录成功 promise版 */\n const onLoginResultPromise = () =>\n new Promise(resolve => {\n loginResult.on(resolve);\n });\n /**关闭登录弹窗事件 */\n const closeLoginResult = createEventHook();\n const triggerCloseLoginResult = closeLoginResult.trigger;\n /**监听登录弹窗关闭 promise版 */\n const onCloseLoginResultPromise = () =>\n new Promise<undefined>(resolve => {\n closeLoginResult.on(resolve);\n });\n watch(showLogin, newValue => {\n if (!newValue) {\n triggerCloseLoginResult();\n }\n });\n return {\n /**是否显示登录弹窗 */\n showLogin,\n userToken,\n userId,\n triggerLoginResult,\n /** 监听登录成功*/\n onLoginResult: loginResult.on,\n /** 监听登录成功 promise版 */\n onLoginResultPromise,\n /**监听登录弹窗关闭 promise版 */\n onCloseLoginResultPromise,\n };\n});\n"],"names":["defineStore","ref","useSessionStorage","createEventHook","watch"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../packages/hooks/store/useLogin/index.ts"],"sourcesContent":["import { computed, ref, watch } from 'vue';\nimport { defineStore } from 'pinia';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars // 下面行不能删除,否则会报错\nimport { type EventHookOn, type EventHookTrigger, createEventHook, useSessionStorage } from '@vueuse/core';\n/**监听登录成功响应的数据 */\nexport interface LoggedResultData {\n token: string;\n userId: string;\n}\n\n/** 401循环保护配置 */\nconst LOGIN_WINDOW_MS = 30 * 1000; // 30秒时间窗口\nconst LOGIN_MAX_TRIGGERS = 5; // 最大触发次数\n/**登录store */\nexport const useLoginStore = defineStore('gmLoginStore', () => {\n const showLogin = ref(false);\n const userToken = useSessionStorage<string | undefined>('gmUserToken', undefined);\n const userId = useSessionStorage<string | undefined>('gmUserId', undefined);\n const loginResult = createEventHook();\n\n // ========== 401循环保护机制 ==========\n /** 记录登录弹窗触发的时间戳 */\n const loginTriggerTimestamps = ref<number[]>([]);\n\n /** 检查是否被阻止(30秒内触发超过5次) */\n const isLoginBlocked = computed(() => {\n const now = Date.now();\n const recentCount = loginTriggerTimestamps.value.filter(t => now - t < LOGIN_WINDOW_MS).length;\n return recentCount >= LOGIN_MAX_TRIGGERS;\n });\n\n /** 记录登录弹窗触发时间 */\n const recordLoginTrigger = () => {\n const now = Date.now();\n // 清理过期的时间戳\n loginTriggerTimestamps.value = loginTriggerTimestamps.value.filter(t => now - t < LOGIN_WINDOW_MS);\n // 添加当前时间戳\n loginTriggerTimestamps.value.push(now);\n };\n\n /** 重置登录阻止状态(清空时间戳) */\n const resetLoginBlock = () => {\n loginTriggerTimestamps.value = [];\n };\n // ========== 401循环保护机制 END ==========\n const triggerLoginResult = loginResult.trigger;\n /**监听登录成功 promise版 */\n const onLoginResultPromise = () =>\n new Promise(resolve => {\n loginResult.on(resolve);\n });\n /**关闭登录弹窗事件 */\n const closeLoginResult = createEventHook();\n const triggerCloseLoginResult = closeLoginResult.trigger;\n /**监听登录弹窗关闭 promise版 */\n const onCloseLoginResultPromise = () =>\n new Promise<undefined>(resolve => {\n closeLoginResult.on(resolve);\n });\n watch(showLogin, (newValue, oldValue) => {\n // 弹窗打开时记录触发时间(用于401循环保护)\n if (newValue && !oldValue) {\n recordLoginTrigger();\n }\n // 弹窗关闭时触发关闭事件\n if (!newValue) {\n triggerCloseLoginResult();\n }\n });\n return {\n /**是否显示登录弹窗 */\n showLogin,\n userToken,\n userId,\n triggerLoginResult,\n /** 监听登录成功*/\n onLoginResult: loginResult.on,\n /** 监听登录成功 promise版 */\n onLoginResultPromise,\n /**监听登录弹窗关闭 promise版 */\n onCloseLoginResultPromise,\n // 401循环保护相关\n /** 是否被阻止登录(30秒内触发超过5次) */\n isLoginBlocked,\n /** 记录登录弹窗触发时间 */\n recordLoginTrigger,\n /** 重置登录阻止状态 */\n resetLoginBlock,\n };\n});\n"],"names":["defineStore","ref","useSessionStorage","createEventHook","computed","watch"],"mappings":";;;;;;AAWA,MAAM,kBAAkB,EAAA,GAAK,GAAA;AAC7B,MAAM,kBAAA,GAAqB,CAAA;AAEpB,MAAM,aAAA,GAAgBA,iBAAA,CAAY,cAAA,EAAgB,MAAM;AAC7D,EAAA,MAAM,SAAA,GAAYC,QAAI,KAAK,CAAA;AAC3B,EAAA,MAAM,SAAA,GAAYC,sBAAA,CAAsC,aAAA,EAAe,KAAA,CAAS,CAAA;AAChF,EAAA,MAAM,MAAA,GAASA,sBAAA,CAAsC,UAAA,EAAY,KAAA,CAAS,CAAA;AAC1E,EAAA,MAAM,cAAcC,oBAAA,EAAgB;AAIpC,EAAA,MAAM,sBAAA,GAAyBF,OAAA,CAAc,EAAE,CAAA;AAG/C,EAAA,MAAM,cAAA,GAAiBG,aAAS,MAAM;AACpC,IAAA,MAAM,GAAA,GAAM,KAAK,GAAA,EAAI;AACrB,IAAA,MAAM,WAAA,GAAc,uBAAuB,KAAA,CAAM,MAAA,CAAO,OAAK,GAAA,GAAM,CAAA,GAAI,eAAe,CAAA,CAAE,MAAA;AACxF,IAAA,OAAO,WAAA,IAAe,kBAAA;AAAA,EACxB,CAAC,CAAA;AAGD,EAAA,MAAM,qBAAqB,MAAM;AAC/B,IAAA,MAAM,GAAA,GAAM,KAAK,GAAA,EAAI;AAErB,IAAA,sBAAA,CAAuB,QAAQ,sBAAA,CAAuB,KAAA,CAAM,OAAO,CAAA,CAAA,KAAK,GAAA,GAAM,IAAI,eAAe,CAAA;AAEjG,IAAA,sBAAA,CAAuB,KAAA,CAAM,KAAK,GAAG,CAAA;AAAA,EACvC,CAAA;AAGA,EAAA,MAAM,kBAAkB,MAAM;AAC5B,IAAA,sBAAA,CAAuB,QAAQ,EAAC;AAAA,EAClC,CAAA;AAEA,EAAA,MAAM,qBAAqB,WAAA,CAAY,OAAA;AAEvC,EAAA,MAAM,oBAAA,GAAuB,MAC3B,IAAI,OAAA,CAAQ,CAAA,OAAA,KAAW;AACrB,IAAA,WAAA,CAAY,GAAG,OAAO,CAAA;AAAA,EACxB,CAAC,CAAA;AAEH,EAAA,MAAM,mBAAmBD,oBAAA,EAAgB;AACzC,EAAA,MAAM,0BAA0B,gBAAA,CAAiB,OAAA;AAEjD,EAAA,MAAM,yBAAA,GAA4B,MAChC,IAAI,OAAA,CAAmB,CAAA,OAAA,KAAW;AAChC,IAAA,gBAAA,CAAiB,GAAG,OAAO,CAAA;AAAA,EAC7B,CAAC,CAAA;AACH,EAAAE,SAAA,CAAM,SAAA,EAAW,CAAC,QAAA,EAAU,QAAA,KAAa;AAEvC,IAAA,IAAI,QAAA,IAAY,CAAC,QAAA,EAAU;AACzB,MAAA,kBAAA,EAAmB;AAAA,IACrB;AAEA,IAAA,IAAI,CAAC,QAAA,EAAU;AACb,MAAA,uBAAA,EAAwB;AAAA,IAC1B;AAAA,EACF,CAAC,CAAA;AACD,EAAA,OAAO;AAAA;AAAA,IAEL,SAAA;AAAA,IACA,SAAA;AAAA,IACA,MAAA;AAAA,IACA,kBAAA;AAAA;AAAA,IAEA,eAAe,WAAA,CAAY,EAAA;AAAA;AAAA,IAE3B,oBAAA;AAAA;AAAA,IAEA,yBAAA;AAAA;AAAA;AAAA,IAGA,cAAA;AAAA;AAAA,IAEA,kBAAA;AAAA;AAAA,IAEA;AAAA,GACF;AACF,CAAC;;;;"}
|