@discourser/design-system 0.24.0 → 0.25.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 (105) hide show
  1. package/dist/{chunk-KIJKNZ73.cjs → chunk-QNCZYFUJ.cjs} +46 -11
  2. package/dist/chunk-QNCZYFUJ.cjs.map +1 -0
  3. package/dist/{chunk-VOH2QELR.cjs → chunk-TBLDQATQ.cjs} +377 -12
  4. package/dist/chunk-TBLDQATQ.cjs.map +1 -0
  5. package/dist/{chunk-VN2QX6S7.js → chunk-UHSL4N44.js} +378 -14
  6. package/dist/chunk-UHSL4N44.js.map +1 -0
  7. package/dist/{chunk-HN2IHIMR.js → chunk-ZPECW4N2.js} +46 -11
  8. package/dist/chunk-ZPECW4N2.js.map +1 -0
  9. package/dist/components/Badge.figma.d.ts +2 -0
  10. package/dist/components/Badge.figma.d.ts.map +1 -0
  11. package/dist/components/Button.figma.d.ts +2 -0
  12. package/dist/components/Button.figma.d.ts.map +1 -0
  13. package/dist/components/Card.figma.d.ts +2 -0
  14. package/dist/components/Card.figma.d.ts.map +1 -0
  15. package/dist/components/Icons/AudienceIcon.d.ts.map +1 -1
  16. package/dist/components/Input.figma.d.ts +2 -0
  17. package/dist/components/Input.figma.d.ts.map +1 -0
  18. package/dist/components/RadioGroup.figma.d.ts +2 -0
  19. package/dist/components/RadioGroup.figma.d.ts.map +1 -0
  20. package/dist/components/SettingsPopover/SettingsPopover.figma.d.ts +2 -0
  21. package/dist/components/SettingsPopover/SettingsPopover.figma.d.ts.map +1 -0
  22. package/dist/components/Slider.figma.d.ts +2 -0
  23. package/dist/components/Slider.figma.d.ts.map +1 -0
  24. package/dist/components/Stepper/Stepper.figma.d.ts +2 -0
  25. package/dist/components/Stepper/Stepper.figma.d.ts.map +1 -0
  26. package/dist/components/StudioControls/StudioControls.d.ts +3 -0
  27. package/dist/components/StudioControls/StudioControls.d.ts.map +1 -0
  28. package/dist/components/StudioControls/StudioControls.figma.d.ts +2 -0
  29. package/dist/components/StudioControls/StudioControls.figma.d.ts.map +1 -0
  30. package/dist/components/StudioControls/index.d.ts +3 -0
  31. package/dist/components/StudioControls/index.d.ts.map +1 -0
  32. package/dist/components/StudioControls/types.d.ts +17 -0
  33. package/dist/components/StudioControls/types.d.ts.map +1 -0
  34. package/dist/components/Switch.figma.d.ts +2 -0
  35. package/dist/components/Switch.figma.d.ts.map +1 -0
  36. package/dist/components/index.cjs +78 -74
  37. package/dist/components/index.d.ts +1 -0
  38. package/dist/components/index.d.ts.map +1 -1
  39. package/dist/components/index.js +1 -1
  40. package/dist/figma-codex/parser.d.ts +2 -0
  41. package/dist/figma-codex/parser.d.ts.map +1 -1
  42. package/dist/figma-codex/resolver.d.ts.map +1 -1
  43. package/dist/figma-codex/schema.d.ts +7 -0
  44. package/dist/figma-codex/schema.d.ts.map +1 -1
  45. package/dist/figma-codex.json +408 -2
  46. package/dist/index.cjs +82 -78
  47. package/dist/index.js +2 -2
  48. package/dist/preset/index.cjs +2 -2
  49. package/dist/preset/index.js +1 -1
  50. package/dist/preset/recipes/badge.d.ts.map +1 -1
  51. package/dist/preset/recipes/index.d.ts +1 -0
  52. package/dist/preset/recipes/index.d.ts.map +1 -1
  53. package/dist/preset/recipes/studio-controls.d.ts +2 -0
  54. package/dist/preset/recipes/studio-controls.d.ts.map +1 -0
  55. package/dist/preset/recipes/switch.d.ts.map +1 -1
  56. package/docs/figma-mcp-return/card-audit.json +31 -0
  57. package/docs/figma-mcp-return/conversation-prelaunch-audit.json +51 -0
  58. package/docs/figma-mcp-return/conversation_lobby-design-context.md +359 -0
  59. package/docs/figma-mcp-return/conversation_lobby-metadata.xml +1 -0
  60. package/docs/figma-mcp-return/discourser-accordion-audit.json +264 -0
  61. package/docs/figma-mcp-return/discourser-accordion-design-context-v2.tsx +350 -0
  62. package/docs/figma-mcp-return/discourser-accordion-design-context.tsx +130 -0
  63. package/docs/figma-mcp-return/discourser-accordion-metadata-v2.xml +1 -0
  64. package/docs/figma-mcp-return/discourser-accordion-metadata.xml +1 -0
  65. package/docs/figma-mcp-return/kai-resolution-simulation.md +181 -0
  66. package/docs/figma-mcp-return/prelaunch-comparison-analysis.md +126 -0
  67. package/docs/figma-mcp-return/prelaunch-get-design-context.md +982 -0
  68. package/docs/figma-mcp-return/prelaunch-get-metadata.md +7 -0
  69. package/docs/figma-mcp-return/prelaunch-get-metadata.xml +3 -0
  70. package/docs/figma-mcp-return/prelaunch-post-component-update.md +791 -0
  71. package/docs/figma-mcp-return/prelaunch-post-rebind-design-context.md +969 -0
  72. package/docs/figma-mcp-return/radio-group-audit.json +23 -0
  73. package/docs/figma-mcp-return/switch-audit.json +38 -0
  74. package/docs/session-summary-2026-03-29.md +98 -0
  75. package/package.json +2 -1
  76. package/src/components/Badge.figma.tsx +39 -0
  77. package/src/components/Button.figma.tsx +18 -0
  78. package/src/components/Card.figma.tsx +33 -0
  79. package/src/components/Icons/AudienceIcon.tsx +3 -1
  80. package/src/components/Icons/AudioSpeakerIcon.tsx +1 -1
  81. package/src/components/Icons/MicrophoneIcon.tsx +3 -3
  82. package/src/components/Icons/RecordIcon.tsx +4 -4
  83. package/src/components/Icons/TimerIcon.tsx +1 -1
  84. package/src/components/Input.figma.tsx +17 -0
  85. package/src/components/RadioGroup.figma.tsx +38 -0
  86. package/src/components/SettingsPopover/SettingsPopover.figma.tsx +17 -0
  87. package/src/components/Slider.figma.tsx +20 -0
  88. package/src/components/Stepper/Stepper.figma.tsx +19 -0
  89. package/src/components/StudioControls/StudioControls.figma.tsx +25 -0
  90. package/src/components/StudioControls/StudioControls.tsx +381 -0
  91. package/src/components/StudioControls/index.ts +2 -0
  92. package/src/components/StudioControls/types.ts +17 -0
  93. package/src/components/Switch.figma.tsx +32 -0
  94. package/src/components/index.ts +5 -0
  95. package/src/figma-codex/parser.ts +55 -0
  96. package/src/figma-codex/resolver.ts +1 -0
  97. package/src/figma-codex/schema.ts +9 -0
  98. package/src/preset/recipes/badge.ts +41 -7
  99. package/src/preset/recipes/index.ts +1 -0
  100. package/src/preset/recipes/studio-controls.ts +252 -0
  101. package/src/preset/recipes/switch.ts +5 -4
  102. package/dist/chunk-HN2IHIMR.js.map +0 -1
  103. package/dist/chunk-KIJKNZ73.cjs.map +0 -1
  104. package/dist/chunk-VN2QX6S7.js.map +0 -1
  105. package/dist/chunk-VOH2QELR.cjs.map +0 -1
@@ -3,7 +3,7 @@ import { ark as ark$1 } from '@ark-ui/react/factory';
3
3
  import { mergeProps, createContext } from '@ark-ui/react/utils';
4
4
  import { forwardRef, useMemo, createContext as createContext$1, useContext, Fragment as Fragment$1, useState, useEffect } from 'react';
5
5
  import { styled, createStyleContext, Stack, VStack, HStack, Box, Circle as Circle$1, Center } from 'styled-system/jsx';
6
- import { group, absoluteCenter, spinner, button, input, inputAddon, inputGroup, textarea, heading, badge, toast, card, dialog, switchComponent, accordion, drawer, tabs, checkbox, radioGroup, select, slider, avatar, progress, skeleton, popover, tooltip, breadcrumb, contentCard, stepper, scenarioCard, navigationMenu, scenarioSettings, scenarioQueue } from 'styled-system/recipes';
6
+ import { group, absoluteCenter, spinner, button, input, inputAddon, inputGroup, textarea, heading, badge, toast, card, dialog, switchComponent, accordion, drawer, tabs, checkbox, radioGroup, select, slider, avatar, progress, skeleton, popover, tooltip, breadcrumb, contentCard, stepper, scenarioCard, navigationMenu, scenarioSettings, studioControls, scenarioQueue } from 'styled-system/recipes';
7
7
  import { ark } from '@ark-ui/react';
8
8
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
9
9
  import { Field } from '@ark-ui/react/field';
@@ -1271,7 +1271,7 @@ var TimerIcon = (props) => /* @__PURE__ */ jsx(
1271
1271
  {
1272
1272
  d: "M6.27333 12C4.83741 14.1451 4 16.7248 4 19.5C4 26.9559 10.0442 33 17.5 33C24.9559 33 31 26.9559 31 19.5C31 12.0442 24.9559 6 17.5 6V10.5M17.5 19.5L11.5 13.5",
1273
1273
  stroke: "currentColor",
1274
- strokeWidth: "2",
1274
+ strokeWidth: "3",
1275
1275
  strokeLinecap: "round",
1276
1276
  strokeLinejoin: "round"
1277
1277
  }
@@ -1368,7 +1368,7 @@ var MicrophoneIcon = (props) => /* @__PURE__ */ jsxs(
1368
1368
  {
1369
1369
  d: "M20 35.6665V40.6665",
1370
1370
  stroke: "currentColor",
1371
- strokeWidth: "2",
1371
+ strokeWidth: "3",
1372
1372
  strokeLinecap: "round",
1373
1373
  strokeLinejoin: "round"
1374
1374
  }
@@ -1378,7 +1378,7 @@ var MicrophoneIcon = (props) => /* @__PURE__ */ jsxs(
1378
1378
  {
1379
1379
  d: "M31.6666 20.6665V23.9998C31.6666 27.094 30.4374 30.0615 28.2495 32.2494C26.0616 34.4373 23.0941 35.6665 19.9999 35.6665C16.9057 35.6665 13.9383 34.4373 11.7503 32.2494C9.56242 30.0615 8.33325 27.094 8.33325 23.9998V20.6665",
1380
1380
  stroke: "currentColor",
1381
- strokeWidth: "2",
1381
+ strokeWidth: "3",
1382
1382
  strokeLinecap: "round",
1383
1383
  strokeLinejoin: "round"
1384
1384
  }
@@ -1388,7 +1388,7 @@ var MicrophoneIcon = (props) => /* @__PURE__ */ jsxs(
1388
1388
  {
1389
1389
  d: "M25 12.3335C25 9.57207 22.7614 7.3335 20 7.3335C17.2386 7.3335 15 9.57207 15 12.3335V24.0002C15 26.7616 17.2386 29.0002 20 29.0002C22.7614 29.0002 25 26.7616 25 24.0002V12.3335Z",
1390
1390
  stroke: "currentColor",
1391
- strokeWidth: "2",
1391
+ strokeWidth: "3",
1392
1392
  strokeLinecap: "round",
1393
1393
  strokeLinejoin: "round"
1394
1394
  }
@@ -1400,8 +1400,10 @@ var StyledSvg14 = styled(ark$1.svg);
1400
1400
  var AudienceIcon = (props) => /* @__PURE__ */ jsx(
1401
1401
  StyledSvg14,
1402
1402
  {
1403
- viewBox: "0 0 40 44",
1403
+ viewBox: "3.5 9.5 29 25",
1404
1404
  fill: "currentColor",
1405
+ stroke: "currentColor",
1406
+ strokeWidth: "0.5",
1405
1407
  xmlns: "http://www.w3.org/2000/svg",
1406
1408
  width: "1em",
1407
1409
  height: "1em",
@@ -1425,7 +1427,7 @@ var RecordIcon = (props) => /* @__PURE__ */ jsxs(
1425
1427
  {
1426
1428
  d: "M27.0624 19.4998C27.0624 21.5134 25.4301 23.1457 23.4166 23.1457C21.4031 23.1457 19.7708 21.5134 19.7708 19.4998C19.7708 17.4863 21.4031 15.854 23.4166 15.854C25.4301 15.854 27.0624 17.4863 27.0624 19.4998Z",
1427
1429
  stroke: "currentColor",
1428
- strokeWidth: "2"
1430
+ strokeWidth: "3"
1429
1431
  }
1430
1432
  ),
1431
1433
  /* @__PURE__ */ jsx(
@@ -1433,7 +1435,7 @@ var RecordIcon = (props) => /* @__PURE__ */ jsxs(
1433
1435
  {
1434
1436
  d: "M15.3959 19.4998C15.3959 21.5134 13.7636 23.1457 11.7501 23.1457C9.73655 23.1457 8.10425 21.5134 8.10425 19.4998C8.10425 17.4863 9.73655 15.854 11.7501 15.854C13.7636 15.854 15.3959 17.4863 15.3959 19.4998Z",
1435
1437
  stroke: "currentColor",
1436
- strokeWidth: "2"
1438
+ strokeWidth: "3"
1437
1439
  }
1438
1440
  ),
1439
1441
  /* @__PURE__ */ jsx(
@@ -1441,7 +1443,7 @@ var RecordIcon = (props) => /* @__PURE__ */ jsxs(
1441
1443
  {
1442
1444
  d: "M11.75 23.1455H23.4167",
1443
1445
  stroke: "currentColor",
1444
- strokeWidth: "2",
1446
+ strokeWidth: "3",
1445
1447
  strokeLinecap: "round"
1446
1448
  }
1447
1449
  ),
@@ -1450,7 +1452,7 @@ var RecordIcon = (props) => /* @__PURE__ */ jsxs(
1450
1452
  {
1451
1453
  d: "M32.1667 19.4998C32.1667 26.3744 32.1667 29.8119 30.0309 31.9474C27.8954 34.0832 24.4579 34.0832 17.5833 34.0832C10.7087 34.0832 7.27136 34.0832 5.13569 31.9474C3 29.8119 3 26.3744 3 19.4998C3 12.6252 3 9.18786 5.13569 7.05219C7.27136 4.9165 10.7087 4.9165 17.5833 4.9165C24.4579 4.9165 27.8954 4.9165 30.0309 7.05219C31.4511 8.47223 31.9269 10.4677 32.0863 13.6665",
1452
1454
  stroke: "currentColor",
1453
- strokeWidth: "2",
1455
+ strokeWidth: "3",
1454
1456
  strokeLinecap: "round"
1455
1457
  }
1456
1458
  )
@@ -1687,7 +1689,7 @@ var StyledSvg24 = styled(ark$1.svg);
1687
1689
  var AudioSpeakerIcon = (props) => /* @__PURE__ */ jsx(
1688
1690
  StyledSvg24,
1689
1691
  {
1690
- viewBox: "0 0 40 28",
1692
+ viewBox: "-10 -3 50 34",
1691
1693
  fill: "none",
1692
1694
  xmlns: "http://www.w3.org/2000/svg",
1693
1695
  width: "1em",
@@ -2773,6 +2775,368 @@ function ScenarioSettings({
2773
2775
  }
2774
2776
  ) });
2775
2777
  }
2778
+ var SETTING_BADGES = [
2779
+ { id: "conversation-flow", label: "Conversation Flow" },
2780
+ { id: "question-complexity", label: "Question Complexity" },
2781
+ { id: "response-pacing", label: "Response Pacing" },
2782
+ { id: "interview-tone", label: "Interview Tone" }
2783
+ ];
2784
+ var RECORDING_OPTIONS = [
2785
+ { value: "no-recording", label: "No Recording" },
2786
+ { value: "audio-only", label: "Record just audio" },
2787
+ { value: "video-audio", label: "Record video & audio" }
2788
+ ];
2789
+ var LEVEL_COLOR_PALETTE = {
2790
+ beginner: "primary",
2791
+ intermediate: "secondary",
2792
+ advanced: "tertiary"
2793
+ };
2794
+ var ALL_SECTION_IDS2 = [
2795
+ "scenario-settings",
2796
+ "audio-output",
2797
+ "mic-input",
2798
+ "av-recording",
2799
+ "display-timer",
2800
+ "hide-interviewers"
2801
+ ];
2802
+ function StudioControls({
2803
+ scenarioName,
2804
+ scenarioFocus,
2805
+ scenarioLevel,
2806
+ defaultAudioLevel = 75,
2807
+ defaultMicLevel = 75,
2808
+ defaultRecordingMode = "no-recording",
2809
+ defaultShowTimer = true,
2810
+ defaultHideInterviewers = false,
2811
+ onAudioLevelChange,
2812
+ onMicLevelChange,
2813
+ onRecordingModeChange,
2814
+ onTimerChange,
2815
+ onInterviewersChange
2816
+ }) {
2817
+ const styles = studioControls();
2818
+ const [audioLevel, setAudioLevel] = useState(defaultAudioLevel);
2819
+ const [micLevel, setMicLevel] = useState(defaultMicLevel);
2820
+ const levelLabel = scenarioLevel.charAt(0).toUpperCase() + scenarioLevel.slice(1);
2821
+ return /* @__PURE__ */ jsx("div", { className: styles.root, children: /* @__PURE__ */ jsxs(Root6, { defaultValue: ALL_SECTION_IDS2, multiple: true, variant: "plain", children: [
2822
+ /* @__PURE__ */ jsxs(Item, { value: "scenario-settings", className: styles.section, children: [
2823
+ /* @__PURE__ */ jsxs(
2824
+ ItemTrigger,
2825
+ {
2826
+ className: styles.sectionTrigger,
2827
+ css: {
2828
+ fontSize: "lg",
2829
+ fontWeight: "medium",
2830
+ borderRadius: "0",
2831
+ py: "4",
2832
+ bg: "neutral.1",
2833
+ color: "onSurface"
2834
+ },
2835
+ children: [
2836
+ /* @__PURE__ */ jsx("span", { className: styles.triggerIcon, children: /* @__PURE__ */ jsx(ScenarioIcon, {}) }),
2837
+ /* @__PURE__ */ jsx("span", { className: styles.triggerLabel, children: "Scenario Settings" }),
2838
+ /* @__PURE__ */ jsx(
2839
+ ItemIndicator,
2840
+ {
2841
+ className: styles.sectionIndicator,
2842
+ css: { color: "primary.7" }
2843
+ }
2844
+ )
2845
+ ]
2846
+ }
2847
+ ),
2848
+ /* @__PURE__ */ jsx(ItemContent, { className: styles.sectionContent, children: /* @__PURE__ */ jsxs("div", { className: styles.infoPanel, children: [
2849
+ /* @__PURE__ */ jsxs("div", { className: styles.scenarioMeta, children: [
2850
+ /* @__PURE__ */ jsx("p", { className: styles.scenarioName, children: scenarioName }),
2851
+ /* @__PURE__ */ jsxs("p", { className: styles.scenarioFocus, children: [
2852
+ /* @__PURE__ */ jsx("strong", { children: "Focus" }),
2853
+ ": ",
2854
+ scenarioFocus
2855
+ ] })
2856
+ ] }),
2857
+ /* @__PURE__ */ jsxs("div", { className: styles.settingsCard, children: [
2858
+ /* @__PURE__ */ jsx("p", { className: styles.settingsCardHeading, children: "Scenario Settings" }),
2859
+ /* @__PURE__ */ jsx("div", { className: styles.settingsList, children: SETTING_BADGES.map((badge2) => /* @__PURE__ */ jsxs("div", { className: styles.settingsRow, children: [
2860
+ /* @__PURE__ */ jsxs("span", { className: styles.settingsRowLabel, children: [
2861
+ badge2.label,
2862
+ ":"
2863
+ ] }),
2864
+ /* @__PURE__ */ jsx(
2865
+ Badge,
2866
+ {
2867
+ variant: "rating",
2868
+ colorPalette: LEVEL_COLOR_PALETTE[scenarioLevel],
2869
+ size: "md",
2870
+ children: levelLabel
2871
+ }
2872
+ )
2873
+ ] }, badge2.id)) })
2874
+ ] })
2875
+ ] }) })
2876
+ ] }),
2877
+ /* @__PURE__ */ jsxs(Item, { value: "audio-output", className: styles.section, children: [
2878
+ /* @__PURE__ */ jsxs(
2879
+ ItemTrigger,
2880
+ {
2881
+ className: styles.sectionTrigger,
2882
+ css: {
2883
+ fontSize: "lg",
2884
+ fontWeight: "medium",
2885
+ borderRadius: "0",
2886
+ py: "4",
2887
+ bg: "neutral.1",
2888
+ color: "onSurface"
2889
+ },
2890
+ children: [
2891
+ /* @__PURE__ */ jsx("span", { className: styles.triggerIcon, children: /* @__PURE__ */ jsx(AudioSpeakerIcon, {}) }),
2892
+ /* @__PURE__ */ jsx("span", { className: styles.triggerLabel, children: "Audio Output" }),
2893
+ /* @__PURE__ */ jsx(
2894
+ ItemIndicator,
2895
+ {
2896
+ className: styles.sectionIndicator,
2897
+ css: { color: "primary.7" }
2898
+ }
2899
+ )
2900
+ ]
2901
+ }
2902
+ ),
2903
+ /* @__PURE__ */ jsx(ItemContent, { className: styles.sectionContent, children: /* @__PURE__ */ jsxs("div", { className: styles.sliderPanel, children: [
2904
+ /* @__PURE__ */ jsxs("div", { className: styles.sliderLabel, children: [
2905
+ /* @__PURE__ */ jsx("span", { className: styles.sliderLabelText, children: "Volume" }),
2906
+ /* @__PURE__ */ jsxs("span", { className: styles.levelBadge, children: [
2907
+ audioLevel,
2908
+ "%"
2909
+ ] })
2910
+ ] }),
2911
+ /* @__PURE__ */ jsx(
2912
+ Root12,
2913
+ {
2914
+ min: 0,
2915
+ max: 100,
2916
+ value: [audioLevel],
2917
+ colorPalette: "tertiary",
2918
+ onValueChange: ({ value }) => {
2919
+ const next = value[0] ?? audioLevel;
2920
+ setAudioLevel(next);
2921
+ onAudioLevelChange?.(next);
2922
+ },
2923
+ children: /* @__PURE__ */ jsxs(Control4, { className: styles.sliderTrack, children: [
2924
+ /* @__PURE__ */ jsx(Track, { children: /* @__PURE__ */ jsx(Range, {}) }),
2925
+ /* @__PURE__ */ jsx(Thumbs, {})
2926
+ ] })
2927
+ }
2928
+ )
2929
+ ] }) })
2930
+ ] }),
2931
+ /* @__PURE__ */ jsxs(Item, { value: "mic-input", className: styles.section, children: [
2932
+ /* @__PURE__ */ jsxs(
2933
+ ItemTrigger,
2934
+ {
2935
+ className: styles.sectionTrigger,
2936
+ css: {
2937
+ fontSize: "lg",
2938
+ fontWeight: "medium",
2939
+ borderRadius: "0",
2940
+ py: "4",
2941
+ bg: "neutral.1",
2942
+ color: "onSurface"
2943
+ },
2944
+ children: [
2945
+ /* @__PURE__ */ jsx("span", { className: styles.triggerIcon, children: /* @__PURE__ */ jsx(MicrophoneIcon, {}) }),
2946
+ /* @__PURE__ */ jsx("span", { className: styles.triggerLabel, children: "Microphone Input" }),
2947
+ /* @__PURE__ */ jsx(
2948
+ ItemIndicator,
2949
+ {
2950
+ className: styles.sectionIndicator,
2951
+ css: { color: "primary.7" }
2952
+ }
2953
+ )
2954
+ ]
2955
+ }
2956
+ ),
2957
+ /* @__PURE__ */ jsx(ItemContent, { className: styles.sectionContent, children: /* @__PURE__ */ jsxs("div", { className: styles.sliderPanel, children: [
2958
+ /* @__PURE__ */ jsxs("div", { className: styles.sliderLabel, children: [
2959
+ /* @__PURE__ */ jsx("span", { className: styles.sliderLabelText, children: "Mic Gain" }),
2960
+ /* @__PURE__ */ jsxs("span", { className: styles.levelBadge, children: [
2961
+ micLevel,
2962
+ "%"
2963
+ ] })
2964
+ ] }),
2965
+ /* @__PURE__ */ jsx(
2966
+ Root12,
2967
+ {
2968
+ min: 0,
2969
+ max: 100,
2970
+ value: [micLevel],
2971
+ colorPalette: "tertiary",
2972
+ onValueChange: ({ value }) => {
2973
+ const next = value[0] ?? micLevel;
2974
+ setMicLevel(next);
2975
+ onMicLevelChange?.(next);
2976
+ },
2977
+ children: /* @__PURE__ */ jsxs(Control4, { className: styles.sliderTrack, children: [
2978
+ /* @__PURE__ */ jsx(Track, { children: /* @__PURE__ */ jsx(Range, {}) }),
2979
+ /* @__PURE__ */ jsx(Thumbs, {})
2980
+ ] })
2981
+ }
2982
+ )
2983
+ ] }) })
2984
+ ] }),
2985
+ /* @__PURE__ */ jsxs(Item, { value: "av-recording", className: styles.section, children: [
2986
+ /* @__PURE__ */ jsxs(
2987
+ ItemTrigger,
2988
+ {
2989
+ className: styles.sectionTrigger,
2990
+ css: {
2991
+ fontSize: "lg",
2992
+ fontWeight: "medium",
2993
+ borderRadius: "0",
2994
+ py: "4",
2995
+ bg: "neutral.1",
2996
+ color: "onSurface"
2997
+ },
2998
+ children: [
2999
+ /* @__PURE__ */ jsx("span", { className: styles.triggerIcon, children: /* @__PURE__ */ jsx(RecordIcon, {}) }),
3000
+ /* @__PURE__ */ jsx("span", { className: styles.triggerLabel, children: "A/V Recording" }),
3001
+ /* @__PURE__ */ jsx(
3002
+ ItemIndicator,
3003
+ {
3004
+ className: styles.sectionIndicator,
3005
+ css: { color: "primary.7" }
3006
+ }
3007
+ )
3008
+ ]
3009
+ }
3010
+ ),
3011
+ /* @__PURE__ */ jsx(ItemContent, { className: styles.sectionContent, children: /* @__PURE__ */ jsx("div", { className: styles.radioPanel, children: /* @__PURE__ */ jsx(
3012
+ Root10,
3013
+ {
3014
+ defaultValue: defaultRecordingMode,
3015
+ colorPalette: "primary",
3016
+ onValueChange: ({ value }) => {
3017
+ if (!value) return;
3018
+ onRecordingModeChange?.(value);
3019
+ },
3020
+ css: { gap: "3" },
3021
+ children: RECORDING_OPTIONS.map((option) => /* @__PURE__ */ jsxs(Item2, { value: option.value, children: [
3022
+ /* @__PURE__ */ jsx(
3023
+ ItemControl,
3024
+ {
3025
+ css: {
3026
+ boxShadow: "none",
3027
+ borderWidth: "1px",
3028
+ borderStyle: "solid",
3029
+ borderColor: "primary.7",
3030
+ _checked: {
3031
+ bg: "m3Primary.container",
3032
+ borderColor: "primary.7",
3033
+ _after: { bg: "primary.7" }
3034
+ }
3035
+ }
3036
+ }
3037
+ ),
3038
+ /* @__PURE__ */ jsx(
3039
+ ItemText,
3040
+ {
3041
+ css: { fontSize: "md", fontWeight: "medium" },
3042
+ children: option.label
3043
+ }
3044
+ ),
3045
+ /* @__PURE__ */ jsx(ItemHiddenInput, {})
3046
+ ] }, option.value))
3047
+ }
3048
+ ) }) })
3049
+ ] }),
3050
+ /* @__PURE__ */ jsxs(Item, { value: "display-timer", className: styles.section, children: [
3051
+ /* @__PURE__ */ jsxs(
3052
+ ItemTrigger,
3053
+ {
3054
+ className: styles.sectionTrigger,
3055
+ css: {
3056
+ fontSize: "lg",
3057
+ fontWeight: "medium",
3058
+ borderRadius: "0",
3059
+ py: "4",
3060
+ bg: "neutral.1",
3061
+ color: "onSurface"
3062
+ },
3063
+ children: [
3064
+ /* @__PURE__ */ jsx("span", { className: styles.triggerIcon, children: /* @__PURE__ */ jsx(TimerIcon, {}) }),
3065
+ /* @__PURE__ */ jsx("span", { className: styles.triggerLabel, children: "Display Timer" }),
3066
+ /* @__PURE__ */ jsx(
3067
+ ItemIndicator,
3068
+ {
3069
+ className: styles.sectionIndicator,
3070
+ css: { color: "primary.7" }
3071
+ }
3072
+ )
3073
+ ]
3074
+ }
3075
+ ),
3076
+ /* @__PURE__ */ jsx(ItemContent, { className: styles.sectionContent, children: /* @__PURE__ */ jsxs("div", { className: styles.togglePanel, children: [
3077
+ /* @__PURE__ */ jsx("p", { className: styles.toggleDescription, children: "Hide timer to create more realistic interview" }),
3078
+ /* @__PURE__ */ jsxs(
3079
+ Root5,
3080
+ {
3081
+ colorPalette: "primary",
3082
+ defaultChecked: defaultShowTimer,
3083
+ onCheckedChange: ({ checked }) => {
3084
+ onTimerChange?.(checked);
3085
+ },
3086
+ children: [
3087
+ /* @__PURE__ */ jsx(Control, {}),
3088
+ /* @__PURE__ */ jsx(HiddenInput, {})
3089
+ ]
3090
+ }
3091
+ )
3092
+ ] }) })
3093
+ ] }),
3094
+ /* @__PURE__ */ jsxs(Item, { value: "hide-interviewers", className: styles.section, children: [
3095
+ /* @__PURE__ */ jsxs(
3096
+ ItemTrigger,
3097
+ {
3098
+ className: styles.sectionTrigger,
3099
+ css: {
3100
+ fontSize: "lg",
3101
+ fontWeight: "medium",
3102
+ borderRadius: "0",
3103
+ py: "4",
3104
+ bg: "neutral.1",
3105
+ color: "onSurface"
3106
+ },
3107
+ children: [
3108
+ /* @__PURE__ */ jsx("span", { className: styles.triggerIcon, children: /* @__PURE__ */ jsx(AudienceIcon, {}) }),
3109
+ /* @__PURE__ */ jsx("span", { className: styles.triggerLabel, children: "Hide Interviewers" }),
3110
+ /* @__PURE__ */ jsx(
3111
+ ItemIndicator,
3112
+ {
3113
+ className: styles.sectionIndicator,
3114
+ css: { color: "primary.7" }
3115
+ }
3116
+ )
3117
+ ]
3118
+ }
3119
+ ),
3120
+ /* @__PURE__ */ jsx(ItemContent, { className: styles.sectionContent, children: /* @__PURE__ */ jsxs("div", { className: styles.togglePanel, children: [
3121
+ /* @__PURE__ */ jsx("p", { className: styles.toggleDescription, children: "Switch off to hide video of interviewers if it is too distracting" }),
3122
+ /* @__PURE__ */ jsxs(
3123
+ Root5,
3124
+ {
3125
+ colorPalette: "primary",
3126
+ defaultChecked: defaultHideInterviewers,
3127
+ onCheckedChange: ({ checked }) => {
3128
+ onInterviewersChange?.(checked);
3129
+ },
3130
+ children: [
3131
+ /* @__PURE__ */ jsx(Control, {}),
3132
+ /* @__PURE__ */ jsx(HiddenInput, {})
3133
+ ]
3134
+ }
3135
+ )
3136
+ ] }) })
3137
+ ] })
3138
+ ] }) });
3139
+ }
2776
3140
  var dialogContentClass = css({
2777
3141
  width: "full",
2778
3142
  maxWidth: "560px",
@@ -3116,6 +3480,6 @@ function ScenarioQueue({
3116
3480
  ] });
3117
3481
  }
3118
3482
 
3119
- export { AbsoluteCenter_exports, Accordion_exports, AccountIcon, AddScenarioDialog, AudienceIcon, AudioSpeakerIcon, Avatar_exports, Badge, BookmarkPlusIcon, Breadcrumb_exports, Button, ButtonGroup, Card_exports, Checkbox_exports, ChevronUpDownIcon, ChevronUpIcon, ClipBoardIcon, ClockIcon, CloseButton_exports, ContentCard_exports, DashboardIcon, Dialog_exports, DiscourserLogo, Divider, Drawer_exports, ExitStudioIcon, GripDotsVerticalIcon, Group_exports, Header, HelpIcon, IconButton, Icon_exports, Input, InputAddon, InputGroup2 as InputGroup, LoginIcon, LogoutIcon, MicrophoneIcon, NavigationMenu, NotebookIcon, NotebookPenIcon, PausePlayIcon, PlayIcon, Popover_exports, Progress_exports, RadioGroup_exports, RecordIcon, RepeatQuestionIcon, RightArrowIcon, ScenarioCard, ScenarioIcon, ScenarioQueue, ScenarioSettings, ScrollTextIcon, Select_exports, SettingsPopover, Skeleton_exports, Slider_exports, SparklesIcon, SpeechIcon, Spinner, Stepper, StopPlayIcon, Switch_exports, Tabs_exports, Textarea, TimerIcon, Toaster, Tooltip_exports, UserProfileIcon, difficultyColorMap, difficultyLabel, toaster };
3120
- //# sourceMappingURL=chunk-VN2QX6S7.js.map
3121
- //# sourceMappingURL=chunk-VN2QX6S7.js.map
3483
+ export { AbsoluteCenter_exports, Accordion_exports, AccountIcon, AddScenarioDialog, AudienceIcon, AudioSpeakerIcon, Avatar_exports, Badge, BookmarkPlusIcon, Breadcrumb_exports, Button, ButtonGroup, Card_exports, Checkbox_exports, ChevronUpDownIcon, ChevronUpIcon, ClipBoardIcon, ClockIcon, CloseButton_exports, ContentCard_exports, DashboardIcon, Dialog_exports, DiscourserLogo, Divider, Drawer_exports, ExitStudioIcon, GripDotsVerticalIcon, Group_exports, Header, HelpIcon, IconButton, Icon_exports, Input, InputAddon, InputGroup2 as InputGroup, LoginIcon, LogoutIcon, MicrophoneIcon, NavigationMenu, NotebookIcon, NotebookPenIcon, PausePlayIcon, PlayIcon, Popover_exports, Progress_exports, RadioGroup_exports, RecordIcon, RepeatQuestionIcon, RightArrowIcon, ScenarioCard, ScenarioIcon, ScenarioQueue, ScenarioSettings, ScrollTextIcon, Select_exports, SettingsPopover, Skeleton_exports, Slider_exports, SparklesIcon, SpeechIcon, Spinner, Stepper, StopPlayIcon, StudioControls, Switch_exports, Tabs_exports, Textarea, TimerIcon, Toaster, Tooltip_exports, UserProfileIcon, difficultyColorMap, difficultyLabel, toaster };
3484
+ //# sourceMappingURL=chunk-UHSL4N44.js.map
3485
+ //# sourceMappingURL=chunk-UHSL4N44.js.map