@ssplib/react-components 0.0.296 → 0.0.298

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/package.json +12 -2
  2. package/components/detalhes/Category.d.ts +0 -4
  3. package/components/detalhes/Category.js +0 -14
  4. package/components/detalhes/Field.d.ts +0 -9
  5. package/components/detalhes/Field.js +0 -42
  6. package/components/detalhes/FieldLabel.d.ts +0 -9
  7. package/components/detalhes/FieldLabel.js +0 -28
  8. package/components/detalhes/File.d.ts +0 -8
  9. package/components/detalhes/File.js +0 -62
  10. package/components/form/checkbox/CheckBox.d.ts +0 -10
  11. package/components/form/checkbox/CheckBox.js +0 -18
  12. package/components/form/checkbox/CheckBoxAdditional.d.ts +0 -8
  13. package/components/form/checkbox/CheckBoxAdditional.js +0 -95
  14. package/components/form/checkbox/CheckBoxWarning.d.ts +0 -10
  15. package/components/form/checkbox/CheckBoxWarning.js +0 -43
  16. package/components/form/checkbox/RequiredCheckBoxValidator.d.ts +0 -6
  17. package/components/form/checkbox/RequiredCheckBoxValidator.js +0 -85
  18. package/components/form/date/DatePicker.d.ts +0 -14
  19. package/components/form/date/DatePicker.js +0 -105
  20. package/components/form/date/GenericDatePicker.d.ts +0 -14
  21. package/components/form/date/GenericDatePicker.js +0 -105
  22. package/components/form/date/TimePicker.d.ts +0 -11
  23. package/components/form/date/TimePicker.js +0 -82
  24. package/components/form/file/DropFileUpload.d.ts +0 -17
  25. package/components/form/file/DropFileUpload.js +0 -226
  26. package/components/form/file/FileUpload.d.ts +0 -14
  27. package/components/form/file/FileUpload.js +0 -200
  28. package/components/form/input/ActiveInput.d.ts +0 -12
  29. package/components/form/input/ActiveInput.js +0 -33
  30. package/components/form/input/AutoComplete.d.ts +0 -12
  31. package/components/form/input/AutoComplete.js +0 -69
  32. package/components/form/input/FetchAutoComplete.d.ts +0 -20
  33. package/components/form/input/FetchAutoComplete.js +0 -134
  34. package/components/form/input/FixedAutoComplete.d.ts +0 -19
  35. package/components/form/input/FixedAutoComplete.js +0 -83
  36. package/components/form/input/GenericFetchAutoComplete.d.ts +0 -20
  37. package/components/form/input/GenericFetchAutoComplete.js +0 -132
  38. package/components/form/input/GenericInput.d.ts +0 -19
  39. package/components/form/input/GenericInput.js +0 -168
  40. package/components/form/input/GenericMaskInput.d.ts +0 -14
  41. package/components/form/input/GenericMaskInput.js +0 -79
  42. package/components/form/input/GenericMultInput.d.ts +0 -14
  43. package/components/form/input/GenericMultInput.js +0 -67
  44. package/components/form/input/Input.d.ts +0 -19
  45. package/components/form/input/Input.js +0 -168
  46. package/components/form/input/MaskInput.d.ts +0 -14
  47. package/components/form/input/MaskInput.js +0 -78
  48. package/components/form/input/MultInput.d.ts +0 -14
  49. package/components/form/input/MultInput.js +0 -67
  50. package/components/form/input/OtherCheckBox.d.ts +0 -8
  51. package/components/form/input/OtherCheckBox.js +0 -56
  52. package/components/form/stepper/Stepper.d.ts +0 -16
  53. package/components/form/stepper/Stepper.js +0 -135
  54. package/components/form/stepper/StepperBlock.d.ts +0 -14
  55. package/components/form/stepper/StepperBlock.js +0 -97
  56. package/components/form/switch/Switch.d.ts +0 -11
  57. package/components/form/switch/Switch.js +0 -54
  58. package/components/form/switch/ToggleVisibility.d.ts +0 -14
  59. package/components/form/switch/ToggleVisibility.js +0 -61
  60. package/components/form/table/FilterSection.d.ts +0 -8
  61. package/components/form/table/FilterSection.js +0 -217
  62. package/components/form/table/GenericTable.d.ts +0 -8
  63. package/components/form/table/GenericTable.js +0 -1034
  64. package/components/form/table/Table.d.ts +0 -5
  65. package/components/form/table/Table.js +0 -514
  66. package/components/form/table/TableErrorState.d.ts +0 -9
  67. package/components/form/table/TableErrorState.js +0 -27
  68. package/components/form/table/TableLoadingState.d.ts +0 -6
  69. package/components/form/table/TableLoadingState.js +0 -39
  70. package/components/form/table/types.d.ts +0 -212
  71. package/components/form/table/types.js +0 -2
  72. package/components/form/table/utils.d.ts +0 -30
  73. package/components/form/table/utils.js +0 -361
  74. package/components/icons/icons.d.ts +0 -4
  75. package/components/icons/icons.js +0 -24
  76. package/components/map/AnimatedMarker.d.ts +0 -5
  77. package/components/map/AnimatedMarker.js +0 -65
  78. package/components/map/DraggableMarker.d.ts +0 -12
  79. package/components/map/DraggableMarker.js +0 -66
  80. package/components/map/Map.d.ts +0 -17
  81. package/components/map/Map.js +0 -23
  82. package/components/map/index.d.ts +0 -2
  83. package/components/map/index.js +0 -31
  84. package/components/modal/Modal.d.ts +0 -8
  85. package/components/modal/Modal.js +0 -105
  86. package/components/navbar/NavBar.d.ts +0 -16
  87. package/components/navbar/NavBar.js +0 -171
  88. package/components/navbar/TabNavBar.d.ts +0 -18
  89. package/components/navbar/TabNavBar.js +0 -179
  90. package/components/providers/FormProvider.d.ts +0 -11
  91. package/components/providers/FormProvider.js +0 -54
  92. package/components/providers/KeycloakAuthProvider.d.ts +0 -11
  93. package/components/providers/KeycloakAuthProvider.js +0 -118
  94. package/components/providers/OAuthProvider.d.ts +0 -19
  95. package/components/providers/OAuthProvider.js +0 -138
  96. package/components/providers/SspComponentsProvider.d.ts +0 -4
  97. package/components/providers/SspComponentsProvider.js +0 -18
  98. package/components/utils/Bt.d.ts +0 -9
  99. package/components/utils/Bt.js +0 -35
  100. package/components/utils/CustomMenu.d.ts +0 -12
  101. package/components/utils/CustomMenu.js +0 -39
  102. package/context/auth.d.ts +0 -3
  103. package/context/auth.js +0 -5
  104. package/context/form.d.ts +0 -20
  105. package/context/form.js +0 -5
  106. package/index.d.ts +0 -44
  107. package/index.js +0 -94
  108. package/types/auth.d.ts +0 -72
  109. package/types/auth.js +0 -2
  110. package/types/form.d.ts +0 -64
  111. package/types/form.js +0 -31
@@ -1,200 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const CameraAlt_1 = __importDefault(require("@mui/icons-material/CameraAlt"));
30
- const Delete_1 = __importDefault(require("@mui/icons-material/Delete"));
31
- const Done_1 = __importDefault(require("@mui/icons-material/Done"));
32
- const InsertDriveFile_1 = __importDefault(require("@mui/icons-material/InsertDriveFile"));
33
- const PictureAsPdf_1 = __importDefault(require("@mui/icons-material/PictureAsPdf"));
34
- const material_1 = require("@mui/material");
35
- const system_1 = require("@mui/system");
36
- const lodash_get_1 = __importDefault(require("lodash.get"));
37
- const react_1 = __importStar(require("react"));
38
- const auth_1 = require("../../../context/auth");
39
- const form_1 = require("../../../context/form");
40
- function bytesToMegabytes(bytes) {
41
- const megabytes = bytes / (1024 * 1024);
42
- return megabytes;
43
- }
44
- function FileUpload({ name, tipoArquivo, title, required = false, multiple = false, apiURL, route = '', sizeLimit = 4, xs = 12, sm, md, }) {
45
- const context = (0, react_1.useContext)(form_1.FormContext);
46
- const { user } = (0, react_1.useContext)(auth_1.AuthContext);
47
- const theme = (0, material_1.useTheme)();
48
- const isSmall = (0, material_1.useMediaQuery)(theme.breakpoints.only('xs'));
49
- const [files, setFiles] = (0, react_1.useState)([]);
50
- const [filesLoaded, setFilesLoaded] = (0, react_1.useState)([]);
51
- const [fileIds, setFilesIds] = (0, react_1.useState)({});
52
- // const [filesError, setFilesError] = useState<number[]>([])
53
- const [errorMsg, setErrorMsg] = (0, react_1.useState)('');
54
- const onFile = (0, react_1.useCallback)((e) => {
55
- const newFiles = e.target.files;
56
- const filesTo = Object.keys(newFiles).map((key) => newFiles[key]);
57
- setFiles([
58
- ...files,
59
- ...filesTo
60
- .filter((file) => {
61
- if (bytesToMegabytes(file.size) > sizeLimit) {
62
- setErrorMsg(`Por favor, escolha um arquivo com tamanho inferior a ${sizeLimit} MB`);
63
- setTimeout(() => {
64
- setErrorMsg('');
65
- }, 3000);
66
- return false;
67
- }
68
- return true;
69
- })
70
- .map((file, index) => {
71
- let id = Date.now() + index;
72
- // fetch API
73
- const fd = new FormData();
74
- fd.append('files', file);
75
- fd.append('tipoArquivo', tipoArquivo);
76
- fetch(apiURL, {
77
- method: 'POST',
78
- body: fd,
79
- headers: {
80
- Authorization: `Bearer ${user ? user.token : ''}`,
81
- },
82
- })
83
- .then((res) => {
84
- if (!res.ok) {
85
- removeFile(id);
86
- return;
87
- }
88
- res.json().then((j) => {
89
- if (j.status && j.status.status === 200) {
90
- const fileIdFromApi = (0, lodash_get_1.default)(j, route, j)[0];
91
- const fileId = fileIdFromApi['coSeqArquivo'];
92
- context.setFilesUid((fId) => [
93
- ...fId,
94
- {
95
- CO_SEQ_ARQUIVO: fileId,
96
- CO_TIPO_ARQUIVO: parseInt(tipoArquivo),
97
- },
98
- ]);
99
- setFilesLoaded((fl) => [...fl, id]);
100
- const f = {};
101
- f[id] = fileId;
102
- setFilesIds((ids) => (Object.assign(Object.assign({}, ids), f)));
103
- }
104
- else {
105
- removeFile(id);
106
- }
107
- });
108
- })
109
- .catch((err) => {
110
- removeFile(id);
111
- });
112
- return { id: id, name: file.name, loading: true, error: false, file: file };
113
- }),
114
- ]);
115
- }, [files, context]);
116
- const removeFile = (id, hideMsg, fileId) => {
117
- setFiles(files.filter((x) => x.id !== id));
118
- if (fileId)
119
- context.setFilesUid((fId) => fId.filter((idd) => idd.CO_SEQ_ARQUIVO !== fileId));
120
- if (!hideMsg) {
121
- setErrorMsg('Erro ao enviar arquivo. Tente novamente mais tarde');
122
- setTimeout(() => {
123
- setErrorMsg('');
124
- }, 3000);
125
- }
126
- };
127
- const deleteFile = (e, id) => {
128
- if (Object.keys(fileIds).includes(id.toString())) {
129
- fetch(`${apiURL}/${fileIds[id]}`, {
130
- method: 'DELETE',
131
- headers: {
132
- Authorization: `Bearer ${user === null || user === void 0 ? void 0 : user.token}`,
133
- },
134
- })
135
- .then((res) => {
136
- if (!res.ok)
137
- removeFile(id, true, fileIds[id]);
138
- if (res.status === 200) {
139
- removeFile(id, true, fileIds[id]);
140
- }
141
- })
142
- .catch((err) => console.log(err));
143
- }
144
- };
145
- (0, react_1.useEffect)(() => {
146
- const dt = new DataTransfer();
147
- files.forEach((x) => {
148
- dt.items.add(x.file);
149
- });
150
- context === null || context === void 0 ? void 0 : context.formSetValue(name, dt.files);
151
- }, [files, context, name]);
152
- (0, react_1.useEffect)(() => {
153
- return () => {
154
- context.setFilesUid((files) => files.filter((x) => x.CO_TIPO_ARQUIVO !== parseInt(tipoArquivo)));
155
- };
156
- }, []);
157
- return (react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }, { sx: { width: '100%' } }),
158
- react_1.default.createElement(material_1.InputLabel, { required: required, sx: { marginBottom: 2, textTransform: 'capitalize' } }, title),
159
- react_1.default.createElement(material_1.Box, { sx: { backgroundColor: '#e2eafc', padding: 1, borderRadius: 1, marginTop: 1 } },
160
- react_1.default.createElement("input", Object.assign({ id: name, type: 'file', multiple: multiple }, context === null || context === void 0 ? void 0 : context.formRegister(name, {
161
- validate: (v, f) => {
162
- if ((v.length && filesLoaded.length) <= 0 && required)
163
- return 'O campo de arquivo é obrigatório';
164
- },
165
- }), { onChange: onFile, accept: '.pdf', style: { display: 'none' } })),
166
- react_1.default.createElement("input", Object.assign({ id: name + 'foto', type: 'file', capture: 'environment', multiple: multiple }, context === null || context === void 0 ? void 0 : context.formRegister(name, {
167
- validate: (v, f) => {
168
- if ((v.length && filesLoaded.length) <= 0 && required)
169
- return 'O campo de arquivo é obrigatório';
170
- },
171
- }), { onChange: onFile, accept: '.jpg, .png, .jpeg', style: { display: 'none' } })),
172
- react_1.default.createElement(material_1.Box, { sx: {
173
- display: {
174
- sx: 'block',
175
- md: 'flex',
176
- },
177
- } },
178
- react_1.default.createElement(material_1.Box, { sx: { width: '100%', marginRight: { xs: 0, md: 1 }, marginBottom: { xs: 1, md: 0 } } }, !multiple && files.length >= 1 ? (react_1.default.createElement(material_1.Button, { disabled: true, variant: 'contained', disableElevation: true, startIcon: react_1.default.createElement(InsertDriveFile_1.default, null), component: 'span', sx: { textTransform: 'none' }, fullWidth: true }, "Escolher Documento")) : (react_1.default.createElement("label", { htmlFor: name },
179
- react_1.default.createElement(material_1.Button, { variant: 'contained', disableElevation: true, startIcon: react_1.default.createElement(InsertDriveFile_1.default, null), component: 'span', sx: { textTransform: 'none' }, fullWidth: true }, "Escolher Documento")))),
180
- react_1.default.createElement(material_1.Box, { sx: { width: '100%' } }, !multiple && files.length >= 1 ? (react_1.default.createElement(material_1.Button, { disabled: true, variant: 'contained', disableElevation: true, startIcon: react_1.default.createElement(CameraAlt_1.default, null), component: 'span', sx: { textTransform: 'none', backgroundColor: '#0096c7' }, fullWidth: true }, isSmall ? 'Tirar Foto' : 'Escolher Imagem')) : (react_1.default.createElement("label", { htmlFor: name + 'foto' },
181
- react_1.default.createElement(material_1.Button, { variant: 'contained', disableElevation: true, startIcon: react_1.default.createElement(CameraAlt_1.default, null), component: 'span', sx: { textTransform: 'none', backgroundColor: '#0096c7' }, fullWidth: true }, isSmall ? 'Tirar Foto' : 'Escolher Imagem'))))),
182
- react_1.default.createElement(material_1.Typography, { fontWeight: 600, paddingY: 1, color: 'black' },
183
- "Voc\u00EA selecionou ",
184
- files.length,
185
- " arquivo",
186
- files.length > 1 && 's'),
187
- files.length > 0 && (react_1.default.createElement(material_1.TableContainer, { component: material_1.Paper },
188
- react_1.default.createElement(system_1.Stack, { direction: 'column' }, files.map((x) => (react_1.default.createElement(system_1.Stack, { key: x.name, direction: 'row', justifyContent: 'space-between', padding: 0.5 },
189
- react_1.default.createElement(material_1.Box, null,
190
- react_1.default.createElement(system_1.Stack, { direction: 'row', spacing: 2 },
191
- filesLoaded.includes(x.id) ? react_1.default.createElement(Done_1.default, { sx: { fill: '#06d6a0' } }) : react_1.default.createElement(material_1.CircularProgress, { size: 22, sx: { color: 'black' } }),
192
- react_1.default.createElement(PictureAsPdf_1.default, { color: 'error' }),
193
- react_1.default.createElement(material_1.Typography, { fontWeight: 600 }, x.name))),
194
- react_1.default.createElement(material_1.Box, null, filesLoaded.includes(x.id) && (react_1.default.createElement(material_1.Button, { variant: 'contained', size: 'small', sx: { textTransform: 'none', backgroundColor: '#d1495b', '&:hover': { backgroundColor: '#c1121f' } }, onClick: (e) => deleteFile(e, x.id), startIcon: react_1.default.createElement(Delete_1.default, null) }, "Remover"))))))))),
195
- errorMsg && (react_1.default.createElement(react_1.default.Fragment, null,
196
- react_1.default.createElement(material_1.Typography, { variant: 'caption', color: '#e53935', fontWeight: 600, fontSize: 14, paddingTop: 2 }, errorMsg),
197
- react_1.default.createElement("br", null))),
198
- (0, lodash_get_1.default)(context === null || context === void 0 ? void 0 : context.errors, name) && (react_1.default.createElement(material_1.Typography, { variant: 'caption', color: '#e53935', fontWeight: 600, fontSize: 14 }, "* O campo de arquivo \u00E9 obrigat\u00F3rio")))));
199
- }
200
- exports.default = FileUpload;
@@ -1,12 +0,0 @@
1
- import { ReactElement } from 'react';
2
- export default function FileUpload({ name, required, title, defaultChecked, xs, unregisterNameList, sm, md, ...props }: {
3
- name: string;
4
- children?: [ReactElement, ReactElement];
5
- title?: string;
6
- unregisterNameList: string[];
7
- defaultChecked?: boolean;
8
- required?: boolean;
9
- xs?: number;
10
- sm?: number;
11
- md?: number;
12
- }): JSX.Element;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- const material_1 = require("@mui/material");
18
- const InputLabel_1 = __importDefault(require("@mui/material/InputLabel"));
19
- const react_1 = __importDefault(require("react"));
20
- const Switch_1 = __importDefault(require("../switch/Switch"));
21
- const ToggleVisibility_1 = require("../switch/ToggleVisibility");
22
- const Input_1 = require("./Input");
23
- function FileUpload(_a) {
24
- var { name, required = false, title, defaultChecked = false, xs = 12, unregisterNameList, sm, md } = _a, props = __rest(_a, ["name", "required", "title", "defaultChecked", "xs", "unregisterNameList", "sm", "md"]);
25
- const switchName = `${name}-switch`;
26
- return (react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }),
27
- title && (react_1.default.createElement(InputLabel_1.default, { required: required, sx: { textTransform: 'capitalize' } }, title)),
28
- react_1.default.createElement(material_1.Stack, { direction: 'row' },
29
- react_1.default.createElement(Switch_1.default, { name: switchName, defaultChecked: defaultChecked }),
30
- react_1.default.createElement(ToggleVisibility_1.SwitchWatch, { switchId: switchName, unregisterNameList: unregisterNameList },
31
- react_1.default.createElement(Input_1.Input, { name: 'ddd', type: 'input' })))));
32
- }
33
- exports.default = FileUpload;
@@ -1,12 +0,0 @@
1
- /// <reference types="react" />
2
- export default function AutoComplete({ name, required, title, customPlaceholder, url, xs, sm, md, dataPath, }: {
3
- url: string;
4
- name: string;
5
- title?: string;
6
- dataPath?: string;
7
- customPlaceholder?: string;
8
- required?: boolean;
9
- xs?: number;
10
- sm?: number;
11
- md?: number;
12
- }): JSX.Element;
@@ -1,69 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const material_1 = require("@mui/material");
30
- const InputLabel_1 = __importDefault(require("@mui/material/InputLabel"));
31
- const lodash_get_1 = __importDefault(require("lodash.get"));
32
- const react_1 = __importStar(require("react"));
33
- const react_query_1 = require("react-query");
34
- const auth_1 = require("../../../context/auth");
35
- const form_1 = require("../../../context/form");
36
- function AutoComplete({ name, required = false, title, customPlaceholder, url, xs = 12, sm, md, dataPath = '', }) {
37
- const context = (0, react_1.useContext)(form_1.FormContext);
38
- const { user } = (0, react_1.useContext)(auth_1.AuthContext);
39
- const [options, setOptions] = (0, react_1.useState)([]);
40
- const { isLoading, data, error } = (0, react_query_1.useQuery)(`autocomplete-${name}`, () => fetch(url, {
41
- headers: {
42
- Authorization: `Bearer ${user ? user.token : ''}`,
43
- },
44
- }).then((x) => x.json().then((list) => setOptions(getData(list)))));
45
- // transformar isso em um component ou utils
46
- const getData = (0, react_1.useCallback)((dt) => {
47
- if (Array.isArray(dt))
48
- return dt;
49
- if (typeof dt === 'object')
50
- return (0, lodash_get_1.default)(dt, dataPath);
51
- }, []);
52
- const onSelect = (0, react_1.useCallback)((e, value) => {
53
- context === null || context === void 0 ? void 0 : context.formSetValue(name, value ? value.id : '');
54
- context === null || context === void 0 ? void 0 : context.formTrigger(name);
55
- }, [context, name]);
56
- return (react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }),
57
- title && react_1.default.createElement(InputLabel_1.default, { required: required }, title),
58
- react_1.default.createElement("input", Object.assign({ type: 'text' }, context === null || context === void 0 ? void 0 : context.formRegister(name, {
59
- validate: (v, f) => {
60
- if (v.length <= 0 && required)
61
- return 'Este campo é obrigatório';
62
- },
63
- }), { hidden: true })),
64
- react_1.default.createElement(material_1.Autocomplete, { options: options, isOptionEqualToValue: (option, value) => option.id === value.id, onChange: onSelect, renderInput: (params) => {
65
- var _a;
66
- return (react_1.default.createElement(material_1.TextField, Object.assign({}, params, { placeholder: customPlaceholder, size: 'small', error: (0, lodash_get_1.default)(context === null || context === void 0 ? void 0 : context.errors, name) ? true : false, helperText: (_a = (0, lodash_get_1.default)(context === null || context === void 0 ? void 0 : context.errors, name)) === null || _a === void 0 ? void 0 : _a.message })));
67
- } })));
68
- }
69
- exports.default = AutoComplete;
@@ -1,20 +0,0 @@
1
- /// <reference types="react" />
2
- export default function FetchAutoComplete({ name, url, title, customLoadingText, shouldRefetch, required, defaultValue, route, onChange, xs, sm, watchValue, md, disabled, }: {
3
- name: string;
4
- url: string;
5
- title: string;
6
- watchValue?: {
7
- id: number | string;
8
- label: string;
9
- };
10
- customLoadingText?: string;
11
- defaultValue?: number;
12
- required?: boolean;
13
- route?: string;
14
- onChange?: (id: number | undefined) => void;
15
- shouldRefetch?: boolean;
16
- xs?: number;
17
- sm?: number;
18
- md?: number;
19
- disabled?: boolean;
20
- }): JSX.Element;
@@ -1,134 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const material_1 = require("@mui/material");
30
- const lodash_get_1 = __importDefault(require("lodash.get"));
31
- const react_1 = __importStar(require("react"));
32
- const auth_1 = require("../../../context/auth");
33
- const form_1 = require("../../../context/form");
34
- let useDefault = true;
35
- function FetchAutoComplete({ name, url, title, customLoadingText, shouldRefetch = true, required = false, defaultValue, route = '', onChange = () => { }, xs = 12, sm, watchValue, md, disabled = false, }) {
36
- const context = (0, react_1.useContext)(form_1.FormContext);
37
- const [loading, setLoading] = (0, react_1.useState)(true);
38
- const [list, setList] = (0, react_1.useState)([]);
39
- const [loadingText, setLoadingText] = (0, react_1.useState)('Carregando...');
40
- const [dValue, setDValue] = (0, react_1.useState)(null);
41
- const [value, setValue] = (0, react_1.useState)(null);
42
- const { user } = (0, react_1.useContext)(auth_1.AuthContext);
43
- (0, react_1.useEffect)(() => {
44
- if (defaultValue) {
45
- fetch(url, {
46
- method: 'GET',
47
- headers: {
48
- Authorization: `Bearer ${user === null || user === void 0 ? void 0 : user.token}`,
49
- },
50
- }).then((res) => {
51
- if (res.ok) {
52
- console.log('llll');
53
- res.json().then((j) => {
54
- let value = (0, lodash_get_1.default)(j, route, j).filter((x) => x.id === defaultValue);
55
- if (value.length > 0) {
56
- setList((0, lodash_get_1.default)(j, route, j));
57
- setLoading(false);
58
- context.formSetValue(name, defaultValue);
59
- setDValue(value[0]);
60
- }
61
- else {
62
- setLoadingText('Erro ao carregar dados. Valor inválido');
63
- }
64
- });
65
- }
66
- else {
67
- setLoadingText('Erro ao carregar dados');
68
- }
69
- });
70
- }
71
- }, []);
72
- (0, react_1.useEffect)(() => {
73
- if (watchValue && useDefault) {
74
- setValue(watchValue);
75
- context.formSetValue(name, watchValue.id);
76
- onChange(watchValue.id);
77
- }
78
- }, [watchValue]);
79
- function onFocus() {
80
- if ((defaultValue || !shouldRefetch) && list.length > 0)
81
- return;
82
- setLoading(true);
83
- setList([]);
84
- customLoadingText && setLoadingText(customLoadingText);
85
- fetch(url, {
86
- method: 'GET',
87
- headers: {
88
- Authorization: `Bearer ${user === null || user === void 0 ? void 0 : user.token}`,
89
- },
90
- }).then((res) => {
91
- if (res.ok) {
92
- res.json().then((j) => {
93
- setList((0, lodash_get_1.default)(j, route, j));
94
- setLoading(false);
95
- });
96
- }
97
- else {
98
- setLoadingText('Erro ao carregar dados');
99
- }
100
- });
101
- }
102
- function handleAutoCompleteChange(value) {
103
- useDefault = false;
104
- if (value) {
105
- setValue(value);
106
- context.formSetValue(name, value.id);
107
- onChange(value.id);
108
- return;
109
- }
110
- setValue(null);
111
- context.formSetValue(name, '');
112
- onChange(undefined);
113
- }
114
- if (defaultValue && list.length <= 0 && !dValue)
115
- return (react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }),
116
- react_1.default.createElement(material_1.TextField, { size: 'small', fullWidth: true, placeholder: loadingText, disabled: true })));
117
- return (react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }),
118
- title && react_1.default.createElement(material_1.InputLabel, { required: required }, title),
119
- react_1.default.createElement("input", Object.assign({ type: 'text' }, context === null || context === void 0 ? void 0 : context.formRegister(name, {
120
- validate: (v, f) => {
121
- if (!v)
122
- return 'Este campo é obrigatório';
123
- if (v.length <= 0 && required)
124
- return 'Este campo é obrigatório';
125
- },
126
- }), { hidden: true })),
127
- react_1.default.createElement(material_1.Autocomplete, { value: value, loading: loading, loadingText: loadingText, options: list, defaultValue: dValue, getOptionDisabled: (option) => { var _a; return (_a = option === null || option === void 0 ? void 0 : option.disabled) !== null && _a !== void 0 ? _a : false; }, isOptionEqualToValue: (op, value) => op.id === value.id, onChange: (e, v) => handleAutoCompleteChange(v), renderInput: (params) => {
128
- var _a;
129
- return (react_1.default.createElement(material_1.TextField, Object.assign({}, params, { size: 'small', fullWidth: true, placeholder: title, onFocus: onFocus, error: (0, lodash_get_1.default)(context === null || context === void 0 ? void 0 : context.errors, name) ? true : false, helperText: (_a = (0, lodash_get_1.default)(context === null || context === void 0 ? void 0 : context.errors, name)) === null || _a === void 0 ? void 0 : _a.message })));
130
- }, sx: {
131
- bgcolor: 'white',
132
- }, size: 'small', fullWidth: true, disabled: disabled })));
133
- }
134
- exports.default = FetchAutoComplete;
@@ -1,19 +0,0 @@
1
- /// <reference types="react" />
2
- export declare function FixedAutoComplete({ name, title, required, list, defaultValue, onChange, xs, sm, watchValue, forceUpdate, md, }: {
3
- name: string;
4
- title: string;
5
- watchValue?: {
6
- id: number | string;
7
- label: string;
8
- };
9
- list: Object[];
10
- customLoadingText?: string;
11
- defaultValue?: Object;
12
- required?: boolean;
13
- onChange?: (id: number | undefined) => void;
14
- shouldRefetch?: boolean;
15
- forceUpdate?: boolean;
16
- xs?: number;
17
- sm?: number;
18
- md?: number;
19
- }): JSX.Element;
@@ -1,83 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.FixedAutoComplete = void 0;
30
- const material_1 = require("@mui/material");
31
- const lodash_get_1 = __importDefault(require("lodash.get"));
32
- const react_1 = __importStar(require("react"));
33
- const form_1 = require("../../../context/form");
34
- let useDefault = true;
35
- function FixedAutoComplete({ name, title, required = false, list, defaultValue, onChange = () => { }, xs = 12, sm, watchValue, forceUpdate = false, md, }) {
36
- const context = (0, react_1.useContext)(form_1.FormContext);
37
- const [value, setValue] = (0, react_1.useState)(null);
38
- (0, react_1.useEffect)(() => {
39
- if (defaultValue)
40
- context === null || context === void 0 ? void 0 : context.formSetValue(name, defaultValue.id);
41
- }, []);
42
- (0, react_1.useEffect)(() => {
43
- if (watchValue && (useDefault || forceUpdate)) {
44
- setValue(watchValue);
45
- context.formSetValue(name, watchValue.id);
46
- onChange(watchValue.id);
47
- }
48
- else if (watchValue === undefined && (useDefault || forceUpdate)) {
49
- setValue(null);
50
- context.formSetValue(name, undefined);
51
- onChange(undefined);
52
- }
53
- }, [watchValue]);
54
- function handleAutoCompleteChange(value) {
55
- useDefault = false;
56
- if (value) {
57
- setValue(value);
58
- context.formSetValue(name, value.id);
59
- onChange(value.id);
60
- return;
61
- }
62
- setValue(null);
63
- context.formSetValue(name, '');
64
- onChange(undefined);
65
- }
66
- return (react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }),
67
- title && react_1.default.createElement(material_1.InputLabel, { required: required }, title),
68
- react_1.default.createElement("input", Object.assign({ type: 'text' }, context === null || context === void 0 ? void 0 : context.formRegister(name, {
69
- validate: (v, f) => {
70
- if (!v)
71
- return 'Este campo é obrigatório';
72
- if ((v === null || v === void 0 ? void 0 : v.length) <= 0 && required)
73
- return 'Este campo é obrigatório';
74
- },
75
- }), { hidden: true })),
76
- react_1.default.createElement(material_1.Autocomplete, { value: value, options: list, defaultValue: defaultValue, getOptionLabel: (option) => (option.label ? option.label.toString() : 'Não Encontrado'), isOptionEqualToValue: (op, value) => op.id === value.id, onChange: (e, v) => handleAutoCompleteChange(v), renderInput: (params) => {
77
- var _a;
78
- return (react_1.default.createElement(material_1.TextField, Object.assign({}, params, { size: 'small', fullWidth: true, placeholder: title, error: (0, lodash_get_1.default)(context === null || context === void 0 ? void 0 : context.errors, name) ? true : false, helperText: (_a = (0, lodash_get_1.default)(context === null || context === void 0 ? void 0 : context.errors, name)) === null || _a === void 0 ? void 0 : _a.message })));
79
- }, size: 'small', sx: {
80
- bgcolor: 'white',
81
- }, fullWidth: true })));
82
- }
83
- exports.FixedAutoComplete = FixedAutoComplete;
@@ -1,20 +0,0 @@
1
- /// <reference types="react" />
2
- export default function GenericFetchAutoComplete({ name, url, title, customLoadingText, shouldRefetch, required, defaultValue, route, onChange, xs, sm, watchValue, md, disabled, }: {
3
- name: string;
4
- url: string;
5
- title: string;
6
- watchValue?: {
7
- id: number | string;
8
- label: string;
9
- };
10
- customLoadingText?: string;
11
- defaultValue?: number;
12
- required?: boolean;
13
- route?: string;
14
- onChange?: (id: number | undefined) => void;
15
- shouldRefetch?: boolean;
16
- xs?: number;
17
- sm?: number;
18
- md?: number;
19
- disabled?: boolean;
20
- }): JSX.Element;