@polyv/answer-card-ui-launch 2.2.0 → 2.4.0-rc-20260514.5
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/index.cjs.js +496 -149
- package/index.es.d.ts +773 -83
- package/index.es.js +35213 -19200
- package/index.umd.js +495 -148
- package/package.json +1 -1
package/index.es.d.ts
CHANGED
|
@@ -2,21 +2,40 @@ import { AnswerCard } from '@polyv/answer-card-sdk';
|
|
|
2
2
|
import { ComponentOptionsMixin } from 'vue';
|
|
3
3
|
import { ComputedRef } from 'vue';
|
|
4
4
|
import { DefineComponent } from 'vue';
|
|
5
|
+
import { EmitFuncType } from '@polyv/vue-components';
|
|
5
6
|
import { ExtractPropTypes } from 'vue';
|
|
7
|
+
import { PlatformQuestionnaireItemData } from '@polyv/ui-shared';
|
|
8
|
+
import { PlatformQuestionnaireItemData as PlatformQuestionnaireItemData_2 } from '@polyv/ui-shared/src/hooks/use-platform-questionnaire-popup';
|
|
9
|
+
import { PlatformQuestionnairePageContentData } from '@polyv/ui-shared';
|
|
10
|
+
import { PlatformQuestionnairePageContentData as PlatformQuestionnairePageContentData_2 } from '@polyv/ui-shared/src/hooks/use-platform-questionnaire-popup';
|
|
11
|
+
import { PlatformQuestionnairePreviewQuestionData } from '@polyv/ui-shared';
|
|
6
12
|
import { QuestionAnswerType } from '@polyv/questionnaire-sdk';
|
|
7
13
|
import { QuestionContent } from '@polyv/answer-card-sdk';
|
|
14
|
+
import { QuestionDocumentOption } from '@polyv/question-bank/shared';
|
|
8
15
|
import { QuestionItem } from '@polyv/questionnaire-sdk';
|
|
16
|
+
import { QuestionNode } from '@polyv/question-bank/shared';
|
|
17
|
+
import { QuestionNode as QuestionNode_2 } from '@polyv/question-bank';
|
|
18
|
+
import { QuestionNodeTypeValue } from '@polyv/question-bank/shared';
|
|
9
19
|
import { QuestionStatus } from '@polyv/answer-card-sdk';
|
|
10
20
|
import { QuestionType } from '@polyv/answer-card-sdk';
|
|
11
21
|
import { QuestionTypeEnum } from '@polyv/answer-card-sdk';
|
|
12
22
|
import { Ref } from 'vue';
|
|
13
23
|
import { Statistics } from '@polyv/answer-card-sdk';
|
|
14
24
|
import { ValidatorFunction } from 'vue-types/dist/types';
|
|
25
|
+
import { VueEmit } from '@polyv/vue-components';
|
|
15
26
|
import { VueProps } from '@polyv/vue-components';
|
|
16
27
|
import { VueTypeValidableDef } from 'vue-types';
|
|
17
28
|
import { VueTypeValidableDef as VueTypeValidableDef_2 } from 'vue-types';
|
|
18
29
|
import { WritableComputedRef } from 'vue';
|
|
19
30
|
|
|
31
|
+
export declare interface AnswerCardLaunchBaseProps {
|
|
32
|
+
answerCardTarget: AnswerCard;
|
|
33
|
+
canStart?: boolean;
|
|
34
|
+
cantStartTips?: string;
|
|
35
|
+
defaultLimitTimeAnswer?: boolean;
|
|
36
|
+
defaultLimitDuration?: number;
|
|
37
|
+
}
|
|
38
|
+
|
|
20
39
|
export declare const AnswerCardLaunchDetail: DefineComponent< {
|
|
21
40
|
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
22
41
|
required: true;
|
|
@@ -65,10 +84,10 @@ default: number;
|
|
|
65
84
|
}, {
|
|
66
85
|
refreshDetail: () => Promise<void>;
|
|
67
86
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
68
|
-
input: (
|
|
69
|
-
stop: (
|
|
70
|
-
close: () => void;
|
|
71
|
-
start: (
|
|
87
|
+
input: (arg: boolean) => void;
|
|
88
|
+
stop: (arg: string) => void;
|
|
89
|
+
close: (arg?: void | undefined) => void;
|
|
90
|
+
start: (arg: string) => void;
|
|
72
91
|
}, string, Readonly<ExtractPropTypes< {
|
|
73
92
|
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
74
93
|
required: true;
|
|
@@ -117,26 +136,19 @@ default: number;
|
|
|
117
136
|
}>>, {
|
|
118
137
|
questionId: string;
|
|
119
138
|
defaultLimitTimeAnswer: boolean;
|
|
139
|
+
value: boolean;
|
|
120
140
|
canStart: boolean;
|
|
121
141
|
cantStartTips: string;
|
|
122
142
|
defaultLimitDuration: number;
|
|
123
|
-
value: boolean;
|
|
124
143
|
launchStatus: string;
|
|
125
144
|
launchSubmittedCount: number;
|
|
126
145
|
}>;
|
|
127
146
|
|
|
128
|
-
declare
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
};
|
|
134
|
-
|
|
135
|
-
export declare const answerCardLaunchDetailEmits: {
|
|
136
|
-
input: (_value: boolean) => boolean;
|
|
137
|
-
close: () => boolean;
|
|
138
|
-
stop: (_questionId: string) => boolean;
|
|
139
|
-
start: (_questionId: string) => boolean;
|
|
147
|
+
export declare const answerCardLaunchDetailEmits: () => {
|
|
148
|
+
input: EmitFuncType<boolean>;
|
|
149
|
+
close: EmitFuncType<void>;
|
|
150
|
+
stop: EmitFuncType<string>;
|
|
151
|
+
start: EmitFuncType<string>;
|
|
140
152
|
};
|
|
141
153
|
|
|
142
154
|
export declare const answerCardLaunchDetailProps: () => {
|
|
@@ -196,6 +208,26 @@ export declare const answerCardLaunchDetailProps: () => {
|
|
|
196
208
|
};
|
|
197
209
|
};
|
|
198
210
|
|
|
211
|
+
export declare interface AnswerCardLaunchEndPayload {
|
|
212
|
+
questionId: string;
|
|
213
|
+
question?: QuestionContent;
|
|
214
|
+
total: number;
|
|
215
|
+
optionCounts: number[];
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
export declare interface AnswerCardLaunchEventPayload {
|
|
219
|
+
source?: 'pc' | 'mobile' | 'external';
|
|
220
|
+
target?: 'pc' | 'mobile' | 'all';
|
|
221
|
+
reason?: AnswerCardLaunchRefreshReason;
|
|
222
|
+
questionId?: string;
|
|
223
|
+
templateId?: string;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
export declare interface AnswerCardLaunchExportPayload {
|
|
227
|
+
questionId: string;
|
|
228
|
+
url?: string;
|
|
229
|
+
}
|
|
230
|
+
|
|
199
231
|
export declare const AnswerCardLaunchList: DefineComponent< {
|
|
200
232
|
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
201
233
|
required: true;
|
|
@@ -220,12 +252,22 @@ default: number;
|
|
|
220
252
|
} & {
|
|
221
253
|
default: number;
|
|
222
254
|
};
|
|
255
|
+
answerContentBlankEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
256
|
+
default: boolean;
|
|
257
|
+
} & {
|
|
258
|
+
default: boolean;
|
|
259
|
+
};
|
|
260
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
261
|
+
default: boolean;
|
|
262
|
+
} & {
|
|
263
|
+
default: boolean;
|
|
264
|
+
};
|
|
223
265
|
}, {
|
|
224
266
|
refreshList: () => Promise<void>;
|
|
225
267
|
getCardById: typeof getCardById;
|
|
226
268
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
227
|
-
"view-detail": (
|
|
228
|
-
refresh: (
|
|
269
|
+
"view-detail": (arg: LaunchCardItem) => void;
|
|
270
|
+
refresh: (arg: LaunchCardItem[]) => void;
|
|
229
271
|
}, string, Readonly<ExtractPropTypes< {
|
|
230
272
|
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
231
273
|
required: true;
|
|
@@ -250,21 +292,28 @@ default: number;
|
|
|
250
292
|
} & {
|
|
251
293
|
default: number;
|
|
252
294
|
};
|
|
295
|
+
answerContentBlankEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
296
|
+
default: boolean;
|
|
297
|
+
} & {
|
|
298
|
+
default: boolean;
|
|
299
|
+
};
|
|
300
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
301
|
+
default: boolean;
|
|
302
|
+
} & {
|
|
303
|
+
default: boolean;
|
|
304
|
+
};
|
|
253
305
|
}>>, {
|
|
254
306
|
defaultLimitTimeAnswer: boolean;
|
|
255
307
|
canStart: boolean;
|
|
256
308
|
cantStartTips: string;
|
|
257
309
|
defaultLimitDuration: number;
|
|
310
|
+
answerContentBlankEnabled: boolean;
|
|
311
|
+
checkDefaultBadwordEnabled: boolean;
|
|
258
312
|
}>;
|
|
259
313
|
|
|
260
|
-
declare
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
};
|
|
264
|
-
|
|
265
|
-
export declare const answerCardLaunchListEmits: {
|
|
266
|
-
'view-detail': (_card: LaunchCardItem) => boolean;
|
|
267
|
-
refresh: (_list: LaunchCardItem[]) => boolean;
|
|
314
|
+
export declare const answerCardLaunchListEmits: () => {
|
|
315
|
+
'view-detail': EmitFuncType<LaunchCardItem>;
|
|
316
|
+
refresh: EmitFuncType<LaunchCardItem[]>;
|
|
268
317
|
};
|
|
269
318
|
|
|
270
319
|
export declare const answerCardLaunchListProps: () => {
|
|
@@ -291,6 +340,16 @@ export declare const answerCardLaunchListProps: () => {
|
|
|
291
340
|
} & {
|
|
292
341
|
default: number;
|
|
293
342
|
};
|
|
343
|
+
answerContentBlankEnabled: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
344
|
+
default: boolean;
|
|
345
|
+
} & {
|
|
346
|
+
default: boolean;
|
|
347
|
+
};
|
|
348
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
349
|
+
default: boolean;
|
|
350
|
+
} & {
|
|
351
|
+
default: boolean;
|
|
352
|
+
};
|
|
294
353
|
};
|
|
295
354
|
|
|
296
355
|
export declare const AnswerCardLaunchPanel: DefineComponent< {
|
|
@@ -321,6 +380,16 @@ default: number;
|
|
|
321
380
|
} & {
|
|
322
381
|
default: number;
|
|
323
382
|
};
|
|
383
|
+
answerContentBlankEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
384
|
+
default: boolean;
|
|
385
|
+
} & {
|
|
386
|
+
default: boolean;
|
|
387
|
+
};
|
|
388
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
389
|
+
default: boolean;
|
|
390
|
+
} & {
|
|
391
|
+
default: boolean;
|
|
392
|
+
};
|
|
324
393
|
}, {
|
|
325
394
|
openPanel: () => void;
|
|
326
395
|
refreshCardList: typeof refreshCardList;
|
|
@@ -329,8 +398,8 @@ openDetail: (question: LaunchCardItem | string, mode?: LaunchDetailMode) => void
|
|
|
329
398
|
openQuick: () => void;
|
|
330
399
|
closePanel: () => void;
|
|
331
400
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
332
|
-
input: (
|
|
333
|
-
close: () => void;
|
|
401
|
+
input: (arg: boolean) => void;
|
|
402
|
+
close: (arg?: void | undefined) => void;
|
|
334
403
|
}, string, Readonly<ExtractPropTypes< {
|
|
335
404
|
value: {
|
|
336
405
|
type: BooleanConstructor;
|
|
@@ -359,23 +428,49 @@ default: number;
|
|
|
359
428
|
} & {
|
|
360
429
|
default: number;
|
|
361
430
|
};
|
|
431
|
+
answerContentBlankEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
432
|
+
default: boolean;
|
|
433
|
+
} & {
|
|
434
|
+
default: boolean;
|
|
435
|
+
};
|
|
436
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
437
|
+
default: boolean;
|
|
438
|
+
} & {
|
|
439
|
+
default: boolean;
|
|
440
|
+
};
|
|
362
441
|
}>>, {
|
|
363
442
|
defaultLimitTimeAnswer: boolean;
|
|
443
|
+
value: boolean;
|
|
364
444
|
canStart: boolean;
|
|
365
445
|
cantStartTips: string;
|
|
366
446
|
defaultLimitDuration: number;
|
|
367
|
-
|
|
447
|
+
answerContentBlankEnabled: boolean;
|
|
448
|
+
checkDefaultBadwordEnabled: boolean;
|
|
368
449
|
}>;
|
|
369
450
|
|
|
370
|
-
declare
|
|
371
|
-
|
|
372
|
-
|
|
451
|
+
export declare const answerCardLaunchPanelEmits: () => {
|
|
452
|
+
input: EmitFuncType<boolean>;
|
|
453
|
+
close: EmitFuncType<void>;
|
|
373
454
|
};
|
|
374
455
|
|
|
375
|
-
export declare
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
};
|
|
456
|
+
export declare interface AnswerCardLaunchPanelExpose {
|
|
457
|
+
openPanel(options?: {
|
|
458
|
+
questionId?: string;
|
|
459
|
+
}): void;
|
|
460
|
+
closePanel(): void;
|
|
461
|
+
refreshQuestionList(reason?: AnswerCardLaunchRefreshReason): Promise<void>;
|
|
462
|
+
refreshTemplateList(reason?: AnswerCardLaunchRefreshReason): Promise<void>;
|
|
463
|
+
openQuickAnswer(): void;
|
|
464
|
+
openTemplateManager(): void;
|
|
465
|
+
selectQuestion(questionId: string): void;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
export declare interface AnswerCardLaunchPanelProps extends AnswerCardLaunchBaseProps {
|
|
469
|
+
value?: boolean;
|
|
470
|
+
initialQuestion?: QuestionContent | null;
|
|
471
|
+
answerContentBlankEnabled?: boolean;
|
|
472
|
+
checkDefaultBadwordEnabled?: boolean;
|
|
473
|
+
}
|
|
379
474
|
|
|
380
475
|
export declare const answerCardLaunchPanelProps: () => {
|
|
381
476
|
/** 面板显隐(v-model)。 */
|
|
@@ -406,6 +501,16 @@ export declare const answerCardLaunchPanelProps: () => {
|
|
|
406
501
|
} & {
|
|
407
502
|
default: number;
|
|
408
503
|
};
|
|
504
|
+
answerContentBlankEnabled: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
505
|
+
default: boolean;
|
|
506
|
+
} & {
|
|
507
|
+
default: boolean;
|
|
508
|
+
};
|
|
509
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
510
|
+
default: boolean;
|
|
511
|
+
} & {
|
|
512
|
+
default: boolean;
|
|
513
|
+
};
|
|
409
514
|
};
|
|
410
515
|
|
|
411
516
|
export declare const answerCardLaunchProps: () => {
|
|
@@ -437,6 +542,18 @@ export declare const answerCardLaunchProps: () => {
|
|
|
437
542
|
} & {
|
|
438
543
|
default: number;
|
|
439
544
|
};
|
|
545
|
+
/** 是否启用旧数据空题干/空选项兼容。 */
|
|
546
|
+
answerContentBlankEnabled: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
547
|
+
default: boolean;
|
|
548
|
+
} & {
|
|
549
|
+
default: boolean;
|
|
550
|
+
};
|
|
551
|
+
/** 是否开启默认严禁词校验。 */
|
|
552
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
553
|
+
default: boolean;
|
|
554
|
+
} & {
|
|
555
|
+
default: boolean;
|
|
556
|
+
};
|
|
440
557
|
};
|
|
441
558
|
|
|
442
559
|
export declare const AnswerCardLaunchQuick: DefineComponent< {
|
|
@@ -464,9 +581,9 @@ default: boolean;
|
|
|
464
581
|
default: boolean;
|
|
465
582
|
};
|
|
466
583
|
}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
467
|
-
input: (
|
|
468
|
-
close: () => void;
|
|
469
|
-
sent: (
|
|
584
|
+
input: (arg: boolean) => void;
|
|
585
|
+
close: (arg?: void | undefined) => void;
|
|
586
|
+
sent: (arg: string) => void;
|
|
470
587
|
}, string, Readonly<ExtractPropTypes< {
|
|
471
588
|
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
472
589
|
required: true;
|
|
@@ -493,9 +610,9 @@ default: boolean;
|
|
|
493
610
|
};
|
|
494
611
|
}>>, {
|
|
495
612
|
defaultLimitTimeAnswer: boolean;
|
|
613
|
+
value: boolean;
|
|
496
614
|
canStart: boolean;
|
|
497
615
|
cantStartTips: string;
|
|
498
|
-
value: boolean;
|
|
499
616
|
}>;
|
|
500
617
|
|
|
501
618
|
export declare const AnswerCardLaunchQuickDetail: DefineComponent< {
|
|
@@ -541,10 +658,10 @@ default: boolean;
|
|
|
541
658
|
}, {
|
|
542
659
|
refreshDetail: () => Promise<void>;
|
|
543
660
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
544
|
-
input: (
|
|
545
|
-
stop: (
|
|
546
|
-
close: () => void;
|
|
547
|
-
start: (
|
|
661
|
+
input: (arg: boolean) => void;
|
|
662
|
+
stop: (arg: string) => void;
|
|
663
|
+
close: (arg?: void | undefined) => void;
|
|
664
|
+
start: (arg: string) => void;
|
|
548
665
|
}, string, Readonly<ExtractPropTypes< {
|
|
549
666
|
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
550
667
|
required: true;
|
|
@@ -588,25 +705,18 @@ default: boolean;
|
|
|
588
705
|
}>>, {
|
|
589
706
|
questionId: string;
|
|
590
707
|
defaultLimitTimeAnswer: boolean;
|
|
708
|
+
value: boolean;
|
|
591
709
|
canStart: boolean;
|
|
592
710
|
cantStartTips: string;
|
|
593
|
-
value: boolean;
|
|
594
711
|
launchStatus: string;
|
|
595
712
|
launchSubmittedCount: number;
|
|
596
713
|
}>;
|
|
597
714
|
|
|
598
|
-
declare
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
};
|
|
604
|
-
|
|
605
|
-
export declare const answerCardLaunchQuickDetailEmits: {
|
|
606
|
-
input: (_value: boolean) => boolean;
|
|
607
|
-
close: () => boolean;
|
|
608
|
-
stop: (_questionId: string) => boolean;
|
|
609
|
-
start: (_questionId: string) => boolean;
|
|
715
|
+
export declare const answerCardLaunchQuickDetailEmits: () => {
|
|
716
|
+
input: EmitFuncType<boolean>;
|
|
717
|
+
close: EmitFuncType<void>;
|
|
718
|
+
stop: EmitFuncType<string>;
|
|
719
|
+
start: EmitFuncType<string>;
|
|
610
720
|
};
|
|
611
721
|
|
|
612
722
|
export declare const answerCardLaunchQuickDetailProps: () => {
|
|
@@ -660,17 +770,16 @@ export declare const answerCardLaunchQuickDetailProps: () => {
|
|
|
660
770
|
};
|
|
661
771
|
};
|
|
662
772
|
|
|
663
|
-
declare
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
773
|
+
export declare const answerCardLaunchQuickEmits: () => {
|
|
774
|
+
input: EmitFuncType<boolean>;
|
|
775
|
+
sent: EmitFuncType<string>;
|
|
776
|
+
close: EmitFuncType<void>;
|
|
667
777
|
};
|
|
668
778
|
|
|
669
|
-
export declare
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
};
|
|
779
|
+
export declare interface AnswerCardLaunchQuickProps extends AnswerCardLaunchBaseProps {
|
|
780
|
+
value?: boolean;
|
|
781
|
+
checkDefaultBadwordEnabled?: boolean;
|
|
782
|
+
}
|
|
674
783
|
|
|
675
784
|
export declare const answerCardLaunchQuickProps: () => {
|
|
676
785
|
/** 答题卡 SDK 实例。 */
|
|
@@ -703,6 +812,47 @@ export declare const answerCardLaunchQuickProps: () => {
|
|
|
703
812
|
};
|
|
704
813
|
};
|
|
705
814
|
|
|
815
|
+
export declare type AnswerCardLaunchRefreshReason = 'import' | 'delete' | 'apply' | 'save' | 'socket' | 'manual';
|
|
816
|
+
|
|
817
|
+
export declare interface AnswerCardLaunchStartPayload {
|
|
818
|
+
questionId: string;
|
|
819
|
+
question: QuestionContent;
|
|
820
|
+
isAgain: boolean;
|
|
821
|
+
isQuickQuestion: boolean;
|
|
822
|
+
}
|
|
823
|
+
|
|
824
|
+
export declare interface AnswerCardLaunchStopPayload {
|
|
825
|
+
questionId: string;
|
|
826
|
+
question?: QuestionContent;
|
|
827
|
+
total: number;
|
|
828
|
+
optionCounts: number[];
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
declare interface AnswerCardQuestionOptionViewModel {
|
|
832
|
+
optionId: string;
|
|
833
|
+
content: string;
|
|
834
|
+
tips: string;
|
|
835
|
+
scoreValue: string;
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
declare interface AnswerCardQuestionViewModel {
|
|
839
|
+
questionId: string;
|
|
840
|
+
type: QuestionType;
|
|
841
|
+
stem: string;
|
|
842
|
+
options: AnswerCardQuestionOptionViewModel[];
|
|
843
|
+
answerOptionIds: string[];
|
|
844
|
+
isQuickQuestion: boolean;
|
|
845
|
+
status?: QuestionContent['status'];
|
|
846
|
+
}
|
|
847
|
+
|
|
848
|
+
export declare interface AnswerCardTemplateItemData {
|
|
849
|
+
templateId: string;
|
|
850
|
+
name: string;
|
|
851
|
+
status: 'error' | 'unused' | 'used';
|
|
852
|
+
isDefault: boolean;
|
|
853
|
+
questionCount?: number;
|
|
854
|
+
}
|
|
855
|
+
|
|
706
856
|
export declare const AnswerCardTemplateList: DefineComponent< {
|
|
707
857
|
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
708
858
|
required: true;
|
|
@@ -710,22 +860,17 @@ required: true;
|
|
|
710
860
|
}, {
|
|
711
861
|
refreshList: () => Promise<void>;
|
|
712
862
|
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
713
|
-
refresh: () => void;
|
|
714
|
-
applied: (
|
|
863
|
+
refresh: (arg?: void | undefined) => void;
|
|
864
|
+
applied: (arg: string) => void;
|
|
715
865
|
}, string, Readonly<ExtractPropTypes< {
|
|
716
866
|
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
717
867
|
required: true;
|
|
718
868
|
};
|
|
719
869
|
}>>, {}>;
|
|
720
870
|
|
|
721
|
-
declare
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
};
|
|
725
|
-
|
|
726
|
-
export declare const answerCardTemplateListEmits: {
|
|
727
|
-
applied: (_templateId: string) => boolean;
|
|
728
|
-
refresh: () => boolean;
|
|
871
|
+
export declare const answerCardTemplateListEmits: () => {
|
|
872
|
+
applied: EmitFuncType<string>;
|
|
873
|
+
refresh: EmitFuncType<void>;
|
|
729
874
|
};
|
|
730
875
|
|
|
731
876
|
export declare const answerCardTemplateListProps: () => {
|
|
@@ -788,6 +933,11 @@ isSentResult?: boolean | undefined;
|
|
|
788
933
|
} | undefined;
|
|
789
934
|
}[]>;
|
|
790
935
|
|
|
936
|
+
declare type EditorQuestionNode = Omit<QuestionNode, 'type' | 'options'> & {
|
|
937
|
+
type: QuestionNodeTypeValue;
|
|
938
|
+
options: QuestionDocumentOption[];
|
|
939
|
+
};
|
|
940
|
+
|
|
791
941
|
export declare function formatQuestionTitle(question: Pick<QuestionContent, 'name' | 'type'>): string;
|
|
792
942
|
|
|
793
943
|
declare function getCardById(questionId: string): LaunchCard | undefined;
|
|
@@ -796,6 +946,8 @@ export declare function getQuestionLaunchStatus(question: Pick<QuestionContent,
|
|
|
796
946
|
|
|
797
947
|
export declare function getQuestionTypeLabel(type: QuestionType): string;
|
|
798
948
|
|
|
949
|
+
declare function isQuestionTypeWithRightAnswer(type: QuestionType): boolean;
|
|
950
|
+
|
|
799
951
|
declare type LaunchCard = (typeof cardList.value)[number];
|
|
800
952
|
|
|
801
953
|
export declare interface LaunchCardItem {
|
|
@@ -827,6 +979,8 @@ export declare const LaunchQuestionType: {
|
|
|
827
979
|
readonly Radio: QuestionType;
|
|
828
980
|
/** 多选题 */
|
|
829
981
|
readonly CheckBox: QuestionType;
|
|
982
|
+
/** 评星题 */
|
|
983
|
+
readonly Star: QuestionType;
|
|
830
984
|
/** 评分题 */
|
|
831
985
|
readonly Score: QuestionType;
|
|
832
986
|
/** 问答题 */
|
|
@@ -847,6 +1001,271 @@ export declare enum LaunchStatus {
|
|
|
847
1001
|
Send = "send"
|
|
848
1002
|
}
|
|
849
1003
|
|
|
1004
|
+
declare function openTemplateManager(): void;
|
|
1005
|
+
|
|
1006
|
+
export declare const PcAnswerCardLaunchPanel: DefineComponent< {
|
|
1007
|
+
value: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1008
|
+
default: boolean;
|
|
1009
|
+
} & {
|
|
1010
|
+
default: boolean;
|
|
1011
|
+
};
|
|
1012
|
+
initialQuestion: VueTypeValidableDef<QuestionContent, ValidatorFunction<QuestionContent>>;
|
|
1013
|
+
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
1014
|
+
required: true;
|
|
1015
|
+
};
|
|
1016
|
+
canStart: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1017
|
+
default: boolean;
|
|
1018
|
+
} & {
|
|
1019
|
+
default: boolean;
|
|
1020
|
+
};
|
|
1021
|
+
cantStartTips: VueTypeValidableDef<string, ValidatorFunction<string>> & {
|
|
1022
|
+
default: string;
|
|
1023
|
+
} & {
|
|
1024
|
+
default: string;
|
|
1025
|
+
};
|
|
1026
|
+
defaultLimitTimeAnswer: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1027
|
+
default: boolean;
|
|
1028
|
+
} & {
|
|
1029
|
+
default: boolean;
|
|
1030
|
+
};
|
|
1031
|
+
defaultLimitDuration: VueTypeValidableDef<number, ValidatorFunction<number>> & {
|
|
1032
|
+
default: number;
|
|
1033
|
+
} & {
|
|
1034
|
+
default: number;
|
|
1035
|
+
};
|
|
1036
|
+
answerContentBlankEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1037
|
+
default: boolean;
|
|
1038
|
+
} & {
|
|
1039
|
+
default: boolean;
|
|
1040
|
+
};
|
|
1041
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1042
|
+
default: boolean;
|
|
1043
|
+
} & {
|
|
1044
|
+
default: boolean;
|
|
1045
|
+
};
|
|
1046
|
+
}, {
|
|
1047
|
+
openPanel: (options?: {
|
|
1048
|
+
questionId?: string;
|
|
1049
|
+
}) => void;
|
|
1050
|
+
closePanel: () => void;
|
|
1051
|
+
refreshQuestionList: (reason?: AnswerCardLaunchRefreshReason) => Promise<void>;
|
|
1052
|
+
refreshTemplateList: (_reason?: AnswerCardLaunchRefreshReason) => Promise<void>;
|
|
1053
|
+
openQuickAnswer: () => void;
|
|
1054
|
+
openTemplateManager: typeof openTemplateManager;
|
|
1055
|
+
selectQuestion: (questionId: string) => Promise<void>;
|
|
1056
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
1057
|
+
input: (arg: boolean) => void;
|
|
1058
|
+
stop: (arg: AnswerCardLaunchStopPayload) => void;
|
|
1059
|
+
close: (arg?: void | undefined) => void;
|
|
1060
|
+
start: (arg: AnswerCardLaunchStartPayload) => void;
|
|
1061
|
+
ended: (arg: AnswerCardLaunchEndPayload) => void;
|
|
1062
|
+
export: (arg: AnswerCardLaunchExportPayload) => void;
|
|
1063
|
+
}, string, Readonly<ExtractPropTypes< {
|
|
1064
|
+
value: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1065
|
+
default: boolean;
|
|
1066
|
+
} & {
|
|
1067
|
+
default: boolean;
|
|
1068
|
+
};
|
|
1069
|
+
initialQuestion: VueTypeValidableDef<QuestionContent, ValidatorFunction<QuestionContent>>;
|
|
1070
|
+
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
1071
|
+
required: true;
|
|
1072
|
+
};
|
|
1073
|
+
canStart: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1074
|
+
default: boolean;
|
|
1075
|
+
} & {
|
|
1076
|
+
default: boolean;
|
|
1077
|
+
};
|
|
1078
|
+
cantStartTips: VueTypeValidableDef<string, ValidatorFunction<string>> & {
|
|
1079
|
+
default: string;
|
|
1080
|
+
} & {
|
|
1081
|
+
default: string;
|
|
1082
|
+
};
|
|
1083
|
+
defaultLimitTimeAnswer: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1084
|
+
default: boolean;
|
|
1085
|
+
} & {
|
|
1086
|
+
default: boolean;
|
|
1087
|
+
};
|
|
1088
|
+
defaultLimitDuration: VueTypeValidableDef<number, ValidatorFunction<number>> & {
|
|
1089
|
+
default: number;
|
|
1090
|
+
} & {
|
|
1091
|
+
default: number;
|
|
1092
|
+
};
|
|
1093
|
+
answerContentBlankEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1094
|
+
default: boolean;
|
|
1095
|
+
} & {
|
|
1096
|
+
default: boolean;
|
|
1097
|
+
};
|
|
1098
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1099
|
+
default: boolean;
|
|
1100
|
+
} & {
|
|
1101
|
+
default: boolean;
|
|
1102
|
+
};
|
|
1103
|
+
}>>, {
|
|
1104
|
+
defaultLimitTimeAnswer: boolean;
|
|
1105
|
+
value: boolean;
|
|
1106
|
+
canStart: boolean;
|
|
1107
|
+
cantStartTips: string;
|
|
1108
|
+
defaultLimitDuration: number;
|
|
1109
|
+
answerContentBlankEnabled: boolean;
|
|
1110
|
+
checkDefaultBadwordEnabled: boolean;
|
|
1111
|
+
}>;
|
|
1112
|
+
|
|
1113
|
+
export declare const pcAnswerCardLaunchPanelEmits: () => {
|
|
1114
|
+
input: EmitFuncType<boolean>;
|
|
1115
|
+
close: EmitFuncType<void>;
|
|
1116
|
+
start: EmitFuncType<AnswerCardLaunchStartPayload>;
|
|
1117
|
+
stop: EmitFuncType<AnswerCardLaunchStopPayload>;
|
|
1118
|
+
ended: EmitFuncType<AnswerCardLaunchEndPayload>;
|
|
1119
|
+
export: EmitFuncType<AnswerCardLaunchExportPayload>;
|
|
1120
|
+
};
|
|
1121
|
+
|
|
1122
|
+
export declare const pcAnswerCardLaunchPanelProps: () => {
|
|
1123
|
+
/** 面板显隐(v-model)。 */
|
|
1124
|
+
value: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
1125
|
+
default: boolean;
|
|
1126
|
+
} & {
|
|
1127
|
+
default: boolean;
|
|
1128
|
+
};
|
|
1129
|
+
/** 打开时初始选中的题目。 */
|
|
1130
|
+
initialQuestion: VueTypeValidableDef_2<QuestionContent, ValidatorFunction<QuestionContent>>;
|
|
1131
|
+
answerCardTarget: VueTypeValidableDef_2<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
1132
|
+
required: true;
|
|
1133
|
+
};
|
|
1134
|
+
canStart: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
1135
|
+
default: boolean;
|
|
1136
|
+
} & {
|
|
1137
|
+
default: boolean;
|
|
1138
|
+
};
|
|
1139
|
+
cantStartTips: VueTypeValidableDef_2<string, ValidatorFunction<string>> & {
|
|
1140
|
+
default: string;
|
|
1141
|
+
} & {
|
|
1142
|
+
default: string;
|
|
1143
|
+
};
|
|
1144
|
+
defaultLimitTimeAnswer: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
1145
|
+
default: boolean;
|
|
1146
|
+
} & {
|
|
1147
|
+
default: boolean;
|
|
1148
|
+
};
|
|
1149
|
+
defaultLimitDuration: VueTypeValidableDef_2<number, ValidatorFunction<number>> & {
|
|
1150
|
+
default: number;
|
|
1151
|
+
} & {
|
|
1152
|
+
default: number;
|
|
1153
|
+
};
|
|
1154
|
+
answerContentBlankEnabled: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
1155
|
+
default: boolean;
|
|
1156
|
+
} & {
|
|
1157
|
+
default: boolean;
|
|
1158
|
+
};
|
|
1159
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef_2<boolean, ValidatorFunction<boolean>> & {
|
|
1160
|
+
default: boolean;
|
|
1161
|
+
} & {
|
|
1162
|
+
default: boolean;
|
|
1163
|
+
};
|
|
1164
|
+
};
|
|
1165
|
+
|
|
1166
|
+
export declare const PcAnswerCardQuickAnswer: DefineComponent< {
|
|
1167
|
+
value: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1168
|
+
default: boolean;
|
|
1169
|
+
} & {
|
|
1170
|
+
default: boolean;
|
|
1171
|
+
};
|
|
1172
|
+
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
1173
|
+
required: true;
|
|
1174
|
+
};
|
|
1175
|
+
canStart: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1176
|
+
default: boolean;
|
|
1177
|
+
} & {
|
|
1178
|
+
default: boolean;
|
|
1179
|
+
};
|
|
1180
|
+
cantStartTips: VueTypeValidableDef<string, ValidatorFunction<string>> & {
|
|
1181
|
+
default: string;
|
|
1182
|
+
} & {
|
|
1183
|
+
default: string;
|
|
1184
|
+
};
|
|
1185
|
+
defaultLimitTimeAnswer: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1186
|
+
default: boolean;
|
|
1187
|
+
} & {
|
|
1188
|
+
default: boolean;
|
|
1189
|
+
};
|
|
1190
|
+
defaultLimitDuration: VueTypeValidableDef<number, ValidatorFunction<number>> & {
|
|
1191
|
+
default: number;
|
|
1192
|
+
} & {
|
|
1193
|
+
default: number;
|
|
1194
|
+
};
|
|
1195
|
+
answerContentBlankEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1196
|
+
default: boolean;
|
|
1197
|
+
} & {
|
|
1198
|
+
default: boolean;
|
|
1199
|
+
};
|
|
1200
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1201
|
+
default: boolean;
|
|
1202
|
+
} & {
|
|
1203
|
+
default: boolean;
|
|
1204
|
+
};
|
|
1205
|
+
}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
1206
|
+
input: (arg: boolean) => void;
|
|
1207
|
+
stop: (arg: AnswerCardLaunchStopPayload) => void;
|
|
1208
|
+
close: (arg?: void | undefined) => void;
|
|
1209
|
+
start: (arg: AnswerCardLaunchStartPayload) => void;
|
|
1210
|
+
ended: (arg: AnswerCardLaunchEndPayload) => void;
|
|
1211
|
+
export: (arg: AnswerCardLaunchExportPayload) => void;
|
|
1212
|
+
}, string, Readonly<ExtractPropTypes< {
|
|
1213
|
+
value: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1214
|
+
default: boolean;
|
|
1215
|
+
} & {
|
|
1216
|
+
default: boolean;
|
|
1217
|
+
};
|
|
1218
|
+
answerCardTarget: VueTypeValidableDef<AnswerCard, ValidatorFunction<AnswerCard>> & {
|
|
1219
|
+
required: true;
|
|
1220
|
+
};
|
|
1221
|
+
canStart: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1222
|
+
default: boolean;
|
|
1223
|
+
} & {
|
|
1224
|
+
default: boolean;
|
|
1225
|
+
};
|
|
1226
|
+
cantStartTips: VueTypeValidableDef<string, ValidatorFunction<string>> & {
|
|
1227
|
+
default: string;
|
|
1228
|
+
} & {
|
|
1229
|
+
default: string;
|
|
1230
|
+
};
|
|
1231
|
+
defaultLimitTimeAnswer: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1232
|
+
default: boolean;
|
|
1233
|
+
} & {
|
|
1234
|
+
default: boolean;
|
|
1235
|
+
};
|
|
1236
|
+
defaultLimitDuration: VueTypeValidableDef<number, ValidatorFunction<number>> & {
|
|
1237
|
+
default: number;
|
|
1238
|
+
} & {
|
|
1239
|
+
default: number;
|
|
1240
|
+
};
|
|
1241
|
+
answerContentBlankEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1242
|
+
default: boolean;
|
|
1243
|
+
} & {
|
|
1244
|
+
default: boolean;
|
|
1245
|
+
};
|
|
1246
|
+
checkDefaultBadwordEnabled: VueTypeValidableDef<boolean, ValidatorFunction<boolean>> & {
|
|
1247
|
+
default: boolean;
|
|
1248
|
+
} & {
|
|
1249
|
+
default: boolean;
|
|
1250
|
+
};
|
|
1251
|
+
}>>, {
|
|
1252
|
+
defaultLimitTimeAnswer: boolean;
|
|
1253
|
+
value: boolean;
|
|
1254
|
+
canStart: boolean;
|
|
1255
|
+
cantStartTips: string;
|
|
1256
|
+
defaultLimitDuration: number;
|
|
1257
|
+
answerContentBlankEnabled: boolean;
|
|
1258
|
+
checkDefaultBadwordEnabled: boolean;
|
|
1259
|
+
}>;
|
|
1260
|
+
|
|
1261
|
+
export declare type PcAnswerCardViewState = 'idle' | 'preview' | 'creating' | 'editing' | 'saving' | 'starting' | 'running' | 'stopping' | 'ended' | 'managing-template' | 'importing' | 'exporting';
|
|
1262
|
+
|
|
1263
|
+
export { PlatformQuestionnaireItemData }
|
|
1264
|
+
|
|
1265
|
+
export { PlatformQuestionnairePageContentData }
|
|
1266
|
+
|
|
1267
|
+
export { PlatformQuestionnairePreviewQuestionData }
|
|
1268
|
+
|
|
850
1269
|
export declare enum QuickDetailStatus {
|
|
851
1270
|
Ongoing = "ongoing",
|
|
852
1271
|
Ended = "ended"
|
|
@@ -882,11 +1301,13 @@ export declare function useAnswerCardLaunchBase(options: {
|
|
|
882
1301
|
cantStartTips: string;
|
|
883
1302
|
defaultLimitTimeAnswer: boolean;
|
|
884
1303
|
defaultLimitDuration: number;
|
|
1304
|
+
answerContentBlankEnabled: boolean;
|
|
1305
|
+
checkDefaultBadwordEnabled: boolean;
|
|
885
1306
|
};
|
|
886
1307
|
|
|
887
1308
|
export declare const useAnswerCardLaunchDetail: (options: {
|
|
888
1309
|
props: VueProps<typeof answerCardLaunchDetailProps>;
|
|
889
|
-
emit:
|
|
1310
|
+
emit: VueEmit<typeof answerCardLaunchDetailEmits>;
|
|
890
1311
|
}) => {
|
|
891
1312
|
visible: WritableComputedRef<boolean>;
|
|
892
1313
|
loading: Ref<boolean>;
|
|
@@ -915,7 +1336,7 @@ export declare const useAnswerCardLaunchDetail: (options: {
|
|
|
915
1336
|
|
|
916
1337
|
export declare const useAnswerCardLaunchList: (options: {
|
|
917
1338
|
props: VueProps<typeof answerCardLaunchListProps>;
|
|
918
|
-
emit:
|
|
1339
|
+
emit: VueEmit<typeof answerCardLaunchListEmits>;
|
|
919
1340
|
}) => {
|
|
920
1341
|
loading: Ref<boolean>;
|
|
921
1342
|
actionQuestionId: Ref<string>;
|
|
@@ -965,7 +1386,7 @@ export declare const useAnswerCardLaunchList: (options: {
|
|
|
965
1386
|
|
|
966
1387
|
export declare const useAnswerCardLaunchPanel: (options: {
|
|
967
1388
|
props: VueProps<typeof answerCardLaunchPanelProps>;
|
|
968
|
-
emit:
|
|
1389
|
+
emit: VueEmit<typeof answerCardLaunchPanelEmits>;
|
|
969
1390
|
}) => {
|
|
970
1391
|
visible: WritableComputedRef<boolean>;
|
|
971
1392
|
activeTab: Ref<LaunchPanelTab>;
|
|
@@ -986,7 +1407,7 @@ export declare const useAnswerCardLaunchPanel: (options: {
|
|
|
986
1407
|
|
|
987
1408
|
export declare const useAnswerCardLaunchQuick: (options: {
|
|
988
1409
|
props: VueProps<typeof answerCardLaunchQuickProps>;
|
|
989
|
-
emit:
|
|
1410
|
+
emit: VueEmit<typeof answerCardLaunchQuickEmits>;
|
|
990
1411
|
}) => {
|
|
991
1412
|
visible: WritableComputedRef<boolean>;
|
|
992
1413
|
sending: Ref<boolean>;
|
|
@@ -1001,7 +1422,7 @@ export declare const useAnswerCardLaunchQuick: (options: {
|
|
|
1001
1422
|
|
|
1002
1423
|
export declare const useAnswerCardLaunchQuickDetail: (options: {
|
|
1003
1424
|
props: VueProps<typeof answerCardLaunchQuickDetailProps>;
|
|
1004
|
-
emit:
|
|
1425
|
+
emit: VueEmit<typeof answerCardLaunchQuickDetailEmits>;
|
|
1005
1426
|
}) => {
|
|
1006
1427
|
visible: WritableComputedRef<boolean>;
|
|
1007
1428
|
loading: Ref<boolean>;
|
|
@@ -1019,7 +1440,7 @@ export declare const useAnswerCardLaunchQuickDetail: (options: {
|
|
|
1019
1440
|
|
|
1020
1441
|
export declare const useAnswerCardTemplateList: (options: {
|
|
1021
1442
|
props: VueProps<typeof answerCardTemplateListProps>;
|
|
1022
|
-
emit:
|
|
1443
|
+
emit: VueEmit<typeof answerCardTemplateListEmits>;
|
|
1023
1444
|
}) => {
|
|
1024
1445
|
loading: Ref<boolean>;
|
|
1025
1446
|
applyingTemplateId: Ref<string>;
|
|
@@ -1038,4 +1459,273 @@ export declare const useAnswerCardTemplateList: (options: {
|
|
|
1038
1459
|
applyTemplate: (template: TemplateItemData) => Promise<void>;
|
|
1039
1460
|
};
|
|
1040
1461
|
|
|
1462
|
+
export declare const usePcAnswerCardLaunchPanel: (options: {
|
|
1463
|
+
props: VueProps<typeof pcAnswerCardLaunchPanelProps>;
|
|
1464
|
+
emit: VueEmit<typeof pcAnswerCardLaunchPanelEmits>;
|
|
1465
|
+
}) => {
|
|
1466
|
+
visible: WritableComputedRef<boolean>;
|
|
1467
|
+
viewState: Ref<PcAnswerCardViewState>;
|
|
1468
|
+
loadingQuestions: Ref<boolean>;
|
|
1469
|
+
loadingTemplates: Ref<boolean>;
|
|
1470
|
+
actionLoading: Ref<boolean>;
|
|
1471
|
+
questionList: Ref< {
|
|
1472
|
+
question: {
|
|
1473
|
+
status?: QuestionStatus | undefined;
|
|
1474
|
+
options: string[];
|
|
1475
|
+
tips?: string[] | undefined;
|
|
1476
|
+
questionId: string;
|
|
1477
|
+
name: string;
|
|
1478
|
+
type: QuestionType;
|
|
1479
|
+
isQuickQuestion: boolean;
|
|
1480
|
+
answer: string;
|
|
1481
|
+
};
|
|
1482
|
+
status: LaunchCardStatus;
|
|
1483
|
+
submittedCount: number;
|
|
1484
|
+
isSentResult: boolean;
|
|
1485
|
+
statistics?: {
|
|
1486
|
+
total: number;
|
|
1487
|
+
correctCount: number;
|
|
1488
|
+
faultUser: {
|
|
1489
|
+
avatar: string;
|
|
1490
|
+
nick: string;
|
|
1491
|
+
timestamp: number;
|
|
1492
|
+
userid: string;
|
|
1493
|
+
}[];
|
|
1494
|
+
rightUser: {
|
|
1495
|
+
avatar: string;
|
|
1496
|
+
nick: string;
|
|
1497
|
+
timestamp: number;
|
|
1498
|
+
userid: string;
|
|
1499
|
+
}[];
|
|
1500
|
+
options: {
|
|
1501
|
+
count: number;
|
|
1502
|
+
percent?: string | undefined;
|
|
1503
|
+
}[];
|
|
1504
|
+
isSentResult?: boolean | undefined;
|
|
1505
|
+
} | undefined;
|
|
1506
|
+
}[]>;
|
|
1507
|
+
templateListScrollRef: Ref<HTMLElement | undefined>;
|
|
1508
|
+
filteredQuestionList: ComputedRef< {
|
|
1509
|
+
question: {
|
|
1510
|
+
status?: QuestionStatus | undefined;
|
|
1511
|
+
options: string[];
|
|
1512
|
+
tips?: string[] | undefined;
|
|
1513
|
+
questionId: string;
|
|
1514
|
+
name: string;
|
|
1515
|
+
type: QuestionType;
|
|
1516
|
+
isQuickQuestion: boolean;
|
|
1517
|
+
answer: string;
|
|
1518
|
+
};
|
|
1519
|
+
status: LaunchCardStatus;
|
|
1520
|
+
submittedCount: number;
|
|
1521
|
+
isSentResult: boolean;
|
|
1522
|
+
statistics?: {
|
|
1523
|
+
total: number;
|
|
1524
|
+
correctCount: number;
|
|
1525
|
+
faultUser: {
|
|
1526
|
+
avatar: string;
|
|
1527
|
+
nick: string;
|
|
1528
|
+
timestamp: number;
|
|
1529
|
+
userid: string;
|
|
1530
|
+
}[];
|
|
1531
|
+
rightUser: {
|
|
1532
|
+
avatar: string;
|
|
1533
|
+
nick: string;
|
|
1534
|
+
timestamp: number;
|
|
1535
|
+
userid: string;
|
|
1536
|
+
}[];
|
|
1537
|
+
options: {
|
|
1538
|
+
count: number;
|
|
1539
|
+
percent?: string | undefined;
|
|
1540
|
+
}[];
|
|
1541
|
+
isSentResult?: boolean | undefined;
|
|
1542
|
+
} | undefined;
|
|
1543
|
+
}[]>;
|
|
1544
|
+
templateList: Ref<AnswerCardTemplateItemData[]>;
|
|
1545
|
+
currentTemplateId: Ref<string>;
|
|
1546
|
+
selectedQuestionId: Ref<string>;
|
|
1547
|
+
selectedQuestion: ComputedRef< {
|
|
1548
|
+
status?: QuestionStatus | undefined;
|
|
1549
|
+
options: string[];
|
|
1550
|
+
tips?: string[] | undefined;
|
|
1551
|
+
questionId: string;
|
|
1552
|
+
name: string;
|
|
1553
|
+
type: QuestionType;
|
|
1554
|
+
isQuickQuestion: boolean;
|
|
1555
|
+
answer: string;
|
|
1556
|
+
} | undefined>;
|
|
1557
|
+
selectedCard: ComputedRef< {
|
|
1558
|
+
question: {
|
|
1559
|
+
status?: QuestionStatus | undefined;
|
|
1560
|
+
options: string[];
|
|
1561
|
+
tips?: string[] | undefined;
|
|
1562
|
+
questionId: string;
|
|
1563
|
+
name: string;
|
|
1564
|
+
type: QuestionType;
|
|
1565
|
+
isQuickQuestion: boolean;
|
|
1566
|
+
answer: string;
|
|
1567
|
+
};
|
|
1568
|
+
status: LaunchCardStatus;
|
|
1569
|
+
submittedCount: number;
|
|
1570
|
+
isSentResult: boolean;
|
|
1571
|
+
statistics?: {
|
|
1572
|
+
total: number;
|
|
1573
|
+
correctCount: number;
|
|
1574
|
+
faultUser: {
|
|
1575
|
+
avatar: string;
|
|
1576
|
+
nick: string;
|
|
1577
|
+
timestamp: number;
|
|
1578
|
+
userid: string;
|
|
1579
|
+
}[];
|
|
1580
|
+
rightUser: {
|
|
1581
|
+
avatar: string;
|
|
1582
|
+
nick: string;
|
|
1583
|
+
timestamp: number;
|
|
1584
|
+
userid: string;
|
|
1585
|
+
}[];
|
|
1586
|
+
options: {
|
|
1587
|
+
count: number;
|
|
1588
|
+
percent?: string | undefined;
|
|
1589
|
+
}[];
|
|
1590
|
+
isSentResult?: boolean | undefined;
|
|
1591
|
+
} | undefined;
|
|
1592
|
+
} | undefined>;
|
|
1593
|
+
searchKeyword: Ref<string>;
|
|
1594
|
+
editorDraft: Ref<AnswerCardQuestionViewModel | undefined>;
|
|
1595
|
+
editorValidationMessage: ComputedRef<string>;
|
|
1596
|
+
editorQuestionFieldTips: ComputedRef< {
|
|
1597
|
+
[x: string]: {
|
|
1598
|
+
title: string;
|
|
1599
|
+
};
|
|
1600
|
+
} | {
|
|
1601
|
+
[x: string]: {
|
|
1602
|
+
options: {
|
|
1603
|
+
[x: string]: string;
|
|
1604
|
+
};
|
|
1605
|
+
};
|
|
1606
|
+
}>;
|
|
1607
|
+
editorQuestionNodes: WritableComputedRef<EditorQuestionNode[]>;
|
|
1608
|
+
questionValidationVersion: Ref<number>;
|
|
1609
|
+
selectedQuestionNodePreview: ComputedRef<QuestionNode_2 | undefined>;
|
|
1610
|
+
templateManagerVisible: Ref<boolean>;
|
|
1611
|
+
platformQuestionnaireVisible: Ref<boolean>;
|
|
1612
|
+
loadingPlatformQuestionnaires: Ref<boolean>;
|
|
1613
|
+
platformQuestionnaireKeyword: Ref<string>;
|
|
1614
|
+
platformQuestionnairePageContent: Ref< {
|
|
1615
|
+
pageNumber: number;
|
|
1616
|
+
pageSize: number;
|
|
1617
|
+
totalItems: number;
|
|
1618
|
+
totalPages: number;
|
|
1619
|
+
contents: {
|
|
1620
|
+
questionnaireId: string;
|
|
1621
|
+
userId: string;
|
|
1622
|
+
name: string;
|
|
1623
|
+
questionCount: number;
|
|
1624
|
+
createdAt?: string | undefined;
|
|
1625
|
+
creator?: string | undefined;
|
|
1626
|
+
questions: {
|
|
1627
|
+
questionId?: string | undefined;
|
|
1628
|
+
title: string;
|
|
1629
|
+
type?: string | undefined;
|
|
1630
|
+
typeName?: string | undefined;
|
|
1631
|
+
optionCount: number;
|
|
1632
|
+
}[];
|
|
1633
|
+
}[];
|
|
1634
|
+
}>;
|
|
1635
|
+
quickVisible: Ref<boolean>;
|
|
1636
|
+
downloadRecordsVisible: Ref<boolean>;
|
|
1637
|
+
limitTimeEnabled: Ref<boolean>;
|
|
1638
|
+
limitDuration: Ref<number>;
|
|
1639
|
+
hasOngoing: ComputedRef<boolean>;
|
|
1640
|
+
currentStatistics: ComputedRef< {
|
|
1641
|
+
total: number;
|
|
1642
|
+
correctCount: number;
|
|
1643
|
+
faultUser: {
|
|
1644
|
+
avatar: string;
|
|
1645
|
+
nick: string;
|
|
1646
|
+
timestamp: number;
|
|
1647
|
+
userid: string;
|
|
1648
|
+
}[];
|
|
1649
|
+
rightUser: {
|
|
1650
|
+
avatar: string;
|
|
1651
|
+
nick: string;
|
|
1652
|
+
timestamp: number;
|
|
1653
|
+
userid: string;
|
|
1654
|
+
}[];
|
|
1655
|
+
options: {
|
|
1656
|
+
count: number;
|
|
1657
|
+
percent?: string | undefined;
|
|
1658
|
+
}[];
|
|
1659
|
+
isSentResult?: boolean | undefined;
|
|
1660
|
+
} | undefined>;
|
|
1661
|
+
currentCorrectCount: ComputedRef<number>;
|
|
1662
|
+
timedOngoing: ComputedRef<boolean>;
|
|
1663
|
+
remainingSeconds: Ref<number>;
|
|
1664
|
+
averageScoreText: ComputedRef<string>;
|
|
1665
|
+
canEditSelectedQuestion: ComputedRef<boolean>;
|
|
1666
|
+
canAddOption: ComputedRef<boolean>;
|
|
1667
|
+
isQuestionTypeWithRightAnswer: typeof isQuestionTypeWithRightAnswer;
|
|
1668
|
+
formatQuestionTitle: typeof formatQuestionTitle;
|
|
1669
|
+
getQuestionTypeLabel: typeof getQuestionTypeLabel;
|
|
1670
|
+
openPanel: (options?: {
|
|
1671
|
+
questionId?: string;
|
|
1672
|
+
}) => void;
|
|
1673
|
+
closePanel: () => void;
|
|
1674
|
+
openQuickAnswer: () => void;
|
|
1675
|
+
closeQuickAnswer: () => void;
|
|
1676
|
+
openDownloadRecords: () => void;
|
|
1677
|
+
closeDownloadRecords: () => void;
|
|
1678
|
+
openTemplateManager: () => void;
|
|
1679
|
+
closeTemplateManager: () => void;
|
|
1680
|
+
openPlatformQuestionnairePopup: () => void;
|
|
1681
|
+
closePlatformQuestionnairePopup: () => void;
|
|
1682
|
+
changePlatformQuestionnairePage: (pageContent: PlatformQuestionnairePageContentData_2) => void;
|
|
1683
|
+
addPlatformQuestionnaire: (item: PlatformQuestionnaireItemData_2) => Promise<void>;
|
|
1684
|
+
refreshQuestionList: (reason?: AnswerCardLaunchRefreshReason) => Promise<void>;
|
|
1685
|
+
refreshTemplateList: (_reason?: AnswerCardLaunchRefreshReason) => Promise<void>;
|
|
1686
|
+
refreshPlatformQuestionnaireList: (pageContent?: {
|
|
1687
|
+
pageNumber: number;
|
|
1688
|
+
pageSize: number;
|
|
1689
|
+
totalItems: number;
|
|
1690
|
+
totalPages: number;
|
|
1691
|
+
contents: {
|
|
1692
|
+
questionnaireId: string;
|
|
1693
|
+
userId: string;
|
|
1694
|
+
name: string;
|
|
1695
|
+
questionCount: number;
|
|
1696
|
+
createdAt?: string | undefined;
|
|
1697
|
+
creator?: string | undefined;
|
|
1698
|
+
questions: {
|
|
1699
|
+
questionId?: string | undefined;
|
|
1700
|
+
title: string;
|
|
1701
|
+
type?: string | undefined;
|
|
1702
|
+
typeName?: string | undefined;
|
|
1703
|
+
optionCount: number;
|
|
1704
|
+
}[];
|
|
1705
|
+
}[];
|
|
1706
|
+
}) => Promise<void>;
|
|
1707
|
+
selectQuestion: (questionId: string) => Promise<void>;
|
|
1708
|
+
createQuestion: (type?: QuestionType) => Promise<void>;
|
|
1709
|
+
editSelectedQuestion: () => void;
|
|
1710
|
+
cancelEdit: () => void;
|
|
1711
|
+
updateDraftType: (type: QuestionType) => void;
|
|
1712
|
+
updateDraftStem: (value: string) => void;
|
|
1713
|
+
updateDraftOption: (optionId: string, patch: Partial<AnswerCardQuestionViewModel["options"][number]>) => void;
|
|
1714
|
+
addDraftOption: (afterIndex?: number) => void;
|
|
1715
|
+
removeDraftOption: (optionId: string) => void;
|
|
1716
|
+
toggleDraftAnswer: (optionId: string) => void;
|
|
1717
|
+
saveDraft: () => Promise<void>;
|
|
1718
|
+
deleteSelectedQuestion: () => Promise<void>;
|
|
1719
|
+
startSelectedQuestion: (isAgain?: boolean) => Promise<void>;
|
|
1720
|
+
stopSelectedQuestion: () => Promise<void>;
|
|
1721
|
+
sendSelectedResult: () => Promise<void>;
|
|
1722
|
+
exportSelectedResult: () => void;
|
|
1723
|
+
applyTemplate: (template: AnswerCardTemplateItemData) => Promise<void>;
|
|
1724
|
+
deleteTemplate: (template: AnswerCardTemplateItemData) => Promise<void>;
|
|
1725
|
+
downloadTemplate: (templateId?: string) => Promise<void>;
|
|
1726
|
+
uploadTemplate: (file: File, templateId?: string) => Promise<boolean>;
|
|
1727
|
+
getTemplateStatusText: (template: AnswerCardTemplateItemData) => string;
|
|
1728
|
+
getQuestionNodePreview: () => EditorQuestionNode | undefined;
|
|
1729
|
+
};
|
|
1730
|
+
|
|
1041
1731
|
export { }
|