analytica-frontend-lib 1.2.35 → 1.2.37

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.
@@ -0,0 +1,76 @@
1
+ import type { BaseApiClient } from '../types/api';
2
+ import type { CategoryConfig } from '../components/CheckBoxGroup/CheckBoxGroup';
3
+ import type { KnowledgeStructureState, Bank, BankYear, KnowledgeArea } from '../types/activityFilters';
4
+ import { QUESTION_TYPE } from '../components/Quiz/useQuizStore';
5
+ /**
6
+ * Configuration options for the useActivityFiltersData hook
7
+ */
8
+ export interface UseActivityFiltersDataOptions {
9
+ /**
10
+ * Selected subjects for loading knowledge structure
11
+ */
12
+ selectedSubjects: string[];
13
+ /**
14
+ * Institution ID for loading question types (optional)
15
+ */
16
+ institutionId?: string | null;
17
+ }
18
+ /**
19
+ * Return type for the useActivityFiltersData hook
20
+ */
21
+ export interface UseActivityFiltersDataReturn {
22
+ banks: Bank[];
23
+ bankYears: BankYear[];
24
+ loadingBanks: boolean;
25
+ banksError: string | null;
26
+ loadBanks: () => Promise<void>;
27
+ knowledgeAreas: KnowledgeArea[];
28
+ loadingSubjects: boolean;
29
+ subjectsError: string | null;
30
+ loadKnowledgeAreas: () => Promise<void>;
31
+ knowledgeStructure: KnowledgeStructureState;
32
+ knowledgeCategories: CategoryConfig[];
33
+ handleCategoriesChange: (updatedCategories: CategoryConfig[]) => void;
34
+ selectedKnowledgeSummary: {
35
+ topics: string[];
36
+ subtopics: string[];
37
+ contents: string[];
38
+ };
39
+ enableSummary: boolean;
40
+ loadTopics: (subjectIds: string[]) => Promise<void>;
41
+ loadSubtopics: (topicIds: string[], options?: {
42
+ forceApi?: boolean;
43
+ }) => Promise<void>;
44
+ loadContents: (subtopicIds: string[]) => Promise<void>;
45
+ questionTypes: QUESTION_TYPE[];
46
+ loadingQuestionTypes: boolean;
47
+ questionTypesError: string | null;
48
+ loadQuestionTypes: () => Promise<void>;
49
+ }
50
+ /**
51
+ * Create an activity filters data hook with API client injection.
52
+ * @param apiClient - API client instance
53
+ */
54
+ export declare const createUseActivityFiltersData: (apiClient: BaseApiClient) => (options: UseActivityFiltersDataOptions) => UseActivityFiltersDataReturn;
55
+ /**
56
+ * Create a pre-configured activity filters data hook
57
+ * This is a convenience function that returns a hook ready to use
58
+ *
59
+ * @param apiClient - API client instance
60
+ * @returns Pre-configured useActivityFiltersData hook
61
+ *
62
+ * @example
63
+ * // In your app setup
64
+ * import { createActivityFiltersDataHook } from 'analytica-frontend-lib';
65
+ * import api from './services/api';
66
+ *
67
+ * export const useActivityFiltersData = createActivityFiltersDataHook(api);
68
+ *
69
+ * // Then use directly in components
70
+ * const { banks, knowledgeAreas, loadBanks } = useActivityFiltersData({
71
+ * selectedSubjects: [],
72
+ * institutionId: 'institution-id',
73
+ * });
74
+ */
75
+ export declare const createActivityFiltersDataHook: (apiClient: BaseApiClient) => (options: UseActivityFiltersDataOptions) => UseActivityFiltersDataReturn;
76
+ //# sourceMappingURL=useActivityFiltersData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useActivityFiltersData.d.ts","sourceRoot":"","sources":["../../src/hooks/useActivityFiltersData.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,KAAK,EAEV,uBAAuB,EACvB,IAAI,EACJ,QAAQ,EACR,aAAa,EACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AA2EhE;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAMD;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAE3C,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAG/B,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAGxC,kBAAkB,EAAE,uBAAuB,CAAC;IAC5C,mBAAmB,EAAE,cAAc,EAAE,CAAC;IACtC,sBAAsB,EAAE,CAAC,iBAAiB,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IACtE,wBAAwB,EAAE;QACxB,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;IACF,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,aAAa,EAAE,CACb,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAGvD,aAAa,EAAE,aAAa,EAAE,CAAC;IAC/B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACxC;AAsqBD;;;GAGG;AACH,eAAO,MAAM,4BAA4B,GAAI,WAAW,aAAa,MAEjE,SAAS,6BAA6B,KACrC,4BAEJ,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,6BAA6B,GAAI,WAAW,aAAa,eAzBzD,6BAA6B,KACrC,4BA0BJ,CAAC"}
@@ -0,0 +1,57 @@
1
+ import type { BaseApiClient } from '../types/api';
2
+ import type { QuestionsFilterBody, Question, Pagination } from '../types/questions';
3
+ /**
4
+ * Hook state interface
5
+ */
6
+ interface UseQuestionsListState {
7
+ questions: Question[];
8
+ pagination: Pagination | null;
9
+ loading: boolean;
10
+ loadingMore: boolean;
11
+ error: string | null;
12
+ currentFilters: Partial<QuestionsFilterBody> | null;
13
+ }
14
+ /**
15
+ * Hook return type
16
+ */
17
+ export interface UseQuestionsListReturn extends UseQuestionsListState {
18
+ fetchQuestions: (filters?: Partial<QuestionsFilterBody>, append?: boolean) => Promise<void>;
19
+ loadMore: () => Promise<void>;
20
+ reset: () => void;
21
+ }
22
+ /**
23
+ * Create a questions list hook with API client injection.
24
+ * @param apiClient - API client instance
25
+ * @returns Pre-configured useQuestionsList hook
26
+ *
27
+ * @example
28
+ * // In your app setup
29
+ * import { createUseQuestionsList } from 'analytica-frontend-lib';
30
+ * import api from './services/api';
31
+ *
32
+ * export const useQuestionsList = createUseQuestionsList(api);
33
+ *
34
+ * // Then use directly in components
35
+ * const { questions, fetchQuestions, loadMore } = useQuestionsList();
36
+ */
37
+ export declare const createUseQuestionsList: (apiClient: BaseApiClient) => () => UseQuestionsListReturn;
38
+ /**
39
+ * Create a pre-configured questions list hook
40
+ * This is a convenience function that returns a hook ready to use
41
+ *
42
+ * @param apiClient - API client instance
43
+ * @returns Pre-configured useQuestionsList hook
44
+ *
45
+ * @example
46
+ * // In your app setup
47
+ * import { createQuestionsListHook } from 'analytica-frontend-lib';
48
+ * import api from './services/api';
49
+ *
50
+ * export const useQuestionsList = createQuestionsListHook(api);
51
+ *
52
+ * // Then use directly in components
53
+ * const { questions, fetchQuestions, loadMore } = useQuestionsList();
54
+ */
55
+ export declare const createQuestionsListHook: (apiClient: BaseApiClient) => () => UseQuestionsListReturn;
56
+ export {};
57
+ //# sourceMappingURL=useQuestionsList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useQuestionsList.d.ts","sourceRoot":"","sources":["../../src/hooks/useQuestionsList.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EACV,mBAAmB,EAEnB,QAAQ,EACR,UAAU,EACX,MAAM,oBAAoB,CAAC;AAM5B;;GAEG;AACH,UAAU,qBAAqB;IAC7B,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC;CACrD;AAMD;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;IACnE,cAAc,EAAE,CACd,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACtC,MAAM,CAAC,EAAE,OAAO,KACb,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAgJD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB,GAAI,WAAW,aAAa,WAClD,sBACZ,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB,GAAI,WAAW,aAAa,WApBnD,sBAsBZ,CAAC"}
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/hooks/useQuestionsList.ts
21
+ var useQuestionsList_exports = {};
22
+ __export(useQuestionsList_exports, {
23
+ createQuestionsListHook: () => createQuestionsListHook,
24
+ createUseQuestionsList: () => createUseQuestionsList
25
+ });
26
+ module.exports = __toCommonJS(useQuestionsList_exports);
27
+ var import_react = require("react");
28
+ var useQuestionsListImpl = (apiClient) => {
29
+ const [state, setState] = (0, import_react.useState)({
30
+ questions: [],
31
+ pagination: null,
32
+ loading: false,
33
+ loadingMore: false,
34
+ error: null,
35
+ currentFilters: null
36
+ });
37
+ const updateState = (0, import_react.useCallback)((updates) => {
38
+ setState((prev) => ({ ...prev, ...updates }));
39
+ }, []);
40
+ const handleError = (0, import_react.useCallback)(
41
+ (error) => {
42
+ console.error("Erro ao carregar quest\xF5es:", error);
43
+ let errorMessage = "Erro ao carregar quest\xF5es";
44
+ if (error && typeof error === "object" && "response" in error) {
45
+ const axiosError = error;
46
+ errorMessage = axiosError?.response?.data?.message || axiosError?.message || errorMessage;
47
+ } else if (error instanceof Error) {
48
+ errorMessage = error.message;
49
+ }
50
+ updateState({
51
+ loading: false,
52
+ loadingMore: false,
53
+ error: errorMessage
54
+ });
55
+ },
56
+ [updateState]
57
+ );
58
+ const fetchQuestions = (0, import_react.useCallback)(
59
+ async (filters, append = false) => {
60
+ if (append) {
61
+ setState((prev) => ({ ...prev, loadingMore: true, error: null }));
62
+ } else {
63
+ updateState({ loading: true, error: null, questions: [] });
64
+ }
65
+ try {
66
+ const validatedFilters = {
67
+ ...filters
68
+ };
69
+ const response = await apiClient.post(
70
+ "/questions/list",
71
+ validatedFilters
72
+ );
73
+ setState((prev) => ({
74
+ loading: false,
75
+ loadingMore: false,
76
+ questions: append ? [...prev.questions, ...response.data.data.questions] : response.data.data.questions,
77
+ pagination: response.data.data.pagination,
78
+ error: null,
79
+ currentFilters: validatedFilters
80
+ }));
81
+ } catch (error) {
82
+ setState((prev) => ({
83
+ ...prev,
84
+ loading: false,
85
+ loadingMore: false
86
+ }));
87
+ handleError(error);
88
+ }
89
+ },
90
+ [apiClient, updateState, handleError]
91
+ );
92
+ const loadMore = (0, import_react.useCallback)(async () => {
93
+ setState((prev) => {
94
+ const { currentFilters, pagination, loadingMore: isLoadingMore } = prev;
95
+ if (isLoadingMore || !currentFilters || !pagination?.hasNext) {
96
+ return prev;
97
+ }
98
+ const nextPageFilters = {
99
+ ...currentFilters,
100
+ page: pagination.page + 1
101
+ };
102
+ fetchQuestions(nextPageFilters, true).catch((error) => {
103
+ console.error("Erro ao carregar mais quest\xF5es:", error);
104
+ });
105
+ return {
106
+ ...prev,
107
+ loadingMore: true
108
+ };
109
+ });
110
+ }, [fetchQuestions]);
111
+ const reset = (0, import_react.useCallback)(() => {
112
+ setState({
113
+ questions: [],
114
+ pagination: null,
115
+ loading: false,
116
+ loadingMore: false,
117
+ error: null,
118
+ currentFilters: null
119
+ });
120
+ }, []);
121
+ return {
122
+ ...state,
123
+ fetchQuestions,
124
+ loadMore,
125
+ reset
126
+ };
127
+ };
128
+ var createUseQuestionsList = (apiClient) => {
129
+ return () => useQuestionsListImpl(apiClient);
130
+ };
131
+ var createQuestionsListHook = (apiClient) => {
132
+ return createUseQuestionsList(apiClient);
133
+ };
134
+ // Annotate the CommonJS export names for ESM import in node:
135
+ 0 && (module.exports = {
136
+ createQuestionsListHook,
137
+ createUseQuestionsList
138
+ });
139
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/hooks/useQuestionsList.ts"],"sourcesContent":["import { useState, useCallback } from 'react';\nimport type { BaseApiClient } from '../types/api';\nimport type {\n QuestionsFilterBody,\n QuestionsListResponse,\n Question,\n Pagination,\n} from '../types/questions';\n\n// ============================================================================\n// Hook State Types\n// ============================================================================\n\n/**\n * Hook state interface\n */\ninterface UseQuestionsListState {\n questions: Question[];\n pagination: Pagination | null;\n loading: boolean;\n loadingMore: boolean;\n error: string | null;\n currentFilters: Partial<QuestionsFilterBody> | null;\n}\n\n// ============================================================================\n// Hook Return Type\n// ============================================================================\n\n/**\n * Hook return type\n */\nexport interface UseQuestionsListReturn extends UseQuestionsListState {\n fetchQuestions: (\n filters?: Partial<QuestionsFilterBody>,\n append?: boolean\n ) => Promise<void>;\n loadMore: () => Promise<void>;\n reset: () => void;\n}\n\n// ============================================================================\n// Main Hook Implementation\n// ============================================================================\n\nconst useQuestionsListImpl = (\n apiClient: BaseApiClient\n): UseQuestionsListReturn => {\n const [state, setState] = useState<UseQuestionsListState>({\n questions: [],\n pagination: null,\n loading: false,\n loadingMore: false,\n error: null,\n currentFilters: null,\n });\n\n const updateState = useCallback((updates: Partial<UseQuestionsListState>) => {\n setState((prev) => ({ ...prev, ...updates }));\n }, []);\n\n const handleError = useCallback(\n (error: unknown) => {\n console.error('Erro ao carregar questões:', error);\n let errorMessage = 'Erro ao carregar questões';\n\n if (error && typeof error === 'object' && 'response' in error) {\n const axiosError = error as {\n response?: { data?: { message?: string } };\n message?: string;\n };\n errorMessage =\n axiosError?.response?.data?.message ||\n axiosError?.message ||\n errorMessage;\n } else if (error instanceof Error) {\n errorMessage = error.message;\n }\n\n updateState({\n loading: false,\n loadingMore: false,\n error: errorMessage,\n });\n },\n [updateState]\n );\n\n /**\n * Fetch questions from API with filters\n * @param filters - Filters to apply\n * @param append - If true, appends results to existing questions; if false, replaces them\n */\n const fetchQuestions = useCallback(\n async (filters?: Partial<QuestionsFilterBody>, append: boolean = false) => {\n if (append) {\n setState((prev) => ({ ...prev, loadingMore: true, error: null }));\n } else {\n updateState({ loading: true, error: null, questions: [] });\n }\n\n try {\n const validatedFilters: QuestionsFilterBody = {\n ...filters,\n };\n\n const response = await apiClient.post<QuestionsListResponse>(\n '/questions/list',\n validatedFilters\n );\n\n setState((prev) => ({\n loading: false,\n loadingMore: false,\n questions: append\n ? [...prev.questions, ...response.data.data.questions]\n : response.data.data.questions,\n pagination: response.data.data.pagination,\n error: null,\n currentFilters: validatedFilters,\n }));\n } catch (error) {\n setState((prev) => ({\n ...prev,\n loading: false,\n loadingMore: false,\n }));\n handleError(error);\n }\n },\n [apiClient, updateState, handleError]\n );\n\n const loadMore = useCallback(async () => {\n setState((prev) => {\n const { currentFilters, pagination, loadingMore: isLoadingMore } = prev;\n\n if (isLoadingMore || !currentFilters || !pagination?.hasNext) {\n return prev;\n }\n\n const nextPageFilters = {\n ...currentFilters,\n page: pagination.page + 1,\n };\n\n fetchQuestions(nextPageFilters, true).catch((error) => {\n console.error('Erro ao carregar mais questões:', error);\n });\n\n return {\n ...prev,\n loadingMore: true,\n };\n });\n }, [fetchQuestions]);\n\n /**\n * Reset questions list\n */\n const reset = useCallback(() => {\n setState({\n questions: [],\n pagination: null,\n loading: false,\n loadingMore: false,\n error: null,\n currentFilters: null,\n });\n }, []);\n\n return {\n ...state,\n fetchQuestions,\n loadMore,\n reset,\n };\n};\n\n// ============================================================================\n// Hook Factory\n// ============================================================================\n\n/**\n * Create a questions list hook with API client injection.\n * @param apiClient - API client instance\n * @returns Pre-configured useQuestionsList hook\n *\n * @example\n * // In your app setup\n * import { createUseQuestionsList } from 'analytica-frontend-lib';\n * import api from './services/api';\n *\n * export const useQuestionsList = createUseQuestionsList(api);\n *\n * // Then use directly in components\n * const { questions, fetchQuestions, loadMore } = useQuestionsList();\n */\nexport const createUseQuestionsList = (apiClient: BaseApiClient) => {\n return (): UseQuestionsListReturn => useQuestionsListImpl(apiClient);\n};\n\n/**\n * Create a pre-configured questions list hook\n * This is a convenience function that returns a hook ready to use\n *\n * @param apiClient - API client instance\n * @returns Pre-configured useQuestionsList hook\n *\n * @example\n * // In your app setup\n * import { createQuestionsListHook } from 'analytica-frontend-lib';\n * import api from './services/api';\n *\n * export const useQuestionsList = createQuestionsListHook(api);\n *\n * // Then use directly in components\n * const { questions, fetchQuestions, loadMore } = useQuestionsList();\n */\nexport const createQuestionsListHook = (apiClient: BaseApiClient) => {\n return createUseQuestionsList(apiClient);\n};\n"],"mappings":"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","names":[]}
@@ -0,0 +1,113 @@
1
+ // src/hooks/useQuestionsList.ts
2
+ import { useState, useCallback } from "react";
3
+ var useQuestionsListImpl = (apiClient) => {
4
+ const [state, setState] = useState({
5
+ questions: [],
6
+ pagination: null,
7
+ loading: false,
8
+ loadingMore: false,
9
+ error: null,
10
+ currentFilters: null
11
+ });
12
+ const updateState = useCallback((updates) => {
13
+ setState((prev) => ({ ...prev, ...updates }));
14
+ }, []);
15
+ const handleError = useCallback(
16
+ (error) => {
17
+ console.error("Erro ao carregar quest\xF5es:", error);
18
+ let errorMessage = "Erro ao carregar quest\xF5es";
19
+ if (error && typeof error === "object" && "response" in error) {
20
+ const axiosError = error;
21
+ errorMessage = axiosError?.response?.data?.message || axiosError?.message || errorMessage;
22
+ } else if (error instanceof Error) {
23
+ errorMessage = error.message;
24
+ }
25
+ updateState({
26
+ loading: false,
27
+ loadingMore: false,
28
+ error: errorMessage
29
+ });
30
+ },
31
+ [updateState]
32
+ );
33
+ const fetchQuestions = useCallback(
34
+ async (filters, append = false) => {
35
+ if (append) {
36
+ setState((prev) => ({ ...prev, loadingMore: true, error: null }));
37
+ } else {
38
+ updateState({ loading: true, error: null, questions: [] });
39
+ }
40
+ try {
41
+ const validatedFilters = {
42
+ ...filters
43
+ };
44
+ const response = await apiClient.post(
45
+ "/questions/list",
46
+ validatedFilters
47
+ );
48
+ setState((prev) => ({
49
+ loading: false,
50
+ loadingMore: false,
51
+ questions: append ? [...prev.questions, ...response.data.data.questions] : response.data.data.questions,
52
+ pagination: response.data.data.pagination,
53
+ error: null,
54
+ currentFilters: validatedFilters
55
+ }));
56
+ } catch (error) {
57
+ setState((prev) => ({
58
+ ...prev,
59
+ loading: false,
60
+ loadingMore: false
61
+ }));
62
+ handleError(error);
63
+ }
64
+ },
65
+ [apiClient, updateState, handleError]
66
+ );
67
+ const loadMore = useCallback(async () => {
68
+ setState((prev) => {
69
+ const { currentFilters, pagination, loadingMore: isLoadingMore } = prev;
70
+ if (isLoadingMore || !currentFilters || !pagination?.hasNext) {
71
+ return prev;
72
+ }
73
+ const nextPageFilters = {
74
+ ...currentFilters,
75
+ page: pagination.page + 1
76
+ };
77
+ fetchQuestions(nextPageFilters, true).catch((error) => {
78
+ console.error("Erro ao carregar mais quest\xF5es:", error);
79
+ });
80
+ return {
81
+ ...prev,
82
+ loadingMore: true
83
+ };
84
+ });
85
+ }, [fetchQuestions]);
86
+ const reset = useCallback(() => {
87
+ setState({
88
+ questions: [],
89
+ pagination: null,
90
+ loading: false,
91
+ loadingMore: false,
92
+ error: null,
93
+ currentFilters: null
94
+ });
95
+ }, []);
96
+ return {
97
+ ...state,
98
+ fetchQuestions,
99
+ loadMore,
100
+ reset
101
+ };
102
+ };
103
+ var createUseQuestionsList = (apiClient) => {
104
+ return () => useQuestionsListImpl(apiClient);
105
+ };
106
+ var createQuestionsListHook = (apiClient) => {
107
+ return createUseQuestionsList(apiClient);
108
+ };
109
+ export {
110
+ createQuestionsListHook,
111
+ createUseQuestionsList
112
+ };
113
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/hooks/useQuestionsList.ts"],"sourcesContent":["import { useState, useCallback } from 'react';\nimport type { BaseApiClient } from '../types/api';\nimport type {\n QuestionsFilterBody,\n QuestionsListResponse,\n Question,\n Pagination,\n} from '../types/questions';\n\n// ============================================================================\n// Hook State Types\n// ============================================================================\n\n/**\n * Hook state interface\n */\ninterface UseQuestionsListState {\n questions: Question[];\n pagination: Pagination | null;\n loading: boolean;\n loadingMore: boolean;\n error: string | null;\n currentFilters: Partial<QuestionsFilterBody> | null;\n}\n\n// ============================================================================\n// Hook Return Type\n// ============================================================================\n\n/**\n * Hook return type\n */\nexport interface UseQuestionsListReturn extends UseQuestionsListState {\n fetchQuestions: (\n filters?: Partial<QuestionsFilterBody>,\n append?: boolean\n ) => Promise<void>;\n loadMore: () => Promise<void>;\n reset: () => void;\n}\n\n// ============================================================================\n// Main Hook Implementation\n// ============================================================================\n\nconst useQuestionsListImpl = (\n apiClient: BaseApiClient\n): UseQuestionsListReturn => {\n const [state, setState] = useState<UseQuestionsListState>({\n questions: [],\n pagination: null,\n loading: false,\n loadingMore: false,\n error: null,\n currentFilters: null,\n });\n\n const updateState = useCallback((updates: Partial<UseQuestionsListState>) => {\n setState((prev) => ({ ...prev, ...updates }));\n }, []);\n\n const handleError = useCallback(\n (error: unknown) => {\n console.error('Erro ao carregar questões:', error);\n let errorMessage = 'Erro ao carregar questões';\n\n if (error && typeof error === 'object' && 'response' in error) {\n const axiosError = error as {\n response?: { data?: { message?: string } };\n message?: string;\n };\n errorMessage =\n axiosError?.response?.data?.message ||\n axiosError?.message ||\n errorMessage;\n } else if (error instanceof Error) {\n errorMessage = error.message;\n }\n\n updateState({\n loading: false,\n loadingMore: false,\n error: errorMessage,\n });\n },\n [updateState]\n );\n\n /**\n * Fetch questions from API with filters\n * @param filters - Filters to apply\n * @param append - If true, appends results to existing questions; if false, replaces them\n */\n const fetchQuestions = useCallback(\n async (filters?: Partial<QuestionsFilterBody>, append: boolean = false) => {\n if (append) {\n setState((prev) => ({ ...prev, loadingMore: true, error: null }));\n } else {\n updateState({ loading: true, error: null, questions: [] });\n }\n\n try {\n const validatedFilters: QuestionsFilterBody = {\n ...filters,\n };\n\n const response = await apiClient.post<QuestionsListResponse>(\n '/questions/list',\n validatedFilters\n );\n\n setState((prev) => ({\n loading: false,\n loadingMore: false,\n questions: append\n ? [...prev.questions, ...response.data.data.questions]\n : response.data.data.questions,\n pagination: response.data.data.pagination,\n error: null,\n currentFilters: validatedFilters,\n }));\n } catch (error) {\n setState((prev) => ({\n ...prev,\n loading: false,\n loadingMore: false,\n }));\n handleError(error);\n }\n },\n [apiClient, updateState, handleError]\n );\n\n const loadMore = useCallback(async () => {\n setState((prev) => {\n const { currentFilters, pagination, loadingMore: isLoadingMore } = prev;\n\n if (isLoadingMore || !currentFilters || !pagination?.hasNext) {\n return prev;\n }\n\n const nextPageFilters = {\n ...currentFilters,\n page: pagination.page + 1,\n };\n\n fetchQuestions(nextPageFilters, true).catch((error) => {\n console.error('Erro ao carregar mais questões:', error);\n });\n\n return {\n ...prev,\n loadingMore: true,\n };\n });\n }, [fetchQuestions]);\n\n /**\n * Reset questions list\n */\n const reset = useCallback(() => {\n setState({\n questions: [],\n pagination: null,\n loading: false,\n loadingMore: false,\n error: null,\n currentFilters: null,\n });\n }, []);\n\n return {\n ...state,\n fetchQuestions,\n loadMore,\n reset,\n };\n};\n\n// ============================================================================\n// Hook Factory\n// ============================================================================\n\n/**\n * Create a questions list hook with API client injection.\n * @param apiClient - API client instance\n * @returns Pre-configured useQuestionsList hook\n *\n * @example\n * // In your app setup\n * import { createUseQuestionsList } from 'analytica-frontend-lib';\n * import api from './services/api';\n *\n * export const useQuestionsList = createUseQuestionsList(api);\n *\n * // Then use directly in components\n * const { questions, fetchQuestions, loadMore } = useQuestionsList();\n */\nexport const createUseQuestionsList = (apiClient: BaseApiClient) => {\n return (): UseQuestionsListReturn => useQuestionsListImpl(apiClient);\n};\n\n/**\n * Create a pre-configured questions list hook\n * This is a convenience function that returns a hook ready to use\n *\n * @param apiClient - API client instance\n * @returns Pre-configured useQuestionsList hook\n *\n * @example\n * // In your app setup\n * import { createQuestionsListHook } from 'analytica-frontend-lib';\n * import api from './services/api';\n *\n * export const useQuestionsList = createQuestionsListHook(api);\n *\n * // Then use directly in components\n * const { questions, fetchQuestions, loadMore } = useQuestionsList();\n */\nexport const createQuestionsListHook = (apiClient: BaseApiClient) => {\n return createUseQuestionsList(apiClient);\n};\n"],"mappings":"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","names":[]}
@@ -0,0 +1,57 @@
1
+ import type { BaseApiClient } from '../types/api';
2
+ import type { QuestionsFilterBody, Question, Pagination } from '../types/questions';
3
+ /**
4
+ * Hook state interface
5
+ */
6
+ interface UseQuestionsListState {
7
+ questions: Question[];
8
+ pagination: Pagination | null;
9
+ loading: boolean;
10
+ loadingMore: boolean;
11
+ error: string | null;
12
+ currentFilters: Partial<QuestionsFilterBody> | null;
13
+ }
14
+ /**
15
+ * Hook return type
16
+ */
17
+ export interface UseQuestionsListReturn extends UseQuestionsListState {
18
+ fetchQuestions: (filters?: Partial<QuestionsFilterBody>, append?: boolean) => Promise<void>;
19
+ loadMore: () => Promise<void>;
20
+ reset: () => void;
21
+ }
22
+ /**
23
+ * Create a questions list hook with API client injection.
24
+ * @param apiClient - API client instance
25
+ * @returns Pre-configured useQuestionsList hook
26
+ *
27
+ * @example
28
+ * // In your app setup
29
+ * import { createUseQuestionsList } from 'analytica-frontend-lib';
30
+ * import api from './services/api';
31
+ *
32
+ * export const useQuestionsList = createUseQuestionsList(api);
33
+ *
34
+ * // Then use directly in components
35
+ * const { questions, fetchQuestions, loadMore } = useQuestionsList();
36
+ */
37
+ export declare const createUseQuestionsList: (apiClient: BaseApiClient) => () => UseQuestionsListReturn;
38
+ /**
39
+ * Create a pre-configured questions list hook
40
+ * This is a convenience function that returns a hook ready to use
41
+ *
42
+ * @param apiClient - API client instance
43
+ * @returns Pre-configured useQuestionsList hook
44
+ *
45
+ * @example
46
+ * // In your app setup
47
+ * import { createQuestionsListHook } from 'analytica-frontend-lib';
48
+ * import api from './services/api';
49
+ *
50
+ * export const useQuestionsList = createQuestionsListHook(api);
51
+ *
52
+ * // Then use directly in components
53
+ * const { questions, fetchQuestions, loadMore } = useQuestionsList();
54
+ */
55
+ export declare const createQuestionsListHook: (apiClient: BaseApiClient) => () => UseQuestionsListReturn;
56
+ export {};
57
+ //# sourceMappingURL=useQuestionsList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useQuestionsList.d.ts","sourceRoot":"","sources":["../../src/hooks/useQuestionsList.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EACV,mBAAmB,EAEnB,QAAQ,EACR,UAAU,EACX,MAAM,oBAAoB,CAAC;AAM5B;;GAEG;AACH,UAAU,qBAAqB;IAC7B,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC;CACrD;AAMD;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;IACnE,cAAc,EAAE,CACd,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACtC,MAAM,CAAC,EAAE,OAAO,KACb,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAgJD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB,GAAI,WAAW,aAAa,WAClD,sBACZ,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB,GAAI,WAAW,aAAa,WApBnD,sBAsBZ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -54,6 +54,12 @@ export { NotificationEntityType } from './types/notifications';
54
54
  export { questionTypeLabels } from './types/questionTypes';
55
55
  export type { Notification, NotificationType, BackendNotification, BackendNotificationsResponse, NotificationsResponse, FetchNotificationsParams, NotificationApiClient, } from './types/notifications';
56
56
  export type { NotificationState, NotificationActions, NotificationStore, } from './store/notificationStore';
57
+ export { createUseActivityFiltersData, createActivityFiltersDataHook, } from './hooks/useActivityFiltersData';
58
+ export type { UseActivityFiltersDataReturn, UseActivityFiltersDataOptions, } from './hooks/useActivityFiltersData';
59
+ export { createUseQuestionsList, createQuestionsListHook, } from './hooks/useQuestionsList';
60
+ export type { UseQuestionsListReturn } from './hooks/useQuestionsList';
61
+ export type { Question as QuestionListItem, Pagination, QuestionsFilterBody, QuestionsListResponse, } from './types/questions';
62
+ export type { BaseApiClient } from './types/api';
57
63
  export { useThemeStore } from './store/themeStore';
58
64
  export type { ThemeStore, ThemeState, ThemeActions } from './store/themeStore';
59
65
  export { default as DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, ProfileMenuTrigger, ProfileMenuFooter, ProfileMenuHeader, ProfileMenuInfo, ProfileMenuSection, MenuLabel, DropdownMenuSeparator, ProfileToggleTheme, } from './components/DropdownMenu/DropdownMenu';
@@ -114,6 +120,8 @@ export { useAppContent } from './hooks/useAppContent';
114
120
  export { useInstitutionId } from './hooks/useInstitution';
115
121
  export { useAuthStore } from './store/authStore';
116
122
  export { useAppStore } from './store/appStore';
123
+ export { useQuestionFiltersStore } from './store/questionFiltersStore';
124
+ export type { QuestionFiltersState } from './store/questionFiltersStore';
117
125
  export type { AuthState } from './store/authStore';
118
126
  export { ActivityCardQuestionBanks } from './components/ActivityCardQuestionBanks/ActivityCardQuestionBanks';
119
127
  export { cn, getSubjectColorWithOpacity, syncDropdownState, getSelectedIdsFromCategories, toggleArrayItem, toggleSingleValue, } from './utils/utils';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,cAAc,CAAC;AAGtB,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACpF,YAAY,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAC9E,YAAY,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EACL,OAAO,IAAI,YAAY,EACvB,gBAAgB,GACjB,MAAM,oCAAoC,CAAC;AAG5C,OAAO,EACL,aAAa,EACb,KAAK,cAAc,EACnB,KAAK,IAAI,GACV,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AACpF,YAAY,EACV,aAAa,EACb,eAAe,GAChB,MAAM,iDAAiD,CAAC;AACzD,YAAY,EACV,YAAY,EACZ,SAAS,EACT,aAAa,GACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,OAAO,IAAI,KAAK,EAChB,UAAU,EACV,cAAc,GACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wDAAwD,CAAC;AACzG,YAAY,EAAE,yBAAyB,EAAE,MAAM,wDAAwD,CAAC;AACxG,OAAO,EACL,eAAe,IAAI,0BAA0B,EAC7C,4BAA4B,GAC7B,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACV,cAAc,IAAI,wBAAwB,EAC1C,eAAe,EACf,6BAA6B,GAC9B,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,EACL,cAAc,EACd,cAAc,GACf,MAAM,4CAA4C,CAAC;AACpD,YAAY,EACV,mBAAmB,EACnB,YAAY,GACb,MAAM,4CAA4C,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAGnE,YAAY,EACV,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,gDAAgD,CAAC;AAGxD,OAAO,EACL,WAAW,EACX,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,cAAc,GACf,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EACV,WAAW,EACX,SAAS,IAAI,gBAAgB,GAC9B,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EACL,uBAAuB,EACvB,aAAa,GACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,4BAA4B,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EACV,QAAQ,IAAI,gBAAgB,EAC5B,UAAU,EACV,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAG/E,OAAO,EACL,OAAO,IAAI,YAAY,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EACL,OAAO,IAAI,KAAK,EAChB,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,YAAY,EACZ,eAAe,EACf,YAAY,GACb,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,mBAAmB,EACnB,aAAa,GACd,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAClE,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,8CAA8C,CAAC;AACtD,YAAY,EACV,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,8CAA8C,CAAC;AACtD,YAAY,EACV,mBAAmB,EACnB,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,aAAa,EACb,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAEjC,YAAY,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAGrE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,YAAY,EACV,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,OAAO,IAAI,MAAM,EACjB,WAAW,EACX,aAAa,EACb,aAAa,EACb,UAAU,GACX,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,OAAO,IAAI,IAAI,EACf,QAAQ,EACR,YAAY,EACZ,WAAW,GACZ,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,UAAU,EACV,SAAS,EACT,QAAQ,EACR,qBAAqB,EACrB,SAAS,GACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAG5E,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACvF,YAAY,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,YAAY,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,4CAA4C,CAAC;AACvF,YAAY,EACV,eAAe,EACf,mBAAmB,GACpB,MAAM,4CAA4C,CAAC;AAGpD,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,cAAc,GACf,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,OAAO,EACL,SAAS,EACT,IAAI,EACJ,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,eAAe,GAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,SAAS,GACV,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EACV,cAAc,EACd,QAAQ,EACR,cAAc,EACd,SAAS,EACT,aAAa,GACd,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAG3E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC7D,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,YAAY,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,YAAY,EACV,uBAAuB,EACvB,eAAe,EACf,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AACxE,YAAY,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,YAAY,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAElF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,YAAY,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAE7G,OAAO,EACL,EAAE,EACF,0BAA0B,EAC1B,iBAAiB,EACjB,4BAA4B,EAC5B,eAAe,EACf,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,qBAAqB,EACrB,mBAAmB,EACnB,UAAU,IAAI,yBAAyB,EACvC,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC/E,YAAY,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAGzF,OAAO,EACL,OAAO,EACP,WAAW,EACX,eAAe,EACf,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,YAAY,EACZ,WAAW,EACX,OAAO,EACP,eAAe,EACf,aAAa,EACb,0BAA0B,EAC1B,2BAA2B,EAC3B,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,gBAAgB,EAChB,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,gBAAgB,GACjB,MAAM,iBAAiB,CAAC"}