@algoux/standard-ranklist-renderer-component-vue 0.6.0 → 0.6.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.
@@ -0,0 +1,121 @@
1
+ declare const _sfc_main: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ open: {
3
+ type: BooleanConstructor;
4
+ required: true;
5
+ };
6
+ title: {
7
+ type: StringConstructor;
8
+ required: false;
9
+ };
10
+ width: {
11
+ type: NumberConstructor;
12
+ required: false;
13
+ };
14
+ rootClassName: {
15
+ type: StringConstructor;
16
+ required: false;
17
+ };
18
+ wrapClassName: {
19
+ type: StringConstructor;
20
+ required: false;
21
+ };
22
+ style: {
23
+ type: ObjectConstructor;
24
+ required: false;
25
+ };
26
+ destroyOnClose: {
27
+ type: BooleanConstructor;
28
+ required: false;
29
+ default: boolean;
30
+ };
31
+ closeOnEsc: {
32
+ type: BooleanConstructor;
33
+ required: false;
34
+ default: boolean;
35
+ };
36
+ closeOnMaskClick: {
37
+ type: BooleanConstructor;
38
+ required: false;
39
+ default: boolean;
40
+ };
41
+ }>, {
42
+ nextModalId: number;
43
+ props: any;
44
+ emit: (event: "close" | "update:open", ...args: any[]) => void;
45
+ titleId: string;
46
+ dialogRef: import("vue").Ref<HTMLDivElement | null, HTMLDivElement | null>;
47
+ isMounted: import("vue").Ref<any, any>;
48
+ animationState: import("vue").Ref<"pre-open" | "opening" | "closing", "pre-open" | "opening" | "closing">;
49
+ transformOrigin: import("vue").Ref<{
50
+ x: number;
51
+ y: number;
52
+ }, {
53
+ x: number;
54
+ y: number;
55
+ } | {
56
+ x: number;
57
+ y: number;
58
+ }>;
59
+ closeTimer: number | null;
60
+ openTimer: number | null;
61
+ focusScopeId: number | null;
62
+ shouldRender: import("vue").ComputedRef<any>;
63
+ rootClasses: import("vue").ComputedRef<any[]>;
64
+ shouldLockBody: import("vue").ComputedRef<any>;
65
+ dialogStyle: import("vue").ComputedRef<any>;
66
+ clearTimers: () => void;
67
+ queueOpenAnimation: () => Promise<void>;
68
+ registerFocusScope: () => void;
69
+ releaseFocusScope: () => void;
70
+ requestClose: (reason: 'mask' | 'close-button' | 'escape') => void;
71
+ handleMaskMouseDown: (event: MouseEvent) => void;
72
+ handleEscape: (event: KeyboardEvent) => void;
73
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "update:open")[], "close" | "update:open", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
74
+ open: {
75
+ type: BooleanConstructor;
76
+ required: true;
77
+ };
78
+ title: {
79
+ type: StringConstructor;
80
+ required: false;
81
+ };
82
+ width: {
83
+ type: NumberConstructor;
84
+ required: false;
85
+ };
86
+ rootClassName: {
87
+ type: StringConstructor;
88
+ required: false;
89
+ };
90
+ wrapClassName: {
91
+ type: StringConstructor;
92
+ required: false;
93
+ };
94
+ style: {
95
+ type: ObjectConstructor;
96
+ required: false;
97
+ };
98
+ destroyOnClose: {
99
+ type: BooleanConstructor;
100
+ required: false;
101
+ default: boolean;
102
+ };
103
+ closeOnEsc: {
104
+ type: BooleanConstructor;
105
+ required: false;
106
+ default: boolean;
107
+ };
108
+ closeOnMaskClick: {
109
+ type: BooleanConstructor;
110
+ required: false;
111
+ default: boolean;
112
+ };
113
+ }>> & Readonly<{
114
+ onClose?: ((...args: any[]) => any) | undefined;
115
+ "onUpdate:open"?: ((...args: any[]) => any) | undefined;
116
+ }>, {
117
+ closeOnEsc: boolean;
118
+ closeOnMaskClick: boolean;
119
+ destroyOnClose: boolean;
120
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
121
+ export default _sfc_main;
@@ -0,0 +1,38 @@
1
+ declare const _sfc_main: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ problem: {
3
+ type: null;
4
+ required: true;
5
+ };
6
+ index: {
7
+ type: NumberConstructor;
8
+ required: true;
9
+ };
10
+ theme: {
11
+ type: StringConstructor;
12
+ required: false;
13
+ default: any;
14
+ };
15
+ }>, {
16
+ props: any;
17
+ alias: import("vue").ComputedRef<any>;
18
+ stat: import("vue").ComputedRef<any>;
19
+ statDesc: import("vue").ComputedRef<string>;
20
+ backgroundImage: import("vue").ComputedRef<string>;
21
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
22
+ problem: {
23
+ type: null;
24
+ required: true;
25
+ };
26
+ index: {
27
+ type: NumberConstructor;
28
+ required: true;
29
+ };
30
+ theme: {
31
+ type: StringConstructor;
32
+ required: false;
33
+ default: any;
34
+ };
35
+ }>> & Readonly<{}>, {
36
+ theme: string;
37
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
38
+ export default _sfc_main;
@@ -0,0 +1,141 @@
1
+ declare const _sfc_main: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ status: {
3
+ type: null;
4
+ required: true;
5
+ };
6
+ problem: {
7
+ type: null;
8
+ required: false;
9
+ };
10
+ problemIndex: {
11
+ type: NumberConstructor;
12
+ required: true;
13
+ };
14
+ user: {
15
+ type: null;
16
+ required: true;
17
+ };
18
+ row: {
19
+ type: null;
20
+ required: true;
21
+ };
22
+ rowIndex: {
23
+ type: NumberConstructor;
24
+ required: true;
25
+ };
26
+ ranklist: {
27
+ type: ObjectConstructor;
28
+ required: true;
29
+ };
30
+ onSolutionClick: {
31
+ type: FunctionConstructor;
32
+ required: false;
33
+ };
34
+ statusCellPreset: {
35
+ type: StringConstructor;
36
+ required: false;
37
+ default: string;
38
+ };
39
+ statusColorAsText: {
40
+ type: BooleanConstructor;
41
+ required: false;
42
+ default: boolean;
43
+ };
44
+ emptyStatusPlaceholder: {
45
+ type: (StringConstructor | null)[];
46
+ required: false;
47
+ default: null;
48
+ };
49
+ }>, {
50
+ props: any;
51
+ fbStar: string;
52
+ solutions: import("vue").ComputedRef<any[]>;
53
+ isClickable: import("vue").ComputedRef<boolean>;
54
+ commonClassName: import("vue").ComputedRef<(string | {
55
+ 'srk--cursor-pointer': boolean;
56
+ 'srk-prest-status-block-color-text': any;
57
+ })[]>;
58
+ emitSolutionClick: (event: MouseEvent) => void;
59
+ StatusBody: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
60
+ status: {
61
+ type: ObjectConstructor;
62
+ required: true;
63
+ };
64
+ ranklist: {
65
+ type: ObjectConstructor;
66
+ required: true;
67
+ };
68
+ preset: {
69
+ type: StringConstructor;
70
+ required: true;
71
+ };
72
+ }>, () => string | (string | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
73
+ [key: string]: any;
74
+ }>)[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
75
+ status: {
76
+ type: ObjectConstructor;
77
+ required: true;
78
+ };
79
+ ranklist: {
80
+ type: ObjectConstructor;
81
+ required: true;
82
+ };
83
+ preset: {
84
+ type: StringConstructor;
85
+ required: true;
86
+ };
87
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
88
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
89
+ status: {
90
+ type: null;
91
+ required: true;
92
+ };
93
+ problem: {
94
+ type: null;
95
+ required: false;
96
+ };
97
+ problemIndex: {
98
+ type: NumberConstructor;
99
+ required: true;
100
+ };
101
+ user: {
102
+ type: null;
103
+ required: true;
104
+ };
105
+ row: {
106
+ type: null;
107
+ required: true;
108
+ };
109
+ rowIndex: {
110
+ type: NumberConstructor;
111
+ required: true;
112
+ };
113
+ ranklist: {
114
+ type: ObjectConstructor;
115
+ required: true;
116
+ };
117
+ onSolutionClick: {
118
+ type: FunctionConstructor;
119
+ required: false;
120
+ };
121
+ statusCellPreset: {
122
+ type: StringConstructor;
123
+ required: false;
124
+ default: string;
125
+ };
126
+ statusColorAsText: {
127
+ type: BooleanConstructor;
128
+ required: false;
129
+ default: boolean;
130
+ };
131
+ emptyStatusPlaceholder: {
132
+ type: (StringConstructor | null)[];
133
+ required: false;
134
+ default: null;
135
+ };
136
+ }>> & Readonly<{}>, {
137
+ statusCellPreset: string;
138
+ statusColorAsText: boolean;
139
+ emptyStatusPlaceholder: string | null;
140
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
141
+ export default _sfc_main;
@@ -0,0 +1,104 @@
1
+ declare const _sfc_main: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ user: {
3
+ type: null;
4
+ required: true;
5
+ };
6
+ row: {
7
+ type: null;
8
+ required: true;
9
+ };
10
+ rowIndex: {
11
+ type: NumberConstructor;
12
+ required: true;
13
+ };
14
+ ranklist: {
15
+ type: ObjectConstructor;
16
+ required: true;
17
+ };
18
+ markers: {
19
+ type: ArrayConstructor;
20
+ required: false;
21
+ default: () => never[];
22
+ };
23
+ theme: {
24
+ type: StringConstructor;
25
+ required: false;
26
+ default: any;
27
+ };
28
+ formatSrkAssetUrl: {
29
+ type: FunctionConstructor;
30
+ required: true;
31
+ };
32
+ onUserClick: {
33
+ type: FunctionConstructor;
34
+ required: false;
35
+ };
36
+ hideOrganization: {
37
+ type: BooleanConstructor;
38
+ required: false;
39
+ default: boolean;
40
+ };
41
+ hideAvatar: {
42
+ type: BooleanConstructor;
43
+ required: false;
44
+ default: boolean;
45
+ };
46
+ }>, {
47
+ props: any;
48
+ name: import("vue").ComputedRef<any>;
49
+ userMarkers: import("vue").ComputedRef<any>;
50
+ resolvedMarkers: import("vue").ComputedRef<any>;
51
+ emitUserClick: (event: MouseEvent) => void;
52
+ readonly resolveText: any;
53
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
54
+ user: {
55
+ type: null;
56
+ required: true;
57
+ };
58
+ row: {
59
+ type: null;
60
+ required: true;
61
+ };
62
+ rowIndex: {
63
+ type: NumberConstructor;
64
+ required: true;
65
+ };
66
+ ranklist: {
67
+ type: ObjectConstructor;
68
+ required: true;
69
+ };
70
+ markers: {
71
+ type: ArrayConstructor;
72
+ required: false;
73
+ default: () => never[];
74
+ };
75
+ theme: {
76
+ type: StringConstructor;
77
+ required: false;
78
+ default: any;
79
+ };
80
+ formatSrkAssetUrl: {
81
+ type: FunctionConstructor;
82
+ required: true;
83
+ };
84
+ onUserClick: {
85
+ type: FunctionConstructor;
86
+ required: false;
87
+ };
88
+ hideOrganization: {
89
+ type: BooleanConstructor;
90
+ required: false;
91
+ default: boolean;
92
+ };
93
+ hideAvatar: {
94
+ type: BooleanConstructor;
95
+ required: false;
96
+ default: boolean;
97
+ };
98
+ }>> & Readonly<{}>, {
99
+ theme: string;
100
+ markers: unknown[];
101
+ hideOrganization: boolean;
102
+ hideAvatar: boolean;
103
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
104
+ export default _sfc_main;
@@ -0,0 +1,67 @@
1
+ declare const _sfc_main: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ data: {
3
+ type: null;
4
+ required: true;
5
+ };
6
+ enableTimeTravel: {
7
+ type: BooleanConstructor;
8
+ required: false;
9
+ default: boolean;
10
+ };
11
+ live: {
12
+ type: BooleanConstructor;
13
+ required: false;
14
+ default: boolean;
15
+ };
16
+ td: {
17
+ type: NumberConstructor;
18
+ required: false;
19
+ default: number;
20
+ };
21
+ }>, {
22
+ props: any;
23
+ emit: (event: "timeTravel", ...args: any[]) => void;
24
+ localTime: import("vue").Ref<number, number>;
25
+ inTimeMachine: import("vue").Ref<boolean, boolean>;
26
+ timeTravelIsChanging: import("vue").Ref<boolean, boolean>;
27
+ timeTravelCurrentValue: import("vue").Ref<number, number>;
28
+ timeTravelValue: import("vue").Ref<number | null, number | null>;
29
+ liveInterval: number | undefined;
30
+ durationMinutes: import("vue").ComputedRef<number>;
31
+ maxAvailableMinutes: import("vue").ComputedRef<number>;
32
+ isEnded: import("vue").ComputedRef<boolean>;
33
+ progressMetrics: import("vue").ComputedRef<import("@algoux/standard-ranklist-renderer-component-core").ProgressMetrics>;
34
+ handleProgressTimer: () => void;
35
+ syncLiveInterval: (live: boolean) => void;
36
+ handleTimeTravelChange: (value: number) => void;
37
+ beginTimeTravel: () => void;
38
+ commitTimeTravel: () => void;
39
+ readonly secToTimeStr: any;
40
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "timeTravel"[], "timeTravel", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
41
+ data: {
42
+ type: null;
43
+ required: true;
44
+ };
45
+ enableTimeTravel: {
46
+ type: BooleanConstructor;
47
+ required: false;
48
+ default: boolean;
49
+ };
50
+ live: {
51
+ type: BooleanConstructor;
52
+ required: false;
53
+ default: boolean;
54
+ };
55
+ td: {
56
+ type: NumberConstructor;
57
+ required: false;
58
+ default: number;
59
+ };
60
+ }>> & Readonly<{
61
+ onTimeTravel?: ((...args: any[]) => any) | undefined;
62
+ }>, {
63
+ td: number;
64
+ enableTimeTravel: boolean;
65
+ live: boolean;
66
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
67
+ export default _sfc_main;
@@ -0,0 +1,98 @@
1
+ import type * as srk from '@algoux/standard-ranklist';
2
+ import type { CSSProperties } from 'vue';
3
+ import type { EnumTheme } from '@algoux/standard-ranklist-utils';
4
+ import type { RanklistColumnTitles, RanklistStatusCellPreset, RanklistUserAvatarPlacement, SolutionClickPayload, StaticRanklist, StaticRanklistRow, UserClickPayload } from '@algoux/standard-ranklist-renderer-component-core';
5
+ export declare type ModalCloseReason = 'mask' | 'close-button' | 'escape';
6
+ export interface RanklistProps {
7
+ data: StaticRanklist;
8
+ theme?: EnumTheme;
9
+ borderedRows?: boolean;
10
+ rowBordered?: boolean;
11
+ columnBordered?: boolean;
12
+ stripedRows?: boolean;
13
+ formatSrkAssetUrl?: (url: string, field: string) => string;
14
+ splitOrganization?: boolean;
15
+ columnTitles?: RanklistColumnTitles;
16
+ statusCellPreset?: RanklistStatusCellPreset;
17
+ statusColorAsText?: boolean;
18
+ showProblemStatisticsFooter?: boolean;
19
+ showDirtColumn?: boolean;
20
+ showSEColumn?: boolean;
21
+ emptyStatusPlaceholder?: string | null;
22
+ userAvatarPlacement?: RanklistUserAvatarPlacement;
23
+ }
24
+ export interface ProblemHeaderCellSlotProps {
25
+ problem: srk.Problem;
26
+ problemIndex: number;
27
+ index: number;
28
+ theme?: EnumTheme;
29
+ }
30
+ export interface UserCellSlotProps {
31
+ user: srk.User;
32
+ row: StaticRanklistRow;
33
+ rowIndex: number;
34
+ ranklist: StaticRanklist;
35
+ markers?: srk.Marker[];
36
+ theme?: EnumTheme;
37
+ hideOrganization?: boolean;
38
+ hideAvatar?: boolean;
39
+ onClick: (event?: MouseEvent) => void;
40
+ }
41
+ export interface StatusCellSlotProps {
42
+ status: srk.RankProblemStatus;
43
+ problem: srk.Problem | undefined;
44
+ problemIndex: number;
45
+ user: srk.User;
46
+ row: StaticRanklistRow;
47
+ rowIndex: number;
48
+ ranklist: StaticRanklist;
49
+ solutions: srk.Solution[];
50
+ statusCellPreset?: RanklistStatusCellPreset;
51
+ statusColorAsText?: boolean;
52
+ emptyStatusPlaceholder?: string | null;
53
+ onClick: (event?: MouseEvent) => void;
54
+ }
55
+ export interface ProgressBarProps {
56
+ data: srk.Ranklist;
57
+ enableTimeTravel?: boolean;
58
+ live?: boolean;
59
+ td?: number;
60
+ }
61
+ export interface ModalProps {
62
+ open: boolean;
63
+ title?: string;
64
+ width?: number;
65
+ rootClassName?: string;
66
+ wrapClassName?: string;
67
+ style?: CSSProperties;
68
+ closeOnEsc?: boolean;
69
+ closeOnMaskClick?: boolean;
70
+ }
71
+ export interface DefaultUserModalProps extends Pick<ModalProps, 'open' | 'rootClassName' | 'wrapClassName' | 'style'> {
72
+ user?: srk.User | null;
73
+ markers?: srk.Marker[];
74
+ theme?: EnumTheme;
75
+ title?: string;
76
+ width?: number;
77
+ formatSrkAssetUrl?: (url: string, field: string) => string;
78
+ }
79
+ export interface DefaultSolutionModalProps extends Pick<ModalProps, 'open' | 'rootClassName' | 'wrapClassName' | 'style'> {
80
+ user?: srk.User | null;
81
+ problem?: srk.Problem;
82
+ problemIndex: number;
83
+ solutions: srk.Solution[];
84
+ title?: string;
85
+ width?: number;
86
+ }
87
+ export declare type RanklistEvents = {
88
+ userClick: UserClickPayload;
89
+ solutionClick: SolutionClickPayload;
90
+ };
91
+ export declare type ProgressBarEvents = {
92
+ timeTravel: number | null;
93
+ };
94
+ export declare type ModalEvents = {
95
+ close: ModalCloseReason;
96
+ 'update:open': boolean;
97
+ };
98
+ export type { RanklistColumnTitles, RanklistStatusCellPreset, RanklistUserAvatarPlacement, SolutionClickPayload, StaticRanklist, StaticRanklistRow, UserClickPayload, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@algoux/standard-ranklist-renderer-component-vue",
3
- "version": "0.6.0",
3
+ "version": "0.6.1",
4
4
  "description": "Vue components for Standard Ranklist Renderer Component",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/algoux/standard-ranklist-renderer-component",
@@ -29,8 +29,8 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@algoux/standard-ranklist-utils": "^0.2.11",
32
- "@algoux/standard-ranklist-renderer-component-core": "0.6.0",
33
- "@algoux/standard-ranklist-renderer-component-styles": "0.6.0"
32
+ "@algoux/standard-ranklist-renderer-component-core": "0.6.1",
33
+ "@algoux/standard-ranklist-renderer-component-styles": "0.6.1"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "@algoux/standard-ranklist": "*",