wizr-quiz 1.0.2 → 3.0.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.
package/dist/index.d.ts CHANGED
@@ -7,8 +7,111 @@ interface IQuizProps {
7
7
  onQuizComplete: () => Promise<void>;
8
8
  baseURL: string;
9
9
  token: string;
10
+ theme?: QuizTheme;
11
+ direction?: string;
12
+ handleClose?: () => void;
10
13
  }
14
+ interface QuizTheme {
15
+ colors?: {
16
+ primary?: string;
17
+ secondary?: string;
18
+ background?: string;
19
+ surface?: string;
20
+ text?: {
21
+ primary?: string;
22
+ secondary?: string;
23
+ };
24
+ button?: {
25
+ primary?: string;
26
+ primaryText?: string;
27
+ secondary?: string;
28
+ secondaryText?: string;
29
+ disabled?: string;
30
+ disabledText?: string;
31
+ };
32
+ option?: {
33
+ background?: string;
34
+ hover?: string;
35
+ selected?: string;
36
+ border?: string;
37
+ text?: string;
38
+ };
39
+ border?: string;
40
+ scrollButton?: string;
41
+ };
42
+ typography?: {
43
+ fontFamily?: string;
44
+ fontSize?: {
45
+ small?: string;
46
+ medium?: string;
47
+ large?: string;
48
+ xlarge?: string;
49
+ };
50
+ fontWeight?: {
51
+ normal?: string;
52
+ medium?: string;
53
+ bold?: string;
54
+ };
55
+ lineHeight?: {
56
+ small?: string;
57
+ medium?: string;
58
+ large?: string;
59
+ };
60
+ };
61
+ spacing?: {
62
+ small?: string;
63
+ medium?: string;
64
+ large?: string;
65
+ xlarge?: string;
66
+ };
67
+ borderRadius?: {
68
+ small?: string;
69
+ medium?: string;
70
+ large?: string;
71
+ };
72
+ transitions?: {
73
+ fast?: string;
74
+ medium?: string;
75
+ slow?: string;
76
+ };
77
+ loader?: {
78
+ background?: string;
79
+ spinnerColor?: string;
80
+ spinnerBorder?: string;
81
+ };
82
+ endScreen?: {
83
+ background?: string;
84
+ textColor?: string;
85
+ closeColor?: string;
86
+ fontSize?: string;
87
+ fontWeight?: string;
88
+ fontFamily?: string;
89
+ };
90
+ tabSwitchModal?: {
91
+ background?: string;
92
+ textColor?: string;
93
+ closeColor?: string;
94
+ textSecondaryColor?: string;
95
+ iconColor?: string;
96
+ buttonBackground?: string;
97
+ buttonTextColor?: string;
98
+ buttonHoverBackground?: string;
99
+ buttonHoverTextColor?: string;
100
+ fontFamily?: string;
101
+ textFontSize?: string;
102
+ buttonFontSize?: string;
103
+ padding?: string;
104
+ headerMargin?: string;
105
+ textMargin?: string;
106
+ buttonPadding?: string;
107
+ borderRadius?: string;
108
+ buttonBorderRadius?: string;
109
+ buttonTransition?: string;
110
+ };
111
+ }
112
+
113
+ declare const Quiz: ({ quizId, userId, tabSwitchLimit, onQuizComplete, baseURL, token, theme, direction, handleClose, }: IQuizProps) => react_jsx_runtime.JSX.Element | null;
11
114
 
12
- declare const Quiz: ({ quizId, userId, tabSwitchLimit, onQuizComplete, baseURL, token, }: IQuizProps) => react_jsx_runtime.JSX.Element | null;
115
+ declare const FrontlineQuiz: ({ quizId, userId, tabSwitchLimit, onQuizComplete, baseURL, token, theme, direction, handleClose, }: IQuizProps) => react_jsx_runtime.JSX.Element | null;
13
116
 
14
- export { Quiz as default };
117
+ export { FrontlineQuiz as FrontlineQuizPlayer, Quiz as default };
package/dist/index.js CHANGED
@@ -1,10 +1 @@
1
- "use strict";var n=require("react");function e(n){var e=Object.create(null);return n&&Object.keys(n).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:function(){return n[t]}})}})),e.default=n,Object.freeze(e)}var t=e(n);function r(n,e,t,r){return new(t||(t=Promise))((function(o,i){function a(n){try{c(r.next(n))}catch(n){i(n)}}function s(n){try{c(r.throw(n))}catch(n){i(n)}}function c(n){var e;n.done?o(n.value):(e=n.value,e instanceof t?e:new t((function(n){n(e)}))).then(a,s)}c((r=r.apply(n,e||[])).next())}))}function o(n,e){var t,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=s(0),a.throw=s(1),a.return=s(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(t)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(t=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=e.call(n,i)}catch(n){s=[6,n],r=0}finally{t=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}"function"==typeof SuppressedError&&SuppressedError;var i,a={exports:{}},s={};var c,l,u={};
2
- /**
3
- * @license React
4
- * react-jsx-runtime.development.js
5
- *
6
- * Copyright (c) Facebook, Inc. and its affiliates.
7
- *
8
- * This source code is licensed under the MIT license found in the
9
- * LICENSE file in the root directory of this source tree.
10
- */function f(){return c||(c=1,"production"!==process.env.NODE_ENV&&function(){var e=n,t=Symbol.for("react.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),f=Symbol.for("react.suspense"),p=Symbol.for("react.suspense_list"),d=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),h=Symbol.for("react.offscreen"),y=Symbol.iterator;var b=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function g(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),r=1;r<e;r++)t[r-1]=arguments[r];!function(n,e,t){var r=b.ReactDebugCurrentFrame,o=r.getStackAddendum();""!==o&&(e+="%s",t=t.concat([o]));var i=t.map((function(n){return String(n)}));i.unshift("Warning: "+e),Function.prototype.apply.call(console[n],console,i)}("error",n,t)}var v;function x(n){return n.displayName||"Context"}function w(n){if(null==n)return null;if("number"==typeof n.tag&&g("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),"function"==typeof n)return n.displayName||n.name||null;if("string"==typeof n)return n;switch(n){case o:return"Fragment";case r:return"Portal";case a:return"Profiler";case i:return"StrictMode";case f:return"Suspense";case p:return"SuspenseList"}if("object"==typeof n)switch(n.$$typeof){case c:return x(n)+".Consumer";case s:return x(n._context)+".Provider";case l:return function(n,e,t){var r=n.displayName;if(r)return r;var o=e.displayName||e.name||"";return""!==o?t+"("+o+")":t}(n,n.render,"ForwardRef");case d:var e=n.displayName||null;return null!==e?e:w(n.type)||"Memo";case m:var t=n,u=t._payload,h=t._init;try{return w(h(u))}catch(n){return null}}return null}v=Symbol.for("react.module.reference");var k,j,E,S,z,_,O,N=Object.assign,P=0;function R(){}R.__reactDisabledLog=!0;var T,q=b.ReactCurrentDispatcher;function C(n,e,t){if(void 0===T)try{throw Error()}catch(n){var r=n.stack.trim().match(/\n( *(at )?)/);T=r&&r[1]||""}return"\n"+T+n}var L,I=!1,D="function"==typeof WeakMap?WeakMap:Map;function $(n,e){if(!n||I)return"";var t,r=L.get(n);if(void 0!==r)return r;I=!0;var o,i=Error.prepareStackTrace;Error.prepareStackTrace=void 0,o=q.current,q.current=null,function(){if(0===P){k=console.log,j=console.info,E=console.warn,S=console.error,z=console.group,_=console.groupCollapsed,O=console.groupEnd;var n={configurable:!0,enumerable:!0,value:R,writable:!0};Object.defineProperties(console,{info:n,log:n,warn:n,error:n,group:n,groupCollapsed:n,groupEnd:n})}P++}();try{if(e){var a=function(){throw Error()};if(Object.defineProperty(a.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(a,[])}catch(n){t=n}Reflect.construct(n,[],a)}else{try{a.call()}catch(n){t=n}n.call(a.prototype)}}else{try{throw Error()}catch(n){t=n}n()}}catch(e){if(e&&t&&"string"==typeof e.stack){for(var s=e.stack.split("\n"),c=t.stack.split("\n"),l=s.length-1,u=c.length-1;l>=1&&u>=0&&s[l]!==c[u];)u--;for(;l>=1&&u>=0;l--,u--)if(s[l]!==c[u]){if(1!==l||1!==u)do{if(l--,--u<0||s[l]!==c[u]){var f="\n"+s[l].replace(" at new "," at ");return n.displayName&&f.includes("<anonymous>")&&(f=f.replace("<anonymous>",n.displayName)),"function"==typeof n&&L.set(n,f),f}}while(l>=1&&u>=0);break}}}finally{I=!1,q.current=o,function(){if(0==--P){var n={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:N({},n,{value:k}),info:N({},n,{value:j}),warn:N({},n,{value:E}),error:N({},n,{value:S}),group:N({},n,{value:z}),groupCollapsed:N({},n,{value:_}),groupEnd:N({},n,{value:O})})}P<0&&g("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=i}var p=n?n.displayName||n.name:"",d=p?C(p):"";return"function"==typeof n&&L.set(n,d),d}function F(n,e,t){if(null==n)return"";if("function"==typeof n)return $(n,!(!(r=n.prototype)||!r.isReactComponent));var r;if("string"==typeof n)return C(n);switch(n){case f:return C("Suspense");case p:return C("SuspenseList")}if("object"==typeof n)switch(n.$$typeof){case l:return $(n.render,!1);case d:return F(n.type,e,t);case m:var o=n,i=o._payload,a=o._init;try{return F(a(i),e,t)}catch(n){}}return""}L=new D;var A=Object.prototype.hasOwnProperty,B={},M=b.ReactDebugCurrentFrame;function W(n){if(n){var e=n._owner,t=F(n.type,n._source,e?e.type:null);M.setExtraStackFrame(t)}else M.setExtraStackFrame(null)}var U=Array.isArray;function H(n){return U(n)}function Y(n){return""+n}function V(n){if(function(n){try{return Y(n),!1}catch(n){return!0}}(n))return g("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(n){return"function"==typeof Symbol&&Symbol.toStringTag&&n[Symbol.toStringTag]||n.constructor.name||"Object"}(n)),Y(n)}var K,J,Q=b.ReactCurrentOwner,X={key:!0,ref:!0,__self:!0,__source:!0};function G(n,e,r,o,i){var a,s={},c=null,l=null;for(a in void 0!==r&&(V(r),c=""+r),function(n){if(A.call(n,"key")){var e=Object.getOwnPropertyDescriptor(n,"key").get;if(e&&e.isReactWarning)return!1}return void 0!==n.key}(e)&&(V(e.key),c=""+e.key),function(n){if(A.call(n,"ref")){var e=Object.getOwnPropertyDescriptor(n,"ref").get;if(e&&e.isReactWarning)return!1}return void 0!==n.ref}(e)&&(l=e.ref,function(n){"string"==typeof n.ref&&Q.current}(e)),e)A.call(e,a)&&!X.hasOwnProperty(a)&&(s[a]=e[a]);if(n&&n.defaultProps){var u=n.defaultProps;for(a in u)void 0===s[a]&&(s[a]=u[a])}if(c||l){var f="function"==typeof n?n.displayName||n.name||"Unknown":n;c&&function(n,e){var t=function(){K||(K=!0,g("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",e))};t.isReactWarning=!0,Object.defineProperty(n,"key",{get:t,configurable:!0})}(s,f),l&&function(n,e){var t=function(){J||(J=!0,g("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",e))};t.isReactWarning=!0,Object.defineProperty(n,"ref",{get:t,configurable:!0})}(s,f)}return function(n,e,r,o,i,a,s){var c={$$typeof:t,type:n,key:e,ref:r,props:s,_owner:a,_store:{}};return Object.defineProperty(c._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(c,"_self",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(c,"_source",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c}(n,c,l,i,o,Q.current,s)}var Z,nn=b.ReactCurrentOwner,en=b.ReactDebugCurrentFrame;function tn(n){if(n){var e=n._owner,t=F(n.type,n._source,e?e.type:null);en.setExtraStackFrame(t)}else en.setExtraStackFrame(null)}function rn(n){return"object"==typeof n&&null!==n&&n.$$typeof===t}function on(){if(nn.current){var n=w(nn.current.type);if(n)return"\n\nCheck the render method of `"+n+"`."}return""}Z=!1;var an={};function sn(n,e){if(n._store&&!n._store.validated&&null==n.key){n._store.validated=!0;var t=function(n){var e=on();if(!e){var t="string"==typeof n?n:n.displayName||n.name;t&&(e="\n\nCheck the top-level render call using <"+t+">.")}return e}(e);if(!an[t]){an[t]=!0;var r="";n&&n._owner&&n._owner!==nn.current&&(r=" It was passed a child from "+w(n._owner.type)+"."),tn(n),g('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,r),tn(null)}}}function cn(n,e){if("object"==typeof n)if(H(n))for(var t=0;t<n.length;t++){var r=n[t];rn(r)&&sn(r,e)}else if(rn(n))n._store&&(n._store.validated=!0);else if(n){var o=function(n){if(null===n||"object"!=typeof n)return null;var e=y&&n[y]||n["@@iterator"];return"function"==typeof e?e:null}(n);if("function"==typeof o&&o!==n.entries)for(var i,a=o.call(n);!(i=a.next()).done;)rn(i.value)&&sn(i.value,e)}}function ln(n){var e,t=n.type;if(null!=t&&"string"!=typeof t){if("function"==typeof t)e=t.propTypes;else{if("object"!=typeof t||t.$$typeof!==l&&t.$$typeof!==d)return;e=t.propTypes}if(e){var r=w(t);!function(n,e,t,r,o){var i=Function.call.bind(A);for(var a in n)if(i(n,a)){var s=void 0;try{if("function"!=typeof n[a]){var c=Error((r||"React class")+": "+t+" type `"+a+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof n[a]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw c.name="Invariant Violation",c}s=n[a](e,a,r,t,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){s=n}!s||s instanceof Error||(W(o),g("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",r||"React class",t,a,typeof s),W(null)),s instanceof Error&&!(s.message in B)&&(B[s.message]=!0,W(o),g("Failed %s type: %s",t,s.message),W(null))}}(e,n.props,"prop",r,n)}else if(void 0!==t.PropTypes&&!Z){Z=!0,g("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",w(t)||"Unknown")}"function"!=typeof t.getDefaultProps||t.getDefaultProps.isReactClassApproved||g("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}var un={};function fn(n,e,r,u,y,b){var x=function(n){return"string"==typeof n||"function"==typeof n||n===o||n===a||n===i||n===f||n===p||n===h||"object"==typeof n&&null!==n&&(n.$$typeof===m||n.$$typeof===d||n.$$typeof===s||n.$$typeof===c||n.$$typeof===l||n.$$typeof===v||void 0!==n.getModuleId)}(n);if(!x){var k="";(void 0===n||"object"==typeof n&&null!==n&&0===Object.keys(n).length)&&(k+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var j;k+=on(),null===n?j="null":H(n)?j="array":void 0!==n&&n.$$typeof===t?(j="<"+(w(n.type)||"Unknown")+" />",k=" Did you accidentally export a JSX literal instead of a component?"):j=typeof n,g("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",j,k)}var E=G(n,e,r,y,b);if(null==E)return E;if(x){var S=e.children;if(void 0!==S)if(u)if(H(S)){for(var z=0;z<S.length;z++)cn(S[z],n);Object.freeze&&Object.freeze(S)}else g("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else cn(S,n)}if(A.call(e,"key")){var _=w(n),O=Object.keys(e).filter((function(n){return"key"!==n})),N=O.length>0?"{key: someKey, "+O.join(": ..., ")+": ...}":"{key: someKey}";if(!un[_+N])g('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',N,_,O.length>0?"{"+O.join(": ..., ")+": ...}":"{}",_),un[_+N]=!0}return n===o?function(n){for(var e=Object.keys(n.props),t=0;t<e.length;t++){var r=e[t];if("children"!==r&&"key"!==r){tn(n),g("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",r),tn(null);break}}null!==n.ref&&(tn(n),g("Invalid attribute `ref` supplied to `React.Fragment`."),tn(null))}(E):ln(E),E}var pn=function(n,e,t){return fn(n,e,t,!1)},dn=function(n,e,t){return fn(n,e,t,!0)};u.Fragment=o,u.jsx=pn,u.jsxs=dn}()),u}var p=(l||(l=1,"production"===process.env.NODE_ENV?a.exports=function(){if(i)return s;i=1;var e=n,t=Symbol.for("react.element"),r=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,a=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function l(n,e,r){var i,s={},l=null,u=null;for(i in void 0!==r&&(l=""+r),void 0!==e.key&&(l=""+e.key),void 0!==e.ref&&(u=e.ref),e)o.call(e,i)&&!c.hasOwnProperty(i)&&(s[i]=e[i]);if(n&&n.defaultProps)for(i in e=n.defaultProps)void 0===s[i]&&(s[i]=e[i]);return{$$typeof:t,type:n,key:l,ref:u,props:s,_owner:a.current}}return s.Fragment=r,s.jsx=l,s.jsxs=l,s}():a.exports=f()),a.exports);function d(n,e){void 0===e&&(e={});var t=e.insertAt;if(n&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===t&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=n:o.appendChild(document.createTextNode(n))}}d('/* .questionHtmlWrapper ul {\n list-style-type: disc;\n padding-left: 1.5rem;\n list-style-position: inside;\n}\n\n.questionHtmlWrapper ol {\n list-style-type: disc;\n padding-left: 1.5rem;\n list-style-position: inside;\n} */\n\n.question-text {\n font-size: 1.15rem;\n font-weight: 600;\n color: #161c20;\n font-family: "Patron", sans-serif;\n line-height: 25px;\n}\n\ncode {\n font-size: 0.8rem;\n font-weight: normal;\n}\n\n@media (max-width: 1320px) {\n .question-text {\n font-size: 1rem;\n }\n .questionHtmlWrapper code {\n font-size: 0.8rem;\n }\n}\n\n@media (max-width: 768px) {\n .question-text {\n font-size: 0.95rem;\n line-height: 22px;\n }\n}\n');var m=function(n){var e=n.question;return p.jsx("div",{className:"question-html-wrapper",children:p.jsx("h2",{className:"question-text",dangerouslySetInnerHTML:{__html:e}})})};d('.options-container {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.option-btn {\n width: 100%;\n padding: 12px;\n border-radius: 8px;\n background: #ffffff;\n cursor: pointer;\n transition: 0.3s;\n color: #161c20;\n border: none;\n text-align: left;\n border: 1px solid #e7e7e7;\n}\n\n.option-btn:hover {\n background: #e1d8c9;\n}\n\n.option-btn.selected {\n background: #b59b7b;\n}\n\n.option-text {\n font-size: 1rem;\n font-weight: 500;\n line-height: 22px;\n letter-spacing: -0.1%;\n font-family: "Patron", sans-serif;\n}\n\n.option-image {\n max-width: 100%;\n height: auto;\n border-radius: 5px;\n}\n\n.option-code {\n background-color: #1e1e1e;\n color: white;\n padding: 8px;\n border-radius: 5px;\n}\n\n@media (max-width: 768px) {\n .option-text {\n font-size: 0.95rem;\n line-height: 21px;\n }\n\n .option-btn:hover {\n background: #b59b7b;\n }\n}\n');var h,y=function(n){var e=n.options,t=n.selectedOption,r=n.onSelect,o=n.loading;return p.jsx("div",{className:"options-container",children:e.map((function(n){return p.jsx("button",{disabled:o,className:"option-btn ".concat(t===n.id&&"selected"),onClick:function(){return r(n.id)},children:n.text&&p.jsx("span",{className:"option-text",children:n.text})},n.id)}))})};function b(){return b=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},b.apply(null,arguments)}var g=function(n){return t.createElement("svg",b({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none"},n),h||(h=t.createElement("path",{fill:"#1D1B21",d:"M8 2.5a6 6 0 1 0 6 6 6.006 6.006 0 0 0-6-6m2.854 3.854-2.5 2.5a.5.5 0 0 1-.708-.708l2.5-2.5a.5.5 0 1 1 .708.708M6 1a.5.5 0 0 1 .5-.5h3a.5.5 0 1 1 0 1h-3A.5.5 0 0 1 6 1"})))};d(".timer {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n");var v=function(e){var t=e.duration,r=e.markQuizComplete,o=e.isEndScreenOpen,i=n.useState(t),a=i[0],s=i[1],c=n.useRef(null);n.useEffect((function(){return c.current&&clearInterval(c.current),c.current=setInterval((function(){s((function(n){return n>0?n-1:0}))}),1e3),function(){c.current&&clearInterval(c.current)}}),[t]),n.useEffect((function(){0===a&&(r(),c.current&&clearInterval(c.current))}),[a,r]),n.useEffect((function(){o&&c.current&&clearInterval(c.current)}),[o]);var l,u,f;return p.jsxs("div",{className:"timer",children:[p.jsx(g,{}),p.jsx("span",{children:(l=a,u=Math.floor(l/60),f=l%60,"".concat(u,":").concat(f<10?"0":"").concat(f))})]})};d('/* Modal Background Overlay */\n.modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.6);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 1000;\n}\n\n/* Modal Box */\n.modal-content {\n background: #222;\n color: #fff;\n padding: 20px;\n border-radius: 10px;\n width: 400px;\n text-align: center;\n position: relative;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);\n}\n\n/* Close Button */\n.modal-close {\n position: absolute;\n top: 10px;\n right: 15px;\n background: none;\n border: none;\n font-size: 24px;\n color: #fff;\n cursor: pointer;\n font-family: "Patron", sans-serif;\n}\n\n/* Header */\n.modal-header {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin-bottom: 10px;\n font-family: "Patron", sans-serif;\n}\n\n/* Warning Icon */\n.modal-icon {\n font-size: 32px;\n color: #ffcc00;\n}\n\n/* Text */\n.modal-text {\n font-size: 14px;\n color: #ccc;\n margin-bottom: 20px;\n font-family: "Patron", sans-serif;\n}\n\n/* Button */\n.modal-button {\n background: #fff;\n color: #222;\n border: none;\n padding: 10px 20px;\n border-radius: 20px;\n font-size: 14px;\n cursor: pointer;\n transition: 0.3s;\n font-family: "Patron", sans-serif;\n}\n\n.modal-button:hover {\n background: #ddd;\n}\n');var x=function(n){var e=n.open,t=n.onClose;return e?p.jsx("div",{className:"modal-overlay",children:p.jsxs("div",{className:"modal-content",children:[p.jsx("button",{className:"modal-close",onClick:t,children:"×"}),p.jsxs("div",{className:"modal-header",children:[p.jsx("span",{className:"modal-icon",children:"⚠️"}),p.jsx("h2",{children:"Tab Switch Detected"})]}),p.jsx("p",{className:"modal-text",children:"Any further attempts to switch tabs or change browser windows will result in disqualification from the assessment."}),p.jsx("button",{className:"modal-button",onClick:t,children:"Understood"})]})}):null};d('.end-screen-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: #222;\n color: #fff;\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 1000;\n}\n\n/* Content */\n.end-screen-content {\n text-align: center;\n font-size: 20px;\n font-weight: bold;\n font-family: "Patron", sans-serif;\n}\n\n.end-screen-close {\n position: absolute;\n top: 20px;\n right: 20px;\n background: none;\n border: none;\n font-size: 24px;\n color: #fff;\n cursor: pointer;\n font-family: "Patron", sans-serif;\n}\n');var w,k,j,E=function(n){var e=n.open;return n.onClose,e?p.jsx("div",{className:"end-screen-overlay",children:p.jsx("div",{className:"end-screen-content",children:p.jsx("p",{children:"Your quiz has ended due to switching tabs too many times."})})}):null};function S(){return S=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},S.apply(null,arguments)}var z=function(n){return t.createElement("svg",S({xmlns:"http://www.w3.org/2000/svg",width:38,height:38,fill:"none"},n),w||(w=t.createElement("rect",{width:38,height:38,fill:"#151515",rx:19})),k||(k=t.createElement("g",{clipPath:"url(#downArrow_svg__a)"},t.createElement("path",{fill:"#fff",d:"M8.758 21.194c.037.14.145.36.234.492.09.136 2.138 2.222 4.556 4.636 5.035 5.03 4.594 4.655 5.452 4.655.427 0 .525-.015.727-.113.182-.094 1.18-1.06 4.725-4.594 2.47-2.465 4.546-4.57 4.612-4.678.145-.243.248-.623.248-.91 0-.454-.295-1.077-.637-1.335-.342-.263-.97-.399-1.397-.3-.534.122-.576.16-3.319 2.873-2.667 2.649-2.878 2.883-3.117 3.46-.08.201-.084-.043-.108-8.442l-.023-8.649-.127-.267a1.84 1.84 0 0 0-.796-.84c-.282-.154-.32-.159-.788-.159-.445 0-.516.015-.75.132-.464.239-.788.633-.919 1.12-.056.211-.065 1.608-.065 8.756v8.508l-.136-.281a3.7 3.7 0 0 0-.347-.563c-.117-.154-1.36-1.425-2.761-2.817-1.945-1.94-2.602-2.569-2.78-2.658-.914-.454-1.94-.13-2.376.75-.178.361-.22.83-.108 1.224"}))),j||(j=t.createElement("defs",null,t.createElement("clipPath",{id:"downArrow_svg__a"},t.createElement("path",{fill:"#fff",d:"M7 31V7h24v24z"})))))};d(".loader-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: black;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 9999;\n}\n\n.loader-spinner {\n border: 8px solid rgba(255, 255, 255, 0.2);\n border-top: 8px solid white;\n border-radius: 50%;\n width: 60px;\n height: 60px;\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n");var _=function(){return p.jsx("div",{className:"loader-overlay",children:p.jsx("div",{className:"loader-spinner"})})};d('* {\n box-sizing: border-box;\n}\n\n.quiz-page {\n position: fixed;\n background: white;\n width: 100vw;\n min-height: 100dvh;\n top: 0;\n left: 0;\n z-index: 100;\n box-sizing: border-box;\n overflow-y: auto; /* ensure scrolling works */\n display: flex;\n flex-direction: column;\n}\n\n.quiz-page-container {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-radius: 16px;\n margin: 24px 16px 0px 16px;\n height: 100%;\n background: #f8f5f2; /* Same background color */\n}\n\n/* Ticker stays in a row on all devices */\n.quiz-ticker {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px 20px;\n border-bottom: 1px solid #e1d8c9;\n}\n\n.quiz-ticker-right {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 2rem;\n padding-right: 2rem;\n}\n\n.quiz-container {\n flex-grow: 1;\n width: 100%;\n display: flex;\n flex-direction: row; /* side-by-side on desktop */\n align-items: flex-start;\n padding: 24px 56px 24px;\n border-radius: 10px;\n justify-content: space-between;\n box-sizing: border-box;\n max-width: 1600px;\n margin: 0 auto;\n max-height: 80dvh;\n overflow: auto;\n gap: 2rem;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n}\n\n.quiz-container::-webkit-scrollbar {\n display: none;\n}\n\n/* Left & Right columns on desktop */\n.quiz-left {\n width: 100%;\n max-width: 650px;\n overflow: auto;\n scrollbar-width: thin;\n scrollbar-color: #ccc transparent; /* thumb color, track color */\n}\n\n/* WebKit-based browsers (Chrome, Safari, Edge) */\n.quiz-left::-webkit-scrollbar {\n width: 6px; /* slim scrollbar */\n}\n\n.quiz-left::-webkit-scrollbar-thumb {\n background-color: #ccc; /* grey thumb */\n border-radius: 4px;\n}\n\n.quiz-left::-webkit-scrollbar-track {\n background: transparent; /* optional: transparent track */\n}\n\n.quiz-right {\n max-width: 622px;\n width: 100%;\n}\n\n.quiz-right-head {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.choose-option {\n font-size: 1rem;\n font-family: "Patron", sans-serif;\n font-weight: 500;\n line-height: 32px;\n letter-spacing: 0.2%;\n}\n\n.question-count {\n font-size: 0.9rem;\n font-family: "Patron", sans-serif;\n color: #161c20;\n font-weight: 500;\n line-height: 1.2rem;\n}\n\n.options-container {\n display: flex;\n flex-direction: column;\n gap: 18px;\n margin-top: 12px;\n}\n\n.mobile-next-btn {\n display: none;\n}\n\n/* Button Styles */\n.prev-btn,\n.next-btn {\n padding: 10px 54px;\n background: #000000;\n color: #ffffff;\n border: none;\n border-radius: 24px;\n cursor: pointer;\n transition: 0.3s;\n font-size: 0.9rem;\n font-weight: 500;\n font-family: "Patron", sans-serif;\n line-height: 21px;\n}\n\n.prev-btn {\n background: #5d4037;\n}\n\n.next-btn:disabled {\n background: #d7ccc8;\n cursor: not-allowed;\n}\n\n.scroll-down-btn {\n position: fixed;\n bottom: 20px;\n right: 20px;\n z-index: 999;\n border: none;\n border-radius: 50%;\n padding: 4px;\n cursor: pointer;\n font-size: 20px;\n transition: background 0.3s;\n}\n\n.bounce {\n animation: bounce 1.6s infinite;\n}\n\n@keyframes bounce {\n 0%,\n 20%,\n 50%,\n 80%,\n 100% {\n transform: translateY(0px);\n }\n 40% {\n transform: translateY(-4px);\n }\n 60% {\n transform: translateY(-2px);\n }\n}\n\n/* RESPONSIVE LAYOUT */\n@media (max-width: 768px) {\n /* Stack quiz content vertically on mobile */\n\n .quiz-page-container {\n flex-direction: column;\n padding: 16px;\n gap: 1rem;\n overflow-y: auto;\n margin: 0;\n border-radius: 0;\n }\n\n .quiz-container {\n flex-direction: column;\n padding: 0;\n justify-content: space-between;\n }\n\n .quiz-ticker {\n padding: 3px 20px;\n }\n\n .quiz-left {\n max-height: none;\n overflow: initial;\n }\n\n .quiz-ticker-right {\n padding-right: 0px;\n }\n\n .choose-option {\n font-size: 0.95rem;\n }\n /* Keep the ticker in a row at the top (no change) */\n\n /* Fix the next button at the bottom on mobile */\n .next-btn-container {\n display: none;\n }\n\n .mobile-next-btn {\n display: block;\n position: fixed;\n left: 0;\n bottom: 0;\n margin: 0 auto;\n text-align: center;\n z-index: 101;\n width: 100%;\n padding: 12px 0;\n border-top: 1px solid #dddddd;\n background: #f8f5f2; /* Same background color */\n }\n\n .next-btn {\n padding: 12px 72px;\n }\n\n .question-count {\n font-size: 0.95rem;\n }\n .option-btn {\n font-size: 0.8rem;\n padding: 10px;\n }\n}\n\n@media (max-width: 768px) and (max-height: 800px) {\n .quiz-container {\n padding-bottom: 65px;\n }\n}\n\n@media (max-width: 768px) and (max-height: 500px) {\n .quiz-container {\n padding-bottom: 100px;\n }\n}\n');d('/* Thin (100) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-thin.woff2") format("woff2");\n font-weight: 100;\n font-style: normal;\n font-display: swap;\n}\n\n/* Light (300) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-light.woff2") format("woff2");\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n}\n\n/* Regular (400) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-regular.woff2") format("woff2");\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n}\n\n/* Medium (500) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-medium.woff2") format("woff2");\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n}\n\n/* Bold (700) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-bold.woff2") format("woff2");\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n}\n');module.exports=function(e){var t=e.quizId,i=e.userId,a=e.tabSwitchLimit,s=e.onQuizComplete,c=e.baseURL,l=e.token,u=n.useState(!1),f=u[0],d=u[1],h=n.useState(0),b=h[0],g=h[1],w=n.useState(null),k=w[0],j=w[1],S=n.useState(null),O=S[0],N=S[1],P=n.useState(!1),R=P[0],T=P[1],q=n.useState(!1),C=q[0],L=q[1],I=n.useState(!1),D=I[0],$=I[1],F=function(e){void 0===e&&(e=3);var t=n.useState(0),r=t[0],o=t[1],i=n.useState(!1),a=i[0],s=i[1];return n.useEffect((function(){var n=function(){document.hidden&&o((function(n){return n+1}))};return document.addEventListener("visibilitychange",n),function(){document.removeEventListener("visibilitychange",n)}}),[]),n.useEffect((function(){r>=e&&s(!0)}),[r,e]),{switchCount:r,isLimitReached:a}}(a),A=F.isLimitReached,B=F.switchCount,M=n.useRef([]);n.useEffect((function(){var n=function(n){return n.preventDefault()},e=function(n){return n.preventDefault()},t=function(n){return n.preventDefault()};return document.addEventListener("copy",n),document.addEventListener("cut",n),document.addEventListener("paste",n),document.addEventListener("selectstart",e),document.addEventListener("contextmenu",t),function(){document.removeEventListener("copy",n),document.removeEventListener("cut",n),document.removeEventListener("paste",n),document.removeEventListener("selectstart",e),document.removeEventListener("contextmenu",t)}}),[]),n.useEffect((function(){r(void 0,void 0,void 0,(function(){var n;return o(this,(function(e){switch(e.label){case 0:return e.trys.push([0,3,,4]),[4,fetch("".concat(c,"/user-assessment/").concat(t,"/").concat(i,"/get-session-data"),{headers:{Authorization:"Bearer ".concat(l)}})];case 1:return[4,e.sent().json()];case 2:return n=e.sent(),N(n),[3,4];case 3:return e.sent(),[3,4];case 4:return[2]}}))}))}),[t,i]);var W=n.useRef(null),U=n.useState(!1),H=U[0],Y=U[1],V=n.useState(!1),K=V[0],J=V[1];n.useEffect((function(){if(O){var n=W.current;if(n){var e=function(){var e=n.scrollHeight>n.clientHeight,t=n.scrollTop+n.clientHeight>=n.scrollHeight-15;e?(t&&J(!0),Y(!t&&!K)):(Y(!1),J(!1))},t=requestAnimationFrame((function(){setTimeout(e,100)}));return n.addEventListener("scroll",e),window.addEventListener("resize",e),function(){cancelAnimationFrame(t),n.removeEventListener("scroll",e),window.removeEventListener("resize",e)}}}}),[O,b,K]);if(n.useEffect((function(){B>0&&B<3&&T(!0)}),[B]),n.useEffect((function(){A&&L(!0)}),[A]),n.useEffect((function(){return function(){M.current.forEach((function(n){return clearTimeout(n)})),M.current=[]}}),[]),!O)return p.jsx(_,{});function Q(){T(!1),L(!1)}var X=O.questions,G=function(n,e,t,i){return r(void 0,void 0,void 0,(function(){return o(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,fetch("".concat(c,"/user-assessment/").concat(n,"/").concat(t,"/").concat(e,"/submit-answer"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(l)},body:JSON.stringify({optionIds:[i]})})];case 1:case 2:return r.sent(),[3,3];case 3:return[2]}}))}))},Z=function(){return r(void 0,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return n.trys.push([0,4,,5]),[4,fetch("".concat(c,"/user-assessment/").concat(t,"/").concat(i,"/mark-quiz-complete"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(l)}})];case 1:return n.sent().ok?(d(!0),[4,s()]):[3,3];case 2:return n.sent(),[3,3];case 3:return[3,5];case 4:return n.sent(),[3,5];case 5:return[2]}}))}))},nn=function(){return r(void 0,void 0,void 0,(function(){var n;return o(this,(function(e){switch(e.label){case 0:if(!k)return[2];$(!0),e.label=1;case 1:return e.trys.push([1,,6,7]),[4,G(t,X[b].id,i,k)];case 2:return e.sent(),b!==X.length-1?[3,4]:[4,Z()];case 3:return e.sent(),[3,5];case 4:j(null),n=null===window||void 0===window?void 0:window.setTimeout((function(){g((function(n){return n+1}));var n=window.setTimeout((function(){J(!1)}),150);M.current.push(n)}),300),M.current.push(n),e.label=5;case 5:return[3,7];case 6:return n=null===window||void 0===window?void 0:window.setTimeout((function(){$(!1)}),300),M.current.push(n),[7];case 7:return[2]}}))}))};function en(){return D?"Submitting":b===X.length-1?"Submit":"Next"}return f?null:p.jsxs("div",{className:"quiz-page",children:[p.jsxs("div",{className:"quiz-page-container",children:[p.jsxs("div",{className:"quiz-ticker",children:[p.jsxs("h3",{className:"question-count",children:["Questions: ",b+1,"/",X.length]}),p.jsx("div",{className:"quiz-ticker-right",children:p.jsx(v,{markQuizComplete:Z,duration:O.duration,isEndScreenOpen:C})})]}),p.jsxs("div",{className:"quiz-container",ref:W,children:[p.jsx("div",{className:"quiz-left",children:p.jsx(m,{question:X[b].text})}),p.jsxs("div",{className:"quiz-right",children:[p.jsxs("div",{className:"quiz-right-head",children:[p.jsx("h3",{className:"choose-option",children:"Choose the right option"}),p.jsx("div",{className:"next-btn-container",children:p.jsx("button",{className:"next-btn",disabled:!k||D,onClick:nn,children:en()})}),p.jsx("div",{className:"mobile-next-btn",children:p.jsx("button",{className:"next-btn",disabled:!k||D,onClick:nn,children:en()})})]}),p.jsx(y,{loading:D,options:X[b].options,selectedOption:k,onSelect:j})]})]})]}),p.jsx(x,{open:R,onClose:Q}),p.jsx(E,{open:C,onClose:Q}),H&&p.jsx("button",{className:"scroll-down-btn bounce",onClick:function(){var n=W.current;n&&(n.scrollTo({top:n.scrollHeight+10,behavior:"smooth"}),J(!0),Y(!1))},children:p.jsx(z,{})})]})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=require("react/jsx-runtime"),e=require("react");function t(n){var e=Object.create(null);return n&&Object.keys(n).forEach((function(t){if("default"!==t){var o=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,o.get?o:{enumerable:!0,get:function(){return n[t]}})}})),e.default=n,Object.freeze(e)}var o=t(e),i=function(){return i=Object.assign||function(n){for(var e,t=1,o=arguments.length;t<o;t++)for(var i in e=arguments[t])Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i]);return n},i.apply(this,arguments)};function r(n,e,t,o){return new(t||(t=Promise))((function(i,r){function a(n){try{u(o.next(n))}catch(n){r(n)}}function l(n){try{u(o.throw(n))}catch(n){r(n)}}function u(n){var e;n.done?i(n.value):(e=n.value,e instanceof t?e:new t((function(n){n(e)}))).then(a,l)}u((o=o.apply(n,e||[])).next())}))}function a(n,e){var t,o,i,r={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=l(0),a.throw=l(1),a.return=l(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(u){return function(l){if(t)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(r=0)),r;)try{if(t=1,o&&(i=2&l[0]?o.return:l[0]?o.throw||((i=o.return)&&i.call(o),0):o.next)&&!(i=i.call(o,l[1])).done)return i;switch(o=0,i&&(l=[2&l[0],i.value]),l[0]){case 0:case 1:i=l;break;case 4:return r.label++,{value:l[1],done:!1};case 5:r.label++,o=l[1],l=[0];continue;case 7:l=r.ops.pop(),r.trys.pop();continue;default:if(!(i=r.trys,(i=i.length>0&&i[i.length-1])||6!==l[0]&&2!==l[0])){r=0;continue}if(3===l[0]&&(!i||l[1]>i[0]&&l[1]<i[3])){r.label=l[1];break}if(6===l[0]&&r.label<i[1]){r.label=i[1],i=l;break}if(i&&r.label<i[2]){r.label=i[2],r.ops.push(l);break}i[2]&&r.ops.pop(),r.trys.pop();continue}l=e.call(n,r)}catch(n){l=[6,n],o=0}finally{t=i=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,u])}}}function l(n,e){void 0===e&&(e={});var t=e.insertAt;if(n&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css","top"===t&&o.firstChild?o.insertBefore(i,o.firstChild):o.appendChild(i),i.styleSheet?i.styleSheet.cssText=n:i.appendChild(document.createTextNode(n))}}"function"==typeof SuppressedError&&SuppressedError;var u="question-module_questionHtmlWrapper__Twvia",s="question-module_questionText__T-h7Z";l('.question-module_questionHtmlWrapper__Twvia ul {\n list-style-type: disc;\n padding-left: 1.5rem;\n list-style-position: inside;\n}\n\n.question-module_questionHtmlWrapper__Twvia ol {\n list-style-type: disc;\n padding-left: 1.5rem;\n list-style-position: inside;\n}\n\n.question-module_questionText__T-h7Z {\n font-size: var(--quiz-font-size-large, 1.15rem);\n font-weight: var(--quiz-font-weight-bold, 600);\n color: var(--quiz-color-text-primary, #161c20);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: 25px;\n}\n\ncode {\n font-size: 0.8rem;\n font-weight: normal;\n}\n\n@media (max-width: 1320px) {\n .question-module_questionText__T-h7Z {\n font-size: var(--quiz-font-size-medium, 1rem);\n }\n .question-module_questionHtmlWrapper__Twvia code {\n font-size: 0.8rem;\n }\n}\n\n@media (max-width: 768px) {\n .question-module_questionText__T-h7Z {\n font-size: 0.95rem;\n line-height: 22px;\n }\n} ');var d=function(e){var t=e.question;return n.jsx("div",{className:u,children:n.jsx("h2",{className:s,dangerouslySetInnerHTML:{__html:t}})})},c="options-module_optionsContainer__atebx",f="options-module_optionBtn__LiVJD",m="options-module_selected__yvd2e",p="options-module_optionText__W2Nhm";l('.options-module_optionsContainer__atebx {\n display: flex;\n flex-direction: column;\n gap: 18px;\n margin-top: 12px;\n}\n\n.options-module_optionBtn__LiVJD {\n width: 100%;\n padding: 12px;\n border-radius: var(--quiz-border-radius-medium, 8px);\n background: var(--quiz-color-option-background, #ffffff);\n cursor: pointer;\n transition: var(--quiz-transition-medium, 0.3s);\n color: var(--quiz-color-option-text, #161c20);\n border: none;\n text-align: left;\n border: 1px solid var(--quiz-color-option-border, #e7e7e7);\n /* display: flex; */\n}\n\n.options-module_optionBtn__LiVJD:hover {\n background: var(--quiz-color-option-hover, #e1d8c9);\n}\n\n.options-module_optionBtn__LiVJD.options-module_selected__yvd2e {\n background: var(--quiz-color-option-selected, #b59b7b);\n}\n\n.options-module_optionText__W2Nhm {\n font-size: var(--quiz-font-size-medium, 1rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: 22px;\n letter-spacing: -0.1%;\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n}\n\n.options-module_optionImage__DNo-g {\n max-width: 100%;\n height: auto;\n border-radius: var(--quiz-border-radius-small, 4px);\n}\n\n.options-module_optionCode__UBsLe {\n background-color: #1e1e1e;\n color: white;\n padding: var(--quiz-spacing-small, 8px);\n border-radius: var(--quiz-border-radius-small, 4px);\n}\n\n@media (max-width: 768px) {\n .options-module_optionText__W2Nhm {\n font-size: 0.95rem;\n line-height: 21px;\n }\n\n .options-module_optionBtn__LiVJD:hover {\n background: var(--quiz-color-option-selected, #b59b7b);\n }\n} ');var h,v=function(e){var t=e.options,o=e.selectedOption,i=e.onSelect,r=e.loading,a=e.direction;return n.jsx("div",{className:c,children:null==t?void 0:t.map((function(e){return n.jsx("button",{disabled:r,className:"".concat(f," ").concat(o===e.id&&m),style:"rtl"===a?{textAlign:"unset"}:{},onClick:function(){return i(e.id)},children:e.text&&n.jsx("span",{className:p,children:e.text})},e.id)}))})};function g(){return g=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var o in t)({}).hasOwnProperty.call(t,o)&&(n[o]=t[o])}return n},g.apply(null,arguments)}var x=function(n){return o.createElement("svg",g({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none"},n),h||(h=o.createElement("path",{fill:"#1D1B21",d:"M8 2.5a6 6 0 1 0 6 6 6.006 6.006 0 0 0-6-6m2.854 3.854-2.5 2.5a.5.5 0 0 1-.708-.708l2.5-2.5a.5.5 0 1 1 .708.708M6 1a.5.5 0 0 1 .5-.5h3a.5.5 0 1 1 0 1h-3A.5.5 0 0 1 6 1"})))},_="timer-module_timer__J6Vp3";l('.timer-module_timer__J6Vp3 {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 8px;\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n font-size: var(--quiz-font-size-medium, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n color: var(--quiz-color-text-primary, #161c20);\n}\n\n.timer-module_timer__J6Vp3 span {\n color: var(--quiz-color-text-primary, #161c20);\n font-size: var(--quiz-font-size-medium, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n}\n\n.timer-module_timer__J6Vp3 svg {\n width: 18px;\n height: 18px;\n fill: var(--quiz-color-text-primary, #161c20);\n}\n\n@media (max-width: 768px) {\n .timer-module_timer__J6Vp3 {\n font-size: var(--quiz-font-size-small, 0.85rem);\n }\n \n .timer-module_timer__J6Vp3 span {\n font-size: var(--quiz-font-size-small, 0.85rem);\n }\n \n .timer-module_timer__J6Vp3 svg {\n width: 16px;\n height: 16px;\n }\n} ');var b=function(t){var o=t.duration,i=t.markQuizComplete,r=t.isEndScreenOpen,a=e.useState(o),l=a[0],u=a[1],s=e.useRef(null);e.useEffect((function(){if(0!==o)return s.current&&clearInterval(s.current),s.current=setInterval((function(){u((function(n){return n>0?n-1:0}))}),1e3),function(){s.current&&clearInterval(s.current)}}),[o]),e.useEffect((function(){0!==o&&0===l&&(i(),s.current&&clearInterval(s.current))}),[l,i]),e.useEffect((function(){r&&s.current&&clearInterval(s.current)}),[r]);var d,c,f;return n.jsxs("div",{className:_,children:[n.jsx(x,{}),n.jsx("span",{children:(d=l,c=Math.floor(d/60),f=d%60,"".concat(c,":").concat(f<10?"0":"").concat(f))})]})},z=function(n){void 0===n&&(n=3);var t=e.useState(0),o=t[0],i=t[1],r=e.useState(!1),a=r[0],l=r[1];return e.useEffect((function(){var n=function(){document.hidden&&i((function(n){return n+1}))};return document.addEventListener("visibilitychange",n),function(){document.removeEventListener("visibilitychange",n)}}),[]),e.useEffect((function(){o>=n&&l(!0)}),[o,n]),{switchCount:o,isLimitReached:a}},w="tabSwitchModal-module_modalOverlay__KxoJM",q="tabSwitchModal-module_modalContent__IJiuo",y="tabSwitchModal-module_modalClose__HhoGx",S="tabSwitchModal-module_modalHeader__-RsEI",k="tabSwitchModal-module_modalIcon__wRuay",C="tabSwitchModal-module_modalText__sCgfv",j="tabSwitchModal-module_modalButton__Pawa9";l('/* Modal Background Overlay */\n.tabSwitchModal-module_modalOverlay__KxoJM {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.6);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 1000;\n}\n\n/* Modal Box */\n.tabSwitchModal-module_modalContent__IJiuo {\n background: var(--quiz-tab-switch-modal-background, #222);\n color: var(--quiz-tab-switch-modal-text-color, #fff);\n padding: var(--quiz-tab-switch-modal-padding, 20px);\n border-radius: var(--quiz-tab-switch-modal-border-radius, 10px);\n width: 400px;\n text-align: center;\n position: relative;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);\n}\n\n/* Close Button */\n.tabSwitchModal-module_modalClose__HhoGx {\n position: absolute;\n top: 10px;\n right: 15px;\n background: none;\n border: none;\n font-size: 24px;\n color: var(--quiz-tab-switch-modal-close-color, #fff);\n cursor: pointer;\n font-family: var(--quiz-tab-switch-modal-font-family, "Patron", sans-serif);\n}\n\n/* Header */\n.tabSwitchModal-module_modalHeader__-RsEI {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin-bottom: var(--quiz-tab-switch-modal-header-margin, 10px);\n font-family: var(--quiz-tab-switch-modal-font-family, "Patron", sans-serif);\n}\n\n/* Warning Icon */\n.tabSwitchModal-module_modalIcon__wRuay {\n font-size: 32px;\n color: var(--quiz-tab-switch-modal-icon-color, #ffcc00);\n}\n\n/* Text */\n.tabSwitchModal-module_modalText__sCgfv {\n font-size: var(--quiz-tab-switch-modal-text-font-size, 14px);\n color: var(--quiz-tab-switch-modal-text-secondary-color, #ccc);\n margin-bottom: var(--quiz-tab-switch-modal-text-margin, 20px);\n font-family: var(--quiz-tab-switch-modal-font-family, "Patron", sans-serif);\n}\n\n/* Button */\n.tabSwitchModal-module_modalButton__Pawa9 {\n background: var(--quiz-tab-switch-modal-button-background, #fff);\n color: var(--quiz-tab-switch-modal-button-text-color, #222);\n border: none;\n padding: var(--quiz-tab-switch-modal-button-padding, 10px 20px);\n border-radius: var(--quiz-tab-switch-modal-button-border-radius, 20px);\n font-size: var(--quiz-tab-switch-modal-button-font-size, 14px);\n cursor: pointer;\n transition: var(--quiz-tab-switch-modal-button-transition, 0.3s);\n font-family: var(--quiz-tab-switch-modal-font-family, "Patron", sans-serif);\n}\n\n.tabSwitchModal-module_modalButton__Pawa9:hover {\n background: var(--quiz-tab-switch-modal-button-hover-background, #ddd);\n color: var(--quiz-tab-switch-modal-button-hover-text-color, #222);\n} ');var T=function(e){var t=e.open,o=e.onClose;return t?n.jsx("div",{className:w,children:n.jsxs("div",{className:q,children:[n.jsx("button",{className:y,onClick:o,children:"×"}),n.jsxs("div",{className:S,children:[n.jsx("span",{className:k,children:"⚠️"}),n.jsx("h2",{children:"Tab Switch Detected"})]}),n.jsx("p",{className:C,children:"Any further attempts to switch tabs or change browser windows will result in disqualification from the assessment."}),n.jsx("button",{className:j,onClick:o,children:"Understood"})]})}):null},E="quizEndScreen-module_endScreenOverlay__8EiUX",M="quizEndScreen-module_endScreenContent__hzr2O",B="quizEndScreen-module_endScreenClose__ztM4x";l('.quizEndScreen-module_endScreenOverlay__8EiUX {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: var(--quiz-end-screen-background, #222);\n color: var(--quiz-end-screen-text-color, #fff);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 1000;\n direction: ltr;\n}\n\n/* Content */\n.quizEndScreen-module_endScreenContent__hzr2O {\n text-align: center;\n font-size: var(--quiz-end-screen-font-size, 20px);\n font-weight: var(--quiz-end-screen-font-weight, bold);\n font-family: var(--quiz-end-screen-font-family, "Patron", sans-serif);\n color: var(--quiz-end-screen-text-color, #fff);\n padding: 20px;\n}\n\n.quizEndScreen-module_endScreenClose__ztM4x {\n position: absolute;\n top: 20px;\n right: 25px;\n background: none;\n border: none;\n font-size: 24px;\n color: var(--quiz-end-screen-close-color, #fff);\n cursor: pointer;\n font-family: var(--quiz-end-screen-font-family, "Patron", sans-serif);\n} ');var N,P,Q,O=function(e){var t=e.open,o=e.onClose,i=e.message;return t?n.jsxs("div",{className:E,children:[o&&n.jsx("button",{className:B,onClick:o,children:"×"}),n.jsx("div",{className:M,children:n.jsx("p",{children:i||"Your quiz has ended due to switching tabs too many times."})})]}):null},L=function(){e.useEffect((function(){var n=function(n){return n.preventDefault()},e=function(n){return n.preventDefault()},t=function(n){return n.preventDefault()};return document.addEventListener("copy",n),document.addEventListener("cut",n),document.addEventListener("paste",n),document.addEventListener("selectstart",e),document.addEventListener("contextmenu",t),function(){document.removeEventListener("copy",n),document.removeEventListener("cut",n),document.removeEventListener("paste",n),document.removeEventListener("selectstart",e),document.removeEventListener("contextmenu",t)}}),[])};function R(){return R=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var o in t)({}).hasOwnProperty.call(t,o)&&(n[o]=t[o])}return n},R.apply(null,arguments)}var H,I=function(n){return o.createElement("svg",R({xmlns:"http://www.w3.org/2000/svg",width:38,height:38,fill:"none"},n),N||(N=o.createElement("rect",{width:38,height:38,fill:"#151515",rx:19})),P||(P=o.createElement("g",{clipPath:"url(#downArrow_svg__a)"},o.createElement("path",{fill:"#fff",d:"M8.758 21.194c.037.14.145.36.234.492.09.136 2.138 2.222 4.556 4.636 5.035 5.03 4.594 4.655 5.452 4.655.427 0 .525-.015.727-.113.182-.094 1.18-1.06 4.725-4.594 2.47-2.465 4.546-4.57 4.612-4.678.145-.243.248-.623.248-.91 0-.454-.295-1.077-.637-1.335-.342-.263-.97-.399-1.397-.3-.534.122-.576.16-3.319 2.873-2.667 2.649-2.878 2.883-3.117 3.46-.08.201-.084-.043-.108-8.442l-.023-8.649-.127-.267a1.84 1.84 0 0 0-.796-.84c-.282-.154-.32-.159-.788-.159-.445 0-.516.015-.75.132-.464.239-.788.633-.919 1.12-.056.211-.065 1.608-.065 8.756v8.508l-.136-.281a3.7 3.7 0 0 0-.347-.563c-.117-.154-1.36-1.425-2.761-2.817-1.945-1.94-2.602-2.569-2.78-2.658-.914-.454-1.94-.13-2.376.75-.178.361-.22.83-.108 1.224"}))),Q||(Q=o.createElement("defs",null,o.createElement("clipPath",{id:"downArrow_svg__a"},o.createElement("path",{fill:"#fff",d:"M7 31V7h24v24z"})))))};function F(){return F=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var o in t)({}).hasOwnProperty.call(t,o)&&(n[o]=t[o])}return n},F.apply(null,arguments)}var A=function(n){return o.createElement("svg",F({xmlns:"http://www.w3.org/2000/svg",width:24,height:23,fill:"none"},n),H||(H=o.createElement("path",{fill:"#000",d:"M17.837 5.797a.94.94 0 0 0-1.328 0l-4.305 4.306-4.306-4.306a.939.939 0 0 0-1.327 1.328l4.305 4.306-4.305 4.305a.939.939 0 0 0 1.327 1.328l4.306-4.306 4.305 4.306a.94.94 0 0 0 1.328-1.328l-4.306-4.305 4.306-4.306a.94.94 0 0 0 0-1.328"})))},W="loader-module_loaderOverlay__-THCU",D="loader-module_loaderSpinner__c8AWp";l(".loader-module_loaderOverlay__-THCU {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: var(--quiz-loader-background, black);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 9999;\n}\n\n.loader-module_loaderSpinner__c8AWp {\n border: 8px solid var(--quiz-loader-spinner-border, rgba(255, 255, 255, 0.2));\n border-top: 8px solid var(--quiz-loader-spinner-color, white);\n border-radius: 50%;\n width: 60px;\n height: 60px;\n animation: loader-module_spin__IzlCN 1s linear infinite;\n}\n\n@keyframes loader-module_spin__IzlCN {\n to {\n transform: rotate(360deg);\n }\n} ");var V=function(){return n.jsx("div",{className:W,children:n.jsx("div",{className:D})})},J={colors:{primary:"#000000",secondary:"#5d4037",background:"#ffffff",surface:"#f8f5f2",text:{primary:"#161c20",secondary:"#666666"},button:{primary:"#000000",primaryText:"#ffffff",secondary:"#5d4037",secondaryText:"#ffffff",disabled:"#d7ccc8",disabledText:"#ffffff"},option:{background:"#ffffff",hover:"#e1d8c9",selected:"#b59b7b",border:"#e7e7e7",text:"#161c20"},border:"#e1d8c9",scrollButton:"#ffffff"},typography:{fontFamily:"Patron, sans-serif",fontSize:{small:"0.9rem",medium:"1rem",large:"1.15rem",xlarge:"1.5rem"},fontWeight:{normal:"400",medium:"500",bold:"600"},lineHeight:{small:"1.2rem",medium:"1.4rem",large:"1.6rem"}},spacing:{small:"8px",medium:"16px",large:"24px",xlarge:"32px"},borderRadius:{small:"4px",medium:"8px",large:"16px"},transitions:{fast:"0.15s",medium:"0.3s",slow:"0.5s"},loader:{background:"black",spinnerColor:"white",spinnerBorder:"rgba(255, 255, 255, 0.2)"},endScreen:{background:"#222",textColor:"#fff",closeColor:"#fff",fontSize:"20px",fontWeight:"bold",fontFamily:'"Patron", sans-serif'},tabSwitchModal:{background:"#222",textColor:"#fff",closeColor:"#fff",textSecondaryColor:"#ccc",iconColor:"#ffcc00",buttonBackground:"#fff",buttonTextColor:"#222",buttonHoverBackground:"#ddd",buttonHoverTextColor:"#222",fontFamily:'"Patron", sans-serif',textFontSize:"14px",buttonFontSize:"14px",padding:"20px",headerMargin:"10px",textMargin:"20px",buttonPadding:"10px 20px",borderRadius:"10px",buttonBorderRadius:"20px",buttonTransition:"0.3s"}};function Y(n,e){var t=i({},n);for(var o in e)void 0!==e[o]&&null!==e[o]&&(e[o]&&"object"==typeof e[o]&&!Array.isArray(e[o])?t[o]=Y(n[o]||{},e[o]):t[o]=e[o]);return t}function G(n,e){return e?Y(n,e):n}var U=function(e){var t,o=e.theme;if(!o||(!(t=o)||"object"!=typeof t||0===Object.keys(t).length))return null;var i=function(n){return function(n){var e,t,o,i,r,a,l,u,s,d,c,f,m,p,h,v,g,x,_,b,z,w,q,y,S,k,C,j,T,E,M,B,N,P,Q,O,L,R,H,I,F,A,W,D,V,J,Y,G,U,Z,X,K={};return n.colors&&(n.colors.primary&&(K["--quiz-color-primary"]=n.colors.primary),n.colors.secondary&&(K["--quiz-color-secondary"]=n.colors.secondary),n.colors.background&&(K["--quiz-color-background"]=n.colors.background),n.colors.surface&&(K["--quiz-color-surface"]=n.colors.surface),n.colors.border&&(K["--quiz-color-border"]=n.colors.border),n.colors.scrollButton&&(K["--quiz-color-scroll-button"]=n.colors.scrollButton),(null===(e=n.colors.text)||void 0===e?void 0:e.primary)&&(K["--quiz-color-text-primary"]=n.colors.text.primary),(null===(t=n.colors.text)||void 0===t?void 0:t.secondary)&&(K["--quiz-color-text-secondary"]=n.colors.text.secondary),(null===(o=n.colors.button)||void 0===o?void 0:o.primary)&&(K["--quiz-color-button-primary"]=n.colors.button.primary),(null===(i=n.colors.button)||void 0===i?void 0:i.primaryText)&&(K["--quiz-color-button-primary-text"]=n.colors.button.primaryText),(null===(r=n.colors.button)||void 0===r?void 0:r.secondary)&&(K["--quiz-color-button-secondary"]=n.colors.button.secondary),(null===(a=n.colors.button)||void 0===a?void 0:a.secondaryText)&&(K["--quiz-color-button-secondary-text"]=n.colors.button.secondaryText),(null===(l=n.colors.button)||void 0===l?void 0:l.disabled)&&(K["--quiz-color-button-disabled"]=n.colors.button.disabled),(null===(u=n.colors.button)||void 0===u?void 0:u.disabledText)&&(K["--quiz-color-button-disabled-text"]=n.colors.button.disabledText),(null===(s=n.colors.option)||void 0===s?void 0:s.background)&&(K["--quiz-color-option-background"]=n.colors.option.background),(null===(d=n.colors.option)||void 0===d?void 0:d.hover)&&(K["--quiz-color-option-hover"]=n.colors.option.hover),(null===(c=n.colors.option)||void 0===c?void 0:c.selected)&&(K["--quiz-color-option-selected"]=n.colors.option.selected),(null===(f=n.colors.option)||void 0===f?void 0:f.border)&&(K["--quiz-color-option-border"]=n.colors.option.border),(null===(m=n.colors.option)||void 0===m?void 0:m.text)&&(K["--quiz-color-option-text"]=n.colors.option.text)),n.typography&&(n.typography.fontFamily&&(K["--quiz-font-family"]=n.typography.fontFamily),(null===(p=n.typography.fontSize)||void 0===p?void 0:p.small)&&(K["--quiz-font-size-small"]=n.typography.fontSize.small),(null===(h=n.typography.fontSize)||void 0===h?void 0:h.medium)&&(K["--quiz-font-size-medium"]=n.typography.fontSize.medium),(null===(v=n.typography.fontSize)||void 0===v?void 0:v.large)&&(K["--quiz-font-size-large"]=n.typography.fontSize.large),(null===(g=n.typography.fontSize)||void 0===g?void 0:g.xlarge)&&(K["--quiz-font-size-xlarge"]=n.typography.fontSize.xlarge),(null===(x=n.typography.fontWeight)||void 0===x?void 0:x.normal)&&(K["--quiz-font-weight-normal"]=n.typography.fontWeight.normal),(null===(_=n.typography.fontWeight)||void 0===_?void 0:_.medium)&&(K["--quiz-font-weight-medium"]=n.typography.fontWeight.medium),(null===(b=n.typography.fontWeight)||void 0===b?void 0:b.bold)&&(K["--quiz-font-weight-bold"]=n.typography.fontWeight.bold),(null===(z=n.typography.lineHeight)||void 0===z?void 0:z.small)&&(K["--quiz-line-height-small"]=n.typography.lineHeight.small),(null===(w=n.typography.lineHeight)||void 0===w?void 0:w.medium)&&(K["--quiz-line-height-medium"]=n.typography.lineHeight.medium),(null===(q=n.typography.lineHeight)||void 0===q?void 0:q.large)&&(K["--quiz-line-height-large"]=n.typography.lineHeight.large)),n.spacing&&(n.spacing.small&&(K["--quiz-spacing-small"]=n.spacing.small),n.spacing.medium&&(K["--quiz-spacing-medium"]=n.spacing.medium),n.spacing.large&&(K["--quiz-spacing-large"]=n.spacing.large),n.spacing.xlarge&&(K["--quiz-spacing-xlarge"]=n.spacing.xlarge)),n.borderRadius&&(n.borderRadius.small&&(K["--quiz-border-radius-small"]=n.borderRadius.small),n.borderRadius.medium&&(K["--quiz-border-radius-medium"]=n.borderRadius.medium),n.borderRadius.large&&(K["--quiz-border-radius-large"]=n.borderRadius.large)),n.transitions&&(n.transitions.fast&&(K["--quiz-transition-fast"]=n.transitions.fast),n.transitions.medium&&(K["--quiz-transition-medium"]=n.transitions.medium),n.transitions.slow&&(K["--quiz-transition-slow"]=n.transitions.slow)),(null===(y=n.loader)||void 0===y?void 0:y.background)&&(K["--quiz-loader-background"]=n.loader.background),(null===(S=n.loader)||void 0===S?void 0:S.spinnerColor)&&(K["--quiz-loader-spinner-color"]=n.loader.spinnerColor),(null===(k=n.loader)||void 0===k?void 0:k.spinnerBorder)&&(K["--quiz-loader-spinner-border"]=n.loader.spinnerBorder),(null===(C=n.endScreen)||void 0===C?void 0:C.background)&&(K["--quiz-end-screen-background"]=n.endScreen.background),(null===(j=n.endScreen)||void 0===j?void 0:j.textColor)&&(K["--quiz-end-screen-text-color"]=n.endScreen.textColor),(null===(T=n.endScreen)||void 0===T?void 0:T.closeColor)&&(K["--quiz-end-screen-close-color"]=n.endScreen.closeColor),(null===(E=n.endScreen)||void 0===E?void 0:E.fontSize)&&(K["--quiz-end-screen-font-size"]=n.endScreen.fontSize),(null===(M=n.endScreen)||void 0===M?void 0:M.fontWeight)&&(K["--quiz-end-screen-font-weight"]=n.endScreen.fontWeight),(null===(B=n.endScreen)||void 0===B?void 0:B.fontFamily)&&(K["--quiz-end-screen-font-family"]=n.endScreen.fontFamily),(null===(N=n.tabSwitchModal)||void 0===N?void 0:N.background)&&(K["--quiz-tab-switch-modal-background"]=n.tabSwitchModal.background),(null===(P=n.tabSwitchModal)||void 0===P?void 0:P.textColor)&&(K["--quiz-tab-switch-modal-text-color"]=n.tabSwitchModal.textColor),(null===(Q=n.tabSwitchModal)||void 0===Q?void 0:Q.closeColor)&&(K["--quiz-tab-switch-modal-close-color"]=n.tabSwitchModal.closeColor),(null===(O=n.tabSwitchModal)||void 0===O?void 0:O.textSecondaryColor)&&(K["--quiz-tab-switch-modal-text-secondary-color"]=n.tabSwitchModal.textSecondaryColor),(null===(L=n.tabSwitchModal)||void 0===L?void 0:L.iconColor)&&(K["--quiz-tab-switch-modal-icon-color"]=n.tabSwitchModal.iconColor),(null===(R=n.tabSwitchModal)||void 0===R?void 0:R.buttonBackground)&&(K["--quiz-tab-switch-modal-button-background"]=n.tabSwitchModal.buttonBackground),(null===(H=n.tabSwitchModal)||void 0===H?void 0:H.buttonTextColor)&&(K["--quiz-tab-switch-modal-button-text-color"]=n.tabSwitchModal.buttonTextColor),(null===(I=n.tabSwitchModal)||void 0===I?void 0:I.buttonHoverBackground)&&(K["--quiz-tab-switch-modal-button-hover-background"]=n.tabSwitchModal.buttonHoverBackground),(null===(F=n.tabSwitchModal)||void 0===F?void 0:F.buttonHoverTextColor)&&(K["--quiz-tab-switch-modal-button-hover-text-color"]=n.tabSwitchModal.buttonHoverTextColor),(null===(A=n.tabSwitchModal)||void 0===A?void 0:A.fontFamily)&&(K["--quiz-tab-switch-modal-font-family"]=n.tabSwitchModal.fontFamily),(null===(W=n.tabSwitchModal)||void 0===W?void 0:W.textFontSize)&&(K["--quiz-tab-switch-modal-text-font-size"]=n.tabSwitchModal.textFontSize),(null===(D=n.tabSwitchModal)||void 0===D?void 0:D.buttonFontSize)&&(K["--quiz-tab-switch-modal-button-font-size"]=n.tabSwitchModal.buttonFontSize),(null===(V=n.tabSwitchModal)||void 0===V?void 0:V.padding)&&(K["--quiz-tab-switch-modal-padding"]=n.tabSwitchModal.padding),(null===(J=n.tabSwitchModal)||void 0===J?void 0:J.headerMargin)&&(K["--quiz-tab-switch-modal-header-margin"]=n.tabSwitchModal.headerMargin),(null===(Y=n.tabSwitchModal)||void 0===Y?void 0:Y.textMargin)&&(K["--quiz-tab-switch-modal-text-margin"]=n.tabSwitchModal.textMargin),(null===(G=n.tabSwitchModal)||void 0===G?void 0:G.buttonPadding)&&(K["--quiz-tab-switch-modal-button-padding"]=n.tabSwitchModal.buttonPadding),(null===(U=n.tabSwitchModal)||void 0===U?void 0:U.borderRadius)&&(K["--quiz-tab-switch-modal-border-radius"]=n.tabSwitchModal.borderRadius),(null===(Z=n.tabSwitchModal)||void 0===Z?void 0:Z.buttonBorderRadius)&&(K["--quiz-tab-switch-modal-button-border-radius"]=n.tabSwitchModal.buttonBorderRadius),(null===(X=n.tabSwitchModal)||void 0===X?void 0:X.buttonTransition)&&(K["--quiz-tab-switch-modal-button-transition"]=n.tabSwitchModal.buttonTransition),K}(G(J,n))}(o);if(0===Object.keys(i).length)return null;var r=Object.entries(i).map((function(n){var e=n[0],t=n[1];return"".concat(e,": ").concat(t,";")})).join("\n "),a="theme-styles-".concat(Date.now());return n.jsx("style",{id:a,children:"\n /* Apply theme to :root so all elements can access the custom properties */\n :root {\n ".concat(r,"\n }\n ")})},Z="quiz-module_quizPage__VGbhc",X="quiz-module_quizPageContainer__kQZ4d",K="quiz-module_quizTicker__i1CIw",$="quiz-module_quizTickerRight__5SdyV",nn="quiz-module_closeBtn__2ZUdu",en="quiz-module_quizContainer__v1u42",tn="quiz-module_quizLeft__2c5nS",on="quiz-module_quizRight__VW2vj",rn="quiz-module_quizRightHead__zzia5",an="quiz-module_chooseOption__oisps",ln="quiz-module_questionCount__whDFY",un="quiz-module_mobileNextBtn__iSSfH",sn="quiz-module_nextBtn__AvAyW",dn="quiz-module_scrollDownBtn__7-XTG",cn="quiz-module_bounce__8egNx",fn="quiz-module_nextBtnContainer__TvCOi";l('* {\n box-sizing: border-box;\n}\n\n.quiz-module_quizPage__VGbhc {\n position: fixed;\n background: var(--quiz-color-background, #ffffff);\n width: 100vw;\n min-height: 100dvh;\n top: 0;\n left: 0;\n z-index: 100;\n box-sizing: border-box;\n overflow-y: auto; /* ensure scrolling works */\n display: flex;\n flex-direction: column;\n}\n\n.quiz-module_quizPageContainer__kQZ4d {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-radius: var(--quiz-border-radius-large, 16px);\n margin: var(--quiz-spacing-large, 24px) var(--quiz-spacing-medium, 16px) 0px var(--quiz-spacing-medium, 16px);\n height: 100%;\n background: var(--quiz-color-surface, #f8f5f2);\n}\n\n/* Ticker stays in a row on all devices */\n.quiz-module_quizTicker__i1CIw {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px 20px;\n border-bottom: 1px solid var(--quiz-color-border, #e1d8c9);\n}\n\n.quiz-module_quizTickerRight__5SdyV {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 1rem;\n padding-right: 2rem;\n}\n\n.quiz-module_closeBtn__2ZUdu{\n border: none;\n background: none;\n cursor: pointer;\n padding: 0;\n margin: 0;\n width: 18px;\n height: 18px;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 4px;\n}\n\n.quiz-module_closeBtn__2ZUdu svg {\n width: 18px;\n height: 18px;\n flex-shrink: 0;\n}\n\n.quiz-module_quizContainer__v1u42 {\n flex-grow: 1;\n width: 100%;\n display: flex;\n flex-direction: row; /* side-by-side on desktop */\n align-items: flex-start;\n padding: var(--quiz-spacing-large, 24px) 56px var(--quiz-spacing-large, 24px);\n border-radius: 10px;\n justify-content: space-between;\n box-sizing: border-box;\n max-width: 1600px;\n margin: 0 auto;\n max-height: 80dvh;\n overflow: auto;\n gap: 2rem;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n}\n\n.quiz-module_quizContainer__v1u42::-webkit-scrollbar {\n display: none;\n}\n\n/* Left & Right columns on desktop */\n.quiz-module_quizLeft__2c5nS {\n width: 100%;\n max-width: 650px;\n overflow: auto;\n scrollbar-width: thin;\n scrollbar-color: #ccc transparent; /* thumb color, track color */\n}\n\n/* WebKit-based browsers (Chrome, Safari, Edge) */\n.quiz-module_quizLeft__2c5nS::-webkit-scrollbar {\n width: 6px; /* slim scrollbar */\n}\n\n.quiz-module_quizLeft__2c5nS::-webkit-scrollbar-thumb {\n background-color: #ccc; /* grey thumb */\n border-radius: 4px;\n}\n\n.quiz-module_quizLeft__2c5nS::-webkit-scrollbar-track {\n background: transparent; /* optional: transparent track */\n}\n\n.quiz-module_quizRight__VW2vj {\n max-width: 622px;\n width: 100%;\n}\n\n.quiz-module_quizRightHead__zzia5 {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.quiz-module_chooseOption__oisps {\n font-size: var(--quiz-font-size-medium, 1rem);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: var(--quiz-line-height-xlarge, 32px);\n letter-spacing: 0.2%;\n color: var(--quiz-color-text-primary, #161c20);\n}\n\n.quiz-module_questionCount__whDFY {\n font-size: var(--quiz-font-size-small, 0.9rem);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n color: var(--quiz-color-text-primary, #161c20);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: var(--quiz-line-height-small, 1.2rem);\n}\n\n.quiz-module_optionsContainer__rNs2w {\n display: flex;\n flex-direction: column;\n gap: 18px;\n margin-top: 12px;\n}\n\n.quiz-module_mobileNextBtn__iSSfH {\n display: none;\n}\n\n/* Button Styles */\n.quiz-module_prevBtn__3rk6z,\n.quiz-module_nextBtn__AvAyW {\n padding: 10px 54px;\n background: var(--quiz-color-button-primary, #000000);\n color: var(--quiz-color-button-primary-text, #ffffff);\n border: none;\n border-radius: var(--quiz-spacing-large, 24px);\n cursor: pointer;\n transition: var(--quiz-transition-medium, 0.3s);\n font-size: var(--quiz-font-size-small, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: 21px;\n}\n\n.quiz-module_prevBtn__3rk6z {\n background: var(--quiz-color-button-secondary, #5d4037);\n color: var(--quiz-color-button-secondary-text, #ffffff);\n}\n\n.quiz-module_nextBtn__AvAyW:disabled {\n background: var(--quiz-color-button-disabled, #d7ccc8);\n color: var(--quiz-color-button-disabled-text, #ffffff);\n cursor: not-allowed;\n}\n\n.quiz-module_scrollDownBtn__7-XTG {\n position: fixed;\n bottom: 20px;\n right: 20px;\n z-index: 999;\n border: none;\n border-radius: 50%;\n padding: 4px;\n cursor: pointer;\n font-size: 20px;\n transition: background var(--quiz-transition-medium, 0.3s);\n background: var(--quiz-color-scroll-button, #ffffff);\n}\n\n.quiz-module_bounce__8egNx {\n animation: quiz-module_bounce__8egNx 1.6s infinite;\n}\n\n@keyframes quiz-module_bounce__8egNx {\n 0%,\n 20%,\n 50%,\n 80%,\n 100% {\n transform: translateY(0px);\n }\n 40% {\n transform: translateY(-4px);\n }\n 60% {\n transform: translateY(-2px);\n }\n}\n\n/* RESPONSIVE LAYOUT */\n@media (max-width: 768px) {\n .quiz-module_quizPageContainer__kQZ4d {\n flex-direction: column;\n padding: var(--quiz-spacing-medium, 16px);\n gap: 1rem;\n overflow-y: auto;\n margin: 0;\n border-radius: 0;\n }\n\n .quiz-module_quizContainer__v1u42 {\n flex-direction: column;\n padding: 0;\n justify-content: space-between;\n}\n\n\n .quiz-module_quizTicker__i1CIw {\n padding: var(--quiz-spacing-medium, 16px);\n gap: 1rem;\n }\n\n .quiz-module_quizLeft__2c5nS {\n max-width: 100%;\n margin-bottom: 1rem;\n max-height: none;\n overflow: initial;\n }\n\n .quiz-module_quizTickerRight__5SdyV {\n gap: 1rem;\n padding-right: 0;\n }\n\n .quiz-module_chooseOption__oisps {\n font-size: var(--quiz-font-size-small, 0.9rem);\n line-height: var(--quiz-line-height-medium, 1.4rem);\n }\n\n .quiz-module_nextBtnContainer__TvCOi {\n display: none;\n }\n\n .quiz-module_mobileNextBtn__iSSfH {\n display: block;\n position: fixed;\n bottom: 20px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 1000;\n width: calc(100% - 40px);\n max-width: 350px;\n }\n\n .quiz-module_nextBtn__AvAyW {\n width: 100%;\n padding: var(--quiz-spacing-medium, 16px) var(--quiz-spacing-large, 24px);\n font-size: var(--quiz-font-size-medium, 1rem);\n }\n\n .quiz-module_questionCount__whDFY {\n font-size: 0.85rem;\n }\n\n .quiz-module_optionBtn__bIwda {\n padding: var(--quiz-spacing-medium, 16px);\n }\n}\n\n@media (max-width: 768px) and (max-height: 800px) {\n .quiz-module_quizContainer__v1u42 {\n max-height: 70dvh;\n }\n}\n\n@media (max-width: 768px) and (max-height: 500px) {\n .quiz-module_quizContainer__v1u42 {\n max-height: 60dvh;\n }\n} ');l('/* Thin (100) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-thin.woff2") format("woff2");\n font-weight: 100;\n font-style: normal;\n font-display: swap;\n}\n\n/* Light (300) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-light.woff2") format("woff2");\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n}\n\n/* Regular (400) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-regular.woff2") format("woff2");\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n}\n\n/* Medium (500) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-medium.woff2") format("woff2");\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n}\n\n/* Bold (700) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-bold.woff2") format("woff2");\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n} ');var mn={questionText:"question-module_questionText__SEG-N"};l('.question-module_questionText__SEG-N {\n font-size: var(--quiz-font-size-large, 24px);\n font-weight: var(--quiz-font-weight-bold, 700);\n color: var(--quiz-color-text-primary, #2E1500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: 33.6px;\n letter-spacing: 0.048px;\n }\n \n code {\n font-size: 0.8rem;\n font-weight: normal;\n }\n \n @media (max-width: 1320px) {\n /* .questionText {\n font-size: var(--quiz-font-size-medium, 1rem);\n }\n .questionHtmlWrapper code {\n font-size: 0.8rem;\n } */\n }\n \n @media (max-width: 768px) {\n .question-module_questionText__SEG-N {\n font-size: 1.25rem;\n line-height: 25.6px;\n }\n }');var pn=function(e){var t=e.question;return n.jsx("div",{className:mn.questionHtmlWrapper,children:n.jsx("h2",{className:mn.questionText,dangerouslySetInnerHTML:{__html:t}})})},hn="options-module_optionsContainer__Fyukt",vn="options-module_optionBtn__pT-ri",gn="options-module_selected__Pukyd",xn="options-module_optionText__dyBcH";l('.options-module_optionsContainer__Fyukt {\n display: flex;\n flex-direction: column;\n gap: 10px;\n margin-top: 12px;\n /* height: 50vh;\n overflow-y: auto; */\n }\n \n \n .options-module_optionBtn__pT-ri {\n width: 100%;\n padding: 16px;\n border-radius: var(--quiz-border-radius-medium, 8px);\n background: var(--quiz-color-option-background, #ffffff);\n cursor: pointer;\n transition: var(--quiz-transition-medium, 0.3s);\n color: var(--quiz-color-option-text, #1D1B21);\n border: none;\n text-align: left;\n border: 1px solid var(--quiz-color-option-border, #D9D9D9);\n /* display: flex; */\n }\n \n .options-module_optionBtn__pT-ri:hover {\n background: var(--quiz-color-option-hover, #CBFF59);\n }\n \n .options-module_optionBtn__pT-ri.options-module_selected__Pukyd {\n background: var(--quiz-color-option-selected, #CBFF59);\n }\n \n .options-module_optionText__dyBcH {\n font-size: var(--quiz-font-size-medium, 1rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: 22px;\n letter-spacing: -0.1%;\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n }\n \n .options-module_optionImage__G3FXt {\n max-width: 100%;\n height: auto;\n border-radius: var(--quiz-border-radius-small, 4px);\n }\n \n .options-module_optionCode__q3GqF {\n background-color: #1e1e1e;\n color: white;\n padding: var(--quiz-spacing-small, 8px);\n border-radius: var(--quiz-border-radius-small, 4px);\n }\n \n @media (max-width: 768px) {\n /* .optionText {\n font-size: 0.95rem;\n line-height: 21px;\n }\n */\n .options-module_optionBtn__pT-ri:hover {\n background: var(--quiz-color-option-selected, #CBFF59);\n }\n } ');var _n,bn=function(e){var t=e.options,o=e.selectedOption,i=e.onSelect,r=e.loading,a=e.direction;return n.jsx("div",{className:hn,children:null==t?void 0:t.map((function(e){return n.jsx("button",{disabled:r,className:"".concat(vn," ").concat(o===e.id&&gn),style:"rtl"===a?{textAlign:"unset"}:{},onClick:function(){return i(e.id)},children:e.text&&n.jsx("span",{className:xn,children:e.text})},e.id)}))})};function zn(){return zn=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var o in t)({}).hasOwnProperty.call(t,o)&&(n[o]=t[o])}return n},zn.apply(null,arguments)}var wn=function(n){return o.createElement("svg",zn({xmlns:"http://www.w3.org/2000/svg",width:18,height:18,fill:"none"},n),_n||(_n=o.createElement("path",{fill:"#fff",d:"M9 2.813a6.75 6.75 0 1 0 6.75 6.75A6.76 6.76 0 0 0 9 2.813m3.21 4.335L9.399 9.96a.564.564 0 0 1-.796-.795l2.813-2.813a.563.563 0 0 1 .796.796M6.75 1.125a.563.563 0 0 1 .563-.562h3.375a.563.563 0 1 1 0 1.125H7.312a.56.56 0 0 1-.562-.563"})))},qn="timer-module_timer__o-tMk";l('.timer-module_timer__o-tMk {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 4px;\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n font-size: var(--quiz-font-size-medium, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n color: var(--quiz-color-text-primary, #161c20);\n }\n \n .timer-module_timer__o-tMk span {\n color: #FFF;\n font-size: var(--quiz-font-size-medium, 16px);\n font-weight: var(--quiz-font-weight-medium, 500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: var(--quiz-line-height-medium, 23px);\n letter-spacing: var(--quiz-letter-spacing-medium, -0.016px);\n \n }\n \n .timer-module_timer__o-tMk svg {\n width: 18px;\n height: 18px;\n fill: var(--quiz-color-text-primary, #161c20);\n }\n \n @media (max-width: 768px) {\n /* .timer {\n font-size: var(--quiz-font-size-small, 0.85rem);\n } */\n \n /* .timer span {\n font-size: var(--quiz-font-size-small, 1rem);\n } */\n \n .timer-module_timer__o-tMk svg {\n width: 16px;\n height: 16px;\n }\n }\n ');var yn=function(t){var o=t.duration,i=t.markQuizComplete,r=t.isEndScreenOpen,a=e.useState(o),l=a[0],u=a[1],s=e.useRef(null);e.useEffect((function(){if(0!==o)return s.current&&clearInterval(s.current),s.current=setInterval((function(){u((function(n){return n>0?n-1:0}))}),1e3),function(){s.current&&clearInterval(s.current)}}),[o]),e.useEffect((function(){0!==o&&0===l&&(i(),s.current&&clearInterval(s.current))}),[l,i]),e.useEffect((function(){r&&s.current&&clearInterval(s.current)}),[r]);var d,c,f;return n.jsxs("div",{className:qn,children:[n.jsx(wn,{}),n.jsx("span",{children:(d=l,c=Math.floor(d/60),f=d%60,"".concat(c,":").concat(f<10?"0":"").concat(f))})]})},Sn="frontlineQuiz-module_quizPage__20qsB",kn="frontlineQuiz-module_quizPageContainer__YCead",Cn="frontlineQuiz-module_quizTicker__0g1ga",jn="frontlineQuiz-module_quizTickerRight__5DIuy",Tn="frontlineQuiz-module_closeBtn__hySeT",En="frontlineQuiz-module_quizContainer__RILFb",Mn="frontlineQuiz-module_cardDeck__JP0v4",Bn="frontlineQuiz-module_stackedCard__Vwgrw",Nn="frontlineQuiz-module_quizLeft__dyhwA",Pn="frontlineQuiz-module_quizRight__s7J3R",Qn="frontlineQuiz-module_quizRightHead__Xs3bh",On="frontlineQuiz-module_questionCount__cFlA-",Ln="frontlineQuiz-module_mobileNextBtn__trrH5",Rn="frontlineQuiz-module_nextBtn__UeoLO",Hn="frontlineQuiz-module_nextBtnContainer__smf8H";l('* {\n box-sizing: border-box;\n }\n \n .frontlineQuiz-module_quizPage__20qsB {\n position: fixed;\n background: var(--quiz-color-background, #ffffff);\n width: 100vw;\n min-height: 100dvh;\n top: 0;\n left: 0;\n z-index: 100;\n box-sizing: border-box;\n overflow: visible; /* Changed from overflow-y: auto to prevent interference with fixed positioning */\n display: flex;\n flex-direction: column;\n }\n \n .frontlineQuiz-module_quizPageContainer__YCead {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-radius: var(--quiz-border-radius-large, 16px);\n margin: var(--quiz-spacing-large, 24px) var(--quiz-spacing-medium, 16px) 0px var(--quiz-spacing-medium, 16px);\n height: 100%;\n background: var(--quiz-color-surface, #A198AC);\n overflow: visible; /* Ensure no overflow interference with fixed positioning */\n }\n \n /* Ticker stays in a row on all devices */\n .frontlineQuiz-module_quizTicker__0g1ga {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px 20px;\n /* border-bottom: 1px solid var(--quiz-color-border, transparent); */\n }\n \n .frontlineQuiz-module_quizTickerRight__5DIuy {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 1rem;\n padding-right: 2rem;\n }\n \n .frontlineQuiz-module_closeBtn__hySeT{\n\n border: none;\n background: rgba(234, 234, 234, 0.50);\n cursor: pointer;\n padding-bottom: 3px;\n width: 24px;\n /* height: 24px; */\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 20px;\n display: flex;\n font-size: 20px;\n aspect-ratio: 1/1;\n color: #ffffff;\n }\n \n .frontlineQuiz-module_closeBtn__hySeT svg {\n width: 18px;\n height: 18px;\n flex-shrink: 0;\n }\n \n .frontlineQuiz-module_quizContainer__RILFb {\n flex-grow: 1;\n width: 100%;\n display: flex;\n flex-direction: row; /* side-by-side on desktop */\n align-items: flex-start;\n padding: var(--quiz-spacing-large, 24px) 56px var(--quiz-spacing-large, 24px);\n border-top-left-radius: 10px;\n border-top-right-radius: 10px;\n justify-content: space-between;\n box-sizing: border-box;\n max-width: 1600px;\n margin: 0 auto;\n gap: 2rem;\n background: #ffffff;\n overflow: auto;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n }\n \n .frontlineQuiz-module_quizContainer__RILFb::-webkit-scrollbar {\n display: none;\n }\n \n \n \n .frontlineQuiz-module_cardDeck__JP0v4{\n position: relative;\n width: 100%;\n flex: 1;\n overflow: hidden;\n }\n \n \n .frontlineQuiz-module_stackedCard__Vwgrw {\n position: absolute;\n top: 25px;\n left: 50%;\n bottom: 0;\n transform-origin: center top;\n transition: opacity 0.3s ease-in-out;\n overflow-x: hidden;\n overflow-y: auto;\n }\n \n .frontlineQuiz-module_exitingCard__mYZ2E {\n opacity: 0;\n transition: opacity 0.3s ease-in-out;\n }\n \n /* Left & Right columns on desktop */\n .frontlineQuiz-module_quizLeft__dyhwA {\n width: 100%;\n max-width: 650px;\n overflow: initial;\n scrollbar-width: thin;\n scrollbar-color: #ccc transparent; /* thumb color, track color */\n }\n \n /* WebKit-based browsers (Chrome, Safari, Edge) */\n .frontlineQuiz-module_quizLeft__dyhwA::-webkit-scrollbar {\n width: 6px; /* slim scrollbar */\n }\n \n .frontlineQuiz-module_quizLeft__dyhwA::-webkit-scrollbar-thumb {\n background-color: #ccc; /* grey thumb */\n border-radius: 4px;\n }\n \n .frontlineQuiz-module_quizLeft__dyhwA::-webkit-scrollbar-track {\n background: transparent; /* optional: transparent track */\n }\n \n .frontlineQuiz-module_quizRight__s7J3R {\n max-width: 622px;\n width: 100%;\n }\n \n .frontlineQuiz-module_quizRightHead__Xs3bh {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n }\n \n .frontlineQuiz-module_chooseOption__W1lRR {\n font-size: var(--quiz-font-size-medium, 1rem);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: var(--quiz-line-height-xlarge, 32px);\n letter-spacing: 0.2%;\n color: var(--quiz-color-text-primary, #161c20);\n }\n \n .frontlineQuiz-module_questionCount__cFlA- {\n font-size: var(--quiz-font-size-small, 14px);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n color: var(--quiz-color-text-primary, #FFF);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: var(--quiz-line-height-small, 32px);\n }\n \n .frontlineQuiz-module_optionsContainer__xYly9 {\n display: flex;\n flex-direction: column;\n gap: 18px;\n margin-top: 12px;\n }\n \n .frontlineQuiz-module_mobileNextBtn__trrH5 {\n display: none;\n }\n \n /* Button Styles */\n .frontlineQuiz-module_prevBtn__I2VdW,\n .frontlineQuiz-module_nextBtn__UeoLO {\n padding: 10px 54px;\n background: var(--quiz-color-button-primary, #000000);\n color: var(--quiz-color-button-primary-text, #ffffff);\n border: none;\n border-radius: var(--quiz-spacing-large, 24px);\n cursor: pointer;\n transition: var(--quiz-transition-medium, 0.3s);\n font-size: var(--quiz-font-size-small, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: 21px;\n }\n \n .frontlineQuiz-module_prevBtn__I2VdW {\n background: var(--quiz-color-button-secondary, #5d4037);\n color: var(--quiz-color-button-secondary-text, #ffffff);\n }\n \n .frontlineQuiz-module_nextBtn__UeoLO:disabled {\n background: var(--quiz-color-button-disabled, #d7ccc8);\n color: var(--quiz-color-button-disabled-text, #ffffff);\n cursor: not-allowed;\n }\n \n .frontlineQuiz-module_scrollDownBtn__-DHaP {\n position: fixed;\n bottom: 20px;\n right: 20px;\n z-index: 999;\n border: none;\n border-radius: 50%;\n padding: 4px;\n cursor: pointer;\n font-size: 20px;\n transition: background var(--quiz-transition-medium, 0.3s);\n background: var(--quiz-color-scroll-button, #ffffff);\n }\n \n .frontlineQuiz-module_bounce__kM2GG {\n animation: frontlineQuiz-module_bounce__kM2GG 1.6s infinite;\n }\n \n @keyframes frontlineQuiz-module_bounce__kM2GG {\n 0%,\n 20%,\n 50%,\n 80%,\n 100% {\n transform: translateY(0px);\n }\n 40% {\n transform: translateY(-4px);\n }\n 60% {\n transform: translateY(-2px);\n }\n }\n \n /* RESPONSIVE LAYOUT */\n @media (max-width: 768px) {\n .frontlineQuiz-module_quizPageContainer__YCead {\n flex-direction: column;\n /* padding: var(--quiz-spacing-medium, 16px); */\n /* gap: 1rem; */\n overflow-y: auto;\n margin: 0;\n border-radius: 0;\n }\n \n .frontlineQuiz-module_quizContainer__RILFb {\n flex-direction: column;\n padding: 20px 20px 20px 20px;\n justify-content: start;\n gap: 24px;\n }\n \n \n \n \n .frontlineQuiz-module_quizTicker__0g1ga {\n padding: var(--quiz-spacing-medium, 16px);\n gap: 1rem;\n }\n \n .frontlineQuiz-module_quizLeft__dyhwA {\n max-width: 100%;\n /* margin-bottom: 1rem; */\n min-height: max-content;\n }\n \n .frontlineQuiz-module_quizTickerRight__5DIuy {\n gap: 1rem;\n padding-right: 0;\n }\n \n .frontlineQuiz-module_chooseOption__W1lRR {\n font-size: var(--quiz-font-size-small, 0.9rem);\n line-height: var(--quiz-line-height-medium, 1.4rem);\n }\n \n .frontlineQuiz-module_nextBtnContainer__smf8H {\n display: none;\n }\n \n .frontlineQuiz-module_mobileNextBtn__trrH5 {\n display: block;\n position: fixed;\n bottom: 12px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 999;\n width: calc(100% - 40px);\n max-width: 350px;\n background: transparent;\n pointer-events: auto;\n }\n \n .frontlineQuiz-module_nextBtn__UeoLO {\n width: 100%;\n padding: var(--quiz-spacing-medium, 16px) var(--quiz-spacing-large, 24px);\n font-size: var(--quiz-font-size-medium, 1rem);\n }\n \n .frontlineQuiz-module_questionCount__cFlA- {\n font-size: 0.85rem;\n }\n \n .frontlineQuiz-module_optionBtn__Rgseg {\n padding: var(--quiz-spacing-medium, 16px);\n }\n }\n \n @media (max-width: 768px) and (max-height: 800px) {\n .frontlineQuiz-module_quizContainer__RILFb {\n /* max-height: 70dvh; */\n }\n }\n \n @media (max-width: 768px) and (max-height: 500px) {\n .frontlineQuiz-module_quizContainer__RILFb {\n /* max-height: 60dvh; */\n }\n } ');exports.FrontlineQuizPlayer=function(t){var o=t.quizId,i=t.userId,l=t.tabSwitchLimit,u=t.onQuizComplete,s=t.baseURL,d=t.token,c=t.theme,f=t.direction,m=t.handleClose,p=e.useState(!1),h=p[0],v=p[1],g=e.useState(0),x=g[0],_=g[1],b=e.useState(null),w=b[0],q=b[1],y=e.useState(null),S=y[0],k=y[1],C=e.useState(!1),j=C[0],E=C[1],M=e.useState(!1),B=M[0],N=M[1],P=e.useState(!0),Q=P[0],R=P[1],H=z(l),I=H.isLimitReached,F=H.switchCount,A=e.useState(""),W=A[0],D=A[1],J=e.useRef([]),Y=e.useRef(null);L(),e.useEffect((function(){if(!(o&&i&&s&&d))return R(!1),D("Missing required parameters to load quiz."),void N(!0);r(void 0,void 0,void 0,(function(){var n,e;return a(this,(function(t){switch(t.label){case 0:return t.trys.push([0,5,6,7]),R(!0),[4,fetch("".concat(s,"/user-assessment/").concat(o,"/").concat(i,"/get-session-data"),{headers:{Authorization:"Bearer ".concat(d)}})];case 1:return(n=t.sent()).ok?[4,n.json()]:[3,3];case 2:return e=t.sent(),k(e),[3,4];case 3:D("Something went wrong. Please try again."),N(!0),t.label=4;case 4:return[3,7];case 5:return t.sent(),D("Something went wrong. Please try again."),N(!0),[3,7];case 6:return R(!1),[7];case 7:return[2]}}))}))}),[o,i,s,d]);var G=e.useRef(null),Z=e.useState(!1);Z[0];var X=Z[1],K=e.useState(!1),$=K[0],nn=K[1];if(e.useEffect((function(){if(S){var n=G.current;if(n){var e=function(){var e=n.scrollHeight>n.clientHeight,t=n.scrollTop+n.clientHeight>=n.scrollHeight-15;e?(t&&nn(!0),X(!t&&!$)):(X(!1),nn(!1))},t=requestAnimationFrame((function(){setTimeout(e,100)}));return n.addEventListener("scroll",e),window.addEventListener("resize",e),function(){cancelAnimationFrame(t),n.removeEventListener("scroll",e),window.removeEventListener("resize",e)}}}}),[S,x,$]),e.useEffect((function(){F>0&&F<3&&E(!0)}),[F]),e.useEffect((function(){I&&(D("Your quiz has ended due to switching tabs too many times."),N(!0))}),[I]),e.useEffect((function(){return function(){J.current.forEach((function(n){return clearTimeout(n)})),J.current=[]}}),[]),!S&&Q)return n.jsxs("div",{className:Sn,style:"rtl"==f?{direction:"rtl"}:{},ref:Y,children:[n.jsx(U,{theme:c}),n.jsx(V,{})]});var en=(null==S?void 0:S.questions)||[],tn=function(n,e,t,o){return r(void 0,void 0,void 0,(function(){return a(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,fetch("".concat(s,"/user-assessment/").concat(n,"/").concat(t,"/").concat(e,"/submit-answer"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(d)},body:JSON.stringify({optionIds:[o]})})];case 1:return i.sent().ok||(D("Something went wrong. Please try again."),N(!0)),[3,3];case 2:return i.sent(),[3,3];case 3:return[2]}}))}))},on=function(){return r(void 0,void 0,void 0,(function(){return a(this,(function(n){switch(n.label){case 0:return n.trys.push([0,5,,6]),[4,fetch("".concat(s,"/user-assessment/").concat(o,"/").concat(i,"/mark-quiz-complete"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(d)}})];case 1:return n.sent().ok?(v(!0),[4,u()]):[3,3];case 2:return n.sent(),[3,4];case 3:D("Quiz completed, but there was an issue saving your progress."),N(!0),n.label=4;case 4:return[3,6];case 5:return n.sent(),D("Quiz completed, but there was a network error. Please check your connection."),N(!0),[3,6];case 6:return[2]}}))}))},rn=function(){return r(void 0,void 0,void 0,(function(){var n;return a(this,(function(e){switch(e.label){case 0:if(!S||!en.length)return D("Quiz data is not available. Please try again."),N(!0),[2];R(!0),e.label=1;case 1:return e.trys.push([1,,6,7]),[4,tn(o,en[x].id,i,w)];case 2:return e.sent(),x!==(null==en?void 0:en.length)-1?[3,4]:[4,on()];case 3:return e.sent(),[3,5];case 4:q(null),n=null===window||void 0===window?void 0:window.setTimeout((function(){_((function(n){return n+1}));var n=window.setTimeout((function(){nn(!1)}),150);J.current.push(n)}),300),J.current.push(n),e.label=5;case 5:return[3,7];case 6:return n=null===window||void 0===window?void 0:window.setTimeout((function(){R(!1)}),300),J.current.push(n),[7];case 7:return[2]}}))}))};function an(){return Q?"Submitting":x===(null==en?void 0:en.length)-1?"Submit":"Next"}return h?null:n.jsxs("div",{className:Sn,style:"rtl"==f?{direction:"rtl"}:{},children:[n.jsx(U,{theme:c}),n.jsxs("div",{className:kn,children:[n.jsxs("div",{className:Cn,children:[n.jsxs("h3",{className:On,children:["Questions: ",x+1,"/",(null==en?void 0:en.length)||0]}),n.jsxs("div",{className:jn,children:[n.jsx(yn,{markQuizComplete:on,duration:(null==S?void 0:S.duration)||0,isEndScreenOpen:B}),m&&n.jsx("button",{className:Tn,onClick:m,children:"×"})]})]}),n.jsx("div",{className:Mn,children:en.slice(x).map((function(e,t){var o,i,r=t,a=0===r;return n.jsxs("div",{className:"".concat(En," ").concat(Bn),style:{zIndex:en.length-r,transform:"translateX(-50%) translateY(".concat(-11*r,"px) scale(").concat(1-.025*r,")"),width:"calc(100% - ".concat(24*r,"px)"),opacity:a?1:.75-.15*r,filter:a?"none":"blur(".concat(.8*r,"px)"),backgroundColor:a?"#fff":"#f8f9fa",pointerEvents:a?"auto":"none",top:en.length>4?"50px":"25px",paddingBottom:"80px"},ref:G,children:[n.jsx("div",{className:Nn,children:n.jsx(pn,{question:(null===(o=en[x])||void 0===o?void 0:o.text)||""})}),n.jsxs("div",{className:Pn,children:[n.jsx("div",{className:Qn,children:n.jsx("div",{className:Hn,children:n.jsx("button",{className:Rn,disabled:!w||Q||!S,onClick:rn,children:an()})})}),n.jsx(bn,{loading:Q,options:(null===(i=en[x])||void 0===i?void 0:i.options)||[],selectedOption:w,onSelect:q,direction:f})]})]},x+t)}))})]}),w&&n.jsx("div",{className:Ln,children:n.jsx("button",{className:Rn,disabled:!w||Q||!S,onClick:rn,children:an()})}),n.jsx(T,{open:j,onClose:function(){E(!1),N(!1),D("")}}),n.jsx(O,{open:B,onClose:m,message:W})]})},exports.default=function(t){var o,i,l=t.quizId,u=t.userId,s=t.tabSwitchLimit,c=t.onQuizComplete,f=t.baseURL,m=t.token,p=t.theme,h=t.direction,g=t.handleClose,x=e.useState(!1),_=x[0],w=x[1],q=e.useState(0),y=q[0],S=q[1],k=e.useState(null),C=k[0],j=k[1],E=e.useState(null),M=E[0],B=E[1],N=e.useState(!1),P=N[0],Q=N[1],R=e.useState(!1),H=R[0],F=R[1],W=e.useState(!0),D=W[0],J=W[1],Y=z(s),G=Y.isLimitReached,mn=Y.switchCount,pn=e.useState(""),hn=pn[0],vn=pn[1],gn=e.useRef([]),xn=e.useRef(null);L(),e.useEffect((function(){if(!(l&&u&&f&&m))return J(!1),vn("Missing required parameters to load quiz."),void F(!0);r(void 0,void 0,void 0,(function(){var n,e;return a(this,(function(t){switch(t.label){case 0:return t.trys.push([0,5,6,7]),J(!0),[4,fetch("".concat(f,"/user-assessment/").concat(l,"/").concat(u,"/get-session-data"),{headers:{Authorization:"Bearer ".concat(m)}})];case 1:return(n=t.sent()).ok?[4,n.json()]:[3,3];case 2:return e=t.sent(),B(e),[3,4];case 3:vn("Something went wrong. Please try again."),F(!0),t.label=4;case 4:return[3,7];case 5:return t.sent(),vn("Something went wrong. Please try again."),F(!0),[3,7];case 6:return J(!1),[7];case 7:return[2]}}))}))}),[l,u,f,m]);var _n=e.useRef(null),bn=e.useState(!1),zn=bn[0],wn=bn[1],qn=e.useState(!1),yn=qn[0],Sn=qn[1];e.useEffect((function(){if(M){var n=_n.current;if(n){var e=function(){var e=n.scrollHeight>n.clientHeight,t=n.scrollTop+n.clientHeight>=n.scrollHeight-15;e?(t&&Sn(!0),wn(!t&&!yn)):(wn(!1),Sn(!1))},t=requestAnimationFrame((function(){setTimeout(e,100)}));return n.addEventListener("scroll",e),window.addEventListener("resize",e),function(){cancelAnimationFrame(t),n.removeEventListener("scroll",e),window.removeEventListener("resize",e)}}}}),[M,y,yn]);if(e.useEffect((function(){mn>0&&mn<3&&Q(!0)}),[mn]),e.useEffect((function(){G&&(vn("Your quiz has ended due to switching tabs too many times."),F(!0))}),[G]),e.useEffect((function(){return function(){gn.current.forEach((function(n){return clearTimeout(n)})),gn.current=[]}}),[]),!M&&D)return n.jsxs("div",{className:Z,style:"rtl"==h?{direction:"rtl"}:{},ref:xn,children:[n.jsx(U,{theme:p}),n.jsx(V,{})]});var kn=(null==M?void 0:M.questions)||[],Cn=function(n,e,t,o){return r(void 0,void 0,void 0,(function(){return a(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,fetch("".concat(f,"/user-assessment/").concat(n,"/").concat(t,"/").concat(e,"/submit-answer"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(m)},body:JSON.stringify({optionIds:[o]})})];case 1:return i.sent().ok||(vn("Something went wrong. Please try again."),F(!0)),[3,3];case 2:return i.sent(),[3,3];case 3:return[2]}}))}))},jn=function(){return r(void 0,void 0,void 0,(function(){return a(this,(function(n){switch(n.label){case 0:return n.trys.push([0,5,,6]),[4,fetch("".concat(f,"/user-assessment/").concat(l,"/").concat(u,"/mark-quiz-complete"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(m)}})];case 1:return n.sent().ok?(w(!0),[4,c()]):[3,3];case 2:return n.sent(),[3,4];case 3:vn("Quiz completed, but there was an issue saving your progress."),F(!0),n.label=4;case 4:return[3,6];case 5:return n.sent(),vn("Quiz completed, but there was a network error. Please check your connection."),F(!0),[3,6];case 6:return[2]}}))}))},Tn=function(){return r(void 0,void 0,void 0,(function(){var n;return a(this,(function(e){switch(e.label){case 0:if(!C)return[2];if(!M||!kn.length)return vn("Quiz data is not available. Please try again."),F(!0),[2];J(!0),e.label=1;case 1:return e.trys.push([1,,6,7]),[4,Cn(l,kn[y].id,u,C)];case 2:return e.sent(),y!==(null==kn?void 0:kn.length)-1?[3,4]:[4,jn()];case 3:return e.sent(),[3,5];case 4:j(null),n=null===window||void 0===window?void 0:window.setTimeout((function(){S((function(n){return n+1}));var n=window.setTimeout((function(){Sn(!1)}),150);gn.current.push(n)}),300),gn.current.push(n),e.label=5;case 5:return[3,7];case 6:return n=null===window||void 0===window?void 0:window.setTimeout((function(){J(!1)}),300),gn.current.push(n),[7];case 7:return[2]}}))}))};function En(){return D?"Submitting":y===(null==kn?void 0:kn.length)-1?"Submit":"Next"}return _?null:n.jsxs("div",{className:Z,style:"rtl"==h?{direction:"rtl"}:{},children:[n.jsx(U,{theme:p}),n.jsxs("div",{className:X,children:[n.jsxs("div",{className:K,children:[n.jsxs("h3",{className:ln,children:["Questions: ",y+1,"/",(null==kn?void 0:kn.length)||0]}),n.jsxs("div",{className:$,children:[n.jsx(b,{markQuizComplete:jn,duration:(null==M?void 0:M.duration)||0,isEndScreenOpen:H}),g&&n.jsx("button",{className:nn,onClick:g,children:n.jsx(A,{})})]})]}),n.jsxs("div",{className:en,ref:_n,children:[n.jsx("div",{className:tn,children:n.jsx(d,{question:(null===(o=kn[y])||void 0===o?void 0:o.text)||""})}),n.jsxs("div",{className:on,children:[n.jsxs("div",{className:rn,children:[n.jsx("h3",{className:an,children:"Choose the right option"}),n.jsx("div",{className:fn,children:n.jsx("button",{className:sn,disabled:!C||D||!M,onClick:Tn,children:En()})}),n.jsx("div",{className:un,children:n.jsx("button",{className:sn,disabled:!C||D||!M,onClick:Tn,children:En()})})]}),n.jsx(v,{loading:D,options:(null===(i=kn[y])||void 0===i?void 0:i.options)||[],selectedOption:C,onSelect:j,direction:h})]})]})]}),n.jsx(T,{open:P,onClose:function(){Q(!1),F(!1),vn("")}}),n.jsx(O,{open:H,onClose:g,message:hn}),zn&&n.jsx("button",{className:dn+" "+cn,onClick:function(){var n=_n.current;n&&(n.scrollTo({top:n.scrollHeight+10,behavior:"smooth"}),Sn(!0),wn(!1))},children:n.jsx(I,{})})]})};
package/dist/index.mjs CHANGED
@@ -1,10 +1 @@
1
- import*as n from"react";import e,{useState as t,useRef as r,useEffect as o}from"react";function i(n,e,t,r){return new(t||(t=Promise))((function(o,i){function a(n){try{c(r.next(n))}catch(n){i(n)}}function s(n){try{c(r.throw(n))}catch(n){i(n)}}function c(n){var e;n.done?o(n.value):(e=n.value,e instanceof t?e:new t((function(n){n(e)}))).then(a,s)}c((r=r.apply(n,e||[])).next())}))}function a(n,e){var t,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=s(0),a.throw=s(1),a.return=s(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(t)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(t=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=e.call(n,i)}catch(n){s=[6,n],r=0}finally{t=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}"function"==typeof SuppressedError&&SuppressedError;var s,c={exports:{}},l={};var u,f,p={};
2
- /**
3
- * @license React
4
- * react-jsx-runtime.development.js
5
- *
6
- * Copyright (c) Facebook, Inc. and its affiliates.
7
- *
8
- * This source code is licensed under the MIT license found in the
9
- * LICENSE file in the root directory of this source tree.
10
- */function d(){return u||(u=1,"production"!==process.env.NODE_ENV&&function(){var n=e,t=Symbol.for("react.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),d=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),h=Symbol.for("react.offscreen"),y=Symbol.iterator;var b=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function g(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),r=1;r<e;r++)t[r-1]=arguments[r];!function(n,e,t){var r=b.ReactDebugCurrentFrame,o=r.getStackAddendum();""!==o&&(e+="%s",t=t.concat([o]));var i=t.map((function(n){return String(n)}));i.unshift("Warning: "+e),Function.prototype.apply.call(console[n],console,i)}("error",n,t)}var v;function x(n){return n.displayName||"Context"}function w(n){if(null==n)return null;if("number"==typeof n.tag&&g("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),"function"==typeof n)return n.displayName||n.name||null;if("string"==typeof n)return n;switch(n){case o:return"Fragment";case r:return"Portal";case a:return"Profiler";case i:return"StrictMode";case u:return"Suspense";case f:return"SuspenseList"}if("object"==typeof n)switch(n.$$typeof){case c:return x(n)+".Consumer";case s:return x(n._context)+".Provider";case l:return function(n,e,t){var r=n.displayName;if(r)return r;var o=e.displayName||e.name||"";return""!==o?t+"("+o+")":t}(n,n.render,"ForwardRef");case d:var e=n.displayName||null;return null!==e?e:w(n.type)||"Memo";case m:var t=n,p=t._payload,h=t._init;try{return w(h(p))}catch(n){return null}}return null}v=Symbol.for("react.module.reference");var k,j,E,_,z,S,O,N=Object.assign,P=0;function T(){}T.__reactDisabledLog=!0;var q,R=b.ReactCurrentDispatcher;function C(n,e,t){if(void 0===q)try{throw Error()}catch(n){var r=n.stack.trim().match(/\n( *(at )?)/);q=r&&r[1]||""}return"\n"+q+n}var L,I=!1,$="function"==typeof WeakMap?WeakMap:Map;function D(n,e){if(!n||I)return"";var t,r=L.get(n);if(void 0!==r)return r;I=!0;var o,i=Error.prepareStackTrace;Error.prepareStackTrace=void 0,o=R.current,R.current=null,function(){if(0===P){k=console.log,j=console.info,E=console.warn,_=console.error,z=console.group,S=console.groupCollapsed,O=console.groupEnd;var n={configurable:!0,enumerable:!0,value:T,writable:!0};Object.defineProperties(console,{info:n,log:n,warn:n,error:n,group:n,groupCollapsed:n,groupEnd:n})}P++}();try{if(e){var a=function(){throw Error()};if(Object.defineProperty(a.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(a,[])}catch(n){t=n}Reflect.construct(n,[],a)}else{try{a.call()}catch(n){t=n}n.call(a.prototype)}}else{try{throw Error()}catch(n){t=n}n()}}catch(e){if(e&&t&&"string"==typeof e.stack){for(var s=e.stack.split("\n"),c=t.stack.split("\n"),l=s.length-1,u=c.length-1;l>=1&&u>=0&&s[l]!==c[u];)u--;for(;l>=1&&u>=0;l--,u--)if(s[l]!==c[u]){if(1!==l||1!==u)do{if(l--,--u<0||s[l]!==c[u]){var f="\n"+s[l].replace(" at new "," at ");return n.displayName&&f.includes("<anonymous>")&&(f=f.replace("<anonymous>",n.displayName)),"function"==typeof n&&L.set(n,f),f}}while(l>=1&&u>=0);break}}}finally{I=!1,R.current=o,function(){if(0==--P){var n={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:N({},n,{value:k}),info:N({},n,{value:j}),warn:N({},n,{value:E}),error:N({},n,{value:_}),group:N({},n,{value:z}),groupCollapsed:N({},n,{value:S}),groupEnd:N({},n,{value:O})})}P<0&&g("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=i}var p=n?n.displayName||n.name:"",d=p?C(p):"";return"function"==typeof n&&L.set(n,d),d}function F(n,e,t){if(null==n)return"";if("function"==typeof n)return D(n,!(!(r=n.prototype)||!r.isReactComponent));var r;if("string"==typeof n)return C(n);switch(n){case u:return C("Suspense");case f:return C("SuspenseList")}if("object"==typeof n)switch(n.$$typeof){case l:return D(n.render,!1);case d:return F(n.type,e,t);case m:var o=n,i=o._payload,a=o._init;try{return F(a(i),e,t)}catch(n){}}return""}L=new $;var A=Object.prototype.hasOwnProperty,B={},M=b.ReactDebugCurrentFrame;function W(n){if(n){var e=n._owner,t=F(n.type,n._source,e?e.type:null);M.setExtraStackFrame(t)}else M.setExtraStackFrame(null)}var U=Array.isArray;function H(n){return U(n)}function Y(n){return""+n}function V(n){if(function(n){try{return Y(n),!1}catch(n){return!0}}(n))return g("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(n){return"function"==typeof Symbol&&Symbol.toStringTag&&n[Symbol.toStringTag]||n.constructor.name||"Object"}(n)),Y(n)}var K,J,Q=b.ReactCurrentOwner,X={key:!0,ref:!0,__self:!0,__source:!0};function G(n,e,r,o,i){var a,s={},c=null,l=null;for(a in void 0!==r&&(V(r),c=""+r),function(n){if(A.call(n,"key")){var e=Object.getOwnPropertyDescriptor(n,"key").get;if(e&&e.isReactWarning)return!1}return void 0!==n.key}(e)&&(V(e.key),c=""+e.key),function(n){if(A.call(n,"ref")){var e=Object.getOwnPropertyDescriptor(n,"ref").get;if(e&&e.isReactWarning)return!1}return void 0!==n.ref}(e)&&(l=e.ref,function(n){"string"==typeof n.ref&&Q.current}(e)),e)A.call(e,a)&&!X.hasOwnProperty(a)&&(s[a]=e[a]);if(n&&n.defaultProps){var u=n.defaultProps;for(a in u)void 0===s[a]&&(s[a]=u[a])}if(c||l){var f="function"==typeof n?n.displayName||n.name||"Unknown":n;c&&function(n,e){var t=function(){K||(K=!0,g("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",e))};t.isReactWarning=!0,Object.defineProperty(n,"key",{get:t,configurable:!0})}(s,f),l&&function(n,e){var t=function(){J||(J=!0,g("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",e))};t.isReactWarning=!0,Object.defineProperty(n,"ref",{get:t,configurable:!0})}(s,f)}return function(n,e,r,o,i,a,s){var c={$$typeof:t,type:n,key:e,ref:r,props:s,_owner:a,_store:{}};return Object.defineProperty(c._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(c,"_self",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(c,"_source",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c}(n,c,l,i,o,Q.current,s)}var Z,nn=b.ReactCurrentOwner,en=b.ReactDebugCurrentFrame;function tn(n){if(n){var e=n._owner,t=F(n.type,n._source,e?e.type:null);en.setExtraStackFrame(t)}else en.setExtraStackFrame(null)}function rn(n){return"object"==typeof n&&null!==n&&n.$$typeof===t}function on(){if(nn.current){var n=w(nn.current.type);if(n)return"\n\nCheck the render method of `"+n+"`."}return""}Z=!1;var an={};function sn(n,e){if(n._store&&!n._store.validated&&null==n.key){n._store.validated=!0;var t=function(n){var e=on();if(!e){var t="string"==typeof n?n:n.displayName||n.name;t&&(e="\n\nCheck the top-level render call using <"+t+">.")}return e}(e);if(!an[t]){an[t]=!0;var r="";n&&n._owner&&n._owner!==nn.current&&(r=" It was passed a child from "+w(n._owner.type)+"."),tn(n),g('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,r),tn(null)}}}function cn(n,e){if("object"==typeof n)if(H(n))for(var t=0;t<n.length;t++){var r=n[t];rn(r)&&sn(r,e)}else if(rn(n))n._store&&(n._store.validated=!0);else if(n){var o=function(n){if(null===n||"object"!=typeof n)return null;var e=y&&n[y]||n["@@iterator"];return"function"==typeof e?e:null}(n);if("function"==typeof o&&o!==n.entries)for(var i,a=o.call(n);!(i=a.next()).done;)rn(i.value)&&sn(i.value,e)}}function ln(n){var e,t=n.type;if(null!=t&&"string"!=typeof t){if("function"==typeof t)e=t.propTypes;else{if("object"!=typeof t||t.$$typeof!==l&&t.$$typeof!==d)return;e=t.propTypes}if(e){var r=w(t);!function(n,e,t,r,o){var i=Function.call.bind(A);for(var a in n)if(i(n,a)){var s=void 0;try{if("function"!=typeof n[a]){var c=Error((r||"React class")+": "+t+" type `"+a+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof n[a]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw c.name="Invariant Violation",c}s=n[a](e,a,r,t,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){s=n}!s||s instanceof Error||(W(o),g("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",r||"React class",t,a,typeof s),W(null)),s instanceof Error&&!(s.message in B)&&(B[s.message]=!0,W(o),g("Failed %s type: %s",t,s.message),W(null))}}(e,n.props,"prop",r,n)}else if(void 0!==t.PropTypes&&!Z){Z=!0,g("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",w(t)||"Unknown")}"function"!=typeof t.getDefaultProps||t.getDefaultProps.isReactClassApproved||g("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}var un={};function fn(n,e,r,p,y,b){var x=function(n){return"string"==typeof n||"function"==typeof n||n===o||n===a||n===i||n===u||n===f||n===h||"object"==typeof n&&null!==n&&(n.$$typeof===m||n.$$typeof===d||n.$$typeof===s||n.$$typeof===c||n.$$typeof===l||n.$$typeof===v||void 0!==n.getModuleId)}(n);if(!x){var k="";(void 0===n||"object"==typeof n&&null!==n&&0===Object.keys(n).length)&&(k+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var j;k+=on(),null===n?j="null":H(n)?j="array":void 0!==n&&n.$$typeof===t?(j="<"+(w(n.type)||"Unknown")+" />",k=" Did you accidentally export a JSX literal instead of a component?"):j=typeof n,g("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",j,k)}var E=G(n,e,r,y,b);if(null==E)return E;if(x){var _=e.children;if(void 0!==_)if(p)if(H(_)){for(var z=0;z<_.length;z++)cn(_[z],n);Object.freeze&&Object.freeze(_)}else g("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else cn(_,n)}if(A.call(e,"key")){var S=w(n),O=Object.keys(e).filter((function(n){return"key"!==n})),N=O.length>0?"{key: someKey, "+O.join(": ..., ")+": ...}":"{key: someKey}";if(!un[S+N])g('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',N,S,O.length>0?"{"+O.join(": ..., ")+": ...}":"{}",S),un[S+N]=!0}return n===o?function(n){for(var e=Object.keys(n.props),t=0;t<e.length;t++){var r=e[t];if("children"!==r&&"key"!==r){tn(n),g("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",r),tn(null);break}}null!==n.ref&&(tn(n),g("Invalid attribute `ref` supplied to `React.Fragment`."),tn(null))}(E):ln(E),E}var pn=function(n,e,t){return fn(n,e,t,!1)},dn=function(n,e,t){return fn(n,e,t,!0)};p.Fragment=o,p.jsx=pn,p.jsxs=dn}()),p}var m=(f||(f=1,"production"===process.env.NODE_ENV?c.exports=function(){if(s)return l;s=1;var n=e,t=Symbol.for("react.element"),r=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,i=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function c(n,e,r){var s,c={},l=null,u=null;for(s in void 0!==r&&(l=""+r),void 0!==e.key&&(l=""+e.key),void 0!==e.ref&&(u=e.ref),e)o.call(e,s)&&!a.hasOwnProperty(s)&&(c[s]=e[s]);if(n&&n.defaultProps)for(s in e=n.defaultProps)void 0===c[s]&&(c[s]=e[s]);return{$$typeof:t,type:n,key:l,ref:u,props:c,_owner:i.current}}return l.Fragment=r,l.jsx=c,l.jsxs=c,l}():c.exports=d()),c.exports);function h(n,e){void 0===e&&(e={});var t=e.insertAt;if(n&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===t&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=n:o.appendChild(document.createTextNode(n))}}h('/* .questionHtmlWrapper ul {\n list-style-type: disc;\n padding-left: 1.5rem;\n list-style-position: inside;\n}\n\n.questionHtmlWrapper ol {\n list-style-type: disc;\n padding-left: 1.5rem;\n list-style-position: inside;\n} */\n\n.question-text {\n font-size: 1.15rem;\n font-weight: 600;\n color: #161c20;\n font-family: "Patron", sans-serif;\n line-height: 25px;\n}\n\ncode {\n font-size: 0.8rem;\n font-weight: normal;\n}\n\n@media (max-width: 1320px) {\n .question-text {\n font-size: 1rem;\n }\n .questionHtmlWrapper code {\n font-size: 0.8rem;\n }\n}\n\n@media (max-width: 768px) {\n .question-text {\n font-size: 0.95rem;\n line-height: 22px;\n }\n}\n');var y=function(n){var e=n.question;return m.jsx("div",{className:"question-html-wrapper",children:m.jsx("h2",{className:"question-text",dangerouslySetInnerHTML:{__html:e}})})};h('.options-container {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.option-btn {\n width: 100%;\n padding: 12px;\n border-radius: 8px;\n background: #ffffff;\n cursor: pointer;\n transition: 0.3s;\n color: #161c20;\n border: none;\n text-align: left;\n border: 1px solid #e7e7e7;\n}\n\n.option-btn:hover {\n background: #e1d8c9;\n}\n\n.option-btn.selected {\n background: #b59b7b;\n}\n\n.option-text {\n font-size: 1rem;\n font-weight: 500;\n line-height: 22px;\n letter-spacing: -0.1%;\n font-family: "Patron", sans-serif;\n}\n\n.option-image {\n max-width: 100%;\n height: auto;\n border-radius: 5px;\n}\n\n.option-code {\n background-color: #1e1e1e;\n color: white;\n padding: 8px;\n border-radius: 5px;\n}\n\n@media (max-width: 768px) {\n .option-text {\n font-size: 0.95rem;\n line-height: 21px;\n }\n\n .option-btn:hover {\n background: #b59b7b;\n }\n}\n');var b,g=function(n){var e=n.options,t=n.selectedOption,r=n.onSelect,o=n.loading;return m.jsx("div",{className:"options-container",children:e.map((function(n){return m.jsx("button",{disabled:o,className:"option-btn ".concat(t===n.id&&"selected"),onClick:function(){return r(n.id)},children:n.text&&m.jsx("span",{className:"option-text",children:n.text})},n.id)}))})};function v(){return v=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},v.apply(null,arguments)}var x=function(e){return n.createElement("svg",v({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none"},e),b||(b=n.createElement("path",{fill:"#1D1B21",d:"M8 2.5a6 6 0 1 0 6 6 6.006 6.006 0 0 0-6-6m2.854 3.854-2.5 2.5a.5.5 0 0 1-.708-.708l2.5-2.5a.5.5 0 1 1 .708.708M6 1a.5.5 0 0 1 .5-.5h3a.5.5 0 1 1 0 1h-3A.5.5 0 0 1 6 1"})))};h(".timer {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n");var w=function(n){var e=n.duration,i=n.markQuizComplete,a=n.isEndScreenOpen,s=t(e),c=s[0],l=s[1],u=r(null);o((function(){return u.current&&clearInterval(u.current),u.current=setInterval((function(){l((function(n){return n>0?n-1:0}))}),1e3),function(){u.current&&clearInterval(u.current)}}),[e]),o((function(){0===c&&(i(),u.current&&clearInterval(u.current))}),[c,i]),o((function(){a&&u.current&&clearInterval(u.current)}),[a]);var f,p,d;return m.jsxs("div",{className:"timer",children:[m.jsx(x,{}),m.jsx("span",{children:(f=c,p=Math.floor(f/60),d=f%60,"".concat(p,":").concat(d<10?"0":"").concat(d))})]})};h('/* Modal Background Overlay */\n.modal-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.6);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 1000;\n}\n\n/* Modal Box */\n.modal-content {\n background: #222;\n color: #fff;\n padding: 20px;\n border-radius: 10px;\n width: 400px;\n text-align: center;\n position: relative;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);\n}\n\n/* Close Button */\n.modal-close {\n position: absolute;\n top: 10px;\n right: 15px;\n background: none;\n border: none;\n font-size: 24px;\n color: #fff;\n cursor: pointer;\n font-family: "Patron", sans-serif;\n}\n\n/* Header */\n.modal-header {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin-bottom: 10px;\n font-family: "Patron", sans-serif;\n}\n\n/* Warning Icon */\n.modal-icon {\n font-size: 32px;\n color: #ffcc00;\n}\n\n/* Text */\n.modal-text {\n font-size: 14px;\n color: #ccc;\n margin-bottom: 20px;\n font-family: "Patron", sans-serif;\n}\n\n/* Button */\n.modal-button {\n background: #fff;\n color: #222;\n border: none;\n padding: 10px 20px;\n border-radius: 20px;\n font-size: 14px;\n cursor: pointer;\n transition: 0.3s;\n font-family: "Patron", sans-serif;\n}\n\n.modal-button:hover {\n background: #ddd;\n}\n');var k=function(n){var e=n.open,t=n.onClose;return e?m.jsx("div",{className:"modal-overlay",children:m.jsxs("div",{className:"modal-content",children:[m.jsx("button",{className:"modal-close",onClick:t,children:"×"}),m.jsxs("div",{className:"modal-header",children:[m.jsx("span",{className:"modal-icon",children:"⚠️"}),m.jsx("h2",{children:"Tab Switch Detected"})]}),m.jsx("p",{className:"modal-text",children:"Any further attempts to switch tabs or change browser windows will result in disqualification from the assessment."}),m.jsx("button",{className:"modal-button",onClick:t,children:"Understood"})]})}):null};h('.end-screen-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: #222;\n color: #fff;\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 1000;\n}\n\n/* Content */\n.end-screen-content {\n text-align: center;\n font-size: 20px;\n font-weight: bold;\n font-family: "Patron", sans-serif;\n}\n\n.end-screen-close {\n position: absolute;\n top: 20px;\n right: 20px;\n background: none;\n border: none;\n font-size: 24px;\n color: #fff;\n cursor: pointer;\n font-family: "Patron", sans-serif;\n}\n');var j,E,_,z=function(n){var e=n.open;return n.onClose,e?m.jsx("div",{className:"end-screen-overlay",children:m.jsx("div",{className:"end-screen-content",children:m.jsx("p",{children:"Your quiz has ended due to switching tabs too many times."})})}):null};function S(){return S=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},S.apply(null,arguments)}var O=function(e){return n.createElement("svg",S({xmlns:"http://www.w3.org/2000/svg",width:38,height:38,fill:"none"},e),j||(j=n.createElement("rect",{width:38,height:38,fill:"#151515",rx:19})),E||(E=n.createElement("g",{clipPath:"url(#downArrow_svg__a)"},n.createElement("path",{fill:"#fff",d:"M8.758 21.194c.037.14.145.36.234.492.09.136 2.138 2.222 4.556 4.636 5.035 5.03 4.594 4.655 5.452 4.655.427 0 .525-.015.727-.113.182-.094 1.18-1.06 4.725-4.594 2.47-2.465 4.546-4.57 4.612-4.678.145-.243.248-.623.248-.91 0-.454-.295-1.077-.637-1.335-.342-.263-.97-.399-1.397-.3-.534.122-.576.16-3.319 2.873-2.667 2.649-2.878 2.883-3.117 3.46-.08.201-.084-.043-.108-8.442l-.023-8.649-.127-.267a1.84 1.84 0 0 0-.796-.84c-.282-.154-.32-.159-.788-.159-.445 0-.516.015-.75.132-.464.239-.788.633-.919 1.12-.056.211-.065 1.608-.065 8.756v8.508l-.136-.281a3.7 3.7 0 0 0-.347-.563c-.117-.154-1.36-1.425-2.761-2.817-1.945-1.94-2.602-2.569-2.78-2.658-.914-.454-1.94-.13-2.376.75-.178.361-.22.83-.108 1.224"}))),_||(_=n.createElement("defs",null,n.createElement("clipPath",{id:"downArrow_svg__a"},n.createElement("path",{fill:"#fff",d:"M7 31V7h24v24z"})))))};h(".loader-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: black;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 9999;\n}\n\n.loader-spinner {\n border: 8px solid rgba(255, 255, 255, 0.2);\n border-top: 8px solid white;\n border-radius: 50%;\n width: 60px;\n height: 60px;\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n");var N=function(){return m.jsx("div",{className:"loader-overlay",children:m.jsx("div",{className:"loader-spinner"})})};h('* {\n box-sizing: border-box;\n}\n\n.quiz-page {\n position: fixed;\n background: white;\n width: 100vw;\n min-height: 100dvh;\n top: 0;\n left: 0;\n z-index: 100;\n box-sizing: border-box;\n overflow-y: auto; /* ensure scrolling works */\n display: flex;\n flex-direction: column;\n}\n\n.quiz-page-container {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-radius: 16px;\n margin: 24px 16px 0px 16px;\n height: 100%;\n background: #f8f5f2; /* Same background color */\n}\n\n/* Ticker stays in a row on all devices */\n.quiz-ticker {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px 20px;\n border-bottom: 1px solid #e1d8c9;\n}\n\n.quiz-ticker-right {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 2rem;\n padding-right: 2rem;\n}\n\n.quiz-container {\n flex-grow: 1;\n width: 100%;\n display: flex;\n flex-direction: row; /* side-by-side on desktop */\n align-items: flex-start;\n padding: 24px 56px 24px;\n border-radius: 10px;\n justify-content: space-between;\n box-sizing: border-box;\n max-width: 1600px;\n margin: 0 auto;\n max-height: 80dvh;\n overflow: auto;\n gap: 2rem;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n}\n\n.quiz-container::-webkit-scrollbar {\n display: none;\n}\n\n/* Left & Right columns on desktop */\n.quiz-left {\n width: 100%;\n max-width: 650px;\n overflow: auto;\n scrollbar-width: thin;\n scrollbar-color: #ccc transparent; /* thumb color, track color */\n}\n\n/* WebKit-based browsers (Chrome, Safari, Edge) */\n.quiz-left::-webkit-scrollbar {\n width: 6px; /* slim scrollbar */\n}\n\n.quiz-left::-webkit-scrollbar-thumb {\n background-color: #ccc; /* grey thumb */\n border-radius: 4px;\n}\n\n.quiz-left::-webkit-scrollbar-track {\n background: transparent; /* optional: transparent track */\n}\n\n.quiz-right {\n max-width: 622px;\n width: 100%;\n}\n\n.quiz-right-head {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.choose-option {\n font-size: 1rem;\n font-family: "Patron", sans-serif;\n font-weight: 500;\n line-height: 32px;\n letter-spacing: 0.2%;\n}\n\n.question-count {\n font-size: 0.9rem;\n font-family: "Patron", sans-serif;\n color: #161c20;\n font-weight: 500;\n line-height: 1.2rem;\n}\n\n.options-container {\n display: flex;\n flex-direction: column;\n gap: 18px;\n margin-top: 12px;\n}\n\n.mobile-next-btn {\n display: none;\n}\n\n/* Button Styles */\n.prev-btn,\n.next-btn {\n padding: 10px 54px;\n background: #000000;\n color: #ffffff;\n border: none;\n border-radius: 24px;\n cursor: pointer;\n transition: 0.3s;\n font-size: 0.9rem;\n font-weight: 500;\n font-family: "Patron", sans-serif;\n line-height: 21px;\n}\n\n.prev-btn {\n background: #5d4037;\n}\n\n.next-btn:disabled {\n background: #d7ccc8;\n cursor: not-allowed;\n}\n\n.scroll-down-btn {\n position: fixed;\n bottom: 20px;\n right: 20px;\n z-index: 999;\n border: none;\n border-radius: 50%;\n padding: 4px;\n cursor: pointer;\n font-size: 20px;\n transition: background 0.3s;\n}\n\n.bounce {\n animation: bounce 1.6s infinite;\n}\n\n@keyframes bounce {\n 0%,\n 20%,\n 50%,\n 80%,\n 100% {\n transform: translateY(0px);\n }\n 40% {\n transform: translateY(-4px);\n }\n 60% {\n transform: translateY(-2px);\n }\n}\n\n/* RESPONSIVE LAYOUT */\n@media (max-width: 768px) {\n /* Stack quiz content vertically on mobile */\n\n .quiz-page-container {\n flex-direction: column;\n padding: 16px;\n gap: 1rem;\n overflow-y: auto;\n margin: 0;\n border-radius: 0;\n }\n\n .quiz-container {\n flex-direction: column;\n padding: 0;\n justify-content: space-between;\n }\n\n .quiz-ticker {\n padding: 3px 20px;\n }\n\n .quiz-left {\n max-height: none;\n overflow: initial;\n }\n\n .quiz-ticker-right {\n padding-right: 0px;\n }\n\n .choose-option {\n font-size: 0.95rem;\n }\n /* Keep the ticker in a row at the top (no change) */\n\n /* Fix the next button at the bottom on mobile */\n .next-btn-container {\n display: none;\n }\n\n .mobile-next-btn {\n display: block;\n position: fixed;\n left: 0;\n bottom: 0;\n margin: 0 auto;\n text-align: center;\n z-index: 101;\n width: 100%;\n padding: 12px 0;\n border-top: 1px solid #dddddd;\n background: #f8f5f2; /* Same background color */\n }\n\n .next-btn {\n padding: 12px 72px;\n }\n\n .question-count {\n font-size: 0.95rem;\n }\n .option-btn {\n font-size: 0.8rem;\n padding: 10px;\n }\n}\n\n@media (max-width: 768px) and (max-height: 800px) {\n .quiz-container {\n padding-bottom: 65px;\n }\n}\n\n@media (max-width: 768px) and (max-height: 500px) {\n .quiz-container {\n padding-bottom: 100px;\n }\n}\n');h('/* Thin (100) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-thin.woff2") format("woff2");\n font-weight: 100;\n font-style: normal;\n font-display: swap;\n}\n\n/* Light (300) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-light.woff2") format("woff2");\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n}\n\n/* Regular (400) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-regular.woff2") format("woff2");\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n}\n\n/* Medium (500) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-medium.woff2") format("woff2");\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n}\n\n/* Bold (700) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-bold.woff2") format("woff2");\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n}\n');var P=function(n){var e=n.quizId,s=n.userId,c=n.tabSwitchLimit,l=n.onQuizComplete,u=n.baseURL,f=n.token,p=t(!1),d=p[0],h=p[1],b=t(0),v=b[0],x=b[1],j=t(null),E=j[0],_=j[1],S=t(null),P=S[0],T=S[1],q=t(!1),R=q[0],C=q[1],L=t(!1),I=L[0],$=L[1],D=t(!1),F=D[0],A=D[1],B=function(n){void 0===n&&(n=3);var e=t(0),r=e[0],i=e[1],a=t(!1),s=a[0],c=a[1];return o((function(){var n=function(){document.hidden&&i((function(n){return n+1}))};return document.addEventListener("visibilitychange",n),function(){document.removeEventListener("visibilitychange",n)}}),[]),o((function(){r>=n&&c(!0)}),[r,n]),{switchCount:r,isLimitReached:s}}(c),M=B.isLimitReached,W=B.switchCount,U=r([]);o((function(){var n=function(n){return n.preventDefault()},e=function(n){return n.preventDefault()},t=function(n){return n.preventDefault()};return document.addEventListener("copy",n),document.addEventListener("cut",n),document.addEventListener("paste",n),document.addEventListener("selectstart",e),document.addEventListener("contextmenu",t),function(){document.removeEventListener("copy",n),document.removeEventListener("cut",n),document.removeEventListener("paste",n),document.removeEventListener("selectstart",e),document.removeEventListener("contextmenu",t)}}),[]),o((function(){i(void 0,void 0,void 0,(function(){var n;return a(this,(function(t){switch(t.label){case 0:return t.trys.push([0,3,,4]),[4,fetch("".concat(u,"/user-assessment/").concat(e,"/").concat(s,"/get-session-data"),{headers:{Authorization:"Bearer ".concat(f)}})];case 1:return[4,t.sent().json()];case 2:return n=t.sent(),T(n),[3,4];case 3:return t.sent(),[3,4];case 4:return[2]}}))}))}),[e,s]);var H=r(null),Y=t(!1),V=Y[0],K=Y[1],J=t(!1),Q=J[0],X=J[1];o((function(){if(P){var n=H.current;if(n){var e=function(){var e=n.scrollHeight>n.clientHeight,t=n.scrollTop+n.clientHeight>=n.scrollHeight-15;e?(t&&X(!0),K(!t&&!Q)):(K(!1),X(!1))},t=requestAnimationFrame((function(){setTimeout(e,100)}));return n.addEventListener("scroll",e),window.addEventListener("resize",e),function(){cancelAnimationFrame(t),n.removeEventListener("scroll",e),window.removeEventListener("resize",e)}}}}),[P,v,Q]);if(o((function(){W>0&&W<3&&C(!0)}),[W]),o((function(){M&&$(!0)}),[M]),o((function(){return function(){U.current.forEach((function(n){return clearTimeout(n)})),U.current=[]}}),[]),!P)return m.jsx(N,{});function G(){C(!1),$(!1)}var Z=P.questions,nn=function(n,e,t,r){return i(void 0,void 0,void 0,(function(){return a(this,(function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),[4,fetch("".concat(u,"/user-assessment/").concat(n,"/").concat(t,"/").concat(e,"/submit-answer"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(f)},body:JSON.stringify({optionIds:[r]})})];case 1:case 2:return o.sent(),[3,3];case 3:return[2]}}))}))},en=function(){return i(void 0,void 0,void 0,(function(){return a(this,(function(n){switch(n.label){case 0:return n.trys.push([0,4,,5]),[4,fetch("".concat(u,"/user-assessment/").concat(e,"/").concat(s,"/mark-quiz-complete"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(f)}})];case 1:return n.sent().ok?(h(!0),[4,l()]):[3,3];case 2:return n.sent(),[3,3];case 3:return[3,5];case 4:return n.sent(),[3,5];case 5:return[2]}}))}))},tn=function(){return i(void 0,void 0,void 0,(function(){var n;return a(this,(function(t){switch(t.label){case 0:if(!E)return[2];A(!0),t.label=1;case 1:return t.trys.push([1,,6,7]),[4,nn(e,Z[v].id,s,E)];case 2:return t.sent(),v!==Z.length-1?[3,4]:[4,en()];case 3:return t.sent(),[3,5];case 4:_(null),n=null===window||void 0===window?void 0:window.setTimeout((function(){x((function(n){return n+1}));var n=window.setTimeout((function(){X(!1)}),150);U.current.push(n)}),300),U.current.push(n),t.label=5;case 5:return[3,7];case 6:return n=null===window||void 0===window?void 0:window.setTimeout((function(){A(!1)}),300),U.current.push(n),[7];case 7:return[2]}}))}))};function rn(){return F?"Submitting":v===Z.length-1?"Submit":"Next"}return d?null:m.jsxs("div",{className:"quiz-page",children:[m.jsxs("div",{className:"quiz-page-container",children:[m.jsxs("div",{className:"quiz-ticker",children:[m.jsxs("h3",{className:"question-count",children:["Questions: ",v+1,"/",Z.length]}),m.jsx("div",{className:"quiz-ticker-right",children:m.jsx(w,{markQuizComplete:en,duration:P.duration,isEndScreenOpen:I})})]}),m.jsxs("div",{className:"quiz-container",ref:H,children:[m.jsx("div",{className:"quiz-left",children:m.jsx(y,{question:Z[v].text})}),m.jsxs("div",{className:"quiz-right",children:[m.jsxs("div",{className:"quiz-right-head",children:[m.jsx("h3",{className:"choose-option",children:"Choose the right option"}),m.jsx("div",{className:"next-btn-container",children:m.jsx("button",{className:"next-btn",disabled:!E||F,onClick:tn,children:rn()})}),m.jsx("div",{className:"mobile-next-btn",children:m.jsx("button",{className:"next-btn",disabled:!E||F,onClick:tn,children:rn()})})]}),m.jsx(g,{loading:F,options:Z[v].options,selectedOption:E,onSelect:_})]})]})]}),m.jsx(k,{open:R,onClose:G}),m.jsx(z,{open:I,onClose:G}),V&&m.jsx("button",{className:"scroll-down-btn bounce",onClick:function(){var n=H.current;n&&(n.scrollTo({top:n.scrollHeight+10,behavior:"smooth"}),X(!0),K(!1))},children:m.jsx(O,{})})]})};export{P as default};
1
+ import{jsx as n,jsxs as e}from"react/jsx-runtime";import*as o from"react";import{useState as t,useRef as i,useEffect as r}from"react";var a=function(){return a=Object.assign||function(n){for(var e,o=1,t=arguments.length;o<t;o++)for(var i in e=arguments[o])Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i]);return n},a.apply(this,arguments)};function l(n,e,o,t){return new(o||(o=Promise))((function(i,r){function a(n){try{u(t.next(n))}catch(n){r(n)}}function l(n){try{u(t.throw(n))}catch(n){r(n)}}function u(n){var e;n.done?i(n.value):(e=n.value,e instanceof o?e:new o((function(n){n(e)}))).then(a,l)}u((t=t.apply(n,e||[])).next())}))}function u(n,e){var o,t,i,r={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=l(0),a.throw=l(1),a.return=l(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(u){return function(l){if(o)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(r=0)),r;)try{if(o=1,t&&(i=2&l[0]?t.return:l[0]?t.throw||((i=t.return)&&i.call(t),0):t.next)&&!(i=i.call(t,l[1])).done)return i;switch(t=0,i&&(l=[2&l[0],i.value]),l[0]){case 0:case 1:i=l;break;case 4:return r.label++,{value:l[1],done:!1};case 5:r.label++,t=l[1],l=[0];continue;case 7:l=r.ops.pop(),r.trys.pop();continue;default:if(!(i=r.trys,(i=i.length>0&&i[i.length-1])||6!==l[0]&&2!==l[0])){r=0;continue}if(3===l[0]&&(!i||l[1]>i[0]&&l[1]<i[3])){r.label=l[1];break}if(6===l[0]&&r.label<i[1]){r.label=i[1],i=l;break}if(i&&r.label<i[2]){r.label=i[2],r.ops.push(l);break}i[2]&&r.ops.pop(),r.trys.pop();continue}l=e.call(n,r)}catch(n){l=[6,n],t=0}finally{o=i=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,u])}}}function d(n,e){void 0===e&&(e={});var o=e.insertAt;if(n&&"undefined"!=typeof document){var t=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css","top"===o&&t.firstChild?t.insertBefore(i,t.firstChild):t.appendChild(i),i.styleSheet?i.styleSheet.cssText=n:i.appendChild(document.createTextNode(n))}}"function"==typeof SuppressedError&&SuppressedError;var s="question-module_questionHtmlWrapper__Twvia",c="question-module_questionText__T-h7Z";d('.question-module_questionHtmlWrapper__Twvia ul {\n list-style-type: disc;\n padding-left: 1.5rem;\n list-style-position: inside;\n}\n\n.question-module_questionHtmlWrapper__Twvia ol {\n list-style-type: disc;\n padding-left: 1.5rem;\n list-style-position: inside;\n}\n\n.question-module_questionText__T-h7Z {\n font-size: var(--quiz-font-size-large, 1.15rem);\n font-weight: var(--quiz-font-weight-bold, 600);\n color: var(--quiz-color-text-primary, #161c20);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: 25px;\n}\n\ncode {\n font-size: 0.8rem;\n font-weight: normal;\n}\n\n@media (max-width: 1320px) {\n .question-module_questionText__T-h7Z {\n font-size: var(--quiz-font-size-medium, 1rem);\n }\n .question-module_questionHtmlWrapper__Twvia code {\n font-size: 0.8rem;\n }\n}\n\n@media (max-width: 768px) {\n .question-module_questionText__T-h7Z {\n font-size: 0.95rem;\n line-height: 22px;\n }\n} ');var m=function(e){var o=e.question;return n("div",{className:s,children:n("h2",{className:c,dangerouslySetInnerHTML:{__html:o}})})},f="options-module_optionsContainer__atebx",p="options-module_optionBtn__LiVJD",h="options-module_selected__yvd2e",v="options-module_optionText__W2Nhm";d('.options-module_optionsContainer__atebx {\n display: flex;\n flex-direction: column;\n gap: 18px;\n margin-top: 12px;\n}\n\n.options-module_optionBtn__LiVJD {\n width: 100%;\n padding: 12px;\n border-radius: var(--quiz-border-radius-medium, 8px);\n background: var(--quiz-color-option-background, #ffffff);\n cursor: pointer;\n transition: var(--quiz-transition-medium, 0.3s);\n color: var(--quiz-color-option-text, #161c20);\n border: none;\n text-align: left;\n border: 1px solid var(--quiz-color-option-border, #e7e7e7);\n /* display: flex; */\n}\n\n.options-module_optionBtn__LiVJD:hover {\n background: var(--quiz-color-option-hover, #e1d8c9);\n}\n\n.options-module_optionBtn__LiVJD.options-module_selected__yvd2e {\n background: var(--quiz-color-option-selected, #b59b7b);\n}\n\n.options-module_optionText__W2Nhm {\n font-size: var(--quiz-font-size-medium, 1rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: 22px;\n letter-spacing: -0.1%;\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n}\n\n.options-module_optionImage__DNo-g {\n max-width: 100%;\n height: auto;\n border-radius: var(--quiz-border-radius-small, 4px);\n}\n\n.options-module_optionCode__UBsLe {\n background-color: #1e1e1e;\n color: white;\n padding: var(--quiz-spacing-small, 8px);\n border-radius: var(--quiz-border-radius-small, 4px);\n}\n\n@media (max-width: 768px) {\n .options-module_optionText__W2Nhm {\n font-size: 0.95rem;\n line-height: 21px;\n }\n\n .options-module_optionBtn__LiVJD:hover {\n background: var(--quiz-color-option-selected, #b59b7b);\n }\n} ');var g,_=function(e){var o=e.options,t=e.selectedOption,i=e.onSelect,r=e.loading,a=e.direction;return n("div",{className:f,children:null==o?void 0:o.map((function(e){return n("button",{disabled:r,className:"".concat(p," ").concat(t===e.id&&h),style:"rtl"===a?{textAlign:"unset"}:{},onClick:function(){return i(e.id)},children:e.text&&n("span",{className:v,children:e.text})},e.id)}))})};function z(){return z=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var o=arguments[e];for(var t in o)({}).hasOwnProperty.call(o,t)&&(n[t]=o[t])}return n},z.apply(null,arguments)}var b=function(n){return o.createElement("svg",z({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none"},n),g||(g=o.createElement("path",{fill:"#1D1B21",d:"M8 2.5a6 6 0 1 0 6 6 6.006 6.006 0 0 0-6-6m2.854 3.854-2.5 2.5a.5.5 0 0 1-.708-.708l2.5-2.5a.5.5 0 1 1 .708.708M6 1a.5.5 0 0 1 .5-.5h3a.5.5 0 1 1 0 1h-3A.5.5 0 0 1 6 1"})))},x="timer-module_timer__J6Vp3";d('.timer-module_timer__J6Vp3 {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 8px;\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n font-size: var(--quiz-font-size-medium, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n color: var(--quiz-color-text-primary, #161c20);\n}\n\n.timer-module_timer__J6Vp3 span {\n color: var(--quiz-color-text-primary, #161c20);\n font-size: var(--quiz-font-size-medium, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n}\n\n.timer-module_timer__J6Vp3 svg {\n width: 18px;\n height: 18px;\n fill: var(--quiz-color-text-primary, #161c20);\n}\n\n@media (max-width: 768px) {\n .timer-module_timer__J6Vp3 {\n font-size: var(--quiz-font-size-small, 0.85rem);\n }\n \n .timer-module_timer__J6Vp3 span {\n font-size: var(--quiz-font-size-small, 0.85rem);\n }\n \n .timer-module_timer__J6Vp3 svg {\n width: 16px;\n height: 16px;\n }\n} ');var w=function(o){var a=o.duration,l=o.markQuizComplete,u=o.isEndScreenOpen,d=t(a),s=d[0],c=d[1],m=i(null);r((function(){if(0!==a)return m.current&&clearInterval(m.current),m.current=setInterval((function(){c((function(n){return n>0?n-1:0}))}),1e3),function(){m.current&&clearInterval(m.current)}}),[a]),r((function(){0!==a&&0===s&&(l(),m.current&&clearInterval(m.current))}),[s,l]),r((function(){u&&m.current&&clearInterval(m.current)}),[u]);var f,p,h;return e("div",{className:x,children:[n(b,{}),n("span",{children:(f=s,p=Math.floor(f/60),h=f%60,"".concat(p,":").concat(h<10?"0":"").concat(h))})]})},q=function(n){void 0===n&&(n=3);var e=t(0),o=e[0],i=e[1],a=t(!1),l=a[0],u=a[1];return r((function(){var n=function(){document.hidden&&i((function(n){return n+1}))};return document.addEventListener("visibilitychange",n),function(){document.removeEventListener("visibilitychange",n)}}),[]),r((function(){o>=n&&u(!0)}),[o,n]),{switchCount:o,isLimitReached:l}},y="tabSwitchModal-module_modalOverlay__KxoJM",k="tabSwitchModal-module_modalContent__IJiuo",S="tabSwitchModal-module_modalClose__HhoGx",C="tabSwitchModal-module_modalHeader__-RsEI",T="tabSwitchModal-module_modalIcon__wRuay",M="tabSwitchModal-module_modalText__sCgfv",B="tabSwitchModal-module_modalButton__Pawa9";d('/* Modal Background Overlay */\n.tabSwitchModal-module_modalOverlay__KxoJM {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.6);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 1000;\n}\n\n/* Modal Box */\n.tabSwitchModal-module_modalContent__IJiuo {\n background: var(--quiz-tab-switch-modal-background, #222);\n color: var(--quiz-tab-switch-modal-text-color, #fff);\n padding: var(--quiz-tab-switch-modal-padding, 20px);\n border-radius: var(--quiz-tab-switch-modal-border-radius, 10px);\n width: 400px;\n text-align: center;\n position: relative;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);\n}\n\n/* Close Button */\n.tabSwitchModal-module_modalClose__HhoGx {\n position: absolute;\n top: 10px;\n right: 15px;\n background: none;\n border: none;\n font-size: 24px;\n color: var(--quiz-tab-switch-modal-close-color, #fff);\n cursor: pointer;\n font-family: var(--quiz-tab-switch-modal-font-family, "Patron", sans-serif);\n}\n\n/* Header */\n.tabSwitchModal-module_modalHeader__-RsEI {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin-bottom: var(--quiz-tab-switch-modal-header-margin, 10px);\n font-family: var(--quiz-tab-switch-modal-font-family, "Patron", sans-serif);\n}\n\n/* Warning Icon */\n.tabSwitchModal-module_modalIcon__wRuay {\n font-size: 32px;\n color: var(--quiz-tab-switch-modal-icon-color, #ffcc00);\n}\n\n/* Text */\n.tabSwitchModal-module_modalText__sCgfv {\n font-size: var(--quiz-tab-switch-modal-text-font-size, 14px);\n color: var(--quiz-tab-switch-modal-text-secondary-color, #ccc);\n margin-bottom: var(--quiz-tab-switch-modal-text-margin, 20px);\n font-family: var(--quiz-tab-switch-modal-font-family, "Patron", sans-serif);\n}\n\n/* Button */\n.tabSwitchModal-module_modalButton__Pawa9 {\n background: var(--quiz-tab-switch-modal-button-background, #fff);\n color: var(--quiz-tab-switch-modal-button-text-color, #222);\n border: none;\n padding: var(--quiz-tab-switch-modal-button-padding, 10px 20px);\n border-radius: var(--quiz-tab-switch-modal-button-border-radius, 20px);\n font-size: var(--quiz-tab-switch-modal-button-font-size, 14px);\n cursor: pointer;\n transition: var(--quiz-tab-switch-modal-button-transition, 0.3s);\n font-family: var(--quiz-tab-switch-modal-font-family, "Patron", sans-serif);\n}\n\n.tabSwitchModal-module_modalButton__Pawa9:hover {\n background: var(--quiz-tab-switch-modal-button-hover-background, #ddd);\n color: var(--quiz-tab-switch-modal-button-hover-text-color, #222);\n} ');var N=function(o){var t=o.open,i=o.onClose;return t?n("div",{className:y,children:e("div",{className:k,children:[n("button",{className:S,onClick:i,children:"×"}),e("div",{className:C,children:[n("span",{className:T,children:"⚠️"}),n("h2",{children:"Tab Switch Detected"})]}),n("p",{className:M,children:"Any further attempts to switch tabs or change browser windows will result in disqualification from the assessment."}),n("button",{className:B,onClick:i,children:"Understood"})]})}):null},Q="quizEndScreen-module_endScreenOverlay__8EiUX",P="quizEndScreen-module_endScreenContent__hzr2O",E="quizEndScreen-module_endScreenClose__ztM4x";d('.quizEndScreen-module_endScreenOverlay__8EiUX {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: var(--quiz-end-screen-background, #222);\n color: var(--quiz-end-screen-text-color, #fff);\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 1000;\n direction: ltr;\n}\n\n/* Content */\n.quizEndScreen-module_endScreenContent__hzr2O {\n text-align: center;\n font-size: var(--quiz-end-screen-font-size, 20px);\n font-weight: var(--quiz-end-screen-font-weight, bold);\n font-family: var(--quiz-end-screen-font-family, "Patron", sans-serif);\n color: var(--quiz-end-screen-text-color, #fff);\n padding: 20px;\n}\n\n.quizEndScreen-module_endScreenClose__ztM4x {\n position: absolute;\n top: 20px;\n right: 25px;\n background: none;\n border: none;\n font-size: 24px;\n color: var(--quiz-end-screen-close-color, #fff);\n cursor: pointer;\n font-family: var(--quiz-end-screen-font-family, "Patron", sans-serif);\n} ');var L,O,R,H=function(o){var t=o.open,i=o.onClose,r=o.message;return t?e("div",{className:Q,children:[i&&n("button",{className:E,onClick:i,children:"×"}),n("div",{className:P,children:n("p",{children:r||"Your quiz has ended due to switching tabs too many times."})})]}):null},I=function(){r((function(){var n=function(n){return n.preventDefault()},e=function(n){return n.preventDefault()},o=function(n){return n.preventDefault()};return document.addEventListener("copy",n),document.addEventListener("cut",n),document.addEventListener("paste",n),document.addEventListener("selectstart",e),document.addEventListener("contextmenu",o),function(){document.removeEventListener("copy",n),document.removeEventListener("cut",n),document.removeEventListener("paste",n),document.removeEventListener("selectstart",e),document.removeEventListener("contextmenu",o)}}),[])};function F(){return F=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var o=arguments[e];for(var t in o)({}).hasOwnProperty.call(o,t)&&(n[t]=o[t])}return n},F.apply(null,arguments)}var j,A=function(n){return o.createElement("svg",F({xmlns:"http://www.w3.org/2000/svg",width:38,height:38,fill:"none"},n),L||(L=o.createElement("rect",{width:38,height:38,fill:"#151515",rx:19})),O||(O=o.createElement("g",{clipPath:"url(#downArrow_svg__a)"},o.createElement("path",{fill:"#fff",d:"M8.758 21.194c.037.14.145.36.234.492.09.136 2.138 2.222 4.556 4.636 5.035 5.03 4.594 4.655 5.452 4.655.427 0 .525-.015.727-.113.182-.094 1.18-1.06 4.725-4.594 2.47-2.465 4.546-4.57 4.612-4.678.145-.243.248-.623.248-.91 0-.454-.295-1.077-.637-1.335-.342-.263-.97-.399-1.397-.3-.534.122-.576.16-3.319 2.873-2.667 2.649-2.878 2.883-3.117 3.46-.08.201-.084-.043-.108-8.442l-.023-8.649-.127-.267a1.84 1.84 0 0 0-.796-.84c-.282-.154-.32-.159-.788-.159-.445 0-.516.015-.75.132-.464.239-.788.633-.919 1.12-.056.211-.065 1.608-.065 8.756v8.508l-.136-.281a3.7 3.7 0 0 0-.347-.563c-.117-.154-1.36-1.425-2.761-2.817-1.945-1.94-2.602-2.569-2.78-2.658-.914-.454-1.94-.13-2.376.75-.178.361-.22.83-.108 1.224"}))),R||(R=o.createElement("defs",null,o.createElement("clipPath",{id:"downArrow_svg__a"},o.createElement("path",{fill:"#fff",d:"M7 31V7h24v24z"})))))};function W(){return W=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var o=arguments[e];for(var t in o)({}).hasOwnProperty.call(o,t)&&(n[t]=o[t])}return n},W.apply(null,arguments)}var D=function(n){return o.createElement("svg",W({xmlns:"http://www.w3.org/2000/svg",width:24,height:23,fill:"none"},n),j||(j=o.createElement("path",{fill:"#000",d:"M17.837 5.797a.94.94 0 0 0-1.328 0l-4.305 4.306-4.306-4.306a.939.939 0 0 0-1.327 1.328l4.305 4.306-4.305 4.305a.939.939 0 0 0 1.327 1.328l4.306-4.306 4.305 4.306a.94.94 0 0 0 1.328-1.328l-4.306-4.305 4.306-4.306a.94.94 0 0 0 0-1.328"})))},V="loader-module_loaderOverlay__-THCU",J="loader-module_loaderSpinner__c8AWp";d(".loader-module_loaderOverlay__-THCU {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: var(--quiz-loader-background, black);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 9999;\n}\n\n.loader-module_loaderSpinner__c8AWp {\n border: 8px solid var(--quiz-loader-spinner-border, rgba(255, 255, 255, 0.2));\n border-top: 8px solid var(--quiz-loader-spinner-color, white);\n border-radius: 50%;\n width: 60px;\n height: 60px;\n animation: loader-module_spin__IzlCN 1s linear infinite;\n}\n\n@keyframes loader-module_spin__IzlCN {\n to {\n transform: rotate(360deg);\n }\n} ");var Y=function(){return n("div",{className:V,children:n("div",{className:J})})},G={colors:{primary:"#000000",secondary:"#5d4037",background:"#ffffff",surface:"#f8f5f2",text:{primary:"#161c20",secondary:"#666666"},button:{primary:"#000000",primaryText:"#ffffff",secondary:"#5d4037",secondaryText:"#ffffff",disabled:"#d7ccc8",disabledText:"#ffffff"},option:{background:"#ffffff",hover:"#e1d8c9",selected:"#b59b7b",border:"#e7e7e7",text:"#161c20"},border:"#e1d8c9",scrollButton:"#ffffff"},typography:{fontFamily:"Patron, sans-serif",fontSize:{small:"0.9rem",medium:"1rem",large:"1.15rem",xlarge:"1.5rem"},fontWeight:{normal:"400",medium:"500",bold:"600"},lineHeight:{small:"1.2rem",medium:"1.4rem",large:"1.6rem"}},spacing:{small:"8px",medium:"16px",large:"24px",xlarge:"32px"},borderRadius:{small:"4px",medium:"8px",large:"16px"},transitions:{fast:"0.15s",medium:"0.3s",slow:"0.5s"},loader:{background:"black",spinnerColor:"white",spinnerBorder:"rgba(255, 255, 255, 0.2)"},endScreen:{background:"#222",textColor:"#fff",closeColor:"#fff",fontSize:"20px",fontWeight:"bold",fontFamily:'"Patron", sans-serif'},tabSwitchModal:{background:"#222",textColor:"#fff",closeColor:"#fff",textSecondaryColor:"#ccc",iconColor:"#ffcc00",buttonBackground:"#fff",buttonTextColor:"#222",buttonHoverBackground:"#ddd",buttonHoverTextColor:"#222",fontFamily:'"Patron", sans-serif',textFontSize:"14px",buttonFontSize:"14px",padding:"20px",headerMargin:"10px",textMargin:"20px",buttonPadding:"10px 20px",borderRadius:"10px",buttonBorderRadius:"20px",buttonTransition:"0.3s"}};function U(n,e){var o=a({},n);for(var t in e)void 0!==e[t]&&null!==e[t]&&(e[t]&&"object"==typeof e[t]&&!Array.isArray(e[t])?o[t]=U(n[t]||{},e[t]):o[t]=e[t]);return o}function Z(n,e){return e?U(n,e):n}var X=function(e){var o,t=e.theme;if(!t||(!(o=t)||"object"!=typeof o||0===Object.keys(o).length))return null;var i=function(n){return function(n){var e,o,t,i,r,a,l,u,d,s,c,m,f,p,h,v,g,_,z,b,x,w,q,y,k,S,C,T,M,B,N,Q,P,E,L,O,R,H,I,F,j,A,W,D,V,J,Y,G,U,Z,X,K={};return n.colors&&(n.colors.primary&&(K["--quiz-color-primary"]=n.colors.primary),n.colors.secondary&&(K["--quiz-color-secondary"]=n.colors.secondary),n.colors.background&&(K["--quiz-color-background"]=n.colors.background),n.colors.surface&&(K["--quiz-color-surface"]=n.colors.surface),n.colors.border&&(K["--quiz-color-border"]=n.colors.border),n.colors.scrollButton&&(K["--quiz-color-scroll-button"]=n.colors.scrollButton),(null===(e=n.colors.text)||void 0===e?void 0:e.primary)&&(K["--quiz-color-text-primary"]=n.colors.text.primary),(null===(o=n.colors.text)||void 0===o?void 0:o.secondary)&&(K["--quiz-color-text-secondary"]=n.colors.text.secondary),(null===(t=n.colors.button)||void 0===t?void 0:t.primary)&&(K["--quiz-color-button-primary"]=n.colors.button.primary),(null===(i=n.colors.button)||void 0===i?void 0:i.primaryText)&&(K["--quiz-color-button-primary-text"]=n.colors.button.primaryText),(null===(r=n.colors.button)||void 0===r?void 0:r.secondary)&&(K["--quiz-color-button-secondary"]=n.colors.button.secondary),(null===(a=n.colors.button)||void 0===a?void 0:a.secondaryText)&&(K["--quiz-color-button-secondary-text"]=n.colors.button.secondaryText),(null===(l=n.colors.button)||void 0===l?void 0:l.disabled)&&(K["--quiz-color-button-disabled"]=n.colors.button.disabled),(null===(u=n.colors.button)||void 0===u?void 0:u.disabledText)&&(K["--quiz-color-button-disabled-text"]=n.colors.button.disabledText),(null===(d=n.colors.option)||void 0===d?void 0:d.background)&&(K["--quiz-color-option-background"]=n.colors.option.background),(null===(s=n.colors.option)||void 0===s?void 0:s.hover)&&(K["--quiz-color-option-hover"]=n.colors.option.hover),(null===(c=n.colors.option)||void 0===c?void 0:c.selected)&&(K["--quiz-color-option-selected"]=n.colors.option.selected),(null===(m=n.colors.option)||void 0===m?void 0:m.border)&&(K["--quiz-color-option-border"]=n.colors.option.border),(null===(f=n.colors.option)||void 0===f?void 0:f.text)&&(K["--quiz-color-option-text"]=n.colors.option.text)),n.typography&&(n.typography.fontFamily&&(K["--quiz-font-family"]=n.typography.fontFamily),(null===(p=n.typography.fontSize)||void 0===p?void 0:p.small)&&(K["--quiz-font-size-small"]=n.typography.fontSize.small),(null===(h=n.typography.fontSize)||void 0===h?void 0:h.medium)&&(K["--quiz-font-size-medium"]=n.typography.fontSize.medium),(null===(v=n.typography.fontSize)||void 0===v?void 0:v.large)&&(K["--quiz-font-size-large"]=n.typography.fontSize.large),(null===(g=n.typography.fontSize)||void 0===g?void 0:g.xlarge)&&(K["--quiz-font-size-xlarge"]=n.typography.fontSize.xlarge),(null===(_=n.typography.fontWeight)||void 0===_?void 0:_.normal)&&(K["--quiz-font-weight-normal"]=n.typography.fontWeight.normal),(null===(z=n.typography.fontWeight)||void 0===z?void 0:z.medium)&&(K["--quiz-font-weight-medium"]=n.typography.fontWeight.medium),(null===(b=n.typography.fontWeight)||void 0===b?void 0:b.bold)&&(K["--quiz-font-weight-bold"]=n.typography.fontWeight.bold),(null===(x=n.typography.lineHeight)||void 0===x?void 0:x.small)&&(K["--quiz-line-height-small"]=n.typography.lineHeight.small),(null===(w=n.typography.lineHeight)||void 0===w?void 0:w.medium)&&(K["--quiz-line-height-medium"]=n.typography.lineHeight.medium),(null===(q=n.typography.lineHeight)||void 0===q?void 0:q.large)&&(K["--quiz-line-height-large"]=n.typography.lineHeight.large)),n.spacing&&(n.spacing.small&&(K["--quiz-spacing-small"]=n.spacing.small),n.spacing.medium&&(K["--quiz-spacing-medium"]=n.spacing.medium),n.spacing.large&&(K["--quiz-spacing-large"]=n.spacing.large),n.spacing.xlarge&&(K["--quiz-spacing-xlarge"]=n.spacing.xlarge)),n.borderRadius&&(n.borderRadius.small&&(K["--quiz-border-radius-small"]=n.borderRadius.small),n.borderRadius.medium&&(K["--quiz-border-radius-medium"]=n.borderRadius.medium),n.borderRadius.large&&(K["--quiz-border-radius-large"]=n.borderRadius.large)),n.transitions&&(n.transitions.fast&&(K["--quiz-transition-fast"]=n.transitions.fast),n.transitions.medium&&(K["--quiz-transition-medium"]=n.transitions.medium),n.transitions.slow&&(K["--quiz-transition-slow"]=n.transitions.slow)),(null===(y=n.loader)||void 0===y?void 0:y.background)&&(K["--quiz-loader-background"]=n.loader.background),(null===(k=n.loader)||void 0===k?void 0:k.spinnerColor)&&(K["--quiz-loader-spinner-color"]=n.loader.spinnerColor),(null===(S=n.loader)||void 0===S?void 0:S.spinnerBorder)&&(K["--quiz-loader-spinner-border"]=n.loader.spinnerBorder),(null===(C=n.endScreen)||void 0===C?void 0:C.background)&&(K["--quiz-end-screen-background"]=n.endScreen.background),(null===(T=n.endScreen)||void 0===T?void 0:T.textColor)&&(K["--quiz-end-screen-text-color"]=n.endScreen.textColor),(null===(M=n.endScreen)||void 0===M?void 0:M.closeColor)&&(K["--quiz-end-screen-close-color"]=n.endScreen.closeColor),(null===(B=n.endScreen)||void 0===B?void 0:B.fontSize)&&(K["--quiz-end-screen-font-size"]=n.endScreen.fontSize),(null===(N=n.endScreen)||void 0===N?void 0:N.fontWeight)&&(K["--quiz-end-screen-font-weight"]=n.endScreen.fontWeight),(null===(Q=n.endScreen)||void 0===Q?void 0:Q.fontFamily)&&(K["--quiz-end-screen-font-family"]=n.endScreen.fontFamily),(null===(P=n.tabSwitchModal)||void 0===P?void 0:P.background)&&(K["--quiz-tab-switch-modal-background"]=n.tabSwitchModal.background),(null===(E=n.tabSwitchModal)||void 0===E?void 0:E.textColor)&&(K["--quiz-tab-switch-modal-text-color"]=n.tabSwitchModal.textColor),(null===(L=n.tabSwitchModal)||void 0===L?void 0:L.closeColor)&&(K["--quiz-tab-switch-modal-close-color"]=n.tabSwitchModal.closeColor),(null===(O=n.tabSwitchModal)||void 0===O?void 0:O.textSecondaryColor)&&(K["--quiz-tab-switch-modal-text-secondary-color"]=n.tabSwitchModal.textSecondaryColor),(null===(R=n.tabSwitchModal)||void 0===R?void 0:R.iconColor)&&(K["--quiz-tab-switch-modal-icon-color"]=n.tabSwitchModal.iconColor),(null===(H=n.tabSwitchModal)||void 0===H?void 0:H.buttonBackground)&&(K["--quiz-tab-switch-modal-button-background"]=n.tabSwitchModal.buttonBackground),(null===(I=n.tabSwitchModal)||void 0===I?void 0:I.buttonTextColor)&&(K["--quiz-tab-switch-modal-button-text-color"]=n.tabSwitchModal.buttonTextColor),(null===(F=n.tabSwitchModal)||void 0===F?void 0:F.buttonHoverBackground)&&(K["--quiz-tab-switch-modal-button-hover-background"]=n.tabSwitchModal.buttonHoverBackground),(null===(j=n.tabSwitchModal)||void 0===j?void 0:j.buttonHoverTextColor)&&(K["--quiz-tab-switch-modal-button-hover-text-color"]=n.tabSwitchModal.buttonHoverTextColor),(null===(A=n.tabSwitchModal)||void 0===A?void 0:A.fontFamily)&&(K["--quiz-tab-switch-modal-font-family"]=n.tabSwitchModal.fontFamily),(null===(W=n.tabSwitchModal)||void 0===W?void 0:W.textFontSize)&&(K["--quiz-tab-switch-modal-text-font-size"]=n.tabSwitchModal.textFontSize),(null===(D=n.tabSwitchModal)||void 0===D?void 0:D.buttonFontSize)&&(K["--quiz-tab-switch-modal-button-font-size"]=n.tabSwitchModal.buttonFontSize),(null===(V=n.tabSwitchModal)||void 0===V?void 0:V.padding)&&(K["--quiz-tab-switch-modal-padding"]=n.tabSwitchModal.padding),(null===(J=n.tabSwitchModal)||void 0===J?void 0:J.headerMargin)&&(K["--quiz-tab-switch-modal-header-margin"]=n.tabSwitchModal.headerMargin),(null===(Y=n.tabSwitchModal)||void 0===Y?void 0:Y.textMargin)&&(K["--quiz-tab-switch-modal-text-margin"]=n.tabSwitchModal.textMargin),(null===(G=n.tabSwitchModal)||void 0===G?void 0:G.buttonPadding)&&(K["--quiz-tab-switch-modal-button-padding"]=n.tabSwitchModal.buttonPadding),(null===(U=n.tabSwitchModal)||void 0===U?void 0:U.borderRadius)&&(K["--quiz-tab-switch-modal-border-radius"]=n.tabSwitchModal.borderRadius),(null===(Z=n.tabSwitchModal)||void 0===Z?void 0:Z.buttonBorderRadius)&&(K["--quiz-tab-switch-modal-button-border-radius"]=n.tabSwitchModal.buttonBorderRadius),(null===(X=n.tabSwitchModal)||void 0===X?void 0:X.buttonTransition)&&(K["--quiz-tab-switch-modal-button-transition"]=n.tabSwitchModal.buttonTransition),K}(Z(G,n))}(t);if(0===Object.keys(i).length)return null;var r=Object.entries(i).map((function(n){var e=n[0],o=n[1];return"".concat(e,": ").concat(o,";")})).join("\n "),a="theme-styles-".concat(Date.now());return n("style",{id:a,children:"\n /* Apply theme to :root so all elements can access the custom properties */\n :root {\n ".concat(r,"\n }\n ")})},K="quiz-module_quizPage__VGbhc",$="quiz-module_quizPageContainer__kQZ4d",nn="quiz-module_quizTicker__i1CIw",en="quiz-module_quizTickerRight__5SdyV",on="quiz-module_closeBtn__2ZUdu",tn="quiz-module_quizContainer__v1u42",rn="quiz-module_quizLeft__2c5nS",an="quiz-module_quizRight__VW2vj",ln="quiz-module_quizRightHead__zzia5",un="quiz-module_chooseOption__oisps",dn="quiz-module_questionCount__whDFY",sn="quiz-module_mobileNextBtn__iSSfH",cn="quiz-module_nextBtn__AvAyW",mn="quiz-module_scrollDownBtn__7-XTG",fn="quiz-module_bounce__8egNx",pn="quiz-module_nextBtnContainer__TvCOi";d('* {\n box-sizing: border-box;\n}\n\n.quiz-module_quizPage__VGbhc {\n position: fixed;\n background: var(--quiz-color-background, #ffffff);\n width: 100vw;\n min-height: 100dvh;\n top: 0;\n left: 0;\n z-index: 100;\n box-sizing: border-box;\n overflow-y: auto; /* ensure scrolling works */\n display: flex;\n flex-direction: column;\n}\n\n.quiz-module_quizPageContainer__kQZ4d {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-radius: var(--quiz-border-radius-large, 16px);\n margin: var(--quiz-spacing-large, 24px) var(--quiz-spacing-medium, 16px) 0px var(--quiz-spacing-medium, 16px);\n height: 100%;\n background: var(--quiz-color-surface, #f8f5f2);\n}\n\n/* Ticker stays in a row on all devices */\n.quiz-module_quizTicker__i1CIw {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px 20px;\n border-bottom: 1px solid var(--quiz-color-border, #e1d8c9);\n}\n\n.quiz-module_quizTickerRight__5SdyV {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 1rem;\n padding-right: 2rem;\n}\n\n.quiz-module_closeBtn__2ZUdu{\n border: none;\n background: none;\n cursor: pointer;\n padding: 0;\n margin: 0;\n width: 18px;\n height: 18px;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 4px;\n}\n\n.quiz-module_closeBtn__2ZUdu svg {\n width: 18px;\n height: 18px;\n flex-shrink: 0;\n}\n\n.quiz-module_quizContainer__v1u42 {\n flex-grow: 1;\n width: 100%;\n display: flex;\n flex-direction: row; /* side-by-side on desktop */\n align-items: flex-start;\n padding: var(--quiz-spacing-large, 24px) 56px var(--quiz-spacing-large, 24px);\n border-radius: 10px;\n justify-content: space-between;\n box-sizing: border-box;\n max-width: 1600px;\n margin: 0 auto;\n max-height: 80dvh;\n overflow: auto;\n gap: 2rem;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n}\n\n.quiz-module_quizContainer__v1u42::-webkit-scrollbar {\n display: none;\n}\n\n/* Left & Right columns on desktop */\n.quiz-module_quizLeft__2c5nS {\n width: 100%;\n max-width: 650px;\n overflow: auto;\n scrollbar-width: thin;\n scrollbar-color: #ccc transparent; /* thumb color, track color */\n}\n\n/* WebKit-based browsers (Chrome, Safari, Edge) */\n.quiz-module_quizLeft__2c5nS::-webkit-scrollbar {\n width: 6px; /* slim scrollbar */\n}\n\n.quiz-module_quizLeft__2c5nS::-webkit-scrollbar-thumb {\n background-color: #ccc; /* grey thumb */\n border-radius: 4px;\n}\n\n.quiz-module_quizLeft__2c5nS::-webkit-scrollbar-track {\n background: transparent; /* optional: transparent track */\n}\n\n.quiz-module_quizRight__VW2vj {\n max-width: 622px;\n width: 100%;\n}\n\n.quiz-module_quizRightHead__zzia5 {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.quiz-module_chooseOption__oisps {\n font-size: var(--quiz-font-size-medium, 1rem);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: var(--quiz-line-height-xlarge, 32px);\n letter-spacing: 0.2%;\n color: var(--quiz-color-text-primary, #161c20);\n}\n\n.quiz-module_questionCount__whDFY {\n font-size: var(--quiz-font-size-small, 0.9rem);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n color: var(--quiz-color-text-primary, #161c20);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: var(--quiz-line-height-small, 1.2rem);\n}\n\n.quiz-module_optionsContainer__rNs2w {\n display: flex;\n flex-direction: column;\n gap: 18px;\n margin-top: 12px;\n}\n\n.quiz-module_mobileNextBtn__iSSfH {\n display: none;\n}\n\n/* Button Styles */\n.quiz-module_prevBtn__3rk6z,\n.quiz-module_nextBtn__AvAyW {\n padding: 10px 54px;\n background: var(--quiz-color-button-primary, #000000);\n color: var(--quiz-color-button-primary-text, #ffffff);\n border: none;\n border-radius: var(--quiz-spacing-large, 24px);\n cursor: pointer;\n transition: var(--quiz-transition-medium, 0.3s);\n font-size: var(--quiz-font-size-small, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: 21px;\n}\n\n.quiz-module_prevBtn__3rk6z {\n background: var(--quiz-color-button-secondary, #5d4037);\n color: var(--quiz-color-button-secondary-text, #ffffff);\n}\n\n.quiz-module_nextBtn__AvAyW:disabled {\n background: var(--quiz-color-button-disabled, #d7ccc8);\n color: var(--quiz-color-button-disabled-text, #ffffff);\n cursor: not-allowed;\n}\n\n.quiz-module_scrollDownBtn__7-XTG {\n position: fixed;\n bottom: 20px;\n right: 20px;\n z-index: 999;\n border: none;\n border-radius: 50%;\n padding: 4px;\n cursor: pointer;\n font-size: 20px;\n transition: background var(--quiz-transition-medium, 0.3s);\n background: var(--quiz-color-scroll-button, #ffffff);\n}\n\n.quiz-module_bounce__8egNx {\n animation: quiz-module_bounce__8egNx 1.6s infinite;\n}\n\n@keyframes quiz-module_bounce__8egNx {\n 0%,\n 20%,\n 50%,\n 80%,\n 100% {\n transform: translateY(0px);\n }\n 40% {\n transform: translateY(-4px);\n }\n 60% {\n transform: translateY(-2px);\n }\n}\n\n/* RESPONSIVE LAYOUT */\n@media (max-width: 768px) {\n .quiz-module_quizPageContainer__kQZ4d {\n flex-direction: column;\n padding: var(--quiz-spacing-medium, 16px);\n gap: 1rem;\n overflow-y: auto;\n margin: 0;\n border-radius: 0;\n }\n\n .quiz-module_quizContainer__v1u42 {\n flex-direction: column;\n padding: 0;\n justify-content: space-between;\n}\n\n\n .quiz-module_quizTicker__i1CIw {\n padding: var(--quiz-spacing-medium, 16px);\n gap: 1rem;\n }\n\n .quiz-module_quizLeft__2c5nS {\n max-width: 100%;\n margin-bottom: 1rem;\n max-height: none;\n overflow: initial;\n }\n\n .quiz-module_quizTickerRight__5SdyV {\n gap: 1rem;\n padding-right: 0;\n }\n\n .quiz-module_chooseOption__oisps {\n font-size: var(--quiz-font-size-small, 0.9rem);\n line-height: var(--quiz-line-height-medium, 1.4rem);\n }\n\n .quiz-module_nextBtnContainer__TvCOi {\n display: none;\n }\n\n .quiz-module_mobileNextBtn__iSSfH {\n display: block;\n position: fixed;\n bottom: 20px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 1000;\n width: calc(100% - 40px);\n max-width: 350px;\n }\n\n .quiz-module_nextBtn__AvAyW {\n width: 100%;\n padding: var(--quiz-spacing-medium, 16px) var(--quiz-spacing-large, 24px);\n font-size: var(--quiz-font-size-medium, 1rem);\n }\n\n .quiz-module_questionCount__whDFY {\n font-size: 0.85rem;\n }\n\n .quiz-module_optionBtn__bIwda {\n padding: var(--quiz-spacing-medium, 16px);\n }\n}\n\n@media (max-width: 768px) and (max-height: 800px) {\n .quiz-module_quizContainer__v1u42 {\n max-height: 70dvh;\n }\n}\n\n@media (max-width: 768px) and (max-height: 500px) {\n .quiz-module_quizContainer__v1u42 {\n max-height: 60dvh;\n }\n} ');d('/* Thin (100) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-thin.woff2") format("woff2");\n font-weight: 100;\n font-style: normal;\n font-display: swap;\n}\n\n/* Light (300) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-light.woff2") format("woff2");\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n}\n\n/* Regular (400) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-regular.woff2") format("woff2");\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n}\n\n/* Medium (500) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-medium.woff2") format("woff2");\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n}\n\n/* Bold (700) */\n@font-face {\n font-family: "Patron";\n src: url("../assets/fonts/patron/patron-bold.woff2") format("woff2");\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n} ');var hn=function(o){var a,d,s=o.quizId,c=o.userId,f=o.tabSwitchLimit,p=o.onQuizComplete,h=o.baseURL,v=o.token,g=o.theme,z=o.direction,b=o.handleClose,x=t(!1),y=x[0],k=x[1],S=t(0),C=S[0],T=S[1],M=t(null),B=M[0],Q=M[1],P=t(null),E=P[0],L=P[1],O=t(!1),R=O[0],F=O[1],j=t(!1),W=j[0],V=j[1],J=t(!0),G=J[0],U=J[1],Z=q(f),hn=Z.isLimitReached,vn=Z.switchCount,gn=t(""),_n=gn[0],zn=gn[1],bn=i([]),xn=i(null);I(),r((function(){if(!(s&&c&&h&&v))return U(!1),zn("Missing required parameters to load quiz."),void V(!0);l(void 0,void 0,void 0,(function(){var n,e;return u(this,(function(o){switch(o.label){case 0:return o.trys.push([0,5,6,7]),U(!0),[4,fetch("".concat(h,"/user-assessment/").concat(s,"/").concat(c,"/get-session-data"),{headers:{Authorization:"Bearer ".concat(v)}})];case 1:return(n=o.sent()).ok?[4,n.json()]:[3,3];case 2:return e=o.sent(),L(e),[3,4];case 3:zn("Something went wrong. Please try again."),V(!0),o.label=4;case 4:return[3,7];case 5:return o.sent(),zn("Something went wrong. Please try again."),V(!0),[3,7];case 6:return U(!1),[7];case 7:return[2]}}))}))}),[s,c,h,v]);var wn=i(null),qn=t(!1),yn=qn[0],kn=qn[1],Sn=t(!1),Cn=Sn[0],Tn=Sn[1];r((function(){if(E){var n=wn.current;if(n){var e=function(){var e=n.scrollHeight>n.clientHeight,o=n.scrollTop+n.clientHeight>=n.scrollHeight-15;e?(o&&Tn(!0),kn(!o&&!Cn)):(kn(!1),Tn(!1))},o=requestAnimationFrame((function(){setTimeout(e,100)}));return n.addEventListener("scroll",e),window.addEventListener("resize",e),function(){cancelAnimationFrame(o),n.removeEventListener("scroll",e),window.removeEventListener("resize",e)}}}}),[E,C,Cn]);if(r((function(){vn>0&&vn<3&&F(!0)}),[vn]),r((function(){hn&&(zn("Your quiz has ended due to switching tabs too many times."),V(!0))}),[hn]),r((function(){return function(){bn.current.forEach((function(n){return clearTimeout(n)})),bn.current=[]}}),[]),!E&&G)return e("div",{className:K,style:"rtl"==z?{direction:"rtl"}:{},ref:xn,children:[n(X,{theme:g}),n(Y,{})]});var Mn=(null==E?void 0:E.questions)||[],Bn=function(n,e,o,t){return l(void 0,void 0,void 0,(function(){return u(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,fetch("".concat(h,"/user-assessment/").concat(n,"/").concat(o,"/").concat(e,"/submit-answer"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(v)},body:JSON.stringify({optionIds:[t]})})];case 1:return i.sent().ok||(zn("Something went wrong. Please try again."),V(!0)),[3,3];case 2:return i.sent(),[3,3];case 3:return[2]}}))}))},Nn=function(){return l(void 0,void 0,void 0,(function(){return u(this,(function(n){switch(n.label){case 0:return n.trys.push([0,5,,6]),[4,fetch("".concat(h,"/user-assessment/").concat(s,"/").concat(c,"/mark-quiz-complete"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(v)}})];case 1:return n.sent().ok?(k(!0),[4,p()]):[3,3];case 2:return n.sent(),[3,4];case 3:zn("Quiz completed, but there was an issue saving your progress."),V(!0),n.label=4;case 4:return[3,6];case 5:return n.sent(),zn("Quiz completed, but there was a network error. Please check your connection."),V(!0),[3,6];case 6:return[2]}}))}))},Qn=function(){return l(void 0,void 0,void 0,(function(){var n;return u(this,(function(e){switch(e.label){case 0:if(!B)return[2];if(!E||!Mn.length)return zn("Quiz data is not available. Please try again."),V(!0),[2];U(!0),e.label=1;case 1:return e.trys.push([1,,6,7]),[4,Bn(s,Mn[C].id,c,B)];case 2:return e.sent(),C!==(null==Mn?void 0:Mn.length)-1?[3,4]:[4,Nn()];case 3:return e.sent(),[3,5];case 4:Q(null),n=null===window||void 0===window?void 0:window.setTimeout((function(){T((function(n){return n+1}));var n=window.setTimeout((function(){Tn(!1)}),150);bn.current.push(n)}),300),bn.current.push(n),e.label=5;case 5:return[3,7];case 6:return n=null===window||void 0===window?void 0:window.setTimeout((function(){U(!1)}),300),bn.current.push(n),[7];case 7:return[2]}}))}))};function Pn(){return G?"Submitting":C===(null==Mn?void 0:Mn.length)-1?"Submit":"Next"}return y?null:e("div",{className:K,style:"rtl"==z?{direction:"rtl"}:{},children:[n(X,{theme:g}),e("div",{className:$,children:[e("div",{className:nn,children:[e("h3",{className:dn,children:["Questions: ",C+1,"/",(null==Mn?void 0:Mn.length)||0]}),e("div",{className:en,children:[n(w,{markQuizComplete:Nn,duration:(null==E?void 0:E.duration)||0,isEndScreenOpen:W}),b&&n("button",{className:on,onClick:b,children:n(D,{})})]})]}),e("div",{className:tn,ref:wn,children:[n("div",{className:rn,children:n(m,{question:(null===(a=Mn[C])||void 0===a?void 0:a.text)||""})}),e("div",{className:an,children:[e("div",{className:ln,children:[n("h3",{className:un,children:"Choose the right option"}),n("div",{className:pn,children:n("button",{className:cn,disabled:!B||G||!E,onClick:Qn,children:Pn()})}),n("div",{className:sn,children:n("button",{className:cn,disabled:!B||G||!E,onClick:Qn,children:Pn()})})]}),n(_,{loading:G,options:(null===(d=Mn[C])||void 0===d?void 0:d.options)||[],selectedOption:B,onSelect:Q,direction:z})]})]})]}),n(N,{open:R,onClose:function(){F(!1),V(!1),zn("")}}),n(H,{open:W,onClose:b,message:_n}),yn&&n("button",{className:mn+" "+fn,onClick:function(){var n=wn.current;n&&(n.scrollTo({top:n.scrollHeight+10,behavior:"smooth"}),Tn(!0),kn(!1))},children:n(A,{})})]})},vn={questionText:"question-module_questionText__SEG-N"};d('.question-module_questionText__SEG-N {\n font-size: var(--quiz-font-size-large, 24px);\n font-weight: var(--quiz-font-weight-bold, 700);\n color: var(--quiz-color-text-primary, #2E1500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: 33.6px;\n letter-spacing: 0.048px;\n }\n \n code {\n font-size: 0.8rem;\n font-weight: normal;\n }\n \n @media (max-width: 1320px) {\n /* .questionText {\n font-size: var(--quiz-font-size-medium, 1rem);\n }\n .questionHtmlWrapper code {\n font-size: 0.8rem;\n } */\n }\n \n @media (max-width: 768px) {\n .question-module_questionText__SEG-N {\n font-size: 1.25rem;\n line-height: 25.6px;\n }\n }');var gn=function(e){var o=e.question;return n("div",{className:vn.questionHtmlWrapper,children:n("h2",{className:vn.questionText,dangerouslySetInnerHTML:{__html:o}})})},_n="options-module_optionsContainer__Fyukt",zn="options-module_optionBtn__pT-ri",bn="options-module_selected__Pukyd",xn="options-module_optionText__dyBcH";d('.options-module_optionsContainer__Fyukt {\n display: flex;\n flex-direction: column;\n gap: 10px;\n margin-top: 12px;\n /* height: 50vh;\n overflow-y: auto; */\n }\n \n \n .options-module_optionBtn__pT-ri {\n width: 100%;\n padding: 16px;\n border-radius: var(--quiz-border-radius-medium, 8px);\n background: var(--quiz-color-option-background, #ffffff);\n cursor: pointer;\n transition: var(--quiz-transition-medium, 0.3s);\n color: var(--quiz-color-option-text, #1D1B21);\n border: none;\n text-align: left;\n border: 1px solid var(--quiz-color-option-border, #D9D9D9);\n /* display: flex; */\n }\n \n .options-module_optionBtn__pT-ri:hover {\n background: var(--quiz-color-option-hover, #CBFF59);\n }\n \n .options-module_optionBtn__pT-ri.options-module_selected__Pukyd {\n background: var(--quiz-color-option-selected, #CBFF59);\n }\n \n .options-module_optionText__dyBcH {\n font-size: var(--quiz-font-size-medium, 1rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: 22px;\n letter-spacing: -0.1%;\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n }\n \n .options-module_optionImage__G3FXt {\n max-width: 100%;\n height: auto;\n border-radius: var(--quiz-border-radius-small, 4px);\n }\n \n .options-module_optionCode__q3GqF {\n background-color: #1e1e1e;\n color: white;\n padding: var(--quiz-spacing-small, 8px);\n border-radius: var(--quiz-border-radius-small, 4px);\n }\n \n @media (max-width: 768px) {\n /* .optionText {\n font-size: 0.95rem;\n line-height: 21px;\n }\n */\n .options-module_optionBtn__pT-ri:hover {\n background: var(--quiz-color-option-selected, #CBFF59);\n }\n } ');var wn,qn=function(e){var o=e.options,t=e.selectedOption,i=e.onSelect,r=e.loading,a=e.direction;return n("div",{className:_n,children:null==o?void 0:o.map((function(e){return n("button",{disabled:r,className:"".concat(zn," ").concat(t===e.id&&bn),style:"rtl"===a?{textAlign:"unset"}:{},onClick:function(){return i(e.id)},children:e.text&&n("span",{className:xn,children:e.text})},e.id)}))})};function yn(){return yn=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var o=arguments[e];for(var t in o)({}).hasOwnProperty.call(o,t)&&(n[t]=o[t])}return n},yn.apply(null,arguments)}var kn=function(n){return o.createElement("svg",yn({xmlns:"http://www.w3.org/2000/svg",width:18,height:18,fill:"none"},n),wn||(wn=o.createElement("path",{fill:"#fff",d:"M9 2.813a6.75 6.75 0 1 0 6.75 6.75A6.76 6.76 0 0 0 9 2.813m3.21 4.335L9.399 9.96a.564.564 0 0 1-.796-.795l2.813-2.813a.563.563 0 0 1 .796.796M6.75 1.125a.563.563 0 0 1 .563-.562h3.375a.563.563 0 1 1 0 1.125H7.312a.56.56 0 0 1-.562-.563"})))},Sn="timer-module_timer__o-tMk";d('.timer-module_timer__o-tMk {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 4px;\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n font-size: var(--quiz-font-size-medium, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n color: var(--quiz-color-text-primary, #161c20);\n }\n \n .timer-module_timer__o-tMk span {\n color: #FFF;\n font-size: var(--quiz-font-size-medium, 16px);\n font-weight: var(--quiz-font-weight-medium, 500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: var(--quiz-line-height-medium, 23px);\n letter-spacing: var(--quiz-letter-spacing-medium, -0.016px);\n \n }\n \n .timer-module_timer__o-tMk svg {\n width: 18px;\n height: 18px;\n fill: var(--quiz-color-text-primary, #161c20);\n }\n \n @media (max-width: 768px) {\n /* .timer {\n font-size: var(--quiz-font-size-small, 0.85rem);\n } */\n \n /* .timer span {\n font-size: var(--quiz-font-size-small, 1rem);\n } */\n \n .timer-module_timer__o-tMk svg {\n width: 16px;\n height: 16px;\n }\n }\n ');var Cn=function(o){var a=o.duration,l=o.markQuizComplete,u=o.isEndScreenOpen,d=t(a),s=d[0],c=d[1],m=i(null);r((function(){if(0!==a)return m.current&&clearInterval(m.current),m.current=setInterval((function(){c((function(n){return n>0?n-1:0}))}),1e3),function(){m.current&&clearInterval(m.current)}}),[a]),r((function(){0!==a&&0===s&&(l(),m.current&&clearInterval(m.current))}),[s,l]),r((function(){u&&m.current&&clearInterval(m.current)}),[u]);var f,p,h;return e("div",{className:Sn,children:[n(kn,{}),n("span",{children:(f=s,p=Math.floor(f/60),h=f%60,"".concat(p,":").concat(h<10?"0":"").concat(h))})]})},Tn="frontlineQuiz-module_quizPage__20qsB",Mn="frontlineQuiz-module_quizPageContainer__YCead",Bn="frontlineQuiz-module_quizTicker__0g1ga",Nn="frontlineQuiz-module_quizTickerRight__5DIuy",Qn="frontlineQuiz-module_closeBtn__hySeT",Pn="frontlineQuiz-module_quizContainer__RILFb",En="frontlineQuiz-module_cardDeck__JP0v4",Ln="frontlineQuiz-module_stackedCard__Vwgrw",On="frontlineQuiz-module_quizLeft__dyhwA",Rn="frontlineQuiz-module_quizRight__s7J3R",Hn="frontlineQuiz-module_quizRightHead__Xs3bh",In="frontlineQuiz-module_questionCount__cFlA-",Fn="frontlineQuiz-module_mobileNextBtn__trrH5",jn="frontlineQuiz-module_nextBtn__UeoLO",An="frontlineQuiz-module_nextBtnContainer__smf8H";d('* {\n box-sizing: border-box;\n }\n \n .frontlineQuiz-module_quizPage__20qsB {\n position: fixed;\n background: var(--quiz-color-background, #ffffff);\n width: 100vw;\n min-height: 100dvh;\n top: 0;\n left: 0;\n z-index: 100;\n box-sizing: border-box;\n overflow: visible; /* Changed from overflow-y: auto to prevent interference with fixed positioning */\n display: flex;\n flex-direction: column;\n }\n \n .frontlineQuiz-module_quizPageContainer__YCead {\n flex: 1;\n display: flex;\n flex-direction: column;\n border-radius: var(--quiz-border-radius-large, 16px);\n margin: var(--quiz-spacing-large, 24px) var(--quiz-spacing-medium, 16px) 0px var(--quiz-spacing-medium, 16px);\n height: 100%;\n background: var(--quiz-color-surface, #A198AC);\n overflow: visible; /* Ensure no overflow interference with fixed positioning */\n }\n \n /* Ticker stays in a row on all devices */\n .frontlineQuiz-module_quizTicker__0g1ga {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 20px 20px;\n /* border-bottom: 1px solid var(--quiz-color-border, transparent); */\n }\n \n .frontlineQuiz-module_quizTickerRight__5DIuy {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 1rem;\n padding-right: 2rem;\n }\n \n .frontlineQuiz-module_closeBtn__hySeT{\n\n border: none;\n background: rgba(234, 234, 234, 0.50);\n cursor: pointer;\n padding-bottom: 3px;\n width: 24px;\n /* height: 24px; */\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 20px;\n display: flex;\n font-size: 20px;\n aspect-ratio: 1/1;\n color: #ffffff;\n }\n \n .frontlineQuiz-module_closeBtn__hySeT svg {\n width: 18px;\n height: 18px;\n flex-shrink: 0;\n }\n \n .frontlineQuiz-module_quizContainer__RILFb {\n flex-grow: 1;\n width: 100%;\n display: flex;\n flex-direction: row; /* side-by-side on desktop */\n align-items: flex-start;\n padding: var(--quiz-spacing-large, 24px) 56px var(--quiz-spacing-large, 24px);\n border-top-left-radius: 10px;\n border-top-right-radius: 10px;\n justify-content: space-between;\n box-sizing: border-box;\n max-width: 1600px;\n margin: 0 auto;\n gap: 2rem;\n background: #ffffff;\n overflow: auto;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n }\n \n .frontlineQuiz-module_quizContainer__RILFb::-webkit-scrollbar {\n display: none;\n }\n \n \n \n .frontlineQuiz-module_cardDeck__JP0v4{\n position: relative;\n width: 100%;\n flex: 1;\n overflow: hidden;\n }\n \n \n .frontlineQuiz-module_stackedCard__Vwgrw {\n position: absolute;\n top: 25px;\n left: 50%;\n bottom: 0;\n transform-origin: center top;\n transition: opacity 0.3s ease-in-out;\n overflow-x: hidden;\n overflow-y: auto;\n }\n \n .frontlineQuiz-module_exitingCard__mYZ2E {\n opacity: 0;\n transition: opacity 0.3s ease-in-out;\n }\n \n /* Left & Right columns on desktop */\n .frontlineQuiz-module_quizLeft__dyhwA {\n width: 100%;\n max-width: 650px;\n overflow: initial;\n scrollbar-width: thin;\n scrollbar-color: #ccc transparent; /* thumb color, track color */\n }\n \n /* WebKit-based browsers (Chrome, Safari, Edge) */\n .frontlineQuiz-module_quizLeft__dyhwA::-webkit-scrollbar {\n width: 6px; /* slim scrollbar */\n }\n \n .frontlineQuiz-module_quizLeft__dyhwA::-webkit-scrollbar-thumb {\n background-color: #ccc; /* grey thumb */\n border-radius: 4px;\n }\n \n .frontlineQuiz-module_quizLeft__dyhwA::-webkit-scrollbar-track {\n background: transparent; /* optional: transparent track */\n }\n \n .frontlineQuiz-module_quizRight__s7J3R {\n max-width: 622px;\n width: 100%;\n }\n \n .frontlineQuiz-module_quizRightHead__Xs3bh {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n }\n \n .frontlineQuiz-module_chooseOption__W1lRR {\n font-size: var(--quiz-font-size-medium, 1rem);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: var(--quiz-line-height-xlarge, 32px);\n letter-spacing: 0.2%;\n color: var(--quiz-color-text-primary, #161c20);\n }\n \n .frontlineQuiz-module_questionCount__cFlA- {\n font-size: var(--quiz-font-size-small, 14px);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n color: var(--quiz-color-text-primary, #FFF);\n font-weight: var(--quiz-font-weight-medium, 500);\n line-height: var(--quiz-line-height-small, 32px);\n }\n \n .frontlineQuiz-module_optionsContainer__xYly9 {\n display: flex;\n flex-direction: column;\n gap: 18px;\n margin-top: 12px;\n }\n \n .frontlineQuiz-module_mobileNextBtn__trrH5 {\n display: none;\n }\n \n /* Button Styles */\n .frontlineQuiz-module_prevBtn__I2VdW,\n .frontlineQuiz-module_nextBtn__UeoLO {\n padding: 10px 54px;\n background: var(--quiz-color-button-primary, #000000);\n color: var(--quiz-color-button-primary-text, #ffffff);\n border: none;\n border-radius: var(--quiz-spacing-large, 24px);\n cursor: pointer;\n transition: var(--quiz-transition-medium, 0.3s);\n font-size: var(--quiz-font-size-small, 0.9rem);\n font-weight: var(--quiz-font-weight-medium, 500);\n font-family: var(--quiz-font-family, "Patron", sans-serif);\n line-height: 21px;\n }\n \n .frontlineQuiz-module_prevBtn__I2VdW {\n background: var(--quiz-color-button-secondary, #5d4037);\n color: var(--quiz-color-button-secondary-text, #ffffff);\n }\n \n .frontlineQuiz-module_nextBtn__UeoLO:disabled {\n background: var(--quiz-color-button-disabled, #d7ccc8);\n color: var(--quiz-color-button-disabled-text, #ffffff);\n cursor: not-allowed;\n }\n \n .frontlineQuiz-module_scrollDownBtn__-DHaP {\n position: fixed;\n bottom: 20px;\n right: 20px;\n z-index: 999;\n border: none;\n border-radius: 50%;\n padding: 4px;\n cursor: pointer;\n font-size: 20px;\n transition: background var(--quiz-transition-medium, 0.3s);\n background: var(--quiz-color-scroll-button, #ffffff);\n }\n \n .frontlineQuiz-module_bounce__kM2GG {\n animation: frontlineQuiz-module_bounce__kM2GG 1.6s infinite;\n }\n \n @keyframes frontlineQuiz-module_bounce__kM2GG {\n 0%,\n 20%,\n 50%,\n 80%,\n 100% {\n transform: translateY(0px);\n }\n 40% {\n transform: translateY(-4px);\n }\n 60% {\n transform: translateY(-2px);\n }\n }\n \n /* RESPONSIVE LAYOUT */\n @media (max-width: 768px) {\n .frontlineQuiz-module_quizPageContainer__YCead {\n flex-direction: column;\n /* padding: var(--quiz-spacing-medium, 16px); */\n /* gap: 1rem; */\n overflow-y: auto;\n margin: 0;\n border-radius: 0;\n }\n \n .frontlineQuiz-module_quizContainer__RILFb {\n flex-direction: column;\n padding: 20px 20px 20px 20px;\n justify-content: start;\n gap: 24px;\n }\n \n \n \n \n .frontlineQuiz-module_quizTicker__0g1ga {\n padding: var(--quiz-spacing-medium, 16px);\n gap: 1rem;\n }\n \n .frontlineQuiz-module_quizLeft__dyhwA {\n max-width: 100%;\n /* margin-bottom: 1rem; */\n min-height: max-content;\n }\n \n .frontlineQuiz-module_quizTickerRight__5DIuy {\n gap: 1rem;\n padding-right: 0;\n }\n \n .frontlineQuiz-module_chooseOption__W1lRR {\n font-size: var(--quiz-font-size-small, 0.9rem);\n line-height: var(--quiz-line-height-medium, 1.4rem);\n }\n \n .frontlineQuiz-module_nextBtnContainer__smf8H {\n display: none;\n }\n \n .frontlineQuiz-module_mobileNextBtn__trrH5 {\n display: block;\n position: fixed;\n bottom: 12px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 999;\n width: calc(100% - 40px);\n max-width: 350px;\n background: transparent;\n pointer-events: auto;\n }\n \n .frontlineQuiz-module_nextBtn__UeoLO {\n width: 100%;\n padding: var(--quiz-spacing-medium, 16px) var(--quiz-spacing-large, 24px);\n font-size: var(--quiz-font-size-medium, 1rem);\n }\n \n .frontlineQuiz-module_questionCount__cFlA- {\n font-size: 0.85rem;\n }\n \n .frontlineQuiz-module_optionBtn__Rgseg {\n padding: var(--quiz-spacing-medium, 16px);\n }\n }\n \n @media (max-width: 768px) and (max-height: 800px) {\n .frontlineQuiz-module_quizContainer__RILFb {\n /* max-height: 70dvh; */\n }\n }\n \n @media (max-width: 768px) and (max-height: 500px) {\n .frontlineQuiz-module_quizContainer__RILFb {\n /* max-height: 60dvh; */\n }\n } ');var Wn=function(o){var a=o.quizId,d=o.userId,s=o.tabSwitchLimit,c=o.onQuizComplete,m=o.baseURL,f=o.token,p=o.theme,h=o.direction,v=o.handleClose,g=t(!1),_=g[0],z=g[1],b=t(0),x=b[0],w=b[1],y=t(null),k=y[0],S=y[1],C=t(null),T=C[0],M=C[1],B=t(!1),Q=B[0],P=B[1],E=t(!1),L=E[0],O=E[1],R=t(!0),F=R[0],j=R[1],A=q(s),W=A.isLimitReached,D=A.switchCount,V=t(""),J=V[0],G=V[1],U=i([]),Z=i(null);I(),r((function(){if(!(a&&d&&m&&f))return j(!1),G("Missing required parameters to load quiz."),void O(!0);l(void 0,void 0,void 0,(function(){var n,e;return u(this,(function(o){switch(o.label){case 0:return o.trys.push([0,5,6,7]),j(!0),[4,fetch("".concat(m,"/user-assessment/").concat(a,"/").concat(d,"/get-session-data"),{headers:{Authorization:"Bearer ".concat(f)}})];case 1:return(n=o.sent()).ok?[4,n.json()]:[3,3];case 2:return e=o.sent(),M(e),[3,4];case 3:G("Something went wrong. Please try again."),O(!0),o.label=4;case 4:return[3,7];case 5:return o.sent(),G("Something went wrong. Please try again."),O(!0),[3,7];case 6:return j(!1),[7];case 7:return[2]}}))}))}),[a,d,m,f]);var K=i(null),$=t(!1);$[0];var nn=$[1],en=t(!1),on=en[0],tn=en[1];if(r((function(){if(T){var n=K.current;if(n){var e=function(){var e=n.scrollHeight>n.clientHeight,o=n.scrollTop+n.clientHeight>=n.scrollHeight-15;e?(o&&tn(!0),nn(!o&&!on)):(nn(!1),tn(!1))},o=requestAnimationFrame((function(){setTimeout(e,100)}));return n.addEventListener("scroll",e),window.addEventListener("resize",e),function(){cancelAnimationFrame(o),n.removeEventListener("scroll",e),window.removeEventListener("resize",e)}}}}),[T,x,on]),r((function(){D>0&&D<3&&P(!0)}),[D]),r((function(){W&&(G("Your quiz has ended due to switching tabs too many times."),O(!0))}),[W]),r((function(){return function(){U.current.forEach((function(n){return clearTimeout(n)})),U.current=[]}}),[]),!T&&F)return e("div",{className:Tn,style:"rtl"==h?{direction:"rtl"}:{},ref:Z,children:[n(X,{theme:p}),n(Y,{})]});var rn=(null==T?void 0:T.questions)||[],an=function(n,e,o,t){return l(void 0,void 0,void 0,(function(){return u(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,fetch("".concat(m,"/user-assessment/").concat(n,"/").concat(o,"/").concat(e,"/submit-answer"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(f)},body:JSON.stringify({optionIds:[t]})})];case 1:return i.sent().ok||(G("Something went wrong. Please try again."),O(!0)),[3,3];case 2:return i.sent(),[3,3];case 3:return[2]}}))}))},ln=function(){return l(void 0,void 0,void 0,(function(){return u(this,(function(n){switch(n.label){case 0:return n.trys.push([0,5,,6]),[4,fetch("".concat(m,"/user-assessment/").concat(a,"/").concat(d,"/mark-quiz-complete"),{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer ".concat(f)}})];case 1:return n.sent().ok?(z(!0),[4,c()]):[3,3];case 2:return n.sent(),[3,4];case 3:G("Quiz completed, but there was an issue saving your progress."),O(!0),n.label=4;case 4:return[3,6];case 5:return n.sent(),G("Quiz completed, but there was a network error. Please check your connection."),O(!0),[3,6];case 6:return[2]}}))}))},un=function(){return l(void 0,void 0,void 0,(function(){var n;return u(this,(function(e){switch(e.label){case 0:if(!T||!rn.length)return G("Quiz data is not available. Please try again."),O(!0),[2];j(!0),e.label=1;case 1:return e.trys.push([1,,6,7]),[4,an(a,rn[x].id,d,k)];case 2:return e.sent(),x!==(null==rn?void 0:rn.length)-1?[3,4]:[4,ln()];case 3:return e.sent(),[3,5];case 4:S(null),n=null===window||void 0===window?void 0:window.setTimeout((function(){w((function(n){return n+1}));var n=window.setTimeout((function(){tn(!1)}),150);U.current.push(n)}),300),U.current.push(n),e.label=5;case 5:return[3,7];case 6:return n=null===window||void 0===window?void 0:window.setTimeout((function(){j(!1)}),300),U.current.push(n),[7];case 7:return[2]}}))}))};function dn(){return F?"Submitting":x===(null==rn?void 0:rn.length)-1?"Submit":"Next"}return _?null:e("div",{className:Tn,style:"rtl"==h?{direction:"rtl"}:{},children:[n(X,{theme:p}),e("div",{className:Mn,children:[e("div",{className:Bn,children:[e("h3",{className:In,children:["Questions: ",x+1,"/",(null==rn?void 0:rn.length)||0]}),e("div",{className:Nn,children:[n(Cn,{markQuizComplete:ln,duration:(null==T?void 0:T.duration)||0,isEndScreenOpen:L}),v&&n("button",{className:Qn,onClick:v,children:"×"})]})]}),n("div",{className:En,children:rn.slice(x).map((function(o,t){var i,r,a=t,l=0===a;return e("div",{className:"".concat(Pn," ").concat(Ln),style:{zIndex:rn.length-a,transform:"translateX(-50%) translateY(".concat(-11*a,"px) scale(").concat(1-.025*a,")"),width:"calc(100% - ".concat(24*a,"px)"),opacity:l?1:.75-.15*a,filter:l?"none":"blur(".concat(.8*a,"px)"),backgroundColor:l?"#fff":"#f8f9fa",pointerEvents:l?"auto":"none",top:rn.length>4?"50px":"25px",paddingBottom:"80px"},ref:K,children:[n("div",{className:On,children:n(gn,{question:(null===(i=rn[x])||void 0===i?void 0:i.text)||""})}),e("div",{className:Rn,children:[n("div",{className:Hn,children:n("div",{className:An,children:n("button",{className:jn,disabled:!k||F||!T,onClick:un,children:dn()})})}),n(qn,{loading:F,options:(null===(r=rn[x])||void 0===r?void 0:r.options)||[],selectedOption:k,onSelect:S,direction:h})]})]},x+t)}))})]}),k&&n("div",{className:Fn,children:n("button",{className:jn,disabled:!k||F||!T,onClick:un,children:dn()})}),n(N,{open:Q,onClose:function(){P(!1),O(!1),G("")}}),n(H,{open:L,onClose:v,message:J})]})};export{Wn as FrontlineQuizPlayer,hn as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wizr-quiz",
3
- "version": "1.0.2",
3
+ "version": "3.0.0",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.mjs",
6
6
  "types": "dist/index.d.ts",
@@ -19,6 +19,10 @@
19
19
  "author": "Wizr",
20
20
  "license": "ISC",
21
21
  "description": "A React SDK for creating interactive quizzes",
22
+ "peerDependencies": {
23
+ "react": "^18.0.0",
24
+ "react-dom": "^18.0.0"
25
+ },
22
26
  "devDependencies": {
23
27
  "@rollup/plugin-commonjs": "^28.0.3",
24
28
  "@rollup/plugin-node-resolve": "^16.0.1",
@@ -28,6 +32,7 @@
28
32
  "@types/react": "^19.0.12",
29
33
  "postcss": "^8.5.6",
30
34
  "react": "^18.3.1",
35
+ "react-dom": "^18.3.1",
31
36
  "rollup": "^4.36.0",
32
37
  "rollup-plugin-dts": "^6.2.1",
33
38
  "rollup-plugin-peer-deps-external": "^2.2.4",