@ssplib/react-components 0.0.293 → 0.0.295

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 (139) hide show
  1. package/Map-31d95a26.js +2 -0
  2. package/Map-31d95a26.js.map +1 -0
  3. package/Map-644d2f90.js +2 -0
  4. package/Map-644d2f90.js.map +1 -0
  5. package/components/detalhes/Category.d.ts +0 -1
  6. package/components/detalhes/Field.d.ts +0 -1
  7. package/components/detalhes/FieldLabel.d.ts +0 -1
  8. package/components/detalhes/File.d.ts +0 -1
  9. package/components/form/checkbox/CheckBoxAdditional.d.ts +0 -1
  10. package/components/form/checkbox/RequiredCheckBoxValidator.d.ts +0 -1
  11. package/components/form/date/DatePicker.d.ts +0 -1
  12. package/components/form/date/GenericDatePicker.d.ts +0 -1
  13. package/components/form/date/TimePicker.d.ts +0 -1
  14. package/components/form/file/DropFileUpload.d.ts +0 -1
  15. package/components/form/file/FileUpload.d.ts +0 -1
  16. package/components/form/input/AutoComplete.d.ts +0 -1
  17. package/components/form/input/FetchAutoComplete.d.ts +0 -1
  18. package/components/form/input/FixedAutoComplete.d.ts +0 -1
  19. package/components/form/input/GenericFetchAutoComplete.d.ts +0 -1
  20. package/components/form/input/GenericMultInput.d.ts +0 -1
  21. package/components/form/input/MultInput.d.ts +0 -1
  22. package/components/form/input/OptionalInput.d.ts +10 -0
  23. package/components/form/input/OtherCheckBox.d.ts +0 -1
  24. package/components/form/switch/ToggleVisibility.d.ts +0 -1
  25. package/components/form/table/FilterSection.d.ts +0 -1
  26. package/components/form/table/TableLoadingState.d.ts +0 -1
  27. package/components/form/table/utils.d.ts +0 -1
  28. package/components/icons/icons.d.ts +0 -1
  29. package/components/loading/LinearProgress.d.ts +2 -0
  30. package/components/loading/LoadingScreen.d.ts +7 -0
  31. package/components/map/index.d.ts +0 -1
  32. package/components/modal/Modal.d.ts +0 -1
  33. package/components/navbar/NavBar.d.ts +0 -1
  34. package/components/navbar/TabNavBar.d.ts +0 -1
  35. package/components/providers/GenericFormProvider.d.ts +10 -0
  36. package/components/providers/KeycloakAuthProvider.d.ts +0 -1
  37. package/components/providers/OAuthProvider.d.ts +0 -1
  38. package/components/providers/SspComponentsProvider.d.ts +0 -1
  39. package/components/teste/Teste.d.ts +3 -0
  40. package/components/utils/Bt.d.ts +0 -1
  41. package/context/auth.d.ts +0 -1
  42. package/decorators/FormBaseDecorator.d.ts +2 -0
  43. package/decorators/GenericFormBaseDecorator.d.ts +2 -0
  44. package/decorators/StepperDecorator.d.ts +2 -0
  45. package/index.cjs +3 -0
  46. package/index.cjs.map +1 -0
  47. package/index.d.ts +18 -18
  48. package/index.esm.js +3 -0
  49. package/index.esm.js.map +1 -0
  50. package/package.json +1 -1
  51. package/stories/Autocomplete.stories.d.ts +6 -0
  52. package/stories/CheckBox.stories.d.ts +6 -0
  53. package/stories/CheckBoxWarning.stories.d.ts +6 -0
  54. package/stories/DatePicker.stories.d.ts +6 -0
  55. package/stories/DetalhesCategory.stories.d.ts +6 -0
  56. package/stories/DetalhesField.stories.d.ts +6 -0
  57. package/stories/DetalhesFieldLabel.stories.d.ts +6 -0
  58. package/stories/DetalhesFile.stories.d.ts +6 -0
  59. package/stories/DropFileUpload.stories.d.ts +6 -0
  60. package/stories/ExemploAssitirValorInput.stories.d.ts +7 -0
  61. package/stories/ExemploInputs.stories.d.ts +7 -0
  62. package/stories/ExemploTable.stories.d.ts +1 -0
  63. package/stories/ExemploValoresCompartilhados.stories.d.ts +7 -0
  64. package/stories/FetchAutocomplete.stories.d.ts +6 -0
  65. package/stories/FileUpload.stories.d.ts +6 -0
  66. package/stories/FixedAutocomplete.stories.d.ts +6 -0
  67. package/stories/GenericFetchAutocomplete.stories.d.ts +6 -0
  68. package/stories/GenericInput.stories.d.ts +6 -0
  69. package/stories/GenericTable.stories.d.ts +6 -0
  70. package/stories/Input.stories.d.ts +6 -0
  71. package/stories/LinearProgress.stories.d.ts +6 -0
  72. package/stories/LoadingScreen.stories.d.ts +6 -0
  73. package/stories/Map.stories.d.ts +6 -0
  74. package/stories/MultInput.stories.d.ts +6 -0
  75. package/stories/NavBar.stories.d.ts +6 -0
  76. package/stories/OptionalInput.stories.d.ts +6 -0
  77. package/stories/OtherCheckBox.stories.d.ts +6 -0
  78. package/stories/Stepper.stories.d.ts +6 -0
  79. package/stories/StepperBlock.stories.d.ts +6 -0
  80. package/stories/Switch.stories.d.ts +6 -0
  81. package/stories/Table.stories.d.ts +4 -0
  82. package/stories/TableWithStaticData.stories.d.ts +6 -0
  83. package/stories/Teste.stories.d.ts +6 -0
  84. package/stories/TimePicker.stories.d.ts +6 -0
  85. package/components/detalhes/Category.js +0 -14
  86. package/components/detalhes/Field.js +0 -42
  87. package/components/detalhes/FieldLabel.js +0 -28
  88. package/components/detalhes/File.js +0 -62
  89. package/components/form/checkbox/CheckBox.js +0 -18
  90. package/components/form/checkbox/CheckBoxAdditional.js +0 -95
  91. package/components/form/checkbox/CheckBoxWarning.js +0 -43
  92. package/components/form/checkbox/RequiredCheckBoxValidator.js +0 -85
  93. package/components/form/date/DatePicker.js +0 -105
  94. package/components/form/date/GenericDatePicker.js +0 -105
  95. package/components/form/date/TimePicker.js +0 -82
  96. package/components/form/file/DropFileUpload.js +0 -226
  97. package/components/form/file/FileUpload.js +0 -200
  98. package/components/form/input/ActiveInput.js +0 -33
  99. package/components/form/input/AutoComplete.js +0 -69
  100. package/components/form/input/FetchAutoComplete.js +0 -132
  101. package/components/form/input/FixedAutoComplete.js +0 -81
  102. package/components/form/input/GenericFetchAutoComplete.js +0 -132
  103. package/components/form/input/GenericInput.js +0 -168
  104. package/components/form/input/GenericMaskInput.js +0 -79
  105. package/components/form/input/GenericMultInput.js +0 -67
  106. package/components/form/input/Input.js +0 -168
  107. package/components/form/input/MaskInput.js +0 -78
  108. package/components/form/input/MultInput.js +0 -67
  109. package/components/form/input/OtherCheckBox.js +0 -56
  110. package/components/form/stepper/Stepper.js +0 -135
  111. package/components/form/stepper/StepperBlock.js +0 -97
  112. package/components/form/switch/Switch.js +0 -54
  113. package/components/form/switch/ToggleVisibility.js +0 -61
  114. package/components/form/table/FilterSection.js +0 -217
  115. package/components/form/table/GenericTable.js +0 -1034
  116. package/components/form/table/Table.js +0 -514
  117. package/components/form/table/TableErrorState.js +0 -27
  118. package/components/form/table/TableLoadingState.js +0 -39
  119. package/components/form/table/types.js +0 -2
  120. package/components/form/table/utils.js +0 -361
  121. package/components/icons/icons.js +0 -24
  122. package/components/map/AnimatedMarker.js +0 -65
  123. package/components/map/DraggableMarker.js +0 -66
  124. package/components/map/Map.js +0 -23
  125. package/components/map/index.js +0 -31
  126. package/components/modal/Modal.js +0 -105
  127. package/components/navbar/NavBar.js +0 -171
  128. package/components/navbar/TabNavBar.js +0 -179
  129. package/components/providers/FormProvider.js +0 -54
  130. package/components/providers/KeycloakAuthProvider.js +0 -118
  131. package/components/providers/OAuthProvider.js +0 -138
  132. package/components/providers/SspComponentsProvider.js +0 -18
  133. package/components/utils/Bt.js +0 -35
  134. package/components/utils/CustomMenu.js +0 -39
  135. package/context/auth.js +0 -5
  136. package/context/form.js +0 -5
  137. package/index.js +0 -94
  138. package/types/auth.js +0 -2
  139. package/types/form.js +0 -31
@@ -1,85 +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 __rest = (this && this.__rest) || function (s, e) {
26
- var t = {};
27
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
28
- t[p] = s[p];
29
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
30
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
31
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
32
- t[p[i]] = s[p[i]];
33
- }
34
- return t;
35
- };
36
- var __importDefault = (this && this.__importDefault) || function (mod) {
37
- return (mod && mod.__esModule) ? mod : { "default": mod };
38
- };
39
- Object.defineProperty(exports, "__esModule", { value: true });
40
- const react_1 = __importStar(require("react"));
41
- const form_1 = require("../../../context/form");
42
- const material_1 = require("@mui/material");
43
- const lodash_get_1 = __importDefault(require("lodash.get"));
44
- function getChildrenNames(children) {
45
- let arr = [];
46
- children.forEach((x) => {
47
- if (!x.props)
48
- return;
49
- if (x.props.children) {
50
- const childrenArr = getChildrenNames(Array.isArray(x.props.children) ? x.props.children : [x.props.children]);
51
- arr = arr.concat(childrenArr);
52
- return;
53
- }
54
- if (x.props.name) {
55
- arr.push(x.props.name);
56
- return;
57
- }
58
- });
59
- return arr;
60
- }
61
- function RequiredCheckBoxGroup(_a) {
62
- var _b;
63
- var { customText = 'Selecione pelo menos 1 opção' } = _a, props = __rest(_a, ["customText"]);
64
- const context = (0, react_1.useContext)(form_1.FormContext);
65
- return (react_1.default.createElement(material_1.Grid, { container: true, sx: { border: (0, lodash_get_1.default)(context.errors, props.name) ? '2px solid #a51c30' : '', padding: 1, borderRadius: 2 } },
66
- react_1.default.createElement("input", Object.assign({ key: 1, type: 'text' }, context.formRegister(props.name, {
67
- validate: (v, i) => {
68
- const names = getChildrenNames(Array.isArray(props.children) ? props.children : [props.children]);
69
- let canContinue = false;
70
- names.forEach((x, i) => {
71
- const nameValue = context.formGetValues(x);
72
- if (nameValue) {
73
- canContinue = true;
74
- }
75
- });
76
- if (!canContinue)
77
- return customText;
78
- return true;
79
- },
80
- }), { hidden: true })),
81
- props.children,
82
- react_1.default.createElement(material_1.Grid, { item: true, xs: 12 },
83
- react_1.default.createElement(material_1.Typography, { sx: { color: '#a51c30', fontSize: 16, paddingLeft: 1 } }, (_b = (0, lodash_get_1.default)(context.errors, props.name)) === null || _b === void 0 ? void 0 : _b.message))));
84
- }
85
- exports.default = RequiredCheckBoxGroup;
@@ -1,105 +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 __rest = (this && this.__rest) || function (s, e) {
26
- var t = {};
27
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
28
- t[p] = s[p];
29
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
30
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
31
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
32
- t[p[i]] = s[p[i]];
33
- }
34
- return t;
35
- };
36
- var __importDefault = (this && this.__importDefault) || function (mod) {
37
- return (mod && mod.__esModule) ? mod : { "default": mod };
38
- };
39
- Object.defineProperty(exports, "__esModule", { value: true });
40
- const material_1 = require("@mui/material");
41
- const x_date_pickers_1 = require("@mui/x-date-pickers");
42
- const AdapterDayjs_1 = require("@mui/x-date-pickers/AdapterDayjs");
43
- const x_date_pickers_2 = require("@mui/x-date-pickers");
44
- const dayjs_1 = __importDefault(require("dayjs"));
45
- require("dayjs/locale/pt-br");
46
- const lodash_get_1 = __importDefault(require("lodash.get"));
47
- const lodash_hasin_1 = __importDefault(require("lodash.hasin"));
48
- const react_1 = __importStar(require("react"));
49
- const form_1 = require("../../../context/form");
50
- function DatePicker(_a) {
51
- var _b;
52
- var { name, required = false, title, xs = 12, sm, md, minDt, defaultValue, persistValue, maxDt } = _a, props = __rest(_a, ["name", "required", "title", "xs", "sm", "md", "minDt", "defaultValue", "persistValue", "maxDt"]);
53
- const context = (0, react_1.useContext)(form_1.FormContext);
54
- const [value, setValue] = (0, react_1.useState)(defaultValue !== undefined ? (0, dayjs_1.default)(defaultValue, 'DD/MM/YYYY') : undefined);
55
- const handleChange = (newValue) => {
56
- setValue(newValue);
57
- };
58
- (0, react_1.useEffect)(() => {
59
- if (value === undefined)
60
- return;
61
- context.formSetValue(name, value ? value.format('DD/MM/YYYY') : value);
62
- }, [value]);
63
- (0, react_1.useEffect)(() => {
64
- // Vamos executar o unregister em casos em que não queremos persistir o valor
65
- if (persistValue)
66
- return;
67
- return () => {
68
- context.formUnregister(name);
69
- };
70
- }, []);
71
- return (react_1.default.createElement(react_1.default.Fragment, null,
72
- react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }),
73
- title && react_1.default.createElement(material_1.InputLabel, { required: required }, title),
74
- react_1.default.createElement(x_date_pickers_1.LocalizationProvider, { adapterLocale: 'pt-br', dateAdapter: AdapterDayjs_1.AdapterDayjs },
75
- react_1.default.createElement(x_date_pickers_2.DatePicker, { minDate: (0, dayjs_1.default)(minDt, 'DD/MM/YYYY'), maxDate: (0, dayjs_1.default)(maxDt, 'DD/MM/YYYY'), format: 'DD/MM/YYYY', value: value, onChange: handleChange, disableHighlightToday: true, sx: {
76
- outline: (0, lodash_get_1.default)(context.errors, name) ? '1px solid #a51c30' : '',
77
- backgroundColor: 'white',
78
- width: '100%',
79
- div: {
80
- input: {
81
- paddingX: 2,
82
- paddingY: 1.05,
83
- },
84
- },
85
- }, inputRef: (params) => (react_1.default.createElement(material_1.TextField, Object.assign({ size: 'small' }, params, context === null || context === void 0 ? void 0 : context.formRegister(name, {
86
- validate: (v, f) => {
87
- if (!(0, lodash_hasin_1.default)(f, name)) {
88
- return true;
89
- }
90
- if (!v)
91
- v = '';
92
- if (v.length <= 0 && required)
93
- return 'Este campo é obrigatório';
94
- if (v.length < 10 && required)
95
- return 'A data precisa seguir o padrão DD/MM/AAAA';
96
- if (minDt && !((0, dayjs_1.default)(minDt, 'DD/MM/YYYY').isSame((0, dayjs_1.default)(v, 'DD/MM/YYYY')) || (0, dayjs_1.default)(minDt, 'DD/MM/YYYY').isBefore((0, dayjs_1.default)(v, 'DD/MM/YYYY'))))
97
- return `A data tem que ser depois de ${minDt} e antes de ${maxDt}`;
98
- if (maxDt && !((0, dayjs_1.default)(maxDt, 'DD/MM/YYYY').isSame((0, dayjs_1.default)(v, 'DD/MM/YYYY')) || (0, dayjs_1.default)(maxDt, 'DD/MM/YYYY').isAfter((0, dayjs_1.default)(v, 'DD/MM/YYYY'))))
99
- return 'A data escolhida não é válida';
100
- },
101
- shouldUnregister: true,
102
- }), { fullWidth: true }))) }),
103
- react_1.default.createElement(material_1.Typography, { sx: { color: '#a51c30', fontSize: 14, paddingLeft: 1 } }, (_b = (0, lodash_get_1.default)(context.errors, name)) === null || _b === void 0 ? void 0 : _b.message)))));
104
- }
105
- exports.default = DatePicker;
@@ -1,105 +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 __rest = (this && this.__rest) || function (s, e) {
26
- var t = {};
27
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
28
- t[p] = s[p];
29
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
30
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
31
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
32
- t[p[i]] = s[p[i]];
33
- }
34
- return t;
35
- };
36
- var __importDefault = (this && this.__importDefault) || function (mod) {
37
- return (mod && mod.__esModule) ? mod : { "default": mod };
38
- };
39
- Object.defineProperty(exports, "__esModule", { value: true });
40
- const material_1 = require("@mui/material");
41
- const x_date_pickers_1 = require("@mui/x-date-pickers");
42
- const AdapterDayjs_1 = require("@mui/x-date-pickers/AdapterDayjs");
43
- const x_date_pickers_2 = require("@mui/x-date-pickers");
44
- const dayjs_1 = __importDefault(require("dayjs"));
45
- require("dayjs/locale/pt-br");
46
- const lodash_get_1 = __importDefault(require("lodash.get"));
47
- const lodash_hasin_1 = __importDefault(require("lodash.hasin"));
48
- const react_1 = __importStar(require("react"));
49
- const react_hook_form_1 = require("react-hook-form");
50
- function GenericDatePicker(_a) {
51
- var _b;
52
- var { name, required = false, title, xs = 12, sm, md, minDt, defaultValue, persistValue, maxDt } = _a, props = __rest(_a, ["name", "required", "title", "xs", "sm", "md", "minDt", "defaultValue", "persistValue", "maxDt"]);
53
- const context = (0, react_hook_form_1.useFormContext)();
54
- const [value, setValue] = (0, react_1.useState)(defaultValue !== undefined ? (0, dayjs_1.default)(defaultValue, 'DD/MM/YYYY') : undefined);
55
- const handleChange = (newValue) => {
56
- setValue(undefined);
57
- };
58
- (0, react_1.useEffect)(() => {
59
- if (value === undefined)
60
- return;
61
- context.setValue(name, value ? value.format('DD/MM/YYYY') : value);
62
- }, [value]);
63
- (0, react_1.useEffect)(() => {
64
- // Vamos executar o unregister em casos em que não queremos persistir o valor
65
- if (persistValue)
66
- return;
67
- return () => {
68
- context.unregister(name);
69
- };
70
- }, []);
71
- return (react_1.default.createElement(react_1.default.Fragment, null,
72
- react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }),
73
- title && react_1.default.createElement(material_1.InputLabel, { required: required }, title),
74
- react_1.default.createElement(x_date_pickers_1.LocalizationProvider, { adapterLocale: 'pt-br', dateAdapter: AdapterDayjs_1.AdapterDayjs },
75
- react_1.default.createElement(x_date_pickers_2.DatePicker, { minDate: (0, dayjs_1.default)(minDt, 'DD/MM/YYYY'), maxDate: (0, dayjs_1.default)(maxDt, 'DD/MM/YYYY'), format: 'DD/MM/YYYY', value: value, onChange: handleChange, disableHighlightToday: true, sx: {
76
- outline: (0, lodash_get_1.default)(context.formState.errors, name) ? '1px solid #a51c30' : '',
77
- backgroundColor: 'white',
78
- width: '100%',
79
- div: {
80
- input: {
81
- paddingX: 2,
82
- paddingY: 1.05,
83
- },
84
- },
85
- }, inputRef: (params) => (react_1.default.createElement(material_1.TextField, Object.assign({ size: 'small' }, params, context === null || context === void 0 ? void 0 : context.register(name, {
86
- validate: (v, f) => {
87
- if (!(0, lodash_hasin_1.default)(f, name)) {
88
- return true;
89
- }
90
- if (!v)
91
- v = '';
92
- if (v.length <= 0 && required)
93
- return 'Este campo é obrigatório';
94
- if (v.length < 10 && required)
95
- return 'A data precisa seguir o padrão DD/MM/AAAA';
96
- if (minDt && !((0, dayjs_1.default)(minDt, 'DD/MM/YYYY').isSame((0, dayjs_1.default)(v, 'DD/MM/YYYY')) || (0, dayjs_1.default)(minDt, 'DD/MM/YYYY').isBefore((0, dayjs_1.default)(v, 'DD/MM/YYYY'))))
97
- return `A data tem que ser depois de ${minDt} e antes de ${maxDt}`;
98
- if (maxDt && !((0, dayjs_1.default)(maxDt, 'DD/MM/YYYY').isSame((0, dayjs_1.default)(v, 'DD/MM/YYYY')) || (0, dayjs_1.default)(maxDt, 'DD/MM/YYYY').isAfter((0, dayjs_1.default)(v, 'DD/MM/YYYY'))))
99
- return 'A data escolhida não é válida';
100
- },
101
- shouldUnregister: true,
102
- }), { fullWidth: true }))) }),
103
- react_1.default.createElement(material_1.Typography, { sx: { color: '#a51c30', fontSize: 14, paddingLeft: 1 } }, (_b = (0, lodash_get_1.default)(context.formState.errors, name)) === null || _b === void 0 ? void 0 : _b.message)))));
104
- }
105
- exports.default = GenericDatePicker;
@@ -1,82 +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 x_date_pickers_1 = require("@mui/x-date-pickers");
31
- const AdapterDayjs_1 = require("@mui/x-date-pickers/AdapterDayjs");
32
- const dayjs_1 = __importDefault(require("dayjs"));
33
- const lodash_get_1 = __importDefault(require("lodash.get"));
34
- require("dayjs/locale/pt-br");
35
- const react_1 = __importStar(require("react"));
36
- const form_1 = require("../../../context/form");
37
- const lodash_hasin_1 = __importDefault(require("lodash.hasin"));
38
- function TimePicker({ name, required = false, title, defaultValue = '', xs = 12, sm, md, }) {
39
- var _a;
40
- const context = (0, react_1.useContext)(form_1.FormContext);
41
- const [value, setValue] = (0, react_1.useState)(defaultValue ? (0, dayjs_1.default)(defaultValue, 'HH:mm') : null);
42
- const handleChange = (newValue) => {
43
- setValue(newValue);
44
- };
45
- (0, react_1.useEffect)(() => {
46
- context.formSetValue(name, value ? value.format('HH:mm') : value);
47
- }, [value]);
48
- (0, react_1.useEffect)(() => {
49
- return () => {
50
- context.formUnregister(name);
51
- };
52
- }, []);
53
- return (react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }),
54
- title && react_1.default.createElement(material_1.InputLabel, { required: required }, title),
55
- react_1.default.createElement(x_date_pickers_1.LocalizationProvider, { adapterLocale: 'pt-br', dateAdapter: AdapterDayjs_1.AdapterDayjs },
56
- react_1.default.createElement(x_date_pickers_1.TimePicker, { value: value, ampm: false, onChange: handleChange, sx: {
57
- outline: (0, lodash_get_1.default)(context.errors, name) ? '1px solid #a51c30' : '',
58
- backgroundColor: 'white',
59
- width: '100%',
60
- div: {
61
- input: {
62
- paddingX: 2,
63
- paddingY: 1.05,
64
- },
65
- },
66
- }, inputRef: (params) => (react_1.default.createElement(material_1.TextField, Object.assign({ size: 'small' }, params, context === null || context === void 0 ? void 0 : context.formRegister(name, {
67
- validate: (v, f) => {
68
- if (!(0, lodash_hasin_1.default)(f, name)) {
69
- return true;
70
- }
71
- if (!v)
72
- v = '';
73
- if (v.length <= 0 && required)
74
- return 'Este campo é obrigatório';
75
- if (v.length < 5 && required)
76
- return 'A hora precisa seguir o padrão HH:MM';
77
- },
78
- shouldUnregister: true,
79
- }), { fullWidth: true }))) }),
80
- react_1.default.createElement(material_1.Typography, { sx: { color: '#a51c30', fontSize: 15, paddingLeft: 1 } }, (_a = (0, lodash_get_1.default)(context.errors, name)) === null || _a === void 0 ? void 0 : _a.message))));
81
- }
82
- exports.default = TimePicker;
@@ -1,226 +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 system_1 = require("@mui/system");
31
- const axios_1 = __importDefault(require("axios"));
32
- const lodash_get_1 = __importDefault(require("lodash.get"));
33
- const react_1 = __importStar(require("react"));
34
- const react_dropzone_1 = require("react-dropzone");
35
- const auth_1 = require("../../../context/auth");
36
- const form_1 = require("../../../context/form");
37
- const icons_1 = require("../../icons/icons");
38
- function bytesToMegabytes(bytes) {
39
- const megabytes = bytes / (1024 * 1024);
40
- return megabytes;
41
- }
42
- function bytesToKBorMB(bytes) {
43
- const KB = 1024;
44
- const MB = 1024 * KB;
45
- if (bytes < MB) {
46
- const KBValue = bytes / KB;
47
- return `${KBValue.toFixed(1)}KB`;
48
- }
49
- else {
50
- const MBValue = bytes / MB;
51
- return `${MBValue.toFixed(1)}MB`;
52
- }
53
- }
54
- function DropFileUpload({ name, tipoArquivo, title, required = false, multiple = false, apiURL, sizeLimit = 4, xs = 12, sm, md, route = '', tstToken = '', dropZoneOptions, }) {
55
- const { getRootProps, getInputProps } = (0, react_dropzone_1.useDropzone)(Object.assign({ multiple, useFsAccessApi: true, onDrop: (dropFiles) => {
56
- const fileList = [];
57
- setProgress(-1);
58
- dropFiles
59
- .filter((file) => {
60
- if (bytesToMegabytes(file.size) > sizeLimit) {
61
- setErrorMsg(`Por favor, escolha um arquivo com tamanho inferior a ${sizeLimit} MB`);
62
- setTimeout(() => {
63
- setErrorMsg('');
64
- }, 3000);
65
- return false;
66
- }
67
- return true;
68
- })
69
- .forEach((file, index) => {
70
- let id = Date.now() + index;
71
- // fetch API
72
- const fd = new FormData();
73
- fd.append('files', file);
74
- fd.append('tipoArquivo', tipoArquivo);
75
- axios_1.default
76
- .post(apiURL, fd, {
77
- onUploadProgress: (progressEvent) => {
78
- const percentCompleted = Math.round((progressEvent.loaded * 100) / progressEvent.total);
79
- setProgress(percentCompleted);
80
- if (percentCompleted >= 100) {
81
- setFiles((f) => [...f, { id: id, name: file.name, loading: true, error: false, file: file, size: file.size }]);
82
- }
83
- },
84
- headers: { Authorization: `Bearer ${tstToken === '' ? (user ? user.token : '') : tstToken}` },
85
- })
86
- .then((res) => {
87
- if (res.status > 200) {
88
- const fileIdFromApi = (0, lodash_get_1.default)(res.data, route, res.data)[0];
89
- const fileId = fileIdFromApi['coSeqArquivo'];
90
- context.setFilesUid((fId) => [
91
- ...fId,
92
- {
93
- CO_SEQ_ARQUIVO: fileId,
94
- CO_TIPO_ARQUIVO: parseInt(tipoArquivo),
95
- },
96
- ]);
97
- setFilesLoaded((fl) => [...fl, id]);
98
- const f = {};
99
- f[id] = fileId;
100
- setFilesIds((ids) => (Object.assign(Object.assign({}, ids), f)));
101
- }
102
- else {
103
- setProgress(-1);
104
- removeFile(id);
105
- }
106
- })
107
- .catch((err) => {
108
- console.log(err);
109
- setProgress(-1);
110
- removeFile(id);
111
- });
112
- });
113
- } }, (dropZoneOptions || {})));
114
- const context = (0, react_1.useContext)(form_1.FormContext);
115
- const { user } = (0, react_1.useContext)(auth_1.AuthContext);
116
- const theme = (0, material_1.useTheme)();
117
- const isSmall = (0, material_1.useMediaQuery)(theme.breakpoints.only('xs'));
118
- const [progress, setProgress] = (0, react_1.useState)(-1);
119
- const [files, setFiles] = (0, react_1.useState)([]);
120
- const [filesLoaded, setFilesLoaded] = (0, react_1.useState)([]);
121
- const [fileIds, setFilesIds] = (0, react_1.useState)({});
122
- // const [filesError, setFilesError] = useState<number[]>([])
123
- const [errorMsg, setErrorMsg] = (0, react_1.useState)('');
124
- const removeFile = (id, hideMsg, fileId) => {
125
- setFiles(files.filter((x) => x.id !== id));
126
- if (fileId)
127
- context.setFilesUid((fId) => fId.filter((idd) => idd.CO_SEQ_ARQUIVO !== fileId));
128
- if (!hideMsg) {
129
- setErrorMsg('Erro ao enviar arquivo. Verifique o formato e tente mais tarde.');
130
- setTimeout(() => {
131
- setErrorMsg('');
132
- }, 3000);
133
- }
134
- };
135
- const deleteFile = (e, id) => {
136
- if (Object.keys(fileIds).includes(id.toString())) {
137
- fetch(`${apiURL}/${fileIds[id]}`, {
138
- method: 'DELETE',
139
- headers: {
140
- Authorization: `Bearer ${tstToken === '' ? (user ? user.token : '') : tstToken}`,
141
- },
142
- })
143
- .then((res) => {
144
- if (!res.ok)
145
- removeFile(id, true, fileIds[id]);
146
- if (res.status === 200) {
147
- removeFile(id, true, fileIds[id]);
148
- }
149
- })
150
- .catch((err) => console.log(err));
151
- }
152
- };
153
- (0, react_1.useEffect)(() => {
154
- const dt = new DataTransfer();
155
- files.forEach((x) => {
156
- dt.items.add(x.file);
157
- });
158
- context === null || context === void 0 ? void 0 : context.formSetValue(name, dt.files);
159
- }, [files, context, name]);
160
- (0, react_1.useEffect)(() => {
161
- return () => {
162
- context.setFilesUid((files) => files.filter((x) => x.CO_TIPO_ARQUIVO !== parseInt(tipoArquivo)));
163
- };
164
- }, []);
165
- return (react_1.default.createElement(material_1.Grid, Object.assign({ item: true }, { xs, sm, md }, { sx: { width: '100%' } }),
166
- react_1.default.createElement(material_1.Box, { bgcolor: 'white', p: 2, borderRadius: '8px', color: '#1E293B' },
167
- react_1.default.createElement(material_1.InputLabel, { required: required, sx: { marginBottom: 2, textTransform: 'capitalize' } }, title),
168
- react_1.default.createElement(system_1.Stack, Object.assign({}, getRootProps({ className: 'dropzone' }), { bgcolor: '#EFEFEF', justifyContent: 'center', alignItems: 'center', textAlign: 'center', borderRadius: '6px', py: 8, border: 'solid 1.5px #989898', sx: {
169
- borderStyle: 'dashed',
170
- cursor: 'pointer',
171
- } }),
172
- react_1.default.createElement("input", Object.assign({}, getInputProps(), context.formRegister(name, {
173
- validate: (v, f) => {
174
- if ((v.length && filesLoaded.length) <= 0 && required)
175
- return 'O campo de arquivo é obrigatório';
176
- },
177
- }))),
178
- react_1.default.createElement(system_1.Stack, { spacing: 2, alignItems: 'center' },
179
- react_1.default.createElement(material_1.Box, null,
180
- react_1.default.createElement(material_1.Typography, { fontWeight: 600, fontSize: 18 }, "Arraste seus arquivos at\u00E9 aqui"),
181
- react_1.default.createElement(material_1.Typography, null, "ou selecione arquivos que est\u00E3o no seu computador")),
182
- react_1.default.createElement(material_1.Button, { variant: 'contained', sx: {
183
- backgroundColor: '#64748B',
184
- pointerEvents: 'none',
185
- borderRadius: '8px',
186
- width: 'fit-content',
187
- } }, "Selecionar"),
188
- react_1.default.createElement(material_1.Typography, { fontWeight: 300 },
189
- "Tamanho m\u00E1ximo por arquivo ",
190
- sizeLimit,
191
- "MB"))),
192
- react_1.default.createElement(material_1.Typography, { pt: 2, fontSize: 16, fontWeight: 600 },
193
- "Voc\u00EA selecionou ",
194
- files.length,
195
- " arquivo",
196
- files.length > 1 ? 's' : '',
197
- "."),
198
- react_1.default.createElement(system_1.Stack, { width: '100%', marginTop: 1, spacing: 1 },
199
- files.map((x) => (react_1.default.createElement(system_1.Stack, { direction: 'row', justifyContent: 'space-between', border: 'solid 1px #E2E8F0', borderRadius: 2, p: 1 },
200
- react_1.default.createElement(system_1.Stack, { direction: 'row' },
201
- react_1.default.createElement(system_1.Stack, { direction: 'row', justifyContent: 'center', alignItems: 'center', minWidth: 30, pr: 1.5 },
202
- react_1.default.createElement(icons_1.PDFIcon, { sx: {
203
- filter: 'invert(42%) sepia(86%) saturate(2412%) hue-rotate(326deg) brightness(86%) contrast(102%)',
204
- transform: 'scale(1.5)',
205
- width: 30,
206
- } })),
207
- react_1.default.createElement(system_1.Stack, null,
208
- react_1.default.createElement(material_1.Typography, { fontWeight: 600 }, x.name),
209
- react_1.default.createElement(material_1.Typography, { fontSize: 14 }, bytesToKBorMB(x.size)))),
210
- react_1.default.createElement(material_1.Button, { size: 'small', startIcon: react_1.default.createElement(icons_1.TrashIcon, null), variant: 'contained', onClick: (e) => deleteFile(e, x.id), sx: {
211
- height: 40,
212
- backgroundColor: '#DE3F50',
213
- borderRadius: '8px',
214
- } }, "Remover")))),
215
- progress > 0 && progress < 100 && (react_1.default.createElement(material_1.LinearProgress, { value: progress, sx: {
216
- backgroundColor: '#103D6A',
217
- '.MuiLinearProgress-bar': {
218
- backgroundColor: '#BDDDFA',
219
- },
220
- } }))),
221
- errorMsg && (react_1.default.createElement(react_1.default.Fragment, null,
222
- react_1.default.createElement(material_1.Typography, { variant: 'caption', color: '#e53935', fontWeight: 600, fontSize: 14, paddingTop: 2 }, errorMsg),
223
- react_1.default.createElement("br", null))),
224
- (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")))));
225
- }
226
- exports.default = DropFileUpload;