@hardwork-med/hwm-web-ds 0.1.0 → 0.1.2
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 +45 -1
- package/dist/index.esm.js +72 -17
- package/dist/index.esm.js.map +1 -1
- package/dist/modules/questao/index.d.ts +2 -0
- package/dist/store/webDsStore/index.d.ts +2 -2
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { IconDefinition } from '@fortawesome/fontawesome-svg-core';
|
|
3
3
|
import { FontAwesomeIconProps } from '@fortawesome/react-fontawesome';
|
|
4
|
+
import * as zustand_middleware from 'zustand/middleware';
|
|
5
|
+
import * as zustand from 'zustand';
|
|
6
|
+
import { TProva } from '@/interfaces/TProva';
|
|
4
7
|
|
|
5
8
|
interface IconProps extends FontAwesomeIconProps {
|
|
6
9
|
/**
|
|
@@ -81,6 +84,20 @@ declare function QuestaoLayoutTags({ children }: {
|
|
|
81
84
|
children?: React.ReactNode;
|
|
82
85
|
}): react_jsx_runtime.JSX.Element;
|
|
83
86
|
|
|
87
|
+
interface QuestaoAlternativaProps {
|
|
88
|
+
position?: string
|
|
89
|
+
text: string
|
|
90
|
+
selected: boolean
|
|
91
|
+
correct: boolean
|
|
92
|
+
answered: boolean
|
|
93
|
+
showAnswer?: boolean
|
|
94
|
+
cancelled?: boolean
|
|
95
|
+
percentage?: string | number
|
|
96
|
+
onClick: React.MouseEventHandler<HTMLButtonElement>
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
declare function QuestaoAlternativa({ position, text, selected, correct, answered, showAnswer, cancelled, percentage, onClick }: QuestaoAlternativaProps): react_jsx_runtime.JSX.Element;
|
|
100
|
+
|
|
84
101
|
declare function QuestaoLayoutMainContent({ children }: {
|
|
85
102
|
children?: React.ReactNode;
|
|
86
103
|
}): react_jsx_runtime.JSX.Element;
|
|
@@ -96,6 +113,7 @@ declare function QuestaoLayoutAlternativas({ children }: {
|
|
|
96
113
|
*/
|
|
97
114
|
declare const Questao: {
|
|
98
115
|
Tag: typeof QuestaoTag;
|
|
116
|
+
Alternativa: typeof QuestaoAlternativa;
|
|
99
117
|
Layout: {
|
|
100
118
|
Grid: typeof QuestaoLayoutGrid;
|
|
101
119
|
MainContent: typeof QuestaoLayoutMainContent;
|
|
@@ -117,6 +135,32 @@ declare function useAppBreakpoint(): {
|
|
|
117
135
|
size: number;
|
|
118
136
|
};
|
|
119
137
|
|
|
138
|
+
interface WebDsState {
|
|
139
|
+
themeProva: TProva | null;
|
|
140
|
+
setThemeProva: (value: TProva | null) => void;
|
|
141
|
+
darkMode: boolean;
|
|
142
|
+
setDarkMode: (value: boolean) => void;
|
|
143
|
+
toggleDarkMode: () => void;
|
|
144
|
+
questionDarkMode: boolean;
|
|
145
|
+
setQuestionDarkMode: (value: boolean) => void;
|
|
146
|
+
toggleQuestionDarkMode: () => void;
|
|
147
|
+
questionGridOrientation: 'horizontal' | 'vertical';
|
|
148
|
+
toggleQuestionGridOrientation: () => void;
|
|
149
|
+
}
|
|
150
|
+
declare const useWebDsStore: zustand.UseBoundStore<Omit<zustand.StoreApi<WebDsState>, "setState" | "persist"> & {
|
|
151
|
+
setState(partial: WebDsState | Partial<WebDsState> | ((state: WebDsState) => WebDsState | Partial<WebDsState>), replace?: false | undefined): unknown;
|
|
152
|
+
setState(state: WebDsState | ((state: WebDsState) => WebDsState), replace: true): unknown;
|
|
153
|
+
persist: {
|
|
154
|
+
setOptions: (options: Partial<zustand_middleware.PersistOptions<WebDsState, WebDsState, unknown>>) => void;
|
|
155
|
+
clearStorage: () => void;
|
|
156
|
+
rehydrate: () => Promise<void> | void;
|
|
157
|
+
hasHydrated: () => boolean;
|
|
158
|
+
onHydrate: (fn: (state: WebDsState) => void) => () => void;
|
|
159
|
+
onFinishHydration: (fn: (state: WebDsState) => void) => () => void;
|
|
160
|
+
getOptions: () => Partial<zustand_middleware.PersistOptions<WebDsState, WebDsState, unknown>>;
|
|
161
|
+
};
|
|
162
|
+
}>;
|
|
163
|
+
|
|
120
164
|
declare function formatPosition(position: string): string;
|
|
121
165
|
|
|
122
166
|
declare function checkEnunciadoUnderline(enunciado: string): {
|
|
@@ -124,5 +168,5 @@ declare function checkEnunciadoUnderline(enunciado: string): {
|
|
|
124
168
|
enunciado2: string;
|
|
125
169
|
} | null;
|
|
126
170
|
|
|
127
|
-
export { Icon, Questao, checkEnunciadoUnderline, formatPosition, useAppBreakpoint, useOutsideClick };
|
|
171
|
+
export { Icon, Questao, checkEnunciadoUnderline, formatPosition, useAppBreakpoint, useOutsideClick, useWebDsStore };
|
|
128
172
|
export type { IconProps, TBreakpoint };
|
package/dist/index.esm.js
CHANGED
|
@@ -3,6 +3,9 @@ import clsx from 'clsx';
|
|
|
3
3
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
4
|
import { useState, useEffect } from 'react';
|
|
5
5
|
import { isBrowser } from 'framer-motion';
|
|
6
|
+
import { create } from 'zustand';
|
|
7
|
+
import { persist } from 'zustand/middleware';
|
|
8
|
+
import { byPrefixAndName } from '@awesome.me/kit-a7702856b7/icons';
|
|
6
9
|
|
|
7
10
|
function styleInject(css, ref) {
|
|
8
11
|
if ( ref === void 0 ) ref = {};
|
|
@@ -101,15 +104,81 @@ function useAppBreakpoint() {
|
|
|
101
104
|
};
|
|
102
105
|
}
|
|
103
106
|
|
|
107
|
+
const useWebDsStore = create()(persist((set) => ({
|
|
108
|
+
themeProva: null,
|
|
109
|
+
setThemeProva: (value) => set({ themeProva: value }),
|
|
110
|
+
darkMode: false,
|
|
111
|
+
setDarkMode: (value) => set({
|
|
112
|
+
questionDarkMode: value,
|
|
113
|
+
darkMode: value
|
|
114
|
+
}),
|
|
115
|
+
toggleDarkMode: () => set((state) => {
|
|
116
|
+
const newValue = !state.darkMode;
|
|
117
|
+
return {
|
|
118
|
+
questionDarkMode: newValue,
|
|
119
|
+
darkMode: newValue
|
|
120
|
+
};
|
|
121
|
+
}),
|
|
122
|
+
questionDarkMode: false,
|
|
123
|
+
setQuestionDarkMode: (value) => set({ questionDarkMode: value }),
|
|
124
|
+
toggleQuestionDarkMode: () => set((state) => ({ questionDarkMode: !state.questionDarkMode })),
|
|
125
|
+
questionGridOrientation: 'horizontal',
|
|
126
|
+
toggleQuestionGridOrientation: () => set((state) => ({
|
|
127
|
+
questionGridOrientation: state.questionGridOrientation === 'horizontal' ? 'vertical' : 'horizontal'
|
|
128
|
+
}))
|
|
129
|
+
}), {
|
|
130
|
+
name: 'hwm-web-ds',
|
|
131
|
+
}));
|
|
132
|
+
|
|
104
133
|
function QuestaoLayoutGrid({ children }) {
|
|
134
|
+
const { questionGridOrientation } = useWebDsStore();
|
|
105
135
|
const { lg } = useAppBreakpoint();
|
|
106
|
-
return (jsx(Fragment, { children: jsx("div", { className: clsx('flex gap-10 w-full max-w-7xl mx-auto', (lg) ? 'flex-row' : 'flex-col'), children: children }) }));
|
|
136
|
+
return (jsx(Fragment, { children: jsx("div", { className: clsx('flex gap-10 w-full max-w-7xl mx-auto', (lg && questionGridOrientation === 'horizontal') ? 'flex-row' : 'flex-col'), children: children }) }));
|
|
107
137
|
}
|
|
108
138
|
|
|
109
139
|
function QuestaoLayoutTags({ children }) {
|
|
110
140
|
return (jsx(Fragment, { children: jsx("div", { className: clsx('flex flex-row gap-4 w-full'), children: children }) }));
|
|
111
141
|
}
|
|
112
142
|
|
|
143
|
+
function formatPosition(position) {
|
|
144
|
+
if (/[a-zA-Z]/.test(position)) {
|
|
145
|
+
return position.toUpperCase();
|
|
146
|
+
}
|
|
147
|
+
const numeric = Number(position);
|
|
148
|
+
if (Number.isNaN(numeric) || numeric <= 0) {
|
|
149
|
+
return position;
|
|
150
|
+
}
|
|
151
|
+
const charCode = 64 + numeric;
|
|
152
|
+
if (charCode < 65 || charCode > 90) {
|
|
153
|
+
return position;
|
|
154
|
+
}
|
|
155
|
+
return String.fromCharCode(charCode);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
function QuestaoAlternativa({ position, text, selected, correct, answered, showAnswer = false, cancelled = false, percentage, onClick }) {
|
|
159
|
+
const { questionDarkMode } = useWebDsStore();
|
|
160
|
+
const CHECK_DISABLED = answered || cancelled;
|
|
161
|
+
const CHECK_NOT_ANSWERED = (!showAnswer && answered) || !answered;
|
|
162
|
+
const CHECK_ANSWERED = showAnswer && answered;
|
|
163
|
+
const SHOW_ANSWER_ICON = CHECK_ANSWERED && (correct || (!correct && selected));
|
|
164
|
+
return (jsx(Fragment, { children: jsxs("button", { className: clsx('tw:relative', 'tw:flex tw:items-center tw:gap-4 tw:w-full tw:min-h-14 tw:px-4 tw:py-3 tw:rounded-lg tw:transition-colors', 'tw:text-sm tw:whitespace-pre-wrap', 'tw:transition-colors', !CHECK_DISABLED && 'tw:default-click-animation', CHECK_NOT_ANSWERED && {
|
|
165
|
+
'tw:bg-cinza-1000 tw:hover:tw:bg-cinza-900 tw:text-cinza-100': !selected && questionDarkMode,
|
|
166
|
+
'tw:bg-cinza-500 tw:text-cinza-1000': selected && questionDarkMode,
|
|
167
|
+
'tw:bg-secundario-85 tw:hover:tw:bg-secundario-95 tw:text-primario-20': !selected && !questionDarkMode,
|
|
168
|
+
'tw:bg-primario-20 tw:text-primario-80': selected && !questionDarkMode
|
|
169
|
+
}, CHECK_ANSWERED && {
|
|
170
|
+
'tw:border tw:border-certo tw:text-certo': correct,
|
|
171
|
+
'tw:border tw:border-errado tw:text-errado': !correct && selected,
|
|
172
|
+
'tw:opacity-50': !correct && !selected,
|
|
173
|
+
'tw:bg-cinza-1100': ((!correct && selected) || correct) && questionDarkMode,
|
|
174
|
+
'tw:bg-cinza-1000 tw:text-cinza-900': (!correct && !selected) && questionDarkMode,
|
|
175
|
+
'tw:bg-secundario-95': ((!correct && selected) || correct) && !questionDarkMode,
|
|
176
|
+
'tw:bg-secundario-85 tw:text-cinza-1000': (!correct && !selected) && !questionDarkMode
|
|
177
|
+
}), disabled: CHECK_DISABLED, onClick: onClick, children: [!!position && (jsx("p", { className: clsx('tw:transition-colors', 'tw:font-bold tw:text-2xl tw:leading-full'), children: formatPosition(position) })), jsx("p", { className: clsx('tw:w-full tw:transition-colors', 'tw:text-left tw:whitespace-pre-wrap', cancelled && 'tw:line-through tw:decoration-2', CHECK_ANSWERED && {
|
|
178
|
+
'tw:font-bold': (!correct && selected) || correct
|
|
179
|
+
}), children: text }), (CHECK_ANSWERED && percentage !== undefined) && (jsxs("p", { className: clsx('tw:transition-colors', 'tw:font-bold tw:text-sm tw:leading-full'), children: [`${percentage}`.padStart(2, '0'), "%"] })), SHOW_ANSWER_ICON && (jsx("div", { className: clsx('tw:absolute tw:-top-1.5 tw:-right-1.5', 'tw:flex tw:items-center tw:justify-center tw:size-5 tw:rounded-full tw:bg-secundario-95 tw:transition-colors'), children: jsx(Icon, { icon: byPrefixAndName.fas[correct ? 'circle-check' : 'circle-xmark'], fontSize: 20, className: clsx(correct ? 'tw:text-certo' : 'tw:text-errado') }) }))] }) }));
|
|
180
|
+
}
|
|
181
|
+
|
|
113
182
|
function QuestaoLayoutMainContent({ children }) {
|
|
114
183
|
return (jsx(Fragment, { children: jsx("div", { className: clsx('flex flex-col w-full'), children: children }) }));
|
|
115
184
|
}
|
|
@@ -125,6 +194,7 @@ function QuestaoLayoutAlternativas({ children }) {
|
|
|
125
194
|
*/
|
|
126
195
|
const Questao = {
|
|
127
196
|
Tag: QuestaoTag,
|
|
197
|
+
Alternativa: QuestaoAlternativa,
|
|
128
198
|
Layout: {
|
|
129
199
|
Grid: QuestaoLayoutGrid,
|
|
130
200
|
MainContent: QuestaoLayoutMainContent,
|
|
@@ -150,21 +220,6 @@ function useOutsideClick(ref, callback, excludeIds = []) {
|
|
|
150
220
|
}, [ref, callback]);
|
|
151
221
|
}
|
|
152
222
|
|
|
153
|
-
function formatPosition(position) {
|
|
154
|
-
if (/[a-zA-Z]/.test(position)) {
|
|
155
|
-
return position.toUpperCase();
|
|
156
|
-
}
|
|
157
|
-
const numeric = Number(position);
|
|
158
|
-
if (Number.isNaN(numeric) || numeric <= 0) {
|
|
159
|
-
return position;
|
|
160
|
-
}
|
|
161
|
-
const charCode = 64 + numeric;
|
|
162
|
-
if (charCode < 65 || charCode > 90) {
|
|
163
|
-
return position;
|
|
164
|
-
}
|
|
165
|
-
return String.fromCharCode(charCode);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
223
|
function checkEnunciadoUnderline(enunciado) {
|
|
169
224
|
const regex = /_+/;
|
|
170
225
|
const checkEspaco = regex.test(enunciado);
|
|
@@ -174,5 +229,5 @@ function checkEnunciadoUnderline(enunciado) {
|
|
|
174
229
|
return { enunciado1, enunciado2 };
|
|
175
230
|
}
|
|
176
231
|
|
|
177
|
-
export { Icon, Questao, checkEnunciadoUnderline, formatPosition, useAppBreakpoint, useOutsideClick };
|
|
232
|
+
export { Icon, Questao, checkEnunciadoUnderline, formatPosition, useAppBreakpoint, useOutsideClick, useWebDsStore };
|
|
178
233
|
//# sourceMappingURL=index.esm.js.map
|
package/dist/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../src/components/common/Icon/Icon.tsx","../src/modules/questao/components/common/Tag/Tag.tsx","../src/hooks/useAppBreakpoint/index.ts","../src/modules/questao/components/layout/Grid/index.tsx","../src/modules/questao/components/layout/Tags/index.tsx","../src/modules/questao/components/layout/MainContent/index.tsx","../src/modules/questao/components/layout/Alternativas/index.tsx","../src/modules/questao/index.ts","../src/hooks/useOutsideClick/index.ts","../src/utils/formatPosition/index.ts","../src/utils/checkEnunciadoUnderline/index.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import clsx from 'clsx'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport type { IconProps } from './Icon.types'\n\nexport default function Icon({\n fontSize = 14,\n duotone = false,\n duotoneColor,\n primaryOpacity = 1,\n secondaryOpacity = 0.4,\n ...props\n}: IconProps) {\n\n const styles = {\n ...props.style,\n ...(duotone && {\n ['--fa-primary-color' as any]: !!duotoneColor ? duotoneColor[0] : undefined,\n ['--fa-secondary-color' as any]: !!duotoneColor && duotoneColor[1] ? duotoneColor[1] : undefined,\n ['--fa-primary-opacity' as any]: primaryOpacity,\n ['--fa-secondary-opacity' as any]: secondaryOpacity\n })\n }\n\n return (\n <FontAwesomeIcon\n {...props}\n fontSize={fontSize}\n style={styles}\n className={clsx(\n props.className,\n 'tw:transition-colors'\n )}\n />\n )\n}\n","import clsx from 'clsx'\nimport Icon from '@/components/common/Icon'\nimport type { QuestaoTagProps } from './Tag.types'\n\nexport default function QuestaoTag({ icon, label, status }: QuestaoTagProps) {\n\n return(\n\n <>\n <div className={clsx('tw:flex tw:items-center tw:gap-1 tw:h-7 tw:px-2')}>\n <Icon\n icon={icon}\n fontSize={12}\n className={clsx(\n status === 'certo' && 'tw:text-certo',\n status === 'errado' && 'tw:text-errado',\n status === 'parcial' && 'tw:text-parcial',\n !status && 'tw:text-primario-20'\n )}\n />\n\n {!!label && (\n <p\n className={clsx(\n 'tw:transition-colors',\n 'tw:text-xs tw:leading-full',\n status === 'certo' && 'tw:text-certo',\n status === 'errado' && 'tw:text-errado',\n status === 'parcial' && 'tw:text-parcial',\n !status && 'tw:text-primario-20'\n )}\n >\n {label}\n </p>\n )}\n </div>\n </>\n\n )\n\n}\n","import { useEffect, useState } from 'react'\nimport { isBrowser } from 'framer-motion'\n\nexport type TBreakpoint = 'xs' | 'sm' | 'md' | 'lg' | 'xl'\n\nexport default function useAppBreakpoint() {\n const [size, setSize] = useState(0)\n const [breakpoint, setBreakpoint] = useState<TBreakpoint>('sm')\n const [breakpoints, setBreakpoints] = useState({\n xl: false,\n lg: false,\n md: false,\n sm: false,\n xs: true\n })\n\n const getBreakpoint = (width: number): TBreakpoint => {\n if (width >= 1280) return 'xl'\n if (width >= 1024) return 'lg'\n if (width >= 768) return 'md'\n if (width >= 640) return 'sm'\n return 'xs'\n }\n\n const updateBreakpoints = (width: number) => {\n setBreakpoints({\n xl: width >= 1280,\n lg: width >= 1024,\n md: width >= 768,\n sm: width >= 640,\n xs: width > 0\n })\n }\n\n useEffect(() => {\n if (!isBrowser) return\n\n const handleResize = () => {\n const width = window.innerWidth\n\n setSize(width)\n setBreakpoint(getBreakpoint(width))\n updateBreakpoints(width)\n }\n\n handleResize()\n\n window.addEventListener('resize', handleResize)\n\n return () => window.removeEventListener('resize', handleResize)\n }, [])\n\n return {\n breakpoint,\n size,\n ...breakpoints\n }\n}\n","import clsx from 'clsx'\nimport useAppBreakpoint from '@/hooks/useAppBreakpoint'\n\nexport default function QuestaoLayoutGrid({ children }: { children?: React.ReactNode }) {\n\n const { lg } = useAppBreakpoint()\n\n return(\n\n <>\n <div\n className={clsx(\n 'flex gap-10 w-full max-w-7xl mx-auto',\n (lg) ? 'flex-row' : 'flex-col'\n )}\n >\n {children}\n </div>\n </>\n\n )\n\n}\n","import clsx from 'clsx'\n\nexport default function QuestaoLayoutTags({ children }: { children?: React.ReactNode }) {\n\n return(\n\n <>\n <div className={clsx('flex flex-row gap-4 w-full')}>\n {children}\n </div>\n </>\n\n )\n\n}\n","import clsx from 'clsx'\n\nexport default function QuestaoLayoutMainContent({ children }: { children?: React.ReactNode }) {\n\n return(\n\n <>\n <div className={clsx('flex flex-col w-full')}>\n {children}\n </div>\n </>\n\n )\n\n}\n","import clsx from 'clsx'\n\nexport default function QuestaoLayoutAlternativas({ children }: { children?: React.ReactNode }) {\n\n return(\n\n <>\n <div className={clsx('flex flex-col gap-3 w-full')}>\n {children}\n </div>\n </>\n\n )\n\n}\n","import QuestaoTag from './components/common/Tag'\nimport QuestaoLayoutGrid from './components/layout/Grid'\nimport QuestaoLayoutTags from './components/layout/Tags'\nimport QuestaoLayoutMainContent from './components/layout/MainContent'\nimport QuestaoLayoutAlternativas from './components/layout/Alternativas'\n\n/**\n * Componente Questao\n * \n * Este componente serve como namespace para todos os sub-componentes relacionados a uma questão.\n */\nconst Questao = {\n Tag: QuestaoTag,\n Layout: {\n Grid: QuestaoLayoutGrid,\n MainContent: QuestaoLayoutMainContent,\n Tags: QuestaoLayoutTags,\n Alternativas: QuestaoLayoutAlternativas,\n }\n}\n\nexport default Questao","import { useEffect } from 'react'\n\nexport default function useOutsideClick(\n ref: React.RefObject<HTMLElement | null>,\n callback: (open: boolean) => void,\n excludeIds: string[] = []\n) {\n useEffect(() => {\n function handleClickOutside(event: MouseEvent) {\n if (!!ref && !!ref.current && !ref.current.contains(event.target as Node)) {\n const target = event.target as HTMLElement\n const isExcluded = excludeIds.some(\n (id) => target.id === id || target.closest(`#${id}`)\n )\n\n if (!isExcluded) callback(false)\n }\n }\n\n document.addEventListener('mousedown', handleClickOutside)\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [ref, callback])\n}\n","export default function formatPosition(position: string) {\n\tif(/[a-zA-Z]/.test(position)) {\n\t\treturn position.toUpperCase()\n\t}\n\n\tconst numeric = Number(position)\n\tif (Number.isNaN(numeric) || numeric <= 0) {\n\t\treturn position\n\t}\n\n\tconst charCode = 64 + numeric\n\tif (charCode < 65 || charCode > 90) {\n\t\treturn position\n\t}\n\n\treturn String.fromCharCode(charCode)\n}","export default function checkEnunciadoUnderline(enunciado: string){\n const regex = /_+/\n const checkEspaco = regex.test(enunciado)\n\n if(!checkEspaco) return null\n\n const [enunciado1, enunciado2] = enunciado.split(regex)\n\n return { enunciado1, enunciado2 }\n}"],"names":["_jsx","_jsxs","_Fragment"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../src/components/common/Icon/Icon.tsx","../src/modules/questao/components/common/Tag/Tag.tsx","../src/hooks/useAppBreakpoint/index.ts","../src/store/webDsStore/index.ts","../src/modules/questao/components/layout/Grid/index.tsx","../src/modules/questao/components/layout/Tags/index.tsx","../src/utils/formatPosition/index.ts","../src/modules/questao/components/common/Alternativa/Alternativa.tsx","../src/modules/questao/components/layout/MainContent/index.tsx","../src/modules/questao/components/layout/Alternativas/index.tsx","../src/modules/questao/index.ts","../src/hooks/useOutsideClick/index.ts","../src/utils/checkEnunciadoUnderline/index.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import clsx from 'clsx'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport type { IconProps } from './Icon.types'\n\nexport default function Icon({\n fontSize = 14,\n duotone = false,\n duotoneColor,\n primaryOpacity = 1,\n secondaryOpacity = 0.4,\n ...props\n}: IconProps) {\n\n const styles = {\n ...props.style,\n ...(duotone && {\n ['--fa-primary-color' as any]: !!duotoneColor ? duotoneColor[0] : undefined,\n ['--fa-secondary-color' as any]: !!duotoneColor && duotoneColor[1] ? duotoneColor[1] : undefined,\n ['--fa-primary-opacity' as any]: primaryOpacity,\n ['--fa-secondary-opacity' as any]: secondaryOpacity\n })\n }\n\n return (\n <FontAwesomeIcon\n {...props}\n fontSize={fontSize}\n style={styles}\n className={clsx(\n props.className,\n 'tw:transition-colors'\n )}\n />\n )\n}\n","import clsx from 'clsx'\nimport Icon from '@/components/common/Icon'\nimport type { QuestaoTagProps } from './Tag.types'\n\nexport default function QuestaoTag({ icon, label, status }: QuestaoTagProps) {\n\n return(\n\n <>\n <div className={clsx('tw:flex tw:items-center tw:gap-1 tw:h-7 tw:px-2')}>\n <Icon\n icon={icon}\n fontSize={12}\n className={clsx(\n status === 'certo' && 'tw:text-certo',\n status === 'errado' && 'tw:text-errado',\n status === 'parcial' && 'tw:text-parcial',\n !status && 'tw:text-primario-20'\n )}\n />\n\n {!!label && (\n <p\n className={clsx(\n 'tw:transition-colors',\n 'tw:text-xs tw:leading-full',\n status === 'certo' && 'tw:text-certo',\n status === 'errado' && 'tw:text-errado',\n status === 'parcial' && 'tw:text-parcial',\n !status && 'tw:text-primario-20'\n )}\n >\n {label}\n </p>\n )}\n </div>\n </>\n\n )\n\n}\n","import { useEffect, useState } from 'react'\nimport { isBrowser } from 'framer-motion'\n\nexport type TBreakpoint = 'xs' | 'sm' | 'md' | 'lg' | 'xl'\n\nexport default function useAppBreakpoint() {\n const [size, setSize] = useState(0)\n const [breakpoint, setBreakpoint] = useState<TBreakpoint>('sm')\n const [breakpoints, setBreakpoints] = useState({\n xl: false,\n lg: false,\n md: false,\n sm: false,\n xs: true\n })\n\n const getBreakpoint = (width: number): TBreakpoint => {\n if (width >= 1280) return 'xl'\n if (width >= 1024) return 'lg'\n if (width >= 768) return 'md'\n if (width >= 640) return 'sm'\n return 'xs'\n }\n\n const updateBreakpoints = (width: number) => {\n setBreakpoints({\n xl: width >= 1280,\n lg: width >= 1024,\n md: width >= 768,\n sm: width >= 640,\n xs: width > 0\n })\n }\n\n useEffect(() => {\n if (!isBrowser) return\n\n const handleResize = () => {\n const width = window.innerWidth\n\n setSize(width)\n setBreakpoint(getBreakpoint(width))\n updateBreakpoints(width)\n }\n\n handleResize()\n\n window.addEventListener('resize', handleResize)\n\n return () => window.removeEventListener('resize', handleResize)\n }, [])\n\n return {\n breakpoint,\n size,\n ...breakpoints\n }\n}\n","import { create } from 'zustand'\nimport { persist } from 'zustand/middleware'\nimport type { TProva } from '@/interfaces/TProva'\n\ninterface WebDsState {\n themeProva: TProva | null\n setThemeProva: (value: TProva | null) => void\n\n darkMode: boolean\n setDarkMode: (value: boolean) => void\n toggleDarkMode: () => void\n\n questionDarkMode: boolean\n setQuestionDarkMode: (value: boolean) => void\n toggleQuestionDarkMode: () => void\n\n questionGridOrientation: 'horizontal' | 'vertical'\n toggleQuestionGridOrientation: () => void\n}\n\nconst useWebDsStore = create<WebDsState>()(\n persist(\n (set) => ({\n themeProva: null,\n setThemeProva: (value) => set({ themeProva: value }),\n\n darkMode: false,\n setDarkMode: (value) => set({\n questionDarkMode: value,\n darkMode: value\n }),\n toggleDarkMode: () => set((state) => {\n const newValue = !state.darkMode\n\n return {\n questionDarkMode: newValue,\n darkMode: newValue\n }\n }),\n\n questionDarkMode: false,\n setQuestionDarkMode: (value) => set({ questionDarkMode: value }),\n toggleQuestionDarkMode: () => set((state) => ({ questionDarkMode: !state.questionDarkMode })),\n\n questionGridOrientation: 'horizontal',\n toggleQuestionGridOrientation: () => set((state) => ({\n questionGridOrientation: state.questionGridOrientation === 'horizontal' ? 'vertical' : 'horizontal'\n }))\n }),\n {\n name: 'hwm-web-ds',\n }\n )\n)\n\nexport default useWebDsStore","import clsx from 'clsx'\nimport useAppBreakpoint from '@/hooks/useAppBreakpoint'\nimport useWebDsStore from '@/store/webDsStore'\n\nexport default function QuestaoLayoutGrid({ children }: { children?: React.ReactNode }) {\n\n const { questionGridOrientation } = useWebDsStore()\n\n const { lg } = useAppBreakpoint()\n\n return(\n\n <>\n <div\n className={clsx(\n 'flex gap-10 w-full max-w-7xl mx-auto',\n (lg && questionGridOrientation === 'horizontal') ? 'flex-row' : 'flex-col'\n )}\n >\n {children}\n </div>\n </>\n\n )\n\n}\n","import clsx from 'clsx'\n\nexport default function QuestaoLayoutTags({ children }: { children?: React.ReactNode }) {\n\n return(\n\n <>\n <div className={clsx('flex flex-row gap-4 w-full')}>\n {children}\n </div>\n </>\n\n )\n\n}\n","export default function formatPosition(position: string) {\n\tif(/[a-zA-Z]/.test(position)) {\n\t\treturn position.toUpperCase()\n\t}\n\n\tconst numeric = Number(position)\n\tif (Number.isNaN(numeric) || numeric <= 0) {\n\t\treturn position\n\t}\n\n\tconst charCode = 64 + numeric\n\tif (charCode < 65 || charCode > 90) {\n\t\treturn position\n\t}\n\n\treturn String.fromCharCode(charCode)\n}","import clsx from 'clsx'\nimport { byPrefixAndName } from '@awesome.me/kit-a7702856b7/icons'\nimport Icon from '@/components/common/Icon'\nimport useWebDsStore from '@/store/webDsStore'\nimport formatPosition from '@/utils/formatPosition'\nimport type { QuestaoAlternativaProps } from './Alternativa.types'\n\nexport default function QuestaoAlternativa({\n position,\n text,\n selected,\n correct,\n answered,\n showAnswer = false,\n cancelled = false,\n percentage,\n onClick\n}: QuestaoAlternativaProps) {\n\n const { questionDarkMode } = useWebDsStore()\n\n const CHECK_DISABLED = answered || cancelled\n const CHECK_NOT_ANSWERED = (!showAnswer && answered) || !answered\n const CHECK_ANSWERED = showAnswer && answered\n \n const SHOW_ANSWER_ICON = CHECK_ANSWERED && (correct || (!correct && selected))\n \n return(\n\n <>\n <button\n className={clsx(\n 'tw:relative',\n 'tw:flex tw:items-center tw:gap-4 tw:w-full tw:min-h-14 tw:px-4 tw:py-3 tw:rounded-lg tw:transition-colors',\n 'tw:text-sm tw:whitespace-pre-wrap',\n 'tw:transition-colors',\n !CHECK_DISABLED && 'tw:default-click-animation',\n CHECK_NOT_ANSWERED && {\n 'tw:bg-cinza-1000 tw:hover:tw:bg-cinza-900 tw:text-cinza-100': !selected && questionDarkMode,\n 'tw:bg-cinza-500 tw:text-cinza-1000': selected && questionDarkMode,\n 'tw:bg-secundario-85 tw:hover:tw:bg-secundario-95 tw:text-primario-20': !selected && !questionDarkMode,\n 'tw:bg-primario-20 tw:text-primario-80': selected && !questionDarkMode\n },\n CHECK_ANSWERED && {\n 'tw:border tw:border-certo tw:text-certo': correct,\n 'tw:border tw:border-errado tw:text-errado': !correct && selected,\n 'tw:opacity-50': !correct && !selected,\n\n 'tw:bg-cinza-1100': ((!correct && selected) || correct) && questionDarkMode,\n 'tw:bg-cinza-1000 tw:text-cinza-900': (!correct && !selected) && questionDarkMode,\n 'tw:bg-secundario-95': ((!correct && selected) || correct) && !questionDarkMode,\n 'tw:bg-secundario-85 tw:text-cinza-1000': (!correct && !selected) && !questionDarkMode\n }\n )}\n disabled={CHECK_DISABLED}\n onClick={onClick}\n >\n {!!position && (\n <p\n className={clsx(\n 'tw:transition-colors',\n 'tw:font-bold tw:text-2xl tw:leading-full'\n )}\n >\n {formatPosition(position)}\n </p>\n )}\n\n <p\n className={clsx(\n 'tw:w-full tw:transition-colors',\n 'tw:text-left tw:whitespace-pre-wrap',\n cancelled && 'tw:line-through tw:decoration-2',\n CHECK_ANSWERED && {\n 'tw:font-bold': (!correct && selected) || correct\n }\n )}\n >\n {text}\n </p>\n\n {(CHECK_ANSWERED && percentage !== undefined) && (\n <p\n className={clsx(\n 'tw:transition-colors',\n 'tw:font-bold tw:text-sm tw:leading-full'\n )}\n >\n {`${percentage}`.padStart(2, '0')}%\n </p>\n )}\n\n {SHOW_ANSWER_ICON && (\n <div\n className={clsx(\n 'tw:absolute tw:-top-1.5 tw:-right-1.5',\n 'tw:flex tw:items-center tw:justify-center tw:size-5 tw:rounded-full tw:bg-secundario-95 tw:transition-colors',\n )}\n >\n <Icon\n icon={byPrefixAndName.fas[correct ? 'circle-check' : 'circle-xmark']}\n fontSize={20}\n className={clsx(correct ? 'tw:text-certo' : 'tw:text-errado')}\n />\n </div>\n )}\n </button>\n </>\n\n )\n\n}\n","import clsx from 'clsx'\n\nexport default function QuestaoLayoutMainContent({ children }: { children?: React.ReactNode }) {\n\n return(\n\n <>\n <div className={clsx('flex flex-col w-full')}>\n {children}\n </div>\n </>\n\n )\n\n}\n","import clsx from 'clsx'\n\nexport default function QuestaoLayoutAlternativas({ children }: { children?: React.ReactNode }) {\n\n return(\n\n <>\n <div className={clsx('flex flex-col gap-3 w-full')}>\n {children}\n </div>\n </>\n\n )\n\n}\n","import QuestaoTag from './components/common/Tag'\nimport QuestaoLayoutGrid from './components/layout/Grid'\nimport QuestaoLayoutTags from './components/layout/Tags'\nimport QuestaoAlternativa from './components/common/Alternativa/Alternativa'\nimport QuestaoLayoutMainContent from './components/layout/MainContent'\nimport QuestaoLayoutAlternativas from './components/layout/Alternativas'\n\n/**\n * Componente Questao\n * \n * Este componente serve como namespace para todos os sub-componentes relacionados a uma questão.\n */\nconst Questao = {\n Tag: QuestaoTag,\n Alternativa: QuestaoAlternativa,\n Layout: {\n Grid: QuestaoLayoutGrid,\n MainContent: QuestaoLayoutMainContent,\n Tags: QuestaoLayoutTags,\n Alternativas: QuestaoLayoutAlternativas,\n }\n}\n\nexport default Questao","import { useEffect } from 'react'\n\nexport default function useOutsideClick(\n ref: React.RefObject<HTMLElement | null>,\n callback: (open: boolean) => void,\n excludeIds: string[] = []\n) {\n useEffect(() => {\n function handleClickOutside(event: MouseEvent) {\n if (!!ref && !!ref.current && !ref.current.contains(event.target as Node)) {\n const target = event.target as HTMLElement\n const isExcluded = excludeIds.some(\n (id) => target.id === id || target.closest(`#${id}`)\n )\n\n if (!isExcluded) callback(false)\n }\n }\n\n document.addEventListener('mousedown', handleClickOutside)\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [ref, callback])\n}\n","export default function checkEnunciadoUnderline(enunciado: string){\n const regex = /_+/\n const checkEspaco = regex.test(enunciado)\n\n if(!checkEspaco) return null\n\n const [enunciado1, enunciado2] = enunciado.split(regex)\n\n return { enunciado1, enunciado2 }\n}"],"names":["_jsx","_jsxs","_Fragment"],"mappings":";;;;;;;;;AAAA,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE;AAC/B,EAAE,KAAK,GAAG,KAAK,MAAM,GAAG,GAAG,GAAG,EAAE;AAChC,EAAE,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ;;AAE7B,EAAE,IAAY,OAAO,QAAQ,KAAK,WAAW,EAAE,EAAE,OAAO,CAAC;;AAEzD,EAAE,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACtE,EAAE,IAAI,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;AAC7C,EAAE,KAAK,CAAC,IAAI,GAAG,UAAU;;AAEzB,EAAE,IAAI,QAAQ,KAAK,KAAK,EAAE;AAC1B,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;AACzB,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC;AAC/C,IAAI,CAAC,MAAM;AACX,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AAC7B,IAAI;AACJ,EAAE,CAAC,MAAM;AACT,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AAC3B,EAAE;;AAEF,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE;AACxB,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG;AAClC,EAAE,CAAC,MAAM;AACT,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AACnD,EAAE;AACF;;;;;ACrBc,SAAU,IAAI,CAAC,EACzB,QAAQ,GAAG,EAAE,EACb,OAAO,GAAG,KAAK,EACf,YAAY,EACZ,cAAc,GAAG,CAAC,EAClB,gBAAgB,GAAG,GAAG,EACtB,GAAG,KAAK,EACA,EAAA;AAER,IAAA,MAAM,MAAM,GAAG;QACX,GAAG,KAAK,CAAC,KAAK;QACd,IAAI,OAAO,IAAI;AACX,YAAA,CAAC,oBAA2B,GAAG,CAAC,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS;YAC3E,CAAC,sBAA6B,GAAG,CAAC,CAAC,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS;YAChG,CAAC,sBAA6B,GAAG,cAAc;YAC/C,CAAC,wBAA+B,GAAG;SACtC;KACJ;IAED,QACIA,GAAA,CAAC,eAAe,EAAA,EAAA,GACR,KAAK,EACT,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,IAAI,CACX,KAAK,CAAC,SAAS,EACf,sBAAsB,CACzB,EAAA,CACH;AAEV;;AC9Bc,SAAU,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAmB,EAAA;IAEvE,QAEIA,0BACIC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,IAAI,CAAC,iDAAiD,CAAC,EAAA,QAAA,EAAA,CACnED,IAAC,IAAI,EAAA,EACD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,EAAE,EACZ,SAAS,EAAE,IAAI,CACX,MAAM,KAAK,OAAO,IAAI,eAAe,EACrC,MAAM,KAAK,QAAQ,IAAI,gBAAgB,EACvC,MAAM,KAAK,SAAS,IAAI,iBAAiB,EACzC,CAAC,MAAM,IAAI,qBAAqB,CACnC,EAAA,CACH,EAED,CAAC,CAAC,KAAK,KACJA,GAAA,CAAA,GAAA,EAAA,EACI,SAAS,EAAE,IAAI,CACX,sBAAsB,EACtB,4BAA4B,EAC5B,MAAM,KAAK,OAAO,IAAI,eAAe,EACrC,MAAM,KAAK,QAAQ,IAAI,gBAAgB,EACvC,MAAM,KAAK,SAAS,IAAI,iBAAiB,EACzC,CAAC,MAAM,IAAI,qBAAqB,CACnC,EAAA,QAAA,EAEA,KAAK,GACN,CACP,CAAA,EAAA,CACC,EAAA,CACP;AAIX;;ACnCc,SAAU,gBAAgB,GAAA;IACpC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAc,IAAI,CAAC;AAC/D,IAAA,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC;AAC3C,QAAA,EAAE,EAAE,KAAK;AACT,QAAA,EAAE,EAAE,KAAK;AACT,QAAA,EAAE,EAAE,KAAK;AACT,QAAA,EAAE,EAAE,KAAK;AACT,QAAA,EAAE,EAAE;AACP,KAAA,CAAC;AAEF,IAAA,MAAM,aAAa,GAAG,CAAC,KAAa,KAAiB;QACjD,IAAI,KAAK,IAAI,IAAI;AAAE,YAAA,OAAO,IAAI;QAC9B,IAAI,KAAK,IAAI,IAAI;AAAE,YAAA,OAAO,IAAI;QAC9B,IAAI,KAAK,IAAI,GAAG;AAAE,YAAA,OAAO,IAAI;QAC7B,IAAI,KAAK,IAAI,GAAG;AAAE,YAAA,OAAO,IAAI;AAC7B,QAAA,OAAO,IAAI;AACf,IAAA,CAAC;AAED,IAAA,MAAM,iBAAiB,GAAG,CAAC,KAAa,KAAI;AACxC,QAAA,cAAc,CAAC;YACX,EAAE,EAAE,KAAK,IAAI,IAAI;YACjB,EAAE,EAAE,KAAK,IAAI,IAAI;YACjB,EAAE,EAAE,KAAK,IAAI,GAAG;YAChB,EAAE,EAAE,KAAK,IAAI,GAAG;YAChB,EAAE,EAAE,KAAK,GAAG;AACf,SAAA,CAAC;AACN,IAAA,CAAC;IAED,SAAS,CAAC,MAAK;AACX,QAAA,IAAI,CAAC,SAAS;YAAE;QAEhB,MAAM,YAAY,GAAG,MAAK;AACtB,YAAA,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU;YAE/B,OAAO,CAAC,KAAK,CAAC;AACd,YAAA,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACnC,iBAAiB,CAAC,KAAK,CAAC;AAC5B,QAAA,CAAC;AAED,QAAA,YAAY,EAAE;AAEd,QAAA,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC;QAE/C,OAAO,MAAM,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC;IACnE,CAAC,EAAE,EAAE,CAAC;IAEN,OAAO;QACH,UAAU;QACV,IAAI;AACJ,QAAA,GAAG;KACN;AACL;;ACrCA,MAAM,aAAa,GAAG,MAAM,EAAc,CACtC,OAAO,CACH,CAAC,GAAG,MAAM;AACN,IAAA,UAAU,EAAE,IAAI;AAChB,IAAA,aAAa,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AAEpD,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,WAAW,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC;AACxB,QAAA,gBAAgB,EAAE,KAAK;AACvB,QAAA,QAAQ,EAAE;KACb,CAAC;IACF,cAAc,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,KAAI;AAChC,QAAA,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,QAAQ;QAEhC,OAAO;AACH,YAAA,gBAAgB,EAAE,QAAQ;AAC1B,YAAA,QAAQ,EAAE;SACb;AACL,IAAA,CAAC,CAAC;AAEF,IAAA,gBAAgB,EAAE,KAAK;AACvB,IAAA,mBAAmB,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;IAChE,sBAAsB,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,gBAAgB,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAE7F,IAAA,uBAAuB,EAAE,YAAY;IACrC,6BAA6B,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM;AACjD,QAAA,uBAAuB,EAAE,KAAK,CAAC,uBAAuB,KAAK,YAAY,GAAG,UAAU,GAAG;AAC1F,KAAA,CAAC;AACL,CAAA,CAAC,EACF;AACI,IAAA,IAAI,EAAE,YAAY;AACrB,CAAA,CACJ;;AChDS,SAAU,iBAAiB,CAAC,EAAE,QAAQ,EAAkC,EAAA;AAElF,IAAA,MAAM,EAAE,uBAAuB,EAAE,GAAG,aAAa,EAAE;AAEnD,IAAA,MAAM,EAAE,EAAE,EAAE,GAAG,gBAAgB,EAAE;AAEjC,IAAA,QAEIA,GAAA,CAAAE,QAAA,EAAA,EAAA,QAAA,EACIF,GAAA,CAAA,KAAA,EAAA,EACI,SAAS,EAAE,IAAI,CACX,sCAAsC,EACtC,CAAC,EAAE,IAAI,uBAAuB,KAAK,YAAY,IAAI,UAAU,GAAG,UAAU,CAC7E,EAAA,QAAA,EAEA,QAAQ,EAAA,CACP,EAAA,CACP;AAIX;;ACvBc,SAAU,iBAAiB,CAAC,EAAE,QAAQ,EAAkC,EAAA;AAElF,IAAA,QAEIA,GAAA,CAAAE,QAAA,EAAA,EAAA,QAAA,EACIF,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,IAAI,CAAC,4BAA4B,CAAC,EAAA,QAAA,EAC7C,QAAQ,EAAA,CACP,EAAA,CACP;AAIX;;ACdc,SAAU,cAAc,CAAC,QAAgB,EAAA;AACtD,IAAA,IAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AAC7B,QAAA,OAAO,QAAQ,CAAC,WAAW,EAAE;IAC9B;AAEA,IAAA,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC;IAChC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE;AAC1C,QAAA,OAAO,QAAQ;IAChB;AAEA,IAAA,MAAM,QAAQ,GAAG,EAAE,GAAG,OAAO;IAC7B,IAAI,QAAQ,GAAG,EAAE,IAAI,QAAQ,GAAG,EAAE,EAAE;AACnC,QAAA,OAAO,QAAQ;IAChB;AAEA,IAAA,OAAO,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC;AACrC;;ACTc,SAAU,kBAAkB,CAAC,EACvC,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK,EACjB,UAAU,EACV,OAAO,EACe,EAAA;AAEtB,IAAA,MAAM,EAAE,gBAAgB,EAAE,GAAG,aAAa,EAAE;AAE5C,IAAA,MAAM,cAAc,GAAG,QAAQ,IAAI,SAAS;IAC5C,MAAM,kBAAkB,GAAG,CAAC,CAAC,UAAU,IAAI,QAAQ,KAAK,CAAC,QAAQ;AACjE,IAAA,MAAM,cAAc,GAAG,UAAU,IAAI,QAAQ;AAE7C,IAAA,MAAM,gBAAgB,GAAG,cAAc,KAAK,OAAO,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC;IAE9E,QAEIA,0BACIC,IAAA,CAAA,QAAA,EAAA,EACI,SAAS,EAAE,IAAI,CACX,aAAa,EACb,2GAA2G,EAC3G,mCAAmC,EACnC,sBAAsB,EACtB,CAAC,cAAc,IAAI,4BAA4B,EAC/C,kBAAkB,IAAI;AAClB,gBAAA,6DAA6D,EAAE,CAAC,QAAQ,IAAI,gBAAgB;gBAC5F,oCAAoC,EAAE,QAAQ,IAAI,gBAAgB;AAClE,gBAAA,sEAAsE,EAAE,CAAC,QAAQ,IAAI,CAAC,gBAAgB;AACtG,gBAAA,uCAAuC,EAAE,QAAQ,IAAI,CAAC;AACzD,aAAA,EACD,cAAc,IAAI;AACd,gBAAA,yCAAyC,EAAE,OAAO;AAClD,gBAAA,2CAA2C,EAAE,CAAC,OAAO,IAAI,QAAQ;AACjE,gBAAA,eAAe,EAAE,CAAC,OAAO,IAAI,CAAC,QAAQ;AAEtC,gBAAA,kBAAkB,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,QAAQ,KAAK,OAAO,KAAK,gBAAgB;gBAC3E,oCAAoC,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,QAAQ,KAAK,gBAAgB;AACjF,gBAAA,qBAAqB,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,QAAQ,KAAK,OAAO,KAAK,CAAC,gBAAgB;gBAC/E,wCAAwC,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,QAAQ,KAAK,CAAC;aACzE,CACJ,EACD,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,OAAO,EAAA,QAAA,EAAA,CAEf,CAAC,CAAC,QAAQ,KACPD,GAAA,CAAA,GAAA,EAAA,EACI,SAAS,EAAE,IAAI,CACX,sBAAsB,EACtB,0CAA0C,CAC7C,EAAA,QAAA,EAEA,cAAc,CAAC,QAAQ,CAAC,GACzB,CACP,EAEDA,WACI,SAAS,EAAE,IAAI,CACX,gCAAgC,EAChC,qCAAqC,EACrC,SAAS,IAAI,iCAAiC,EAC9C,cAAc,IAAI;wBACd,cAAc,EAAE,CAAC,CAAC,OAAO,IAAI,QAAQ,KAAK;qBAC7C,CACJ,EAAA,QAAA,EAEA,IAAI,EAAA,CACL,EAEH,CAAC,cAAc,IAAI,UAAU,KAAK,SAAS,MACxCC,YACI,SAAS,EAAE,IAAI,CACX,sBAAsB,EACtB,yCAAyC,CAC5C,aAEA,CAAA,EAAG,UAAU,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAA,GAAA,CAAA,EAAA,CACjC,CACP,EAEA,gBAAgB,KACbD,GAAA,CAAA,KAAA,EAAA,EACI,SAAS,EAAE,IAAI,CACX,uCAAuC,EACvC,8GAA8G,CACjH,EAAA,QAAA,EAEDA,IAAC,IAAI,EAAA,EACD,IAAI,EAAE,eAAe,CAAC,GAAG,CAAC,OAAO,GAAG,cAAc,GAAG,cAAc,CAAC,EACpE,QAAQ,EAAE,EAAE,EACZ,SAAS,EAAE,IAAI,CAAC,OAAO,GAAG,eAAe,GAAG,gBAAgB,CAAC,EAAA,CAC/D,GACA,CACT,CAAA,EAAA,CACI,EAAA,CACV;AAIX;;AC7Gc,SAAU,wBAAwB,CAAC,EAAE,QAAQ,EAAkC,EAAA;AAEzF,IAAA,QAEIA,GAAA,CAAAE,QAAA,EAAA,EAAA,QAAA,EACIF,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,IAAI,CAAC,sBAAsB,CAAC,EAAA,QAAA,EACvC,QAAQ,EAAA,CACP,EAAA,CACP;AAIX;;ACZc,SAAU,yBAAyB,CAAC,EAAE,QAAQ,EAAkC,EAAA;AAE1F,IAAA,QAEIA,GAAA,CAAAE,QAAA,EAAA,EAAA,QAAA,EACIF,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,IAAI,CAAC,4BAA4B,CAAC,EAAA,QAAA,EAC7C,QAAQ,EAAA,CACP,EAAA,CACP;AAIX;;ACPA;;;;AAIG;AACH,MAAM,OAAO,GAAG;AACZ,IAAA,GAAG,EAAE,UAAU;AACf,IAAA,WAAW,EAAE,kBAAkB;AAC/B,IAAA,MAAM,EAAE;AACJ,QAAA,IAAI,EAAE,iBAAiB;AACvB,QAAA,WAAW,EAAE,wBAAwB;AACrC,QAAA,IAAI,EAAE,iBAAiB;AACvB,QAAA,YAAY,EAAE,yBAAyB;AAC1C;;;AClBS,SAAU,eAAe,CACnC,GAAwC,EACxC,QAAiC,EACjC,UAAA,GAAuB,EAAE,EAAA;IAEzB,SAAS,CAAC,MAAK;QACX,SAAS,kBAAkB,CAAC,KAAiB,EAAA;YACzC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EAAE;AACvE,gBAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB;gBAC1C,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAC9B,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,CAAA,CAAA,EAAI,EAAE,CAAA,CAAE,CAAC,CACvD;AAED,gBAAA,IAAI,CAAC,UAAU;oBAAE,QAAQ,CAAC,KAAK,CAAC;YACpC;QACJ;AAEA,QAAA,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,CAAC;AAE1D,QAAA,OAAO,MAAK;AACR,YAAA,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,CAAC;AACjE,QAAA,CAAC;AACL,IAAA,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACvB;;ACzBc,SAAU,uBAAuB,CAAC,SAAiB,EAAA;IAC7D,MAAM,KAAK,GAAG,IAAI;IAClB,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;AAEzC,IAAA,IAAG,CAAC,WAAW;AAAE,QAAA,OAAO,IAAI;AAE5B,IAAA,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;AAEvD,IAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE;AACrC;;;;","x_google_ignoreList":[0]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import QuestaoTag from './components/common/Tag';
|
|
2
2
|
import QuestaoLayoutGrid from './components/layout/Grid';
|
|
3
3
|
import QuestaoLayoutTags from './components/layout/Tags';
|
|
4
|
+
import QuestaoAlternativa from './components/common/Alternativa/Alternativa';
|
|
4
5
|
import QuestaoLayoutMainContent from './components/layout/MainContent';
|
|
5
6
|
import QuestaoLayoutAlternativas from './components/layout/Alternativas';
|
|
6
7
|
/**
|
|
@@ -10,6 +11,7 @@ import QuestaoLayoutAlternativas from './components/layout/Alternativas';
|
|
|
10
11
|
*/
|
|
11
12
|
declare const Questao: {
|
|
12
13
|
Tag: typeof QuestaoTag;
|
|
14
|
+
Alternativa: typeof QuestaoAlternativa;
|
|
13
15
|
Layout: {
|
|
14
16
|
Grid: typeof QuestaoLayoutGrid;
|
|
15
17
|
MainContent: typeof QuestaoLayoutMainContent;
|
|
@@ -8,8 +8,8 @@ interface WebDsState {
|
|
|
8
8
|
questionDarkMode: boolean;
|
|
9
9
|
setQuestionDarkMode: (value: boolean) => void;
|
|
10
10
|
toggleQuestionDarkMode: () => void;
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
questionGridOrientation: 'horizontal' | 'vertical';
|
|
12
|
+
toggleQuestionGridOrientation: () => void;
|
|
13
13
|
}
|
|
14
14
|
declare const useWebDsStore: import("zustand").UseBoundStore<Omit<import("zustand").StoreApi<WebDsState>, "setState" | "persist"> & {
|
|
15
15
|
setState(partial: WebDsState | Partial<WebDsState> | ((state: WebDsState) => WebDsState | Partial<WebDsState>), replace?: false | undefined): unknown;
|
package/package.json
CHANGED