analytica-frontend-lib 1.0.45 → 1.0.46
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/Card/index.d.mts +62 -0
- package/dist/Card/index.d.ts +62 -0
- package/dist/Card/index.js +1085 -0
- package/dist/Card/index.js.map +1 -0
- package/dist/Card/index.mjs +1054 -0
- package/dist/Card/index.mjs.map +1 -0
- package/dist/Stepper/index.d.mts +169 -0
- package/dist/Stepper/index.d.ts +169 -0
- package/dist/Stepper/index.js +381 -0
- package/dist/Stepper/index.js.map +1 -0
- package/dist/Stepper/index.mjs +354 -0
- package/dist/Stepper/index.mjs.map +1 -0
- package/dist/index.css +405 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +828 -105
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +816 -101
- package/dist/index.mjs.map +1 -1
- package/dist/styles.css +405 -0
- package/dist/styles.css.map +1 -1
- package/package.json +3 -1
package/dist/index.mjs
CHANGED
|
@@ -2041,6 +2041,305 @@ var ProgressCircle = ({
|
|
|
2041
2041
|
};
|
|
2042
2042
|
var ProgressCircle_default = ProgressCircle;
|
|
2043
2043
|
|
|
2044
|
+
// src/components/Stepper/Stepper.tsx
|
|
2045
|
+
import { Check as Check3 } from "phosphor-react";
|
|
2046
|
+
import { jsx as jsx20, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
2047
|
+
var SIZE_CLASSES9 = {
|
|
2048
|
+
small: {
|
|
2049
|
+
container: "gap-2",
|
|
2050
|
+
// 8px gap as specified in CSS
|
|
2051
|
+
stepWidth: "w-[58px]",
|
|
2052
|
+
// exact 58px from CSS
|
|
2053
|
+
stepHeight: "h-[38px]",
|
|
2054
|
+
// exact 38px from CSS
|
|
2055
|
+
indicator: "w-5 h-5",
|
|
2056
|
+
// 20px as specified
|
|
2057
|
+
progressBar: "h-0.5",
|
|
2058
|
+
// 2px as specified
|
|
2059
|
+
indicatorTextSize: "2xs",
|
|
2060
|
+
// 10px as specified
|
|
2061
|
+
labelTextSize: "xs",
|
|
2062
|
+
// 12px as specified
|
|
2063
|
+
iconSize: "w-3 h-3"
|
|
2064
|
+
// 12px
|
|
2065
|
+
},
|
|
2066
|
+
medium: {
|
|
2067
|
+
container: "gap-3",
|
|
2068
|
+
// 12px (8px + 4px progression)
|
|
2069
|
+
stepWidth: "w-[110px]",
|
|
2070
|
+
// 110px (increased from 90px to fit "Endereço Residencial")
|
|
2071
|
+
stepHeight: "h-[48px]",
|
|
2072
|
+
// 48px (increased from 46px for better proportion)
|
|
2073
|
+
indicator: "w-6 h-6",
|
|
2074
|
+
// 24px (20px + 4px progression)
|
|
2075
|
+
progressBar: "h-0.5",
|
|
2076
|
+
// 2px maintained for consistency
|
|
2077
|
+
indicatorTextSize: "2xs",
|
|
2078
|
+
// 10px maintained for readability
|
|
2079
|
+
labelTextSize: "xs",
|
|
2080
|
+
// 12px maintained
|
|
2081
|
+
iconSize: "w-3.5 h-3.5"
|
|
2082
|
+
// 14px
|
|
2083
|
+
},
|
|
2084
|
+
large: {
|
|
2085
|
+
container: "gap-4",
|
|
2086
|
+
// 16px (12px + 4px progression)
|
|
2087
|
+
stepWidth: "w-[160px]",
|
|
2088
|
+
// 160px (increased from 140px to fit "Endereço Residencial")
|
|
2089
|
+
stepHeight: "h-[58px]",
|
|
2090
|
+
// 58px (increased from 54px for better proportion)
|
|
2091
|
+
indicator: "w-7 h-7",
|
|
2092
|
+
// 28px (24px + 4px progression)
|
|
2093
|
+
progressBar: "h-1",
|
|
2094
|
+
// 4px (increased for better visibility)
|
|
2095
|
+
indicatorTextSize: "xs",
|
|
2096
|
+
// 12px (increased for larger size)
|
|
2097
|
+
labelTextSize: "sm",
|
|
2098
|
+
// 14px (increased for larger size)
|
|
2099
|
+
iconSize: "w-4 h-4"
|
|
2100
|
+
// 16px
|
|
2101
|
+
},
|
|
2102
|
+
extraLarge: {
|
|
2103
|
+
container: "gap-5",
|
|
2104
|
+
// 20px (16px + 4px progression)
|
|
2105
|
+
stepWidth: "w-[200px]",
|
|
2106
|
+
// 200px (increased from 180px to ensure "Endereço Residencial" fits)
|
|
2107
|
+
stepHeight: "h-[68px]",
|
|
2108
|
+
// 68px (increased from 62px for better proportion)
|
|
2109
|
+
indicator: "w-8 h-8",
|
|
2110
|
+
// 32px (28px + 4px progression)
|
|
2111
|
+
progressBar: "h-1",
|
|
2112
|
+
// 4px maintained
|
|
2113
|
+
indicatorTextSize: "xs",
|
|
2114
|
+
// 12px maintained for readability
|
|
2115
|
+
labelTextSize: "sm",
|
|
2116
|
+
// 14px maintained
|
|
2117
|
+
iconSize: "w-[18px] h-[18px]"
|
|
2118
|
+
// 18px
|
|
2119
|
+
}
|
|
2120
|
+
};
|
|
2121
|
+
var STATE_CLASSES6 = {
|
|
2122
|
+
pending: {
|
|
2123
|
+
progressBar: "bg-text-400",
|
|
2124
|
+
// #A3A3A3
|
|
2125
|
+
indicator: "bg-text-400",
|
|
2126
|
+
// #A3A3A3
|
|
2127
|
+
indicatorText: "text-white",
|
|
2128
|
+
// Branco para contraste com background cinza
|
|
2129
|
+
label: "text-text-400"
|
|
2130
|
+
// #A3A3A3
|
|
2131
|
+
},
|
|
2132
|
+
current: {
|
|
2133
|
+
progressBar: "bg-primary-800",
|
|
2134
|
+
// #1C61B2 usando classe Tailwind padrão
|
|
2135
|
+
indicator: "bg-primary-800",
|
|
2136
|
+
// #1C61B2 usando classe Tailwind padrão
|
|
2137
|
+
indicatorText: "text-white",
|
|
2138
|
+
// Branco usando classe Tailwind padrão
|
|
2139
|
+
label: "text-primary-800"
|
|
2140
|
+
// #1C61B2 usando classe Tailwind padrão
|
|
2141
|
+
},
|
|
2142
|
+
completed: {
|
|
2143
|
+
progressBar: "bg-primary-400",
|
|
2144
|
+
// #48A0E8 para barra quando checked (completed)
|
|
2145
|
+
indicator: "bg-primary-400",
|
|
2146
|
+
// #48A0E8 para corresponder à barra de progresso
|
|
2147
|
+
indicatorText: "text-white",
|
|
2148
|
+
// Branco usando classe Tailwind padrão
|
|
2149
|
+
label: "text-primary-400"
|
|
2150
|
+
// #48A0E8 para corresponder à barra de progresso
|
|
2151
|
+
}
|
|
2152
|
+
};
|
|
2153
|
+
var Step = ({
|
|
2154
|
+
step,
|
|
2155
|
+
index,
|
|
2156
|
+
size: _size,
|
|
2157
|
+
sizeClasses,
|
|
2158
|
+
stateClasses,
|
|
2159
|
+
isLast: _isLast,
|
|
2160
|
+
className = ""
|
|
2161
|
+
}) => {
|
|
2162
|
+
const stepNumber = index + 1;
|
|
2163
|
+
const isCompleted = step.state === "completed";
|
|
2164
|
+
const getAriaLabel = () => {
|
|
2165
|
+
let suffix = "";
|
|
2166
|
+
if (step.state === "completed") {
|
|
2167
|
+
suffix = " (conclu\xEDdo)";
|
|
2168
|
+
} else if (step.state === "current") {
|
|
2169
|
+
suffix = " (atual)";
|
|
2170
|
+
}
|
|
2171
|
+
return `${step.label}${suffix}`;
|
|
2172
|
+
};
|
|
2173
|
+
return /* @__PURE__ */ jsxs15(
|
|
2174
|
+
"div",
|
|
2175
|
+
{
|
|
2176
|
+
className: `
|
|
2177
|
+
flex flex-col justify-center items-center pb-2 gap-2
|
|
2178
|
+
${sizeClasses.stepWidth} ${sizeClasses.stepHeight}
|
|
2179
|
+
flex-none flex-grow
|
|
2180
|
+
${className}
|
|
2181
|
+
sm:max-w-[100px] md:max-w-[120px] lg:max-w-none xl:max-w-none
|
|
2182
|
+
sm:min-h-[40px] md:min-h-[45px] lg:min-h-none
|
|
2183
|
+
overflow-visible
|
|
2184
|
+
`,
|
|
2185
|
+
children: [
|
|
2186
|
+
/* @__PURE__ */ jsx20(
|
|
2187
|
+
"div",
|
|
2188
|
+
{
|
|
2189
|
+
className: `
|
|
2190
|
+
w-full ${sizeClasses.progressBar} ${stateClasses.progressBar}
|
|
2191
|
+
rounded-sm flex-none
|
|
2192
|
+
`
|
|
2193
|
+
}
|
|
2194
|
+
),
|
|
2195
|
+
/* @__PURE__ */ jsxs15(
|
|
2196
|
+
"div",
|
|
2197
|
+
{
|
|
2198
|
+
className: `
|
|
2199
|
+
flex flex-col sm:flex-row items-center
|
|
2200
|
+
gap-1 sm:gap-2 w-full sm:w-auto
|
|
2201
|
+
h-auto sm:h-5 flex-none
|
|
2202
|
+
overflow-visible
|
|
2203
|
+
`,
|
|
2204
|
+
children: [
|
|
2205
|
+
/* @__PURE__ */ jsx20(
|
|
2206
|
+
"div",
|
|
2207
|
+
{
|
|
2208
|
+
className: `
|
|
2209
|
+
${sizeClasses.indicator} ${stateClasses.indicator}
|
|
2210
|
+
rounded-full flex items-center justify-center relative
|
|
2211
|
+
flex-none transition-all duration-300 ease-out
|
|
2212
|
+
w-4 h-4 sm:w-5 sm:h-5 md:w-5 md:h-5 lg:w-6 lg:h-6
|
|
2213
|
+
`,
|
|
2214
|
+
"aria-label": getAriaLabel(),
|
|
2215
|
+
children: isCompleted ? /* @__PURE__ */ jsx20(
|
|
2216
|
+
Check3,
|
|
2217
|
+
{
|
|
2218
|
+
weight: "bold",
|
|
2219
|
+
className: `
|
|
2220
|
+
${stateClasses.indicatorText}
|
|
2221
|
+
w-2.5 h-2.5 sm:w-3 sm:h-3 md:w-3 md:h-3 lg:w-3.5 lg:h-3.5
|
|
2222
|
+
`
|
|
2223
|
+
}
|
|
2224
|
+
) : /* @__PURE__ */ jsx20(
|
|
2225
|
+
Text_default,
|
|
2226
|
+
{
|
|
2227
|
+
size: sizeClasses.indicatorTextSize,
|
|
2228
|
+
weight: "medium",
|
|
2229
|
+
color: "",
|
|
2230
|
+
className: `${stateClasses.indicatorText} leading-none text-2xs sm:text-xs`,
|
|
2231
|
+
children: stepNumber
|
|
2232
|
+
}
|
|
2233
|
+
)
|
|
2234
|
+
}
|
|
2235
|
+
),
|
|
2236
|
+
/* @__PURE__ */ jsx20(
|
|
2237
|
+
Text_default,
|
|
2238
|
+
{
|
|
2239
|
+
size: sizeClasses.labelTextSize,
|
|
2240
|
+
weight: "medium",
|
|
2241
|
+
color: "",
|
|
2242
|
+
className: `
|
|
2243
|
+
${stateClasses.label} leading-tight flex-none
|
|
2244
|
+
text-center sm:text-left break-words
|
|
2245
|
+
px-1 sm:px-0 max-w-full
|
|
2246
|
+
text-2xs sm:text-xs md:text-xs lg:text-sm
|
|
2247
|
+
whitespace-normal
|
|
2248
|
+
`,
|
|
2249
|
+
children: step.label
|
|
2250
|
+
}
|
|
2251
|
+
)
|
|
2252
|
+
]
|
|
2253
|
+
}
|
|
2254
|
+
)
|
|
2255
|
+
]
|
|
2256
|
+
}
|
|
2257
|
+
);
|
|
2258
|
+
};
|
|
2259
|
+
var calculateStepStates = (steps, currentStep) => {
|
|
2260
|
+
return steps.map((step, index) => {
|
|
2261
|
+
let stepState;
|
|
2262
|
+
if (index < currentStep) {
|
|
2263
|
+
stepState = "completed";
|
|
2264
|
+
} else if (index === currentStep) {
|
|
2265
|
+
stepState = "current";
|
|
2266
|
+
} else {
|
|
2267
|
+
stepState = "pending";
|
|
2268
|
+
}
|
|
2269
|
+
return {
|
|
2270
|
+
...step,
|
|
2271
|
+
state: stepState
|
|
2272
|
+
};
|
|
2273
|
+
});
|
|
2274
|
+
};
|
|
2275
|
+
var getProgressText = (currentStep, totalSteps, customText) => {
|
|
2276
|
+
if (customText) return customText;
|
|
2277
|
+
return `Etapa ${currentStep + 1} de ${totalSteps}`;
|
|
2278
|
+
};
|
|
2279
|
+
var Stepper = ({
|
|
2280
|
+
steps: initialSteps,
|
|
2281
|
+
size = "medium",
|
|
2282
|
+
currentStep,
|
|
2283
|
+
className = "",
|
|
2284
|
+
stepClassName = "",
|
|
2285
|
+
showProgress = false,
|
|
2286
|
+
progressText,
|
|
2287
|
+
responsive = true
|
|
2288
|
+
}) => {
|
|
2289
|
+
const sizeClasses = SIZE_CLASSES9[size];
|
|
2290
|
+
const steps = currentStep !== void 0 ? calculateStepStates(initialSteps, currentStep) : initialSteps;
|
|
2291
|
+
return /* @__PURE__ */ jsxs15(
|
|
2292
|
+
"fieldset",
|
|
2293
|
+
{
|
|
2294
|
+
className: `flex flex-col gap-4 sm:gap-5 md:gap-6 ${className} border-0 p-0 m-0`,
|
|
2295
|
+
children: [
|
|
2296
|
+
/* @__PURE__ */ jsx20("legend", { className: "absolute w-px h-px p-0 -m-px overflow-hidden whitespace-nowrap border-0", children: "Stepper de formul\xE1rio" }),
|
|
2297
|
+
showProgress && currentStep !== void 0 && /* @__PURE__ */ jsx20(
|
|
2298
|
+
Text_default,
|
|
2299
|
+
{
|
|
2300
|
+
size: "sm",
|
|
2301
|
+
weight: "medium",
|
|
2302
|
+
className: "text-text-600 text-center sm:text-left text-xs sm:text-sm",
|
|
2303
|
+
children: getProgressText(currentStep, steps.length, progressText)
|
|
2304
|
+
}
|
|
2305
|
+
),
|
|
2306
|
+
/* @__PURE__ */ jsx20(
|
|
2307
|
+
"div",
|
|
2308
|
+
{
|
|
2309
|
+
className: `
|
|
2310
|
+
flex items-center
|
|
2311
|
+
${sizeClasses.container}
|
|
2312
|
+
${responsive ? "flex-row overflow-x-auto overflow-y-hidden scrollbar-hide justify-start sm:justify-center md:justify-center lg:justify-center" : "flex-row justify-center"}
|
|
2313
|
+
px-2 sm:px-4 md:px-6 lg:px-0
|
|
2314
|
+
max-w-full min-w-0
|
|
2315
|
+
gap-2 sm:gap-3 md:gap-4 lg:gap-4
|
|
2316
|
+
`,
|
|
2317
|
+
role: "tablist",
|
|
2318
|
+
"aria-label": "Progress steps",
|
|
2319
|
+
children: steps.map((step, index) => {
|
|
2320
|
+
const stateClasses = STATE_CLASSES6[step.state];
|
|
2321
|
+
return /* @__PURE__ */ jsx20(
|
|
2322
|
+
Step,
|
|
2323
|
+
{
|
|
2324
|
+
step,
|
|
2325
|
+
index,
|
|
2326
|
+
size,
|
|
2327
|
+
sizeClasses,
|
|
2328
|
+
stateClasses,
|
|
2329
|
+
isLast: index === steps.length - 1,
|
|
2330
|
+
className: stepClassName
|
|
2331
|
+
},
|
|
2332
|
+
step.id
|
|
2333
|
+
);
|
|
2334
|
+
})
|
|
2335
|
+
}
|
|
2336
|
+
)
|
|
2337
|
+
]
|
|
2338
|
+
}
|
|
2339
|
+
);
|
|
2340
|
+
};
|
|
2341
|
+
var Stepper_default = Stepper;
|
|
2342
|
+
|
|
2044
2343
|
// src/components/Calendar/Calendar.tsx
|
|
2045
2344
|
import {
|
|
2046
2345
|
useState as useState5,
|
|
@@ -2048,7 +2347,7 @@ import {
|
|
|
2048
2347
|
useEffect,
|
|
2049
2348
|
useRef
|
|
2050
2349
|
} from "react";
|
|
2051
|
-
import { jsx as
|
|
2350
|
+
import { jsx as jsx21, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
2052
2351
|
var WEEK_DAYS = ["SEG", "TER", "QUA", "QUI", "SEX", "S\xC1B", "DOM"];
|
|
2053
2352
|
var WEEK_DAYS_SHORT = ["S", "T", "Q", "Q", "S", "S", "D"];
|
|
2054
2353
|
var MONTH_NAMES = [
|
|
@@ -2071,15 +2370,15 @@ var MonthYearPicker = ({
|
|
|
2071
2370
|
currentDate,
|
|
2072
2371
|
onYearChange,
|
|
2073
2372
|
onMonthChange
|
|
2074
|
-
}) => /* @__PURE__ */
|
|
2373
|
+
}) => /* @__PURE__ */ jsxs16(
|
|
2075
2374
|
"div",
|
|
2076
2375
|
{
|
|
2077
2376
|
ref: monthPickerRef,
|
|
2078
2377
|
className: "absolute top-full left-0 z-50 mt-1 bg-white rounded-lg shadow-lg border border-border-200 p-4 min-w-[280px]",
|
|
2079
2378
|
children: [
|
|
2080
|
-
/* @__PURE__ */
|
|
2081
|
-
/* @__PURE__ */
|
|
2082
|
-
/* @__PURE__ */
|
|
2379
|
+
/* @__PURE__ */ jsxs16("div", { className: "mb-4", children: [
|
|
2380
|
+
/* @__PURE__ */ jsx21("h3", { className: "text-sm font-medium text-text-700 mb-2", children: "Selecionar Ano" }),
|
|
2381
|
+
/* @__PURE__ */ jsx21("div", { className: "grid grid-cols-4 gap-1 max-h-32 overflow-y-auto", children: availableYears.map((year) => /* @__PURE__ */ jsx21(
|
|
2083
2382
|
"button",
|
|
2084
2383
|
{
|
|
2085
2384
|
onClick: () => onYearChange(year),
|
|
@@ -2092,9 +2391,9 @@ var MonthYearPicker = ({
|
|
|
2092
2391
|
year
|
|
2093
2392
|
)) })
|
|
2094
2393
|
] }),
|
|
2095
|
-
/* @__PURE__ */
|
|
2096
|
-
/* @__PURE__ */
|
|
2097
|
-
/* @__PURE__ */
|
|
2394
|
+
/* @__PURE__ */ jsxs16("div", { children: [
|
|
2395
|
+
/* @__PURE__ */ jsx21("h3", { className: "text-sm font-medium text-text-700 mb-2", children: "Selecionar M\xEAs" }),
|
|
2396
|
+
/* @__PURE__ */ jsx21("div", { className: "grid grid-cols-3 gap-1", children: MONTH_NAMES.map((month, index) => /* @__PURE__ */ jsx21(
|
|
2098
2397
|
"button",
|
|
2099
2398
|
{
|
|
2100
2399
|
onClick: () => onMonthChange(index, currentDate.getFullYear()),
|
|
@@ -2226,28 +2525,28 @@ var Calendar = ({
|
|
|
2226
2525
|
onDateSelect?.(day.date);
|
|
2227
2526
|
};
|
|
2228
2527
|
if (variant === "navigation") {
|
|
2229
|
-
return /* @__PURE__ */
|
|
2230
|
-
/* @__PURE__ */
|
|
2231
|
-
/* @__PURE__ */
|
|
2232
|
-
/* @__PURE__ */
|
|
2528
|
+
return /* @__PURE__ */ jsxs16("div", { className: `bg-background rounded-xl p-3 ${className}`, children: [
|
|
2529
|
+
/* @__PURE__ */ jsxs16("div", { className: "flex items-center justify-between mb-4 px-6", children: [
|
|
2530
|
+
/* @__PURE__ */ jsxs16("div", { className: "relative", ref: monthPickerContainerRef, children: [
|
|
2531
|
+
/* @__PURE__ */ jsxs16(
|
|
2233
2532
|
"button",
|
|
2234
2533
|
{
|
|
2235
2534
|
onClick: toggleMonthPicker,
|
|
2236
2535
|
className: "flex items-center gap-1 hover:bg-background-100 rounded px-2 py-1 transition-colors",
|
|
2237
2536
|
children: [
|
|
2238
|
-
/* @__PURE__ */
|
|
2537
|
+
/* @__PURE__ */ jsxs16("span", { className: "text-sm font-medium text-text-600", children: [
|
|
2239
2538
|
MONTH_NAMES[currentDate.getMonth()],
|
|
2240
2539
|
" ",
|
|
2241
2540
|
currentDate.getFullYear()
|
|
2242
2541
|
] }),
|
|
2243
|
-
/* @__PURE__ */
|
|
2542
|
+
/* @__PURE__ */ jsx21(
|
|
2244
2543
|
"svg",
|
|
2245
2544
|
{
|
|
2246
2545
|
className: `w-4 h-4 text-primary-950 transition-transform ${isMonthPickerOpen ? "rotate-180" : ""}`,
|
|
2247
2546
|
fill: "none",
|
|
2248
2547
|
stroke: "currentColor",
|
|
2249
2548
|
viewBox: "0 0 24 24",
|
|
2250
|
-
children: /* @__PURE__ */
|
|
2549
|
+
children: /* @__PURE__ */ jsx21(
|
|
2251
2550
|
"path",
|
|
2252
2551
|
{
|
|
2253
2552
|
strokeLinecap: "round",
|
|
@@ -2261,7 +2560,7 @@ var Calendar = ({
|
|
|
2261
2560
|
]
|
|
2262
2561
|
}
|
|
2263
2562
|
),
|
|
2264
|
-
isMonthPickerOpen && /* @__PURE__ */
|
|
2563
|
+
isMonthPickerOpen && /* @__PURE__ */ jsx21(
|
|
2265
2564
|
MonthYearPicker,
|
|
2266
2565
|
{
|
|
2267
2566
|
monthPickerRef,
|
|
@@ -2272,21 +2571,21 @@ var Calendar = ({
|
|
|
2272
2571
|
}
|
|
2273
2572
|
)
|
|
2274
2573
|
] }),
|
|
2275
|
-
/* @__PURE__ */
|
|
2276
|
-
/* @__PURE__ */
|
|
2574
|
+
/* @__PURE__ */ jsxs16("div", { className: "flex items-center gap-10", children: [
|
|
2575
|
+
/* @__PURE__ */ jsx21(
|
|
2277
2576
|
"button",
|
|
2278
2577
|
{
|
|
2279
2578
|
onClick: goToPreviousMonth,
|
|
2280
2579
|
className: "p-1 rounded hover:bg-background-100 transition-colors",
|
|
2281
2580
|
"aria-label": "M\xEAs anterior",
|
|
2282
|
-
children: /* @__PURE__ */
|
|
2581
|
+
children: /* @__PURE__ */ jsx21(
|
|
2283
2582
|
"svg",
|
|
2284
2583
|
{
|
|
2285
2584
|
className: "w-6 h-6 text-primary-950",
|
|
2286
2585
|
fill: "none",
|
|
2287
2586
|
stroke: "currentColor",
|
|
2288
2587
|
viewBox: "0 0 24 24",
|
|
2289
|
-
children: /* @__PURE__ */
|
|
2588
|
+
children: /* @__PURE__ */ jsx21(
|
|
2290
2589
|
"path",
|
|
2291
2590
|
{
|
|
2292
2591
|
strokeLinecap: "round",
|
|
@@ -2299,20 +2598,20 @@ var Calendar = ({
|
|
|
2299
2598
|
)
|
|
2300
2599
|
}
|
|
2301
2600
|
),
|
|
2302
|
-
/* @__PURE__ */
|
|
2601
|
+
/* @__PURE__ */ jsx21(
|
|
2303
2602
|
"button",
|
|
2304
2603
|
{
|
|
2305
2604
|
onClick: goToNextMonth,
|
|
2306
2605
|
className: "p-1 rounded hover:bg-background-100 transition-colors",
|
|
2307
2606
|
"aria-label": "Pr\xF3ximo m\xEAs",
|
|
2308
|
-
children: /* @__PURE__ */
|
|
2607
|
+
children: /* @__PURE__ */ jsx21(
|
|
2309
2608
|
"svg",
|
|
2310
2609
|
{
|
|
2311
2610
|
className: "w-6 h-6 text-primary-950",
|
|
2312
2611
|
fill: "none",
|
|
2313
2612
|
stroke: "currentColor",
|
|
2314
2613
|
viewBox: "0 0 24 24",
|
|
2315
|
-
children: /* @__PURE__ */
|
|
2614
|
+
children: /* @__PURE__ */ jsx21(
|
|
2316
2615
|
"path",
|
|
2317
2616
|
{
|
|
2318
2617
|
strokeLinecap: "round",
|
|
@@ -2327,7 +2626,7 @@ var Calendar = ({
|
|
|
2327
2626
|
)
|
|
2328
2627
|
] })
|
|
2329
2628
|
] }),
|
|
2330
|
-
/* @__PURE__ */
|
|
2629
|
+
/* @__PURE__ */ jsx21("div", { className: "grid grid-cols-7 gap-1 mb-2", children: WEEK_DAYS_SHORT.map((day, index) => /* @__PURE__ */ jsx21(
|
|
2331
2630
|
"div",
|
|
2332
2631
|
{
|
|
2333
2632
|
className: "h-9 flex items-center justify-center text-xs font-normal text-text-600",
|
|
@@ -2335,13 +2634,13 @@ var Calendar = ({
|
|
|
2335
2634
|
},
|
|
2336
2635
|
`${day}-${index}`
|
|
2337
2636
|
)) }),
|
|
2338
|
-
/* @__PURE__ */
|
|
2637
|
+
/* @__PURE__ */ jsx21("div", { className: "grid grid-cols-7 gap-1", children: calendarData.map((day) => {
|
|
2339
2638
|
if (!day.isCurrentMonth) {
|
|
2340
|
-
return /* @__PURE__ */
|
|
2639
|
+
return /* @__PURE__ */ jsx21(
|
|
2341
2640
|
"div",
|
|
2342
2641
|
{
|
|
2343
2642
|
className: "flex items-center justify-center",
|
|
2344
|
-
children: /* @__PURE__ */
|
|
2643
|
+
children: /* @__PURE__ */ jsx21("div", { className: "w-9 h-9" })
|
|
2345
2644
|
},
|
|
2346
2645
|
day.date.getTime()
|
|
2347
2646
|
);
|
|
@@ -2357,11 +2656,11 @@ var Calendar = ({
|
|
|
2357
2656
|
} else if (day.isSelected) {
|
|
2358
2657
|
spanClass = "h-6 w-6 rounded-full bg-primary-950 text-text";
|
|
2359
2658
|
}
|
|
2360
|
-
return /* @__PURE__ */
|
|
2659
|
+
return /* @__PURE__ */ jsx21(
|
|
2361
2660
|
"div",
|
|
2362
2661
|
{
|
|
2363
2662
|
className: "flex items-center justify-center",
|
|
2364
|
-
children: /* @__PURE__ */
|
|
2663
|
+
children: /* @__PURE__ */ jsx21(
|
|
2365
2664
|
"button",
|
|
2366
2665
|
{
|
|
2367
2666
|
className: `
|
|
@@ -2377,7 +2676,7 @@ var Calendar = ({
|
|
|
2377
2676
|
"aria-label": `${day.date.getDate()} de ${MONTH_NAMES[day.date.getMonth()]}`,
|
|
2378
2677
|
"aria-current": day.isToday ? "date" : void 0,
|
|
2379
2678
|
tabIndex: 0,
|
|
2380
|
-
children: /* @__PURE__ */
|
|
2679
|
+
children: /* @__PURE__ */ jsx21("span", { className: spanClass, children: day.date.getDate() })
|
|
2381
2680
|
}
|
|
2382
2681
|
)
|
|
2383
2682
|
},
|
|
@@ -2386,28 +2685,28 @@ var Calendar = ({
|
|
|
2386
2685
|
}) })
|
|
2387
2686
|
] });
|
|
2388
2687
|
}
|
|
2389
|
-
return /* @__PURE__ */
|
|
2390
|
-
/* @__PURE__ */
|
|
2391
|
-
/* @__PURE__ */
|
|
2392
|
-
/* @__PURE__ */
|
|
2688
|
+
return /* @__PURE__ */ jsxs16("div", { className: `bg-background rounded-xl p-4 ${className}`, children: [
|
|
2689
|
+
/* @__PURE__ */ jsxs16("div", { className: "flex items-center justify-between mb-3.5", children: [
|
|
2690
|
+
/* @__PURE__ */ jsxs16("div", { className: "relative", ref: monthPickerContainerRef, children: [
|
|
2691
|
+
/* @__PURE__ */ jsxs16(
|
|
2393
2692
|
"button",
|
|
2394
2693
|
{
|
|
2395
2694
|
onClick: toggleMonthPicker,
|
|
2396
2695
|
className: "flex items-center gap-2 hover:bg-background-100 rounded px-2 py-1 transition-colors",
|
|
2397
2696
|
children: [
|
|
2398
|
-
/* @__PURE__ */
|
|
2697
|
+
/* @__PURE__ */ jsxs16("h2", { className: "text-lg font-semibold text-text-950", children: [
|
|
2399
2698
|
MONTH_NAMES[currentDate.getMonth()],
|
|
2400
2699
|
" ",
|
|
2401
2700
|
currentDate.getFullYear()
|
|
2402
2701
|
] }),
|
|
2403
|
-
/* @__PURE__ */
|
|
2702
|
+
/* @__PURE__ */ jsx21(
|
|
2404
2703
|
"svg",
|
|
2405
2704
|
{
|
|
2406
2705
|
className: `w-4 h-4 text-text-400 transition-transform ${isMonthPickerOpen ? "rotate-180" : ""}`,
|
|
2407
2706
|
fill: "none",
|
|
2408
2707
|
stroke: "currentColor",
|
|
2409
2708
|
viewBox: "0 0 24 24",
|
|
2410
|
-
children: /* @__PURE__ */
|
|
2709
|
+
children: /* @__PURE__ */ jsx21(
|
|
2411
2710
|
"path",
|
|
2412
2711
|
{
|
|
2413
2712
|
strokeLinecap: "round",
|
|
@@ -2421,7 +2720,7 @@ var Calendar = ({
|
|
|
2421
2720
|
]
|
|
2422
2721
|
}
|
|
2423
2722
|
),
|
|
2424
|
-
isMonthPickerOpen && /* @__PURE__ */
|
|
2723
|
+
isMonthPickerOpen && /* @__PURE__ */ jsx21(
|
|
2425
2724
|
MonthYearPicker,
|
|
2426
2725
|
{
|
|
2427
2726
|
monthPickerRef,
|
|
@@ -2432,21 +2731,21 @@ var Calendar = ({
|
|
|
2432
2731
|
}
|
|
2433
2732
|
)
|
|
2434
2733
|
] }),
|
|
2435
|
-
/* @__PURE__ */
|
|
2436
|
-
/* @__PURE__ */
|
|
2734
|
+
/* @__PURE__ */ jsxs16("div", { className: "flex items-center gap-1", children: [
|
|
2735
|
+
/* @__PURE__ */ jsx21(
|
|
2437
2736
|
"button",
|
|
2438
2737
|
{
|
|
2439
2738
|
onClick: goToPreviousMonth,
|
|
2440
2739
|
className: "p-1 rounded-md hover:bg-background-100 transition-colors",
|
|
2441
2740
|
"aria-label": "M\xEAs anterior",
|
|
2442
|
-
children: /* @__PURE__ */
|
|
2741
|
+
children: /* @__PURE__ */ jsx21(
|
|
2443
2742
|
"svg",
|
|
2444
2743
|
{
|
|
2445
2744
|
className: "w-6 h-6 text-primary-950",
|
|
2446
2745
|
fill: "none",
|
|
2447
2746
|
stroke: "currentColor",
|
|
2448
2747
|
viewBox: "0 0 24 24",
|
|
2449
|
-
children: /* @__PURE__ */
|
|
2748
|
+
children: /* @__PURE__ */ jsx21(
|
|
2450
2749
|
"path",
|
|
2451
2750
|
{
|
|
2452
2751
|
strokeLinecap: "round",
|
|
@@ -2459,20 +2758,20 @@ var Calendar = ({
|
|
|
2459
2758
|
)
|
|
2460
2759
|
}
|
|
2461
2760
|
),
|
|
2462
|
-
/* @__PURE__ */
|
|
2761
|
+
/* @__PURE__ */ jsx21(
|
|
2463
2762
|
"button",
|
|
2464
2763
|
{
|
|
2465
2764
|
onClick: goToNextMonth,
|
|
2466
2765
|
className: "p-1 rounded-md hover:bg-background-100 transition-colors",
|
|
2467
2766
|
"aria-label": "Pr\xF3ximo m\xEAs",
|
|
2468
|
-
children: /* @__PURE__ */
|
|
2767
|
+
children: /* @__PURE__ */ jsx21(
|
|
2469
2768
|
"svg",
|
|
2470
2769
|
{
|
|
2471
2770
|
className: "w-6 h-6 text-primary-950",
|
|
2472
2771
|
fill: "none",
|
|
2473
2772
|
stroke: "currentColor",
|
|
2474
2773
|
viewBox: "0 0 24 24",
|
|
2475
|
-
children: /* @__PURE__ */
|
|
2774
|
+
children: /* @__PURE__ */ jsx21(
|
|
2476
2775
|
"path",
|
|
2477
2776
|
{
|
|
2478
2777
|
strokeLinecap: "round",
|
|
@@ -2487,7 +2786,7 @@ var Calendar = ({
|
|
|
2487
2786
|
)
|
|
2488
2787
|
] })
|
|
2489
2788
|
] }),
|
|
2490
|
-
/* @__PURE__ */
|
|
2789
|
+
/* @__PURE__ */ jsx21("div", { className: "grid grid-cols-7 gap-1 mb-2", children: WEEK_DAYS.map((day) => /* @__PURE__ */ jsx21(
|
|
2491
2790
|
"div",
|
|
2492
2791
|
{
|
|
2493
2792
|
className: "h-4 flex items-center justify-center text-xs font-semibold text-text-500",
|
|
@@ -2495,13 +2794,13 @@ var Calendar = ({
|
|
|
2495
2794
|
},
|
|
2496
2795
|
day
|
|
2497
2796
|
)) }),
|
|
2498
|
-
/* @__PURE__ */
|
|
2797
|
+
/* @__PURE__ */ jsx21("div", { className: "grid grid-cols-7 gap-1", children: calendarData.map((day) => {
|
|
2499
2798
|
if (!day.isCurrentMonth) {
|
|
2500
|
-
return /* @__PURE__ */
|
|
2799
|
+
return /* @__PURE__ */ jsx21(
|
|
2501
2800
|
"div",
|
|
2502
2801
|
{
|
|
2503
2802
|
className: "flex items-center justify-center",
|
|
2504
|
-
children: /* @__PURE__ */
|
|
2803
|
+
children: /* @__PURE__ */ jsx21("div", { className: "w-10 h-10" })
|
|
2505
2804
|
},
|
|
2506
2805
|
day.date.getTime()
|
|
2507
2806
|
);
|
|
@@ -2511,11 +2810,11 @@ var Calendar = ({
|
|
|
2511
2810
|
variant,
|
|
2512
2811
|
showActivities
|
|
2513
2812
|
);
|
|
2514
|
-
return /* @__PURE__ */
|
|
2813
|
+
return /* @__PURE__ */ jsx21(
|
|
2515
2814
|
"div",
|
|
2516
2815
|
{
|
|
2517
2816
|
className: "flex items-center justify-center",
|
|
2518
|
-
children: /* @__PURE__ */
|
|
2817
|
+
children: /* @__PURE__ */ jsx21(
|
|
2519
2818
|
"button",
|
|
2520
2819
|
{
|
|
2521
2820
|
className: `
|
|
@@ -2546,8 +2845,8 @@ var Calendar_default = Calendar;
|
|
|
2546
2845
|
// src/components/Modal/Modal.tsx
|
|
2547
2846
|
import { useEffect as useEffect2 } from "react";
|
|
2548
2847
|
import { X as X2 } from "phosphor-react";
|
|
2549
|
-
import { jsx as
|
|
2550
|
-
var
|
|
2848
|
+
import { jsx as jsx22, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
2849
|
+
var SIZE_CLASSES10 = {
|
|
2551
2850
|
xs: "max-w-[360px]",
|
|
2552
2851
|
sm: "max-w-[420px]",
|
|
2553
2852
|
md: "max-w-[510px]",
|
|
@@ -2598,10 +2897,10 @@ var Modal = ({
|
|
|
2598
2897
|
}
|
|
2599
2898
|
};
|
|
2600
2899
|
if (!isOpen) return null;
|
|
2601
|
-
const sizeClasses =
|
|
2900
|
+
const sizeClasses = SIZE_CLASSES10[size];
|
|
2602
2901
|
const baseClasses = "bg-background rounded-3xl shadow-hard-shadow-2 border border-border-100 w-full mx-4";
|
|
2603
2902
|
const modalClasses = `${baseClasses} ${sizeClasses} ${className}`;
|
|
2604
|
-
return /* @__PURE__ */
|
|
2903
|
+
return /* @__PURE__ */ jsx22(
|
|
2605
2904
|
"div",
|
|
2606
2905
|
{
|
|
2607
2906
|
className: "fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-xs",
|
|
@@ -2609,7 +2908,7 @@ var Modal = ({
|
|
|
2609
2908
|
onKeyDown: handleBackdropKeyDown,
|
|
2610
2909
|
role: "none",
|
|
2611
2910
|
"aria-hidden": "true",
|
|
2612
|
-
children: /* @__PURE__ */
|
|
2911
|
+
children: /* @__PURE__ */ jsxs17(
|
|
2613
2912
|
"div",
|
|
2614
2913
|
{
|
|
2615
2914
|
className: modalClasses,
|
|
@@ -2617,20 +2916,20 @@ var Modal = ({
|
|
|
2617
2916
|
"aria-modal": "true",
|
|
2618
2917
|
"aria-labelledby": "modal-title",
|
|
2619
2918
|
children: [
|
|
2620
|
-
/* @__PURE__ */
|
|
2621
|
-
/* @__PURE__ */
|
|
2622
|
-
!hideCloseButton && /* @__PURE__ */
|
|
2919
|
+
/* @__PURE__ */ jsxs17("div", { className: "flex items-center justify-between px-6 py-6", children: [
|
|
2920
|
+
/* @__PURE__ */ jsx22("h2", { id: "modal-title", className: "text-lg font-semibold text-text-950", children: title }),
|
|
2921
|
+
!hideCloseButton && /* @__PURE__ */ jsx22(
|
|
2623
2922
|
"button",
|
|
2624
2923
|
{
|
|
2625
2924
|
onClick: onClose,
|
|
2626
2925
|
className: "p-1 text-text-500 hover:text-text-700 hover:bg-background-50 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-indicator-info focus:ring-offset-2",
|
|
2627
2926
|
"aria-label": "Fechar modal",
|
|
2628
|
-
children: /* @__PURE__ */
|
|
2927
|
+
children: /* @__PURE__ */ jsx22(X2, { size: 18 })
|
|
2629
2928
|
}
|
|
2630
2929
|
)
|
|
2631
2930
|
] }),
|
|
2632
|
-
/* @__PURE__ */
|
|
2633
|
-
footer && /* @__PURE__ */
|
|
2931
|
+
/* @__PURE__ */ jsx22("div", { className: "px-6 pb-6", children: /* @__PURE__ */ jsx22("div", { className: "text-text-500 font-normal text-sm leading-6", children }) }),
|
|
2932
|
+
footer && /* @__PURE__ */ jsx22("div", { className: "flex justify-end gap-3 px-6 pb-6", children: footer })
|
|
2634
2933
|
]
|
|
2635
2934
|
}
|
|
2636
2935
|
)
|
|
@@ -2651,7 +2950,7 @@ import {
|
|
|
2651
2950
|
useState as useState6
|
|
2652
2951
|
} from "react";
|
|
2653
2952
|
import { create as create2, useStore } from "zustand";
|
|
2654
|
-
import { jsx as
|
|
2953
|
+
import { jsx as jsx23, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
2655
2954
|
function createDropdownStore() {
|
|
2656
2955
|
return create2((set) => ({
|
|
2657
2956
|
open: false,
|
|
@@ -2746,7 +3045,7 @@ var DropdownMenu = ({
|
|
|
2746
3045
|
setOpen(propOpen);
|
|
2747
3046
|
}
|
|
2748
3047
|
}, [propOpen]);
|
|
2749
|
-
return /* @__PURE__ */
|
|
3048
|
+
return /* @__PURE__ */ jsx23("div", { className: "relative", ref: menuRef, children: injectStore(children, store) });
|
|
2750
3049
|
};
|
|
2751
3050
|
var DropdownMenuTrigger = ({
|
|
2752
3051
|
className,
|
|
@@ -2758,7 +3057,7 @@ var DropdownMenuTrigger = ({
|
|
|
2758
3057
|
const store = useDropdownStore(externalStore);
|
|
2759
3058
|
const open = useStore(store, (s) => s.open);
|
|
2760
3059
|
const toggleOpen = () => store.setState({ open: !open });
|
|
2761
|
-
return /* @__PURE__ */
|
|
3060
|
+
return /* @__PURE__ */ jsx23(
|
|
2762
3061
|
Button_default,
|
|
2763
3062
|
{
|
|
2764
3063
|
variant: "outline",
|
|
@@ -2795,7 +3094,7 @@ var MENUCONTENT_VARIANT_CLASSES = {
|
|
|
2795
3094
|
profile: "p-6"
|
|
2796
3095
|
};
|
|
2797
3096
|
var MenuLabel = forwardRef9(({ className, inset, store: _store, ...props }, ref) => {
|
|
2798
|
-
return /* @__PURE__ */
|
|
3097
|
+
return /* @__PURE__ */ jsx23(
|
|
2799
3098
|
"div",
|
|
2800
3099
|
{
|
|
2801
3100
|
ref,
|
|
@@ -2834,7 +3133,7 @@ var MenuContent = forwardRef9(
|
|
|
2834
3133
|
return `absolute ${vertical} ${horizontal}`;
|
|
2835
3134
|
};
|
|
2836
3135
|
const variantClasses = MENUCONTENT_VARIANT_CLASSES[variant];
|
|
2837
|
-
return /* @__PURE__ */
|
|
3136
|
+
return /* @__PURE__ */ jsx23(
|
|
2838
3137
|
"div",
|
|
2839
3138
|
{
|
|
2840
3139
|
ref,
|
|
@@ -2893,7 +3192,7 @@ var DropdownMenuItem = forwardRef9(
|
|
|
2893
3192
|
const getVariantProps = () => {
|
|
2894
3193
|
return variant === "profile" ? { "data-variant": "profile" } : {};
|
|
2895
3194
|
};
|
|
2896
|
-
return /* @__PURE__ */
|
|
3195
|
+
return /* @__PURE__ */ jsxs18(
|
|
2897
3196
|
"div",
|
|
2898
3197
|
{
|
|
2899
3198
|
ref,
|
|
@@ -2915,7 +3214,7 @@ var DropdownMenuItem = forwardRef9(
|
|
|
2915
3214
|
...props,
|
|
2916
3215
|
children: [
|
|
2917
3216
|
iconLeft,
|
|
2918
|
-
/* @__PURE__ */
|
|
3217
|
+
/* @__PURE__ */ jsx23("span", { className: "w-full text-md", children }),
|
|
2919
3218
|
iconRight
|
|
2920
3219
|
]
|
|
2921
3220
|
}
|
|
@@ -2923,7 +3222,7 @@ var DropdownMenuItem = forwardRef9(
|
|
|
2923
3222
|
}
|
|
2924
3223
|
);
|
|
2925
3224
|
DropdownMenuItem.displayName = "DropdownMenuItem";
|
|
2926
|
-
var DropdownMenuSeparator = forwardRef9(({ className, store: _store, ...props }, ref) => /* @__PURE__ */
|
|
3225
|
+
var DropdownMenuSeparator = forwardRef9(({ className, store: _store, ...props }, ref) => /* @__PURE__ */ jsx23(
|
|
2927
3226
|
"div",
|
|
2928
3227
|
{
|
|
2929
3228
|
ref,
|
|
@@ -2936,7 +3235,7 @@ var ProfileMenuTrigger = forwardRef9(({ className, onClick, store: externalStore
|
|
|
2936
3235
|
const store = useDropdownStore(externalStore);
|
|
2937
3236
|
const open = useStore(store, (s) => s.open);
|
|
2938
3237
|
const toggleOpen = () => store.setState({ open: !open });
|
|
2939
|
-
return /* @__PURE__ */
|
|
3238
|
+
return /* @__PURE__ */ jsx23(
|
|
2940
3239
|
"button",
|
|
2941
3240
|
{
|
|
2942
3241
|
ref,
|
|
@@ -2948,13 +3247,13 @@ var ProfileMenuTrigger = forwardRef9(({ className, onClick, store: externalStore
|
|
|
2948
3247
|
},
|
|
2949
3248
|
"aria-expanded": open,
|
|
2950
3249
|
...props,
|
|
2951
|
-
children: /* @__PURE__ */
|
|
3250
|
+
children: /* @__PURE__ */ jsx23("span", { className: "size-6 rounded-full bg-background-100 flex items-center justify-center", children: /* @__PURE__ */ jsx23(User, { className: "text-background-950", size: 18 }) })
|
|
2952
3251
|
}
|
|
2953
3252
|
);
|
|
2954
3253
|
});
|
|
2955
3254
|
ProfileMenuTrigger.displayName = "ProfileMenuTrigger";
|
|
2956
3255
|
var ProfileMenuHeader = forwardRef9(({ className, name, email, store: _store, ...props }, ref) => {
|
|
2957
|
-
return /* @__PURE__ */
|
|
3256
|
+
return /* @__PURE__ */ jsxs18(
|
|
2958
3257
|
"div",
|
|
2959
3258
|
{
|
|
2960
3259
|
ref,
|
|
@@ -2965,10 +3264,10 @@ var ProfileMenuHeader = forwardRef9(({ className, name, email, store: _store, ..
|
|
|
2965
3264
|
`,
|
|
2966
3265
|
...props,
|
|
2967
3266
|
children: [
|
|
2968
|
-
/* @__PURE__ */
|
|
2969
|
-
/* @__PURE__ */
|
|
2970
|
-
/* @__PURE__ */
|
|
2971
|
-
/* @__PURE__ */
|
|
3267
|
+
/* @__PURE__ */ jsx23("span", { className: "size-16 bg-background-100 rounded-full flex items-center justify-center", children: /* @__PURE__ */ jsx23(User, { size: 34, className: "text-background-950" }) }),
|
|
3268
|
+
/* @__PURE__ */ jsxs18("div", { className: "flex flex-col ", children: [
|
|
3269
|
+
/* @__PURE__ */ jsx23("p", { className: "text-xl font-bold text-text-950", children: name }),
|
|
3270
|
+
/* @__PURE__ */ jsx23("p", { className: "text-md text-text-600", children: email })
|
|
2972
3271
|
] })
|
|
2973
3272
|
]
|
|
2974
3273
|
}
|
|
@@ -2976,7 +3275,7 @@ var ProfileMenuHeader = forwardRef9(({ className, name, email, store: _store, ..
|
|
|
2976
3275
|
});
|
|
2977
3276
|
ProfileMenuHeader.displayName = "ProfileMenuHeader";
|
|
2978
3277
|
var ProfileMenuSection = forwardRef9(({ className, children, store: _store, ...props }, ref) => {
|
|
2979
|
-
return /* @__PURE__ */
|
|
3278
|
+
return /* @__PURE__ */ jsx23(
|
|
2980
3279
|
"div",
|
|
2981
3280
|
{
|
|
2982
3281
|
ref,
|
|
@@ -2999,7 +3298,7 @@ var ProfileMenuFooter = ({
|
|
|
2999
3298
|
}) => {
|
|
3000
3299
|
const store = useDropdownStore(externalStore);
|
|
3001
3300
|
const setOpen = useStore(store, (s) => s.setOpen);
|
|
3002
|
-
return /* @__PURE__ */
|
|
3301
|
+
return /* @__PURE__ */ jsxs18(
|
|
3003
3302
|
Button_default,
|
|
3004
3303
|
{
|
|
3005
3304
|
variant: "outline",
|
|
@@ -3011,8 +3310,8 @@ var ProfileMenuFooter = ({
|
|
|
3011
3310
|
},
|
|
3012
3311
|
...props,
|
|
3013
3312
|
children: [
|
|
3014
|
-
/* @__PURE__ */
|
|
3015
|
-
/* @__PURE__ */
|
|
3313
|
+
/* @__PURE__ */ jsx23("span", { className: "mr-2 flex items-center", children: /* @__PURE__ */ jsx23(SignOut, {}) }),
|
|
3314
|
+
/* @__PURE__ */ jsx23("span", { children: "Sair" })
|
|
3016
3315
|
]
|
|
3017
3316
|
}
|
|
3018
3317
|
);
|
|
@@ -3030,14 +3329,14 @@ import {
|
|
|
3030
3329
|
Children as Children2,
|
|
3031
3330
|
cloneElement as cloneElement2
|
|
3032
3331
|
} from "react";
|
|
3033
|
-
import { CaretDown, Check as
|
|
3034
|
-
import { Fragment as Fragment3, jsx as
|
|
3332
|
+
import { CaretDown, Check as Check4 } from "phosphor-react";
|
|
3333
|
+
import { Fragment as Fragment3, jsx as jsx24, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
3035
3334
|
var VARIANT_CLASSES4 = {
|
|
3036
3335
|
outlined: "border-2 rounded-sm focus:border-primary-950",
|
|
3037
3336
|
underlined: "border-b-2 focus:border-primary-950",
|
|
3038
3337
|
rounded: "border-2 rounded-4xl focus:border-primary-950"
|
|
3039
3338
|
};
|
|
3040
|
-
var
|
|
3339
|
+
var SIZE_CLASSES11 = {
|
|
3041
3340
|
small: "text-sm",
|
|
3042
3341
|
medium: "text-md",
|
|
3043
3342
|
large: "text-lg"
|
|
@@ -3077,7 +3376,7 @@ function getLabelAsNode(children) {
|
|
|
3077
3376
|
}
|
|
3078
3377
|
const flattened = Children2.toArray(children);
|
|
3079
3378
|
if (flattened.length === 1) return flattened[0];
|
|
3080
|
-
return /* @__PURE__ */
|
|
3379
|
+
return /* @__PURE__ */ jsx24(Fragment3, { children: flattened });
|
|
3081
3380
|
}
|
|
3082
3381
|
var injectStore2 = (children, store) => {
|
|
3083
3382
|
return Children2.map(children, (child) => {
|
|
@@ -3178,8 +3477,8 @@ var Select = ({
|
|
|
3178
3477
|
if (label) store.setState({ selectedLabel: label });
|
|
3179
3478
|
}
|
|
3180
3479
|
}, [propValue]);
|
|
3181
|
-
const sizeClasses =
|
|
3182
|
-
return /* @__PURE__ */
|
|
3480
|
+
const sizeClasses = SIZE_CLASSES11[size];
|
|
3481
|
+
return /* @__PURE__ */ jsx24("div", { className: `relative ${sizeClasses} w-[288px]`, ref: selectRef, children: injectStore2(children, store) });
|
|
3183
3482
|
};
|
|
3184
3483
|
var SelectValue = ({
|
|
3185
3484
|
placeholder,
|
|
@@ -3188,7 +3487,7 @@ var SelectValue = ({
|
|
|
3188
3487
|
const store = useSelectStore(externalStore);
|
|
3189
3488
|
const selectedLabel = useStore2(store, (s) => s.selectedLabel);
|
|
3190
3489
|
const value = useStore2(store, (s) => s.value);
|
|
3191
|
-
return /* @__PURE__ */
|
|
3490
|
+
return /* @__PURE__ */ jsx24("span", { className: "text-inherit", children: selectedLabel || placeholder || value });
|
|
3192
3491
|
};
|
|
3193
3492
|
var SelectTrigger = forwardRef10(
|
|
3194
3493
|
({
|
|
@@ -3203,7 +3502,7 @@ var SelectTrigger = forwardRef10(
|
|
|
3203
3502
|
const open = useStore2(store, (s) => s.open);
|
|
3204
3503
|
const toggleOpen = () => store.setState({ open: !open });
|
|
3205
3504
|
const variantClasses = VARIANT_CLASSES4[variant];
|
|
3206
|
-
return /* @__PURE__ */
|
|
3505
|
+
return /* @__PURE__ */ jsxs19(
|
|
3207
3506
|
"button",
|
|
3208
3507
|
{
|
|
3209
3508
|
ref,
|
|
@@ -3222,7 +3521,7 @@ var SelectTrigger = forwardRef10(
|
|
|
3222
3521
|
...props,
|
|
3223
3522
|
children: [
|
|
3224
3523
|
props.children,
|
|
3225
|
-
/* @__PURE__ */
|
|
3524
|
+
/* @__PURE__ */ jsx24(
|
|
3226
3525
|
CaretDown,
|
|
3227
3526
|
{
|
|
3228
3527
|
className: `h-[1em] w-[1em] opacity-50 transition-transform ${open ? "rotate-180" : ""}`
|
|
@@ -3247,7 +3546,7 @@ var SelectContent = forwardRef10(
|
|
|
3247
3546
|
const open = useStore2(store, (s) => s.open);
|
|
3248
3547
|
if (!open) return null;
|
|
3249
3548
|
const getPositionClasses = () => `w-full min-w-full absolute ${SIDE_CLASSES2[side]} ${ALIGN_CLASSES2[align]}`;
|
|
3250
|
-
return /* @__PURE__ */
|
|
3549
|
+
return /* @__PURE__ */ jsx24(
|
|
3251
3550
|
"div",
|
|
3252
3551
|
{
|
|
3253
3552
|
role: "menu",
|
|
@@ -3285,7 +3584,7 @@ var SelectItem = forwardRef10(
|
|
|
3285
3584
|
}
|
|
3286
3585
|
props.onClick?.(e);
|
|
3287
3586
|
};
|
|
3288
|
-
return /* @__PURE__ */
|
|
3587
|
+
return /* @__PURE__ */ jsxs19(
|
|
3289
3588
|
"div",
|
|
3290
3589
|
{
|
|
3291
3590
|
role: "menuitem",
|
|
@@ -3305,7 +3604,7 @@ var SelectItem = forwardRef10(
|
|
|
3305
3604
|
tabIndex: disabled ? -1 : 0,
|
|
3306
3605
|
...props,
|
|
3307
3606
|
children: [
|
|
3308
|
-
/* @__PURE__ */
|
|
3607
|
+
/* @__PURE__ */ jsx24("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: selectedValue === value && /* @__PURE__ */ jsx24(Check4, { className: "" }) }),
|
|
3309
3608
|
children
|
|
3310
3609
|
]
|
|
3311
3610
|
}
|
|
@@ -3327,7 +3626,7 @@ import {
|
|
|
3327
3626
|
useState as useState7
|
|
3328
3627
|
} from "react";
|
|
3329
3628
|
import { CaretLeft, CaretRight } from "phosphor-react";
|
|
3330
|
-
import { jsx as
|
|
3629
|
+
import { jsx as jsx25, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
3331
3630
|
var createMenuStore = () => create4((set) => ({
|
|
3332
3631
|
value: "",
|
|
3333
3632
|
setValue: (value) => set({ value })
|
|
@@ -3363,7 +3662,7 @@ var Menu = forwardRef11(
|
|
|
3363
3662
|
}, [value, onValueChange]);
|
|
3364
3663
|
const baseClasses = "w-full flex flex-row items-center gap-2 py-2 px-6";
|
|
3365
3664
|
const variantClasses = VARIANT_CLASSES5[variant];
|
|
3366
|
-
return /* @__PURE__ */
|
|
3665
|
+
return /* @__PURE__ */ jsx25(
|
|
3367
3666
|
"ul",
|
|
3368
3667
|
{
|
|
3369
3668
|
ref,
|
|
@@ -3408,7 +3707,7 @@ var MenuItem = forwardRef11(
|
|
|
3408
3707
|
...props
|
|
3409
3708
|
};
|
|
3410
3709
|
const variants = {
|
|
3411
|
-
menu: /* @__PURE__ */
|
|
3710
|
+
menu: /* @__PURE__ */ jsx25(
|
|
3412
3711
|
"li",
|
|
3413
3712
|
{
|
|
3414
3713
|
"data-variant": "menu",
|
|
@@ -3423,7 +3722,7 @@ var MenuItem = forwardRef11(
|
|
|
3423
3722
|
children
|
|
3424
3723
|
}
|
|
3425
3724
|
),
|
|
3426
|
-
menu2: /* @__PURE__ */
|
|
3725
|
+
menu2: /* @__PURE__ */ jsx25(
|
|
3427
3726
|
"li",
|
|
3428
3727
|
{
|
|
3429
3728
|
"data-variant": "menu2",
|
|
@@ -3435,7 +3734,7 @@ var MenuItem = forwardRef11(
|
|
|
3435
3734
|
children
|
|
3436
3735
|
}
|
|
3437
3736
|
),
|
|
3438
|
-
breadcrumb: /* @__PURE__ */
|
|
3737
|
+
breadcrumb: /* @__PURE__ */ jsx25(
|
|
3439
3738
|
"li",
|
|
3440
3739
|
{
|
|
3441
3740
|
"data-variant": "breadcrumb",
|
|
@@ -3446,7 +3745,7 @@ var MenuItem = forwardRef11(
|
|
|
3446
3745
|
${className ?? ""}
|
|
3447
3746
|
`,
|
|
3448
3747
|
...commonProps,
|
|
3449
|
-
children: /* @__PURE__ */
|
|
3748
|
+
children: /* @__PURE__ */ jsx25(
|
|
3450
3749
|
"span",
|
|
3451
3750
|
{
|
|
3452
3751
|
className: `
|
|
@@ -3464,14 +3763,14 @@ var MenuItem = forwardRef11(
|
|
|
3464
3763
|
);
|
|
3465
3764
|
MenuItem.displayName = "MenuItem";
|
|
3466
3765
|
var MenuSeparator = forwardRef11(
|
|
3467
|
-
({ className, children, ...props }, ref) => /* @__PURE__ */
|
|
3766
|
+
({ className, children, ...props }, ref) => /* @__PURE__ */ jsx25(
|
|
3468
3767
|
"li",
|
|
3469
3768
|
{
|
|
3470
3769
|
ref,
|
|
3471
3770
|
"aria-hidden": "true",
|
|
3472
3771
|
className: `[&>svg]:w-4 [&>svg]:h-4 text-text-600 ${className ?? ""}`,
|
|
3473
3772
|
...props,
|
|
3474
|
-
children: children ?? /* @__PURE__ */
|
|
3773
|
+
children: children ?? /* @__PURE__ */ jsx25(CaretRight, {})
|
|
3475
3774
|
}
|
|
3476
3775
|
)
|
|
3477
3776
|
);
|
|
@@ -3486,11 +3785,426 @@ var injectStore3 = (children, store) => Children3.map(children, (child) => {
|
|
|
3486
3785
|
});
|
|
3487
3786
|
});
|
|
3488
3787
|
var Menu_default = Menu;
|
|
3788
|
+
|
|
3789
|
+
// src/components/Card/Card.tsx
|
|
3790
|
+
import { forwardRef as forwardRef12, Fragment as Fragment4 } from "react";
|
|
3791
|
+
import { CaretRight as CaretRight2, CheckCircle as CheckCircle3, XCircle as XCircle2 } from "phosphor-react";
|
|
3792
|
+
import { Fragment as Fragment5, jsx as jsx26, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
3793
|
+
var ACTION_CARD_CLASSES = {
|
|
3794
|
+
warning: "bg-warning-background",
|
|
3795
|
+
success: "bg-success-300",
|
|
3796
|
+
error: "bg-error-100",
|
|
3797
|
+
info: "bg-info-background"
|
|
3798
|
+
};
|
|
3799
|
+
var ACTION_ICON_CLASSES = {
|
|
3800
|
+
warning: "bg-warning-300 text-text",
|
|
3801
|
+
success: "bg-yellow-300 text-text-950",
|
|
3802
|
+
error: "bg-error-500 text-text",
|
|
3803
|
+
info: "bg-info-500 text-text"
|
|
3804
|
+
};
|
|
3805
|
+
var ACTION_SUBTITLE_CLASSES = {
|
|
3806
|
+
warning: "text-warning-600",
|
|
3807
|
+
success: "text-success-700",
|
|
3808
|
+
error: "text-error-700",
|
|
3809
|
+
info: "text-info-700"
|
|
3810
|
+
};
|
|
3811
|
+
var ACTION_HEADER_CLASSES = {
|
|
3812
|
+
warning: "text-warning-300",
|
|
3813
|
+
success: "text-success-300",
|
|
3814
|
+
error: "text-error-300",
|
|
3815
|
+
info: "text-info-300"
|
|
3816
|
+
};
|
|
3817
|
+
var CardActivesResults = forwardRef12(
|
|
3818
|
+
({
|
|
3819
|
+
icon,
|
|
3820
|
+
title,
|
|
3821
|
+
subTitle,
|
|
3822
|
+
header,
|
|
3823
|
+
extended = false,
|
|
3824
|
+
action = "success",
|
|
3825
|
+
description,
|
|
3826
|
+
className,
|
|
3827
|
+
...props
|
|
3828
|
+
}, ref) => {
|
|
3829
|
+
const actionCardClasses = ACTION_CARD_CLASSES[action];
|
|
3830
|
+
const actionIconClasses = ACTION_ICON_CLASSES[action];
|
|
3831
|
+
const actionSubTitleClasses = ACTION_SUBTITLE_CLASSES[action];
|
|
3832
|
+
const actionHeaderClasses = ACTION_HEADER_CLASSES[action];
|
|
3833
|
+
return /* @__PURE__ */ jsxs21(
|
|
3834
|
+
"div",
|
|
3835
|
+
{
|
|
3836
|
+
ref,
|
|
3837
|
+
className: `w-full flex flex-col border border-border-50 bg-background rounded-xl ${className}`,
|
|
3838
|
+
...props,
|
|
3839
|
+
children: [
|
|
3840
|
+
/* @__PURE__ */ jsxs21(
|
|
3841
|
+
"div",
|
|
3842
|
+
{
|
|
3843
|
+
className: `
|
|
3844
|
+
flex flex-col gap-1 items-center justify-center p-4
|
|
3845
|
+
${actionCardClasses}
|
|
3846
|
+
${extended ? "rounded-t-xl" : "rounded-xl"}`,
|
|
3847
|
+
children: [
|
|
3848
|
+
/* @__PURE__ */ jsx26(
|
|
3849
|
+
"span",
|
|
3850
|
+
{
|
|
3851
|
+
className: `size-7.5 rounded-full flex items-center justify-center ${actionIconClasses}`,
|
|
3852
|
+
children: icon
|
|
3853
|
+
}
|
|
3854
|
+
),
|
|
3855
|
+
/* @__PURE__ */ jsx26("p", { className: "text-text-800 font-medium uppercase text-2xs", children: title }),
|
|
3856
|
+
/* @__PURE__ */ jsx26("p", { className: `text-lg font-bold ${actionSubTitleClasses}`, children: subTitle })
|
|
3857
|
+
]
|
|
3858
|
+
}
|
|
3859
|
+
),
|
|
3860
|
+
extended && /* @__PURE__ */ jsxs21("div", { className: "flex flex-col items-center gap-2.5 pb-9.5 pt-2.5", children: [
|
|
3861
|
+
/* @__PURE__ */ jsx26(
|
|
3862
|
+
"p",
|
|
3863
|
+
{
|
|
3864
|
+
className: `text-2xs font-medium uppercase ${actionHeaderClasses}`,
|
|
3865
|
+
children: header
|
|
3866
|
+
}
|
|
3867
|
+
),
|
|
3868
|
+
/* @__PURE__ */ jsx26("p", { className: "text-sm text-info-800 text-center", children: description })
|
|
3869
|
+
] })
|
|
3870
|
+
]
|
|
3871
|
+
}
|
|
3872
|
+
);
|
|
3873
|
+
}
|
|
3874
|
+
);
|
|
3875
|
+
var CardQuestions = forwardRef12(
|
|
3876
|
+
({
|
|
3877
|
+
header,
|
|
3878
|
+
state = "undone",
|
|
3879
|
+
className,
|
|
3880
|
+
onClickButton,
|
|
3881
|
+
valueButton,
|
|
3882
|
+
...props
|
|
3883
|
+
}, ref) => {
|
|
3884
|
+
const isDone = state === "done";
|
|
3885
|
+
const stateLabel = isDone ? "Realizado" : "N\xE3o Realizado";
|
|
3886
|
+
const buttonLabel = isDone ? "Ver Quest\xE3o" : "Responder";
|
|
3887
|
+
return /* @__PURE__ */ jsxs21(
|
|
3888
|
+
"div",
|
|
3889
|
+
{
|
|
3890
|
+
ref,
|
|
3891
|
+
className: `
|
|
3892
|
+
w-full flex flex-row justify-between rounded-xl p-4 gap-4 bg-background border border-border-50
|
|
3893
|
+
${className}
|
|
3894
|
+
`,
|
|
3895
|
+
...props,
|
|
3896
|
+
children: [
|
|
3897
|
+
/* @__PURE__ */ jsxs21("section", { className: "flex flex-col gap-1", children: [
|
|
3898
|
+
/* @__PURE__ */ jsx26("p", { className: "font-bold text-xs text-text-950", children: header }),
|
|
3899
|
+
/* @__PURE__ */ jsxs21("div", { className: "flex flex-row gap-6 items-center", children: [
|
|
3900
|
+
/* @__PURE__ */ jsx26(
|
|
3901
|
+
Badge_default,
|
|
3902
|
+
{
|
|
3903
|
+
size: "medium",
|
|
3904
|
+
variant: "solid",
|
|
3905
|
+
action: isDone ? "success" : "error",
|
|
3906
|
+
children: stateLabel
|
|
3907
|
+
}
|
|
3908
|
+
),
|
|
3909
|
+
/* @__PURE__ */ jsxs21("span", { className: "flex flex-row items-center gap-1 text-text-700 text-xs", children: [
|
|
3910
|
+
isDone ? "Nota" : "Sem nota",
|
|
3911
|
+
isDone && /* @__PURE__ */ jsx26(Badge_default, { size: "medium", action: "success", children: "00" })
|
|
3912
|
+
] })
|
|
3913
|
+
] })
|
|
3914
|
+
] }),
|
|
3915
|
+
/* @__PURE__ */ jsx26(Button_default, { size: "extra-small", onClick: () => onClickButton?.(valueButton), children: buttonLabel })
|
|
3916
|
+
]
|
|
3917
|
+
}
|
|
3918
|
+
);
|
|
3919
|
+
}
|
|
3920
|
+
);
|
|
3921
|
+
var CardProgress = forwardRef12(
|
|
3922
|
+
({
|
|
3923
|
+
header,
|
|
3924
|
+
subhead,
|
|
3925
|
+
initialDate,
|
|
3926
|
+
endDate,
|
|
3927
|
+
progress = 0,
|
|
3928
|
+
direction = "horizontal",
|
|
3929
|
+
icon,
|
|
3930
|
+
color = "#B7DFFF",
|
|
3931
|
+
className,
|
|
3932
|
+
...props
|
|
3933
|
+
}, ref) => {
|
|
3934
|
+
const isHorizontal = direction === "horizontal";
|
|
3935
|
+
const contentComponent = {
|
|
3936
|
+
horizontal: /* @__PURE__ */ jsxs21(Fragment5, { children: [
|
|
3937
|
+
/* @__PURE__ */ jsxs21("div", { className: "flex flex-row gap-6 items-center", children: [
|
|
3938
|
+
initialDate && /* @__PURE__ */ jsxs21("span", { className: "flex flex-row gap-1 items-center text-2xs", children: [
|
|
3939
|
+
/* @__PURE__ */ jsx26("p", { className: "text-text-800 font-semibold", children: "In\xEDcio" }),
|
|
3940
|
+
/* @__PURE__ */ jsx26("p", { className: "text-text-600", children: initialDate })
|
|
3941
|
+
] }),
|
|
3942
|
+
endDate && /* @__PURE__ */ jsxs21("span", { className: "flex flex-row gap-1 items-center text-2xs", children: [
|
|
3943
|
+
/* @__PURE__ */ jsx26("p", { className: "text-text-800 font-semibold", children: "Fim" }),
|
|
3944
|
+
/* @__PURE__ */ jsx26("p", { className: "text-text-600", children: endDate })
|
|
3945
|
+
] })
|
|
3946
|
+
] }),
|
|
3947
|
+
/* @__PURE__ */ jsx26(
|
|
3948
|
+
ProgressBar_default,
|
|
3949
|
+
{
|
|
3950
|
+
size: "medium",
|
|
3951
|
+
showPercentage: true,
|
|
3952
|
+
value: progress,
|
|
3953
|
+
"data-testid": "progress-bar"
|
|
3954
|
+
}
|
|
3955
|
+
)
|
|
3956
|
+
] }),
|
|
3957
|
+
vertical: /* @__PURE__ */ jsx26("p", { className: "text-sm text-text-800", children: subhead })
|
|
3958
|
+
};
|
|
3959
|
+
return /* @__PURE__ */ jsxs21(
|
|
3960
|
+
"div",
|
|
3961
|
+
{
|
|
3962
|
+
ref,
|
|
3963
|
+
className: `
|
|
3964
|
+
w-full flex border border-border-50 rounded-xl
|
|
3965
|
+
${isHorizontal ? "flex-row h-20" : "flex-col"}
|
|
3966
|
+
${className}
|
|
3967
|
+
`,
|
|
3968
|
+
...props,
|
|
3969
|
+
children: [
|
|
3970
|
+
/* @__PURE__ */ jsx26(
|
|
3971
|
+
"div",
|
|
3972
|
+
{
|
|
3973
|
+
className: `
|
|
3974
|
+
flex justify-center items-center [&>svg]:size-8 text-text-950
|
|
3975
|
+
${isHorizontal ? "w-20 h-full rounded-l-xl" : "min-h-[50px] w-full rounded-t-xl"}
|
|
3976
|
+
`,
|
|
3977
|
+
style: {
|
|
3978
|
+
backgroundColor: color
|
|
3979
|
+
},
|
|
3980
|
+
children: icon
|
|
3981
|
+
}
|
|
3982
|
+
),
|
|
3983
|
+
/* @__PURE__ */ jsxs21(
|
|
3984
|
+
"div",
|
|
3985
|
+
{
|
|
3986
|
+
className: `
|
|
3987
|
+
p-4 flex flex-col justify-between w-full h-full
|
|
3988
|
+
${!isHorizontal && "gap-4"}
|
|
3989
|
+
`,
|
|
3990
|
+
children: [
|
|
3991
|
+
/* @__PURE__ */ jsx26("p", { className: "text-xs font-bold text-text-950", children: header }),
|
|
3992
|
+
contentComponent[direction]
|
|
3993
|
+
]
|
|
3994
|
+
}
|
|
3995
|
+
)
|
|
3996
|
+
]
|
|
3997
|
+
}
|
|
3998
|
+
);
|
|
3999
|
+
}
|
|
4000
|
+
);
|
|
4001
|
+
var CardTopic = forwardRef12(
|
|
4002
|
+
({
|
|
4003
|
+
header,
|
|
4004
|
+
subHead,
|
|
4005
|
+
progress,
|
|
4006
|
+
showPercentage = false,
|
|
4007
|
+
className = "",
|
|
4008
|
+
...props
|
|
4009
|
+
}, ref) => {
|
|
4010
|
+
return /* @__PURE__ */ jsxs21(
|
|
4011
|
+
"div",
|
|
4012
|
+
{
|
|
4013
|
+
ref,
|
|
4014
|
+
className: `w-full py-2 px-4 flex flex-col justify-center gap-2 border border-border-50 rounded-xl min-h-20 ${className}`,
|
|
4015
|
+
...props,
|
|
4016
|
+
children: [
|
|
4017
|
+
subHead && /* @__PURE__ */ jsx26("span", { className: "text-text-600 text-2xs flex flex-row gap-1", children: subHead.map((text, index) => /* @__PURE__ */ jsxs21(Fragment4, { children: [
|
|
4018
|
+
/* @__PURE__ */ jsx26("p", { children: text }),
|
|
4019
|
+
index < subHead.length - 1 && /* @__PURE__ */ jsx26("p", { children: "\u2022" })
|
|
4020
|
+
] }, `${text} - ${index}`)) }),
|
|
4021
|
+
/* @__PURE__ */ jsx26("p", { className: "text-xs text-text-950 font-bold", children: header }),
|
|
4022
|
+
/* @__PURE__ */ jsx26(ProgressBar_default, { showPercentage, value: progress })
|
|
4023
|
+
]
|
|
4024
|
+
}
|
|
4025
|
+
);
|
|
4026
|
+
}
|
|
4027
|
+
);
|
|
4028
|
+
var CardPerformance = forwardRef12(
|
|
4029
|
+
({
|
|
4030
|
+
header,
|
|
4031
|
+
progress,
|
|
4032
|
+
description = "Sem dados ainda! Voc\xEA ainda n\xE3o fez um question\xE1rio neste assunto.",
|
|
4033
|
+
className = "",
|
|
4034
|
+
onClickButton,
|
|
4035
|
+
valueButton,
|
|
4036
|
+
...props
|
|
4037
|
+
}, ref) => {
|
|
4038
|
+
const hasProgress = progress !== void 0;
|
|
4039
|
+
return /* @__PURE__ */ jsxs21(
|
|
4040
|
+
"div",
|
|
4041
|
+
{
|
|
4042
|
+
ref,
|
|
4043
|
+
className: `w-full h-20.5 flex flex-row justify-between p-4 gap-2 bg-background border border-border-50 ${className}`,
|
|
4044
|
+
...props,
|
|
4045
|
+
children: [
|
|
4046
|
+
/* @__PURE__ */ jsxs21("div", { className: "w-full flex flex-col justify-between gap-2", children: [
|
|
4047
|
+
/* @__PURE__ */ jsxs21("div", { className: "flex flex-row justify-between items-center", children: [
|
|
4048
|
+
/* @__PURE__ */ jsx26("p", { className: "text-md font-bold text-text-950", children: header }),
|
|
4049
|
+
hasProgress && /* @__PURE__ */ jsx26(
|
|
4050
|
+
Button_default,
|
|
4051
|
+
{
|
|
4052
|
+
variant: "outline",
|
|
4053
|
+
size: "extra-small",
|
|
4054
|
+
onClick: () => onClickButton?.(valueButton),
|
|
4055
|
+
children: "Ver Aula"
|
|
4056
|
+
}
|
|
4057
|
+
)
|
|
4058
|
+
] }),
|
|
4059
|
+
/* @__PURE__ */ jsx26("div", { className: "w-full", children: hasProgress ? /* @__PURE__ */ jsx26(ProgressBar_default, { value: progress, label: `${progress}% corretas` }) : /* @__PURE__ */ jsx26("p", { className: "text-xs text-text-600", children: description }) })
|
|
4060
|
+
] }),
|
|
4061
|
+
!hasProgress && /* @__PURE__ */ jsx26(
|
|
4062
|
+
CaretRight2,
|
|
4063
|
+
{
|
|
4064
|
+
className: "size-4.5",
|
|
4065
|
+
"data-testid": "caret-icon",
|
|
4066
|
+
onClick: () => onClickButton?.(valueButton)
|
|
4067
|
+
}
|
|
4068
|
+
)
|
|
4069
|
+
]
|
|
4070
|
+
}
|
|
4071
|
+
);
|
|
4072
|
+
}
|
|
4073
|
+
);
|
|
4074
|
+
var CardResults = forwardRef12(
|
|
4075
|
+
({
|
|
4076
|
+
header,
|
|
4077
|
+
correct_answers,
|
|
4078
|
+
incorrect_answers,
|
|
4079
|
+
icon,
|
|
4080
|
+
direction = "col",
|
|
4081
|
+
color = "#B7DFFF",
|
|
4082
|
+
className,
|
|
4083
|
+
...props
|
|
4084
|
+
}, ref) => {
|
|
4085
|
+
const isRow = direction == "row";
|
|
4086
|
+
return /* @__PURE__ */ jsxs21(
|
|
4087
|
+
"div",
|
|
4088
|
+
{
|
|
4089
|
+
ref,
|
|
4090
|
+
className: `
|
|
4091
|
+
w-full flex border border-border-50 rounded-xl min-h-20 flex-row items-center pr-4
|
|
4092
|
+
${className}
|
|
4093
|
+
`,
|
|
4094
|
+
...props,
|
|
4095
|
+
children: [
|
|
4096
|
+
/* @__PURE__ */ jsx26(
|
|
4097
|
+
"div",
|
|
4098
|
+
{
|
|
4099
|
+
className: `
|
|
4100
|
+
flex justify-center items-center [&>svg]:size-8 text-text-950 min-w-20 max-w-20 h-full rounded-l-xl
|
|
4101
|
+
`,
|
|
4102
|
+
style: {
|
|
4103
|
+
backgroundColor: color
|
|
4104
|
+
},
|
|
4105
|
+
children: icon
|
|
4106
|
+
}
|
|
4107
|
+
),
|
|
4108
|
+
/* @__PURE__ */ jsxs21(
|
|
4109
|
+
"div",
|
|
4110
|
+
{
|
|
4111
|
+
className: `
|
|
4112
|
+
p-4 flex justify-between w-full h-full
|
|
4113
|
+
${isRow ? "flex-row items-center" : "flex-col"}
|
|
4114
|
+
`,
|
|
4115
|
+
children: [
|
|
4116
|
+
/* @__PURE__ */ jsx26("p", { className: "text-xs font-bold text-text-950", children: header }),
|
|
4117
|
+
/* @__PURE__ */ jsxs21("span", { className: "flex flex-row gap-1 items-center", children: [
|
|
4118
|
+
/* @__PURE__ */ jsxs21(
|
|
4119
|
+
Badge_default,
|
|
4120
|
+
{
|
|
4121
|
+
action: "success",
|
|
4122
|
+
variant: "solid",
|
|
4123
|
+
size: "medium",
|
|
4124
|
+
iconLeft: /* @__PURE__ */ jsx26(CheckCircle3, {}),
|
|
4125
|
+
children: [
|
|
4126
|
+
correct_answers,
|
|
4127
|
+
" Corretas"
|
|
4128
|
+
]
|
|
4129
|
+
}
|
|
4130
|
+
),
|
|
4131
|
+
/* @__PURE__ */ jsxs21(
|
|
4132
|
+
Badge_default,
|
|
4133
|
+
{
|
|
4134
|
+
action: "error",
|
|
4135
|
+
variant: "solid",
|
|
4136
|
+
size: "medium",
|
|
4137
|
+
iconLeft: /* @__PURE__ */ jsx26(XCircle2, {}),
|
|
4138
|
+
children: [
|
|
4139
|
+
incorrect_answers,
|
|
4140
|
+
" Incorretas"
|
|
4141
|
+
]
|
|
4142
|
+
}
|
|
4143
|
+
)
|
|
4144
|
+
] })
|
|
4145
|
+
]
|
|
4146
|
+
}
|
|
4147
|
+
),
|
|
4148
|
+
/* @__PURE__ */ jsx26(CaretRight2, { className: "min-w-6 min-h-6" })
|
|
4149
|
+
]
|
|
4150
|
+
}
|
|
4151
|
+
);
|
|
4152
|
+
}
|
|
4153
|
+
);
|
|
4154
|
+
var CardStatus = forwardRef12(
|
|
4155
|
+
({ header, className, status, ...props }, ref) => {
|
|
4156
|
+
return /* @__PURE__ */ jsxs21(
|
|
4157
|
+
"div",
|
|
4158
|
+
{
|
|
4159
|
+
ref,
|
|
4160
|
+
className: `
|
|
4161
|
+
w-full flex border border-border-50 rounded-xl min-h-20 flex-row items-center pr-4
|
|
4162
|
+
${className}
|
|
4163
|
+
`,
|
|
4164
|
+
...props,
|
|
4165
|
+
children: [
|
|
4166
|
+
/* @__PURE__ */ jsxs21(
|
|
4167
|
+
"div",
|
|
4168
|
+
{
|
|
4169
|
+
className: `
|
|
4170
|
+
p-4 flex justify-between w-full h-full flex-row items-center
|
|
4171
|
+
`,
|
|
4172
|
+
children: [
|
|
4173
|
+
/* @__PURE__ */ jsx26("p", { className: "text-xs font-bold text-text-950", children: header }),
|
|
4174
|
+
/* @__PURE__ */ jsxs21("span", { className: "flex flex-row gap-1 items-center", children: [
|
|
4175
|
+
/* @__PURE__ */ jsx26(
|
|
4176
|
+
Badge_default,
|
|
4177
|
+
{
|
|
4178
|
+
action: status == "correct" ? "success" : "error",
|
|
4179
|
+
variant: "solid",
|
|
4180
|
+
size: "medium",
|
|
4181
|
+
iconLeft: /* @__PURE__ */ jsx26(CheckCircle3, {}),
|
|
4182
|
+
children: status == "correct" ? "Correta" : "Incorreta"
|
|
4183
|
+
}
|
|
4184
|
+
),
|
|
4185
|
+
/* @__PURE__ */ jsx26("p", { className: "text-sm text-text-800", children: "Respondida" })
|
|
4186
|
+
] })
|
|
4187
|
+
]
|
|
4188
|
+
}
|
|
4189
|
+
),
|
|
4190
|
+
/* @__PURE__ */ jsx26(CaretRight2, { className: "min-w-6 min-h-6" })
|
|
4191
|
+
]
|
|
4192
|
+
}
|
|
4193
|
+
);
|
|
4194
|
+
}
|
|
4195
|
+
);
|
|
3489
4196
|
export {
|
|
3490
4197
|
Alert_default as Alert,
|
|
3491
4198
|
Badge_default as Badge,
|
|
3492
4199
|
Button_default as Button,
|
|
3493
4200
|
Calendar_default as Calendar,
|
|
4201
|
+
CardActivesResults,
|
|
4202
|
+
CardPerformance,
|
|
4203
|
+
CardProgress,
|
|
4204
|
+
CardQuestions,
|
|
4205
|
+
CardResults,
|
|
4206
|
+
CardStatus,
|
|
4207
|
+
CardTopic,
|
|
3494
4208
|
CheckBox_default as CheckBox,
|
|
3495
4209
|
Chips_default as Chips,
|
|
3496
4210
|
Divider_default as Divider,
|
|
@@ -3521,6 +4235,7 @@ export {
|
|
|
3521
4235
|
SelectTrigger,
|
|
3522
4236
|
SelectValue,
|
|
3523
4237
|
SelectionButton_default as SelectionButton,
|
|
4238
|
+
Stepper_default as Stepper,
|
|
3524
4239
|
Table_default as Table,
|
|
3525
4240
|
Text_default as Text,
|
|
3526
4241
|
TextArea_default as TextArea,
|