@a4anthony/proctorkit-vue 0.1.4 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/README.md +176 -8
  2. package/dist/ProctoredAssessment.vue.d.ts +70 -2
  3. package/dist/ProctoredAssessment.vue.d.ts.map +1 -1
  4. package/dist/ProctoringDeviceSettings.vue.d.ts +27 -1
  5. package/dist/ProctoringDeviceSettings.vue.d.ts.map +1 -1
  6. package/dist/ProctoringSystemCheck.vue.d.ts +39 -11
  7. package/dist/ProctoringSystemCheck.vue.d.ts.map +1 -1
  8. package/dist/browser-face-detector.d.ts +59 -0
  9. package/dist/browser-face-detector.d.ts.map +1 -0
  10. package/dist/check-cards/system/DisplayPermissionDialog.vue.d.ts +24 -0
  11. package/dist/check-cards/system/DisplayPermissionDialog.vue.d.ts.map +1 -0
  12. package/dist/check-cards/system/DisplayRecovery.vue.d.ts +25 -0
  13. package/dist/check-cards/system/DisplayRecovery.vue.d.ts.map +1 -0
  14. package/dist/check-cards/system/SystemCheckCard.vue.d.ts +13 -1
  15. package/dist/check-cards/system/SystemCheckCard.vue.d.ts.map +1 -1
  16. package/dist/check-cards/system/display-progress-story.d.ts +468 -0
  17. package/dist/check-cards/system/display-progress-story.d.ts.map +1 -0
  18. package/dist/check-cards/system/display-recovery-story.d.ts +290 -0
  19. package/dist/check-cards/system/display-recovery-story.d.ts.map +1 -0
  20. package/dist/demo-runner/QuestionCard.vue.d.ts.map +1 -1
  21. package/dist/detect-face.d.ts +22 -95
  22. package/dist/detect-face.d.ts.map +1 -1
  23. package/dist/i18n/merge.d.ts.map +1 -1
  24. package/dist/index.d.ts +19 -8
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +9637 -2485
  27. package/dist/media-controls/AudioPlayer.vue.d.ts +43 -20
  28. package/dist/media-controls/AudioPlayer.vue.d.ts.map +1 -1
  29. package/dist/media-controls/AudioRecorder.vue.d.ts +171 -11
  30. package/dist/media-controls/AudioRecorder.vue.d.ts.map +1 -1
  31. package/dist/media-controls/RecorderUploadIndicator.vue.d.ts +17 -0
  32. package/dist/media-controls/RecorderUploadIndicator.vue.d.ts.map +1 -0
  33. package/dist/media-controls/VideoPlayer.vue.d.ts +36 -13
  34. package/dist/media-controls/VideoPlayer.vue.d.ts.map +1 -1
  35. package/dist/media-controls/VideoRecorder.vue.d.ts +90 -10
  36. package/dist/media-controls/VideoRecorder.vue.d.ts.map +1 -1
  37. package/dist/media-controls/audio-recorder-messages.d.ts +15 -0
  38. package/dist/media-controls/audio-recorder-messages.d.ts.map +1 -0
  39. package/dist/media-controls/local-media-playback-client.d.ts +2 -6
  40. package/dist/media-controls/local-media-playback-client.d.ts.map +1 -1
  41. package/dist/media-controls/local-media-recording-client.d.ts.map +1 -1
  42. package/dist/media-controls/media-recovery-story.d.ts +9 -0
  43. package/dist/media-controls/media-recovery-story.d.ts.map +1 -0
  44. package/dist/media-controls/storybook-mock-client.d.ts +2 -0
  45. package/dist/media-controls/storybook-mock-client.d.ts.map +1 -1
  46. package/dist/media-controls/types.d.ts +63 -7
  47. package/dist/media-controls/types.d.ts.map +1 -1
  48. package/dist/media-controls/ui-config.d.ts +2 -2
  49. package/dist/media-controls/ui-config.d.ts.map +1 -1
  50. package/dist/media-controls/useLiveInputCheck.d.ts +18 -0
  51. package/dist/media-controls/useLiveInputCheck.d.ts.map +1 -0
  52. package/dist/media-controls/useMediaClipRecorder.d.ts +90 -12
  53. package/dist/media-controls/useMediaClipRecorder.d.ts.map +1 -1
  54. package/dist/media-controls/useMediaFilePlayback.d.ts +8 -1
  55. package/dist/media-controls/useMediaFilePlayback.d.ts.map +1 -1
  56. package/dist/media-controls/useMinimumVisibleUpload.d.ts +18 -0
  57. package/dist/media-controls/useMinimumVisibleUpload.d.ts.map +1 -0
  58. package/dist/proctored-assessment/PreparationGate.vue.d.ts +16 -0
  59. package/dist/proctored-assessment/PreparationGate.vue.d.ts.map +1 -0
  60. package/dist/proctored-assessment/preparation-feedback.d.ts +7 -0
  61. package/dist/proctored-assessment/preparation-feedback.d.ts.map +1 -0
  62. package/dist/proctored-assessment/replay-failure-queue.d.ts +18 -0
  63. package/dist/proctored-assessment/replay-failure-queue.d.ts.map +1 -0
  64. package/dist/proctored-assessment/replay-failure-queue.test.d.ts +2 -0
  65. package/dist/proctored-assessment/replay-failure-queue.test.d.ts.map +1 -0
  66. package/dist/proctored-assessment/request-deadline.d.ts +1 -0
  67. package/dist/proctored-assessment/request-deadline.d.ts.map +1 -1
  68. package/dist/proctored-assessment/resume-microphone-route.d.ts +13 -0
  69. package/dist/proctored-assessment/resume-microphone-route.d.ts.map +1 -0
  70. package/dist/proctored-assessment/resume-microphone-route.test.d.ts +2 -0
  71. package/dist/proctored-assessment/resume-microphone-route.test.d.ts.map +1 -0
  72. package/dist/proctored-assessment/resume-probe.d.ts +13 -0
  73. package/dist/proctored-assessment/resume-probe.d.ts.map +1 -1
  74. package/dist/proctored-assessment/resume-speaker-confirmation.d.ts +27 -0
  75. package/dist/proctored-assessment/resume-speaker-confirmation.d.ts.map +1 -0
  76. package/dist/proctored-assessment/resume-speaker-route.d.ts +32 -0
  77. package/dist/proctored-assessment/resume-speaker-route.d.ts.map +1 -0
  78. package/dist/proctored-assessment/session-start.d.ts +2 -2
  79. package/dist/proctored-assessment/types.d.ts +14 -4
  80. package/dist/proctored-assessment/types.d.ts.map +1 -1
  81. package/dist/proctored-assessment/usePreparationRetryTiming.d.ts +13 -0
  82. package/dist/proctored-assessment/usePreparationRetryTiming.d.ts.map +1 -0
  83. package/dist/proctored-assessment/useResumeDisplayGuard.d.ts +20 -0
  84. package/dist/proctored-assessment/useResumeDisplayGuard.d.ts.map +1 -0
  85. package/dist/proctoring-client.d.ts +6 -2
  86. package/dist/proctoring-client.d.ts.map +1 -1
  87. package/dist/proctoring-system-check-contract.d.ts +2 -0
  88. package/dist/proctoring-system-check-contract.d.ts.map +1 -1
  89. package/dist/runtime-devices/DevicePickerItem.vue.d.ts +58 -0
  90. package/dist/runtime-devices/DevicePickerItem.vue.d.ts.map +1 -0
  91. package/dist/runtime-devices/PickerMessage.vue.d.ts +17 -0
  92. package/dist/runtime-devices/PickerMessage.vue.d.ts.map +1 -0
  93. package/dist/runtime-devices/ProctoringDevicePicker.vue.d.ts +89 -0
  94. package/dist/runtime-devices/ProctoringDevicePicker.vue.d.ts.map +1 -0
  95. package/dist/runtime-devices/device-picker-messages.d.ts +42 -0
  96. package/dist/runtime-devices/device-picker-messages.d.ts.map +1 -0
  97. package/dist/runtime-devices/microphone-attention.d.ts +48 -0
  98. package/dist/runtime-devices/microphone-attention.d.ts.map +1 -0
  99. package/dist/runtime-devices/microphone-check-messages.d.ts +13 -0
  100. package/dist/runtime-devices/microphone-check-messages.d.ts.map +1 -0
  101. package/dist/runtime-devices/runtime-device-activity.d.ts +16 -0
  102. package/dist/runtime-devices/runtime-device-activity.d.ts.map +1 -0
  103. package/dist/runtime-devices/runtime-device-selection.d.ts +11 -0
  104. package/dist/runtime-devices/runtime-device-selection.d.ts.map +1 -0
  105. package/dist/runtime-devices/useRuntimeDevice.d.ts +72 -0
  106. package/dist/runtime-devices/useRuntimeDevice.d.ts.map +1 -0
  107. package/dist/runtime-devices/useTrackLoss.d.ts +15 -0
  108. package/dist/runtime-devices/useTrackLoss.d.ts.map +1 -0
  109. package/dist/style.css +367 -14
  110. package/dist/text-answer/ProctoredTextarea.vue.d.ts +8 -1
  111. package/dist/text-answer/ProctoredTextarea.vue.d.ts.map +1 -1
  112. package/dist/text-answer/useProctoredText.d.ts +5 -2
  113. package/dist/text-answer/useProctoredText.d.ts.map +1 -1
  114. package/dist/ui/ProctoringAlert.vue.d.ts.map +1 -1
  115. package/dist/ui/ProctoringFileUpload.vue.d.ts +3 -3
  116. package/dist/ui/ProctoringFileUpload.vue.d.ts.map +1 -1
  117. package/dist/ui/ProctoringInput.vue.d.ts +3 -3
  118. package/dist/ui/ProctoringInput.vue.d.ts.map +1 -1
  119. package/dist/ui/ProctoringSelect.vue.d.ts +2 -2
  120. package/dist/ui/ProctoringSelect.vue.d.ts.map +1 -1
  121. package/dist/usePreflightCheck.d.ts +4 -3
  122. package/dist/usePreflightCheck.d.ts.map +1 -1
  123. package/dist/vision_bundle-8xEDyfqS.js +4160 -0
  124. package/dist/wizard/BrowserDisplayPermissionGuide.vue.d.ts +11 -0
  125. package/dist/wizard/BrowserDisplayPermissionGuide.vue.d.ts.map +1 -0
  126. package/dist/wizard/BrowserPermissionLocation.vue.d.ts +9 -0
  127. package/dist/wizard/BrowserPermissionLocation.vue.d.ts.map +1 -0
  128. package/dist/wizard/CameraStep.vue.d.ts +10 -1
  129. package/dist/wizard/CameraStep.vue.d.ts.map +1 -1
  130. package/dist/wizard/CandidateHeadshotField.vue.d.ts.map +1 -1
  131. package/dist/wizard/CandidateIntakeStep.vue.d.ts +3 -0
  132. package/dist/wizard/CandidateIntakeStep.vue.d.ts.map +1 -1
  133. package/dist/wizard/ChecklistShell.vue.d.ts +3 -0
  134. package/dist/wizard/ChecklistShell.vue.d.ts.map +1 -1
  135. package/dist/wizard/FinalStep.vue.d.ts +6 -2
  136. package/dist/wizard/FinalStep.vue.d.ts.map +1 -1
  137. package/dist/wizard/MediaDeviceSelect.vue.d.ts +11 -1
  138. package/dist/wizard/MediaDeviceSelect.vue.d.ts.map +1 -1
  139. package/dist/wizard/MicStep.vue.d.ts +24 -3
  140. package/dist/wizard/MicStep.vue.d.ts.map +1 -1
  141. package/dist/wizard/PermissionDeniedPanel.vue.d.ts +9 -4
  142. package/dist/wizard/PermissionDeniedPanel.vue.d.ts.map +1 -1
  143. package/dist/wizard/ResumeCheck.vue.d.ts +16 -2
  144. package/dist/wizard/ResumeCheck.vue.d.ts.map +1 -1
  145. package/dist/wizard/SpeakerStep.vue.d.ts +17 -4
  146. package/dist/wizard/SpeakerStep.vue.d.ts.map +1 -1
  147. package/dist/wizard/SystemStep.vue.d.ts +9 -0
  148. package/dist/wizard/SystemStep.vue.d.ts.map +1 -1
  149. package/dist/wizard/WizardShell.vue.d.ts +3 -3
  150. package/dist/wizard/WizardShell.vue.d.ts.map +1 -1
  151. package/dist/wizard/candidate-intake-draft.d.ts +9 -0
  152. package/dist/wizard/candidate-intake-draft.d.ts.map +1 -0
  153. package/dist/wizard/display-diagnostics.d.ts +21 -0
  154. package/dist/wizard/display-diagnostics.d.ts.map +1 -0
  155. package/dist/wizard/event-telemetry.d.ts +24 -0
  156. package/dist/wizard/event-telemetry.d.ts.map +1 -0
  157. package/dist/wizard/media-device-list.d.ts +8 -1
  158. package/dist/wizard/media-device-list.d.ts.map +1 -1
  159. package/dist/wizard/microphone-preflight-trace.d.ts +10 -0
  160. package/dist/wizard/microphone-preflight-trace.d.ts.map +1 -0
  161. package/dist/wizard/microphone-preflight-trace.test.d.ts +2 -0
  162. package/dist/wizard/microphone-preflight-trace.test.d.ts.map +1 -0
  163. package/dist/wizard/resume-check-stories/shared.d.ts +35 -11
  164. package/dist/wizard/resume-check-stories/shared.d.ts.map +1 -1
  165. package/dist/wizard/speaker-test-tone.d.ts +29 -4
  166. package/dist/wizard/speaker-test-tone.d.ts.map +1 -1
  167. package/dist/wizard/useCandidateIssues.d.ts +30 -0
  168. package/dist/wizard/useCandidateIssues.d.ts.map +1 -0
  169. package/dist/wizard/useCandidateIssues.test.d.ts +2 -0
  170. package/dist/wizard/useCandidateIssues.test.d.ts.map +1 -0
  171. package/dist/wizard/useLiveDisplayCheck.d.ts +8 -0
  172. package/dist/wizard/useLiveDisplayCheck.d.ts.map +1 -0
  173. package/dist/wizard/usePreflightTelemetry.d.ts +6 -26
  174. package/dist/wizard/usePreflightTelemetry.d.ts.map +1 -1
  175. package/dist/wizard/useWizardSteps.d.ts +10 -1
  176. package/dist/wizard/useWizardSteps.d.ts.map +1 -1
  177. package/package.json +4 -3
@@ -0,0 +1,59 @@
1
+ /**
2
+ * In-browser face detector for preflight checks.
3
+ *
4
+ * The camera check, the candidate-intake headshot and the resume check
5
+ * only ask one question: is exactly one face in front of the camera?
6
+ * This answers it on the candidate's device with BlazeFace (short range)
7
+ * through MediaPipe Tasks Vision, so no frame is sent anywhere to be
8
+ * detected. The frame the camera check stores as evidence is still
9
+ * uploaded, with the browser's face count, by
10
+ * `createNestPreflightCameraCheck`.
11
+ *
12
+ * The runtime (WebAssembly) and model load once per asset location and
13
+ * are shared by every check on the page. `prefetchBrowserFaceDetector`
14
+ * starts that download early (the wizard calls it when it opens) so the
15
+ * first check does not wait. Loading is lazy: hosts that never run a
16
+ * camera check never download anything.
17
+ */
18
+ /** The `@mediapipe/tasks-vision` version the API serves assets for. */
19
+ export declare const VISION_ASSETS_VERSION = "1.0.1";
20
+ /** Where the vision runtime and face model are served from. */
21
+ export interface VisionAssets {
22
+ /** Directory holding the Tasks Vision WebAssembly files. */
23
+ wasmBasePath?: string;
24
+ /** URL of the BlazeFace short-range model. */
25
+ faceModelPath?: string;
26
+ }
27
+ interface FaceDetectorLike {
28
+ detect(image: HTMLImageElement): {
29
+ detections: readonly unknown[];
30
+ };
31
+ }
32
+ /** Injectable seams, for tests. */
33
+ export interface BrowserFaceDetectorDeps {
34
+ loadDetector(assets: Required<VisionAssets>): Promise<FaceDetectorLike>;
35
+ decodeImage(dataUrl: string): Promise<HTMLImageElement>;
36
+ }
37
+ /** The versioned asset location the ProctorKit API serves. */
38
+ export declare const visionAssetsFromApiBase: (apiBaseUrl: string) => Required<VisionAssets>;
39
+ /** Forget loaded detectors (tests). */
40
+ export declare function resetBrowserFaceDetectorCache(): void;
41
+ /**
42
+ * Start downloading the runtime and model in the background. Never
43
+ * throws: a failure here only means the first check loads (or fails)
44
+ * on its own.
45
+ */
46
+ export declare function prefetchBrowserFaceDetector(assets?: VisionAssets, deps?: BrowserFaceDetectorDeps): Promise<void>;
47
+ /**
48
+ * A `detectFace` callback for the SDK's deep camera check, the intake
49
+ * headshot and the resume check. Resolves `{ faceCount }`; throws when
50
+ * the detector cannot load or run, which the SDK treats as a failed
51
+ * attempt and retries.
52
+ */
53
+ export declare function createBrowserDetectFace(options?: {
54
+ assets?: VisionAssets;
55
+ }, deps?: BrowserFaceDetectorDeps): (jpegDataUrl: string) => Promise<{
56
+ faceCount: number;
57
+ }>;
58
+ export {};
59
+ //# sourceMappingURL=browser-face-detector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-face-detector.d.ts","sourceRoot":"","sources":["../src/browser-face-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,UAAU,CAAC;AAI7C,+DAA+D;AAC/D,MAAM,WAAW,YAAY;IAC3B,4DAA4D;IAC5D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8CAA8C;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,gBAAgB;IACxB,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG;QAAE,UAAU,EAAE,SAAS,OAAO,EAAE,CAAA;KAAE,CAAC;CACrE;AAED,mCAAmC;AACnC,MAAM,WAAW,uBAAuB;IACtC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxE,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACzD;AAID,8DAA8D;AAC9D,eAAO,MAAM,uBAAuB,GAAI,YAAY,MAAM,KAAG,QAAQ,CAAC,YAAY,CAGjF,CAAC;AA8CF,uCAAuC;AACvC,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD;AAED;;;;GAIG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,CAAC,EAAE,YAAY,EACrB,IAAI,GAAE,uBAAqC,GAC1C,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,YAAY,CAAA;CAAO,EACvC,IAAI,GAAE,uBAAqC,GAC1C,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAczD"}
@@ -0,0 +1,24 @@
1
+ import type { DisplayRecoveryMessages, PlatformUiMessages } from "@a4anthony/proctorkit-content";
2
+ type __VLS_Props = {
3
+ open: boolean;
4
+ pending: boolean;
5
+ automatic: boolean;
6
+ feedback: "denied" | "unavailable" | null;
7
+ actionLabel: string;
8
+ loadingLabel: string;
9
+ dark: boolean;
10
+ messages: DisplayRecoveryMessages;
11
+ permissionMessages?: PlatformUiMessages["permissionDenied"];
12
+ helpLabel?: string;
13
+ };
14
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
+ retry: () => any;
16
+ close: () => any;
17
+ help: () => any;
18
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
19
+ onRetry?: (() => any) | undefined;
20
+ onClose?: (() => any) | undefined;
21
+ onHelp?: (() => any) | undefined;
22
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
23
+ export default _default;
24
+ //# sourceMappingURL=DisplayPermissionDialog.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DisplayPermissionDialog.vue.d.ts","sourceRoot":"","sources":["../../../src/check-cards/system/DisplayPermissionDialog.vue"],"names":[],"mappings":"AAoJA,OAAO,KAAK,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAKjG,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,uBAAuB,CAAC;IAClC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;;;;;;;;;;AAyZF,wBAOG"}
@@ -0,0 +1,25 @@
1
+ import { type DisplayMonitor } from "@a4anthony/proctorkit-sdk";
2
+ import type { DisplayRecoveryMessages, PlatformUiMessages } from "@a4anthony/proctorkit-content";
3
+ import type { MediaHelpTopicId } from "../../i18n/media-help.js";
4
+ type __VLS_Props = {
5
+ messages: DisplayRecoveryMessages;
6
+ permissionMessages?: PlatformUiMessages["permissionDenied"];
7
+ helpLabel?: string;
8
+ retryLabel?: string;
9
+ retryVisible?: boolean;
10
+ checking: boolean;
11
+ passed: boolean;
12
+ /** @internal Injectable browser adapter for stories and component tests. */
13
+ monitor?: DisplayMonitor;
14
+ /** @internal Avoid duplicate automatic probes when the preflight owner watches. */
15
+ displayChangesManaged?: boolean;
16
+ };
17
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
+ recheck: () => any;
19
+ help: (topic: MediaHelpTopicId) => any;
20
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
21
+ onRecheck?: (() => any) | undefined;
22
+ onHelp?: ((topic: MediaHelpTopicId) => any) | undefined;
23
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
24
+ export default _default;
25
+ //# sourceMappingURL=DisplayRecovery.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DisplayRecovery.vue.d.ts","sourceRoot":"","sources":["../../../src/check-cards/system/DisplayRecovery.vue"],"names":[],"mappings":"AAqVA,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAKjG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,uBAAuB,CAAC;IAClC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,mFAAmF;IACnF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;;;;;;;;AA+iBF,wBAOG"}
@@ -17,10 +17,15 @@ type __VLS_Props = {
17
17
  helpLabel?: string;
18
18
  indicatorOnly?: boolean;
19
19
  statusLabels?: PlatformUiMessages["status"];
20
+ showDivider?: boolean;
20
21
  headerId?: string;
21
22
  panelId?: string;
22
23
  };
23
- declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
24
+ declare var __VLS_5: {};
25
+ type __VLS_Slots = {} & {
26
+ 'display-recovery'?: (props: typeof __VLS_5) => any;
27
+ };
28
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
24
29
  retry: () => any;
25
30
  help: (topic: MediaHelpTopicId) => any;
26
31
  copyLink: (issueId: string) => any;
@@ -37,6 +42,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
37
42
  expanded: boolean;
38
43
  headerId: string;
39
44
  panelId: string;
45
+ showDivider: boolean;
40
46
  issues: CheckCardIssue[];
41
47
  retryLabel: string;
42
48
  retrying: boolean;
@@ -46,5 +52,11 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
46
52
  copiedLabel: string;
47
53
  indicatorOnly: boolean;
48
54
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
55
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
49
56
  export default _default;
57
+ type __VLS_WithSlots<T, S> = T & {
58
+ new (): {
59
+ $slots: S;
60
+ };
61
+ };
50
62
  //# sourceMappingURL=SystemCheckCard.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SystemCheckCard.vue.d.ts","sourceRoot":"","sources":["../../../src/check-cards/system/SystemCheckCard.vue"],"names":[],"mappings":"AAyKA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAE1F,KAAK,WAAW,GAAG;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;;;;;;;;;;WAjBQ,MAAM;iBAGA,MAAM;eASR,MAAM;gBAVL,MAAM;kBAYJ,kBAAkB,CAAC,QAAQ,CAAC;cAVhC,OAAO;cAWP,MAAM;aACP,MAAM;YAXP,cAAc,EAAE;gBACZ,MAAM;cACR,OAAO;kBACH,OAAO;mBACN,MAAM;mBACN,MAAM,GAAG,IAAI;iBACf,MAAM;mBAEJ,OAAO;;AA2U3B,wBAQG"}
1
+ {"version":3,"file":"SystemCheckCard.vue.d.ts","sourceRoot":"","sources":["../../../src/check-cards/system/SystemCheckCard.vue"],"names":[],"mappings":"AA6KA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAE1F,KAAK,WAAW,GAAG;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AA6SJ,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAiC1D,QAAA,MAAM,eAAe;;;;;;;;;WAlWT,MAAM;iBAGA,MAAM;eASR,MAAM;gBAVL,MAAM;kBAYJ,kBAAkB,CAAC,QAAQ,CAAC;cAVhC,OAAO;cAYP,MAAM;aACP,MAAM;iBAFF,OAAO;YAVZ,cAAc,EAAE;gBACZ,MAAM;cACR,OAAO;kBACH,OAAO;mBACN,MAAM;mBACN,MAAM,GAAG,IAAI;iBACf,MAAM;mBAEJ,OAAO;6EA6VzB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAa1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -0,0 +1,468 @@
1
+ import type { DisplayMonitor } from "@a4anthony/proctorkit-sdk";
2
+ /** Real checklist panels and progress controller with simulated equipment. */
3
+ export declare function createDisplayProgressRender(identityCompleted?: boolean): () => {
4
+ components: {
5
+ ChecklistShell: {
6
+ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
7
+ title: string;
8
+ description: string;
9
+ activeIndex: number;
10
+ activeKey: string;
11
+ steps: import("../../wizard/wizard-steps.js").WizardStep[];
12
+ completedSteps?: import("../../wizard/wizard-steps.js").WizardStep[];
13
+ labels: Partial<Record<import("../../wizard/wizard-steps.js").WizardStep, string>>;
14
+ deviceLabels?: Partial<Record<"microphone" | "speaker" | "camera", string | null>>;
15
+ progressLabel?: string;
16
+ equipmentTitle?: string;
17
+ equipmentDescription?: string;
18
+ statusComplete?: string;
19
+ statusWaiting?: string;
20
+ statusLabels?: import("@a4anthony/proctorkit-content").PlatformUiMessages["status"];
21
+ systemCheckFailed?: boolean;
22
+ dark?: boolean;
23
+ }> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
24
+ dark: boolean;
25
+ progressLabel: string;
26
+ statusLabels: import("@a4anthony/proctorkit-content").PlatformUiMessages["status"];
27
+ deviceLabels: Partial<Record<"microphone" | "speaker" | "camera", string | null>>;
28
+ equipmentTitle: string;
29
+ equipmentDescription: string;
30
+ statusComplete: string;
31
+ statusWaiting: string;
32
+ systemCheckFailed: boolean;
33
+ }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
34
+ P: {};
35
+ B: {};
36
+ D: {};
37
+ C: {};
38
+ M: {};
39
+ Defaults: {};
40
+ }, Readonly<{
41
+ title: string;
42
+ description: string;
43
+ activeIndex: number;
44
+ activeKey: string;
45
+ steps: import("../../wizard/wizard-steps.js").WizardStep[];
46
+ completedSteps?: import("../../wizard/wizard-steps.js").WizardStep[];
47
+ labels: Partial<Record<import("../../wizard/wizard-steps.js").WizardStep, string>>;
48
+ deviceLabels?: Partial<Record<"microphone" | "speaker" | "camera", string | null>>;
49
+ progressLabel?: string;
50
+ equipmentTitle?: string;
51
+ equipmentDescription?: string;
52
+ statusComplete?: string;
53
+ statusWaiting?: string;
54
+ statusLabels?: import("@a4anthony/proctorkit-content").PlatformUiMessages["status"];
55
+ systemCheckFailed?: boolean;
56
+ dark?: boolean;
57
+ }> & Readonly<{}>, {}, {}, {}, {}, {
58
+ dark: boolean;
59
+ progressLabel: string;
60
+ statusLabels: import("@a4anthony/proctorkit-content").PlatformUiMessages["status"];
61
+ deviceLabels: Partial<Record<"microphone" | "speaker" | "camera", string | null>>;
62
+ equipmentTitle: string;
63
+ equipmentDescription: string;
64
+ statusComplete: string;
65
+ statusWaiting: string;
66
+ systemCheckFailed: boolean;
67
+ }>;
68
+ __isFragment?: never;
69
+ __isTeleport?: never;
70
+ __isSuspense?: never;
71
+ } & import("vue").ComponentOptionsBase<Readonly<{
72
+ title: string;
73
+ description: string;
74
+ activeIndex: number;
75
+ activeKey: string;
76
+ steps: import("../../wizard/wizard-steps.js").WizardStep[];
77
+ completedSteps?: import("../../wizard/wizard-steps.js").WizardStep[];
78
+ labels: Partial<Record<import("../../wizard/wizard-steps.js").WizardStep, string>>;
79
+ deviceLabels?: Partial<Record<"microphone" | "speaker" | "camera", string | null>>;
80
+ progressLabel?: string;
81
+ equipmentTitle?: string;
82
+ equipmentDescription?: string;
83
+ statusComplete?: string;
84
+ statusWaiting?: string;
85
+ statusLabels?: import("@a4anthony/proctorkit-content").PlatformUiMessages["status"];
86
+ systemCheckFailed?: boolean;
87
+ dark?: boolean;
88
+ }> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
89
+ dark: boolean;
90
+ progressLabel: string;
91
+ statusLabels: import("@a4anthony/proctorkit-content").PlatformUiMessages["status"];
92
+ deviceLabels: Partial<Record<"microphone" | "speaker" | "camera", string | null>>;
93
+ equipmentTitle: string;
94
+ equipmentDescription: string;
95
+ statusComplete: string;
96
+ statusWaiting: string;
97
+ systemCheckFailed: boolean;
98
+ }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
99
+ $slots: {
100
+ "microphone-completed"?: ((props: {
101
+ step: "microphone" | "speaker" | "camera" | "candidate-intake" | "runtime-screen-share";
102
+ }) => any) | undefined;
103
+ "speaker-completed"?: ((props: {
104
+ step: "microphone" | "speaker" | "camera" | "candidate-intake" | "runtime-screen-share";
105
+ }) => any) | undefined;
106
+ "camera-completed"?: ((props: {
107
+ step: "microphone" | "speaker" | "camera" | "candidate-intake" | "runtime-screen-share";
108
+ }) => any) | undefined;
109
+ "candidate-intake-completed"?: ((props: {
110
+ step: "microphone" | "speaker" | "camera" | "candidate-intake" | "runtime-screen-share";
111
+ }) => any) | undefined;
112
+ "runtime-screen-share-completed"?: ((props: {
113
+ step: "microphone" | "speaker" | "camera" | "candidate-intake" | "runtime-screen-share";
114
+ }) => any) | undefined;
115
+ } & {
116
+ 'top-left'?: (props: {}) => any;
117
+ } & {
118
+ 'top-right'?: (props: {}) => any;
119
+ } & {
120
+ 'system-card'?: (props: {
121
+ active: boolean;
122
+ complete: boolean;
123
+ showDivider: boolean;
124
+ }) => any;
125
+ } & {
126
+ default?: (props: {}) => any;
127
+ } & {
128
+ default?: (props: {}) => any;
129
+ } & {
130
+ default?: (props: {}) => any;
131
+ };
132
+ });
133
+ SystemStep: import("vue").DefineComponent<{
134
+ rows: ReadonlyArray<import("@a4anthony/proctorkit-sdk").CheckRow>;
135
+ messages: import("@a4anthony/proctorkit-content").PreflightMessages;
136
+ autoStart: boolean;
137
+ minBandwidthMbps?: number;
138
+ minUploadBandwidthMbps?: number;
139
+ run: () => Promise<void>;
140
+ retry: () => Promise<void>;
141
+ recheckMonitor?: () => Promise<void>;
142
+ displayMonitor?: DisplayMonitor;
143
+ displayChangesManaged?: boolean;
144
+ embedded?: boolean;
145
+ showDivider?: boolean;
146
+ autoContinueOnPass?: boolean;
147
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
148
+ help: (topic: import("@a4anthony/proctorkit-content").MediaHelpTopicId) => any;
149
+ continue: () => any;
150
+ }, string, import("vue").PublicProps, Readonly<{
151
+ rows: ReadonlyArray<import("@a4anthony/proctorkit-sdk").CheckRow>;
152
+ messages: import("@a4anthony/proctorkit-content").PreflightMessages;
153
+ autoStart: boolean;
154
+ minBandwidthMbps?: number;
155
+ minUploadBandwidthMbps?: number;
156
+ run: () => Promise<void>;
157
+ retry: () => Promise<void>;
158
+ recheckMonitor?: () => Promise<void>;
159
+ displayMonitor?: DisplayMonitor;
160
+ displayChangesManaged?: boolean;
161
+ embedded?: boolean;
162
+ showDivider?: boolean;
163
+ autoContinueOnPass?: boolean;
164
+ }> & Readonly<{
165
+ onHelp?: ((topic: import("@a4anthony/proctorkit-content").MediaHelpTopicId) => any) | undefined;
166
+ onContinue?: (() => any) | undefined;
167
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
168
+ CandidateIntakeStep: import("vue").DefineComponent<{
169
+ config: import("../../candidate-intake.js").CandidateIntakeConfig;
170
+ draft?: import("../../wizard/candidate-intake-draft.js").CandidateIntakeDraft;
171
+ submitting?: boolean;
172
+ submitError?: string | null;
173
+ detectFace?: (jpegDataUrl: string) => Promise<{
174
+ faceCount: number;
175
+ }>;
176
+ headshotSimulationError?: string;
177
+ embedded?: boolean;
178
+ messages?: import("@a4anthony/proctorkit-content").PlatformUiMessages["candidateIntake"];
179
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
180
+ submit: (submission: import("../../candidate-intake.js").CandidateIntakeSubmission) => any;
181
+ }, string, import("vue").PublicProps, Readonly<{
182
+ config: import("../../candidate-intake.js").CandidateIntakeConfig;
183
+ draft?: import("../../wizard/candidate-intake-draft.js").CandidateIntakeDraft;
184
+ submitting?: boolean;
185
+ submitError?: string | null;
186
+ detectFace?: (jpegDataUrl: string) => Promise<{
187
+ faceCount: number;
188
+ }>;
189
+ headshotSimulationError?: string;
190
+ embedded?: boolean;
191
+ messages?: import("@a4anthony/proctorkit-content").PlatformUiMessages["candidateIntake"];
192
+ }> & Readonly<{
193
+ onSubmit?: ((submission: import("../../candidate-intake.js").CandidateIntakeSubmission) => any) | undefined;
194
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
195
+ FinalStep: {
196
+ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
197
+ rows: ReadonlyArray<import("@a4anthony/proctorkit-sdk").CheckRow>;
198
+ messages: import("@a4anthony/proctorkit-content").PreflightMessages;
199
+ mode: import("@a4anthony/proctorkit-sdk").SystemCheckMode;
200
+ autoResumeSeconds: number;
201
+ starting?: boolean;
202
+ preparationError?: import("../../proctored-assessment/preparation-feedback.js").PreparationFeedback;
203
+ embedded?: boolean;
204
+ }> & Readonly<{
205
+ onResume?: (() => any) | undefined;
206
+ onHelp?: (() => any) | undefined;
207
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
208
+ resume: () => any;
209
+ help: () => any;
210
+ }, import("vue").PublicProps, {}, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
211
+ P: {};
212
+ B: {};
213
+ D: {};
214
+ C: {};
215
+ M: {};
216
+ Defaults: {};
217
+ }, Readonly<{
218
+ rows: ReadonlyArray<import("@a4anthony/proctorkit-sdk").CheckRow>;
219
+ messages: import("@a4anthony/proctorkit-content").PreflightMessages;
220
+ mode: import("@a4anthony/proctorkit-sdk").SystemCheckMode;
221
+ autoResumeSeconds: number;
222
+ starting?: boolean;
223
+ preparationError?: import("../../proctored-assessment/preparation-feedback.js").PreparationFeedback;
224
+ embedded?: boolean;
225
+ }> & Readonly<{
226
+ onResume?: (() => any) | undefined;
227
+ onHelp?: (() => any) | undefined;
228
+ }>, {}, {}, {}, {}, {}>;
229
+ __isFragment?: never;
230
+ __isTeleport?: never;
231
+ __isSuspense?: never;
232
+ } & import("vue").ComponentOptionsBase<Readonly<{
233
+ rows: ReadonlyArray<import("@a4anthony/proctorkit-sdk").CheckRow>;
234
+ messages: import("@a4anthony/proctorkit-content").PreflightMessages;
235
+ mode: import("@a4anthony/proctorkit-sdk").SystemCheckMode;
236
+ autoResumeSeconds: number;
237
+ starting?: boolean;
238
+ preparationError?: import("../../proctored-assessment/preparation-feedback.js").PreparationFeedback;
239
+ embedded?: boolean;
240
+ }> & Readonly<{
241
+ onResume?: (() => any) | undefined;
242
+ onHelp?: (() => any) | undefined;
243
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
244
+ resume: () => any;
245
+ help: () => any;
246
+ }, string, {}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
247
+ $slots: {
248
+ 'footer-extras'?: (props: {}) => any;
249
+ };
250
+ });
251
+ ProctoringButton: {
252
+ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
253
+ variant?: "primary" | "link" | "secondary" | "brand" | "ghost" | "outline" | "danger-link" | "danger" | "success";
254
+ size?: "xs" | "sm" | "compact" | "dense" | "control" | "md" | "lg" | "inline" | "icon-xs" | "icon-sm" | "icon";
255
+ type?: "reset" | "submit" | "button";
256
+ disabled?: boolean;
257
+ loading?: boolean;
258
+ fullWidth?: boolean;
259
+ icon?: import("vue").Component;
260
+ iconPosition?: "prepend" | "append";
261
+ unstyled?: boolean;
262
+ }> & Readonly<{}>, {
263
+ focus: (options?: FocusOptions) => void | undefined;
264
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
265
+ size: "xs" | "sm" | "compact" | "dense" | "control" | "md" | "lg" | "inline" | "icon-xs" | "icon-sm" | "icon";
266
+ variant: "primary" | "link" | "secondary" | "brand" | "ghost" | "outline" | "danger-link" | "danger" | "success";
267
+ type: "reset" | "submit" | "button";
268
+ disabled: boolean;
269
+ loading: boolean;
270
+ fullWidth: boolean;
271
+ iconPosition: "prepend" | "append";
272
+ unstyled: boolean;
273
+ }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
274
+ P: {};
275
+ B: {};
276
+ D: {};
277
+ C: {};
278
+ M: {};
279
+ Defaults: {};
280
+ }, Readonly<{
281
+ variant?: "primary" | "link" | "secondary" | "brand" | "ghost" | "outline" | "danger-link" | "danger" | "success";
282
+ size?: "xs" | "sm" | "compact" | "dense" | "control" | "md" | "lg" | "inline" | "icon-xs" | "icon-sm" | "icon";
283
+ type?: "reset" | "submit" | "button";
284
+ disabled?: boolean;
285
+ loading?: boolean;
286
+ fullWidth?: boolean;
287
+ icon?: import("vue").Component;
288
+ iconPosition?: "prepend" | "append";
289
+ unstyled?: boolean;
290
+ }> & Readonly<{}>, {
291
+ focus: (options?: FocusOptions) => void | undefined;
292
+ }, {}, {}, {}, {
293
+ size: "xs" | "sm" | "compact" | "dense" | "control" | "md" | "lg" | "inline" | "icon-xs" | "icon-sm" | "icon";
294
+ variant: "primary" | "link" | "secondary" | "brand" | "ghost" | "outline" | "danger-link" | "danger" | "success";
295
+ type: "reset" | "submit" | "button";
296
+ disabled: boolean;
297
+ loading: boolean;
298
+ fullWidth: boolean;
299
+ iconPosition: "prepend" | "append";
300
+ unstyled: boolean;
301
+ }>;
302
+ __isFragment?: never;
303
+ __isTeleport?: never;
304
+ __isSuspense?: never;
305
+ } & import("vue").ComponentOptionsBase<Readonly<{
306
+ variant?: "primary" | "link" | "secondary" | "brand" | "ghost" | "outline" | "danger-link" | "danger" | "success";
307
+ size?: "xs" | "sm" | "compact" | "dense" | "control" | "md" | "lg" | "inline" | "icon-xs" | "icon-sm" | "icon";
308
+ type?: "reset" | "submit" | "button";
309
+ disabled?: boolean;
310
+ loading?: boolean;
311
+ fullWidth?: boolean;
312
+ icon?: import("vue").Component;
313
+ iconPosition?: "prepend" | "append";
314
+ unstyled?: boolean;
315
+ }> & Readonly<{}>, {
316
+ focus: (options?: FocusOptions) => void | undefined;
317
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
318
+ size: "xs" | "sm" | "compact" | "dense" | "control" | "md" | "lg" | "inline" | "icon-xs" | "icon-sm" | "icon";
319
+ variant: "primary" | "link" | "secondary" | "brand" | "ghost" | "outline" | "danger-link" | "danger" | "success";
320
+ type: "reset" | "submit" | "button";
321
+ disabled: boolean;
322
+ loading: boolean;
323
+ fullWidth: boolean;
324
+ iconPosition: "prepend" | "append";
325
+ unstyled: boolean;
326
+ }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
327
+ $slots: {
328
+ leading?: (props: {}) => any;
329
+ } & {
330
+ default?: (props: {}) => any;
331
+ } & {
332
+ trailing?: (props: {}) => any;
333
+ };
334
+ });
335
+ };
336
+ setup(): {
337
+ messages: import("vue").ComputedRef<import("@a4anthony/proctorkit-content").PreflightMessages>;
338
+ draft: import("vue").ShallowReactive<import("../../wizard/candidate-intake-draft.js").CandidateIntakeDraft>;
339
+ submitting: import("vue").Ref<boolean, boolean>;
340
+ submissionCount: import("vue").Ref<number, number>;
341
+ extraDisplay: import("vue").Ref<boolean, boolean>;
342
+ started: import("vue").Ref<boolean, boolean>;
343
+ monitor: DisplayMonitor;
344
+ setDisplay: (connected: boolean) => void;
345
+ submitIdentity: () => void;
346
+ recheck: () => Promise<void>;
347
+ config: {
348
+ title: string;
349
+ continueLabel: string;
350
+ nextLabel: string;
351
+ fields: ({
352
+ key: string;
353
+ type: string;
354
+ label: string;
355
+ required: boolean;
356
+ maxFiles?: undefined;
357
+ maxFileSizeBytes?: undefined;
358
+ accept?: undefined;
359
+ } | {
360
+ key: string;
361
+ type: string;
362
+ label: string;
363
+ required: boolean;
364
+ maxFiles: number;
365
+ maxFileSizeBytes: number;
366
+ accept: string[];
367
+ })[];
368
+ sections: {
369
+ id: string;
370
+ title: string;
371
+ fieldKeys: string[];
372
+ }[];
373
+ };
374
+ steps: import("vue").Ref<import("../../wizard/wizard-steps.js").WizardStep[], import("../../wizard/wizard-steps.js").WizardStep[]>;
375
+ activeStep: import("vue").ComputedRef<import("../../wizard/wizard-steps.js").WizardStep>;
376
+ activeIndex: import("vue").Ref<number, number>;
377
+ totalSteps: import("vue").ComputedRef<number>;
378
+ advance: () => void;
379
+ completeStep: (step: import("../../wizard/wizard-steps.js").WizardStep) => void;
380
+ completedSteps: import("vue").Ref<import("../../wizard/wizard-steps.js").WizardStep[], import("../../wizard/wizard-steps.js").WizardStep[]>;
381
+ goTo: (step: import("../../wizard/wizard-steps.js").WizardStep) => void;
382
+ reset: () => void;
383
+ verifyDisplaySetup: (trigger?: import("../../wizard/display-diagnostics.js").DisplayTrigger) => Promise<boolean>;
384
+ engine: import("vue").ShallowRef<import("@a4anthony/proctorkit-sdk").SystemCheck, import("@a4anthony/proctorkit-sdk").SystemCheck>;
385
+ rows: import("vue").Ref<{
386
+ kind: import("@a4anthony/proctorkit-sdk").CheckKind;
387
+ state: {
388
+ kind: "pending";
389
+ } | {
390
+ kind: "checking";
391
+ message?: string | undefined;
392
+ } | {
393
+ kind: "pass";
394
+ detail: string;
395
+ } | {
396
+ kind: "fail";
397
+ code: import("@a4anthony/proctorkit-sdk").FailCode;
398
+ detail: string;
399
+ } | {
400
+ kind: "skipped";
401
+ };
402
+ photo?: string | undefined;
403
+ mbps?: number | undefined;
404
+ uploadMbps?: number | undefined;
405
+ latencyMs?: number | undefined;
406
+ jitterMs?: number | undefined;
407
+ recordingUploadMode?: "direct" | "segments" | "post" | undefined;
408
+ readinessPayloadBytes?: number | undefined;
409
+ readinessMedianMs?: number | undefined;
410
+ readinessWindowMs?: number | undefined;
411
+ readinessSampleCount?: number | undefined;
412
+ band?: import("@a4anthony/proctorkit-sdk").ConnectionBand | undefined;
413
+ }[], import("@a4anthony/proctorkit-sdk").CheckRow[] | {
414
+ kind: import("@a4anthony/proctorkit-sdk").CheckKind;
415
+ state: {
416
+ kind: "pending";
417
+ } | {
418
+ kind: "checking";
419
+ message?: string | undefined;
420
+ } | {
421
+ kind: "pass";
422
+ detail: string;
423
+ } | {
424
+ kind: "fail";
425
+ code: import("@a4anthony/proctorkit-sdk").FailCode;
426
+ detail: string;
427
+ } | {
428
+ kind: "skipped";
429
+ };
430
+ photo?: string | undefined;
431
+ mbps?: number | undefined;
432
+ uploadMbps?: number | undefined;
433
+ latencyMs?: number | undefined;
434
+ jitterMs?: number | undefined;
435
+ recordingUploadMode?: "direct" | "segments" | "post" | undefined;
436
+ readinessPayloadBytes?: number | undefined;
437
+ readinessMedianMs?: number | undefined;
438
+ readinessWindowMs?: number | undefined;
439
+ readinessSampleCount?: number | undefined;
440
+ band?: import("@a4anthony/proctorkit-sdk").ConnectionBand | undefined;
441
+ }[]>;
442
+ isRunning: import("vue").Ref<boolean, boolean>;
443
+ isComplete: import("vue").Ref<boolean, boolean>;
444
+ allPassed: import("vue").ComputedRef<boolean>;
445
+ failures: import("vue").ComputedRef<{
446
+ kind: import("@a4anthony/proctorkit-sdk").CheckKind;
447
+ code: import("@a4anthony/proctorkit-sdk").FailCode;
448
+ detail: string;
449
+ }[]>;
450
+ report: import("vue").ShallowRef<import("@a4anthony/proctorkit-sdk").PreflightReport | null, import("@a4anthony/proctorkit-sdk").PreflightReport | null>;
451
+ runChecks: () => Promise<import("@a4anthony/proctorkit-sdk").PreflightReport>;
452
+ runSimulated: (results: import("@a4anthony/proctorkit-sdk").SimulatedCheckResult[]) => Promise<import("@a4anthony/proctorkit-sdk").PreflightReport>;
453
+ retry: () => Promise<import("@a4anthony/proctorkit-sdk").PreflightReport>;
454
+ runSystemClass: () => Promise<void>;
455
+ retrySystemClass: () => Promise<void>;
456
+ probeMonitor: () => Promise<void>;
457
+ probeMic: (deviceId?: string) => Promise<void>;
458
+ probeSpeaker: (options?: import("@a4anthony/proctorkit-sdk").SpeakerProbeOptions) => Promise<void>;
459
+ probeCamera: (deviceId?: string, existingStream?: {
460
+ videoElement: HTMLVideoElement;
461
+ }) => Promise<{
462
+ attempts: import("@a4anthony/proctorkit-sdk").DeepCameraAttempt[];
463
+ }>;
464
+ probeScreenShare: (attested?: boolean) => Promise<void>;
465
+ };
466
+ template: string;
467
+ };
468
+ //# sourceMappingURL=display-progress-story.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-progress-story.d.ts","sourceRoot":"","sources":["../../../src/check-cards/system/display-progress-story.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,2BAA2B,CAAC;AAWhF,8EAA8E;AAC9E,wBAAgB,2BAA2B,CAAC,iBAAiB,UAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA8ChC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsF3C"}