siam-ui-utils 2.2.31 → 2.2.32

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.
@@ -1,150 +0,0 @@
1
- import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
- import { getDroppedOrSelectedFiles } from "html5-file-selector";
3
- import { useState } from "react";
4
- import { Button } from "reactstrap";
5
- import Dropzone from "../../dropzone/Dropzone.js";
6
- /* empty css */
7
- import { pdfImage } from "../../iconos/constants-svg.js";
8
- import { IconButtonSvg as _t } from "../../iconos/icon-button-svg.js";
9
- /* empty css */
10
- const DropzoneUploaderDniDigital = ({
11
- accept = "image/*, application/pdf",
12
- classNames = "",
13
- onChangeFiles,
14
- totalFiles,
15
- label = "Cargar Dni",
16
- maxFiles = 2,
17
- maxSize = 2,
18
- onMaxFileSizeError = () => {
19
- alert("El archivo supera el tamaño máximo");
20
- }
21
- }) => {
22
- const [files, setFiles] = useState([]);
23
- const handleChangeStatus = ({ file }, status) => {
24
- if (status === "done") {
25
- const filesTemp = [...files];
26
- filesTemp.push(file);
27
- setFiles(filesTemp);
28
- onChangeFiles(filesTemp);
29
- } else if (status === "removed") {
30
- const filesTemp = [...files];
31
- const index = filesTemp.indexOf(file);
32
- if (index > -1) {
33
- filesTemp.splice(index, 1);
34
- }
35
- setFiles(filesTemp);
36
- onChangeFiles(filesTemp);
37
- }
38
- };
39
- const getFilesFromEvent = (e) => {
40
- return new Promise((resolve) => {
41
- getDroppedOrSelectedFiles(e).then((chosenFiles) => {
42
- resolve(chosenFiles.map((f) => f.fileObject));
43
- });
44
- });
45
- };
46
- const CustomPreview = ({ fileWithMeta }) => {
47
- const { meta, remove } = fileWithMeta;
48
- if (meta.size / (1024 * 1024) > maxSize) {
49
- onMaxFileSizeError();
50
- remove();
51
- }
52
- return /* @__PURE__ */ jsxs(
53
- "div",
54
- {
55
- className: "dropzone-upload-previewContainer",
56
- style: { width: "100%", display: "flex", alignItems: "center" },
57
- children: [
58
- meta.type === "application/pdf" ? /* @__PURE__ */ jsxs(Fragment, { children: [
59
- /* @__PURE__ */ jsx(
60
- _t,
61
- {
62
- className: "form-control flex",
63
- svg: pdfImage,
64
- svgOver: pdfImage,
65
- height: "1.6rem",
66
- width: "1.6rem",
67
- title: meta.name
68
- }
69
- ),
70
- /* @__PURE__ */ jsx("p", { style: { paddingRight: "1rem" }, children: meta.name.length > 17 ? meta.name.substring(0, 17) + "..." : meta.name })
71
- ] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
72
- /* @__PURE__ */ jsx(
73
- "img",
74
- {
75
- className: "dropzone-upload-previewImage mt-1",
76
- src: meta.previewUrl,
77
- alt: meta.name,
78
- style: {
79
- width: "110px",
80
- height: "110px",
81
- objectFit: "cover",
82
- marginRight: "0.5rem"
83
- }
84
- }
85
- ),
86
- /* @__PURE__ */ jsx("div", { className: "dropzone-upload-file-name-container", children: /* @__PURE__ */ jsx("p", { className: "dropzone-upload-file-name", title: meta.name, children: meta.name }) })
87
- ] }),
88
- /* @__PURE__ */ jsx(
89
- "button",
90
- {
91
- style: { marginTop: "0rem" },
92
- onClick: remove,
93
- className: "dropzone-upload-delete-btn simple-icon-trash"
94
- }
95
- )
96
- ]
97
- }
98
- );
99
- };
100
- const Input = ({ accept: accept2, onFiles, getFilesFromEvent: getFilesFromEvent2 }) => {
101
- const text = totalFiles > 0 ? `${maxFiles - totalFiles} archivos más` : `${label}`;
102
- return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
103
- Button,
104
- {
105
- outline: true,
106
- block: true,
107
- size: "xs",
108
- className: "mt-5 ml-5",
109
- onClick: () => document.getElementById("fileInput").click(),
110
- children: [
111
- text,
112
- /* @__PURE__ */ jsx(
113
- "input",
114
- {
115
- id: "fileInput",
116
- style: { display: "none" },
117
- type: "file",
118
- accept: accept2,
119
- multiple: true,
120
- onChange: (e) => {
121
- getFilesFromEvent2(e).then((chosenFiles) => {
122
- onFiles(chosenFiles);
123
- });
124
- }
125
- }
126
- )
127
- ]
128
- }
129
- ) });
130
- };
131
- return /* @__PURE__ */ jsx("div", { className: classNames, children: /* @__PURE__ */ jsx(
132
- Dropzone,
133
- {
134
- disableUpload: false,
135
- maxFiles: totalFiles < maxFiles ? maxFiles : 0,
136
- maxSize,
137
- InputComponent: Input,
138
- PreviewComponent: CustomPreview,
139
- classNames: { dropzone: "dropzone-upload-frame" },
140
- onChangeStatus: handleChangeStatus,
141
- getFilesFromEvent,
142
- accept
143
- }
144
- ) });
145
- };
146
- export {
147
- DropzoneUploaderDniDigital,
148
- DropzoneUploaderDniDigital as default
149
- };
150
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/dropzone-uploader/dropzone-uploader-dni-digital/index.jsx"],"sourcesContent":["import { getDroppedOrSelectedFiles } from 'html5-file-selector';\r\nimport { useState } from 'react';\r\nimport { Button } from 'reactstrap';\r\nimport Dropzone from '../../dropzone/Dropzone';\r\nimport '../../dropzone/styles.css';\r\nimport { IconButtonSvg, pdfImage } from '../../iconos';\r\nimport '../dropzone-uploader.css';\r\n\r\nexport const DropzoneUploaderDniDigital = ({\r\n accept = 'image/*, application/pdf',\r\n classNames = '',\r\n onChangeFiles,\r\n totalFiles,\r\n label = 'Cargar Dni',\r\n maxFiles = 2,\r\n maxSize = 2,\r\n onMaxFileSizeError = () => {\r\n alert('El archivo supera el tamaño máximo');\r\n },\r\n}) => {\r\n const [files, setFiles] = useState([]);\r\n\r\n const handleChangeStatus = ({ file }, status) => {\r\n if (status === 'done') {\r\n const filesTemp = [...files];\r\n filesTemp.push(file);\r\n setFiles(filesTemp);\r\n onChangeFiles(filesTemp);\r\n } else if (status === 'removed') {\r\n const filesTemp = [...files];\r\n const index = filesTemp.indexOf(file);\r\n if (index > -1) {\r\n filesTemp.splice(index, 1);\r\n }\r\n setFiles(filesTemp);\r\n onChangeFiles(filesTemp);\r\n }\r\n };\r\n\r\n const getFilesFromEvent = (e) => {\r\n return new Promise((resolve) => {\r\n getDroppedOrSelectedFiles(e).then((chosenFiles) => {\r\n resolve(chosenFiles.map((f) => f.fileObject));\r\n });\r\n });\r\n };\r\n\r\n const CustomPreview = ({ fileWithMeta }) => {\r\n const { meta, remove } = fileWithMeta;\r\n if (meta.size / (1024 * 1024) > maxSize) {\r\n onMaxFileSizeError();\r\n remove();\r\n }\r\n return (\r\n <div\r\n className=\"dropzone-upload-previewContainer\"\r\n style={{ width: '100%', display: 'flex', alignItems: 'center' }}\r\n >\r\n {meta.type === 'application/pdf' ? (\r\n <>\r\n <IconButtonSvg\r\n className=\"form-control flex\"\r\n svg={pdfImage}\r\n svgOver={pdfImage}\r\n height=\"1.6rem\"\r\n width=\"1.6rem\"\r\n title={meta.name}\r\n />\r\n <p style={{ paddingRight: '1rem' }}>\r\n {meta.name.length > 17\r\n ? meta.name.substring(0, 17) + '...'\r\n : meta.name}\r\n </p>\r\n </>\r\n ) : (\r\n <>\r\n <img\r\n className=\"dropzone-upload-previewImage mt-1\"\r\n src={meta.previewUrl}\r\n alt={meta.name}\r\n style={{\r\n width: '110px',\r\n height: '110px',\r\n objectFit: 'cover',\r\n marginRight: '0.5rem',\r\n }}\r\n />\r\n <div className=\"dropzone-upload-file-name-container\">\r\n <p className=\"dropzone-upload-file-name\" title={meta.name}>\r\n {meta.name}\r\n </p>\r\n </div>\r\n </>\r\n )}\r\n <button\r\n style={{ marginTop: '0rem' }}\r\n onClick={remove}\r\n className=\"dropzone-upload-delete-btn simple-icon-trash\"\r\n ></button>\r\n </div>\r\n );\r\n };\r\n\r\n const Input = ({ accept, onFiles, getFilesFromEvent }) => {\r\n const text =\r\n totalFiles > 0 ? `${maxFiles - totalFiles} archivos más` : `${label}`;\r\n return (\r\n <>\r\n <Button\r\n outline\r\n block\r\n size=\"xs\"\r\n className=\"mt-5 ml-5\"\r\n onClick={() => document.getElementById('fileInput').click()}\r\n >\r\n {text}\r\n <input\r\n id=\"fileInput\"\r\n style={{ display: 'none' }}\r\n type=\"file\"\r\n accept={accept}\r\n multiple\r\n onChange={(e) => {\r\n getFilesFromEvent(e).then((chosenFiles) => {\r\n onFiles(chosenFiles);\r\n });\r\n }}\r\n />\r\n </Button>\r\n </>\r\n );\r\n };\r\n\r\n return (\r\n <div className={classNames}>\r\n <Dropzone\r\n disableUpload={false}\r\n maxFiles={totalFiles < maxFiles ? maxFiles : 0}\r\n maxSize={maxSize} // en megas\r\n InputComponent={Input}\r\n PreviewComponent={CustomPreview}\r\n classNames={{ dropzone: 'dropzone-upload-frame' }}\r\n onChangeStatus={handleChangeStatus}\r\n getFilesFromEvent={getFilesFromEvent}\r\n accept={accept}\r\n />\r\n </div>\r\n );\r\n};\r\n\r\nexport default DropzoneUploaderDniDigital;\r\n"],"names":["IconButtonSvg","accept","getFilesFromEvent"],"mappings":"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"}
package/dist/index.js DELETED
@@ -1,31 +0,0 @@
1
- import { CustomInputCheckbox } from "./custom-input/CustomInputCheckbox.js";
2
- import { CustomInputRadio } from "./custom-input/CustomInputRadio.js";
3
- import { CustomSelect } from "./select/index.js";
4
- import { Colxx, Separator } from "./CustomBootstrap.js";
5
- import { CustomSelectInput } from "./CustomSelectInput.js";
6
- import { DropzoneUploader } from "./dropzone-uploader/index.js";
7
- import { DropzoneUploaderDniDigital } from "./dropzone-uploader/dropzone-uploader-dni-digital/index.js";
8
- import { TomarFoto } from "./tomar-foto/index.js";
9
- import { CopyLink } from "./copy-link/index.js";
10
- import { Timer, formatTiempo } from "./timer/index.js";
11
- import { ViewLayout } from "./view-layout/index.js";
12
- import { WhereByRoom } from "./where-by-room/index.js";
13
- import * as IntlMessages from "./IntlMessages.js";
14
- export {
15
- Colxx,
16
- CopyLink,
17
- CustomInputCheckbox,
18
- CustomInputRadio,
19
- CustomSelect,
20
- CustomSelectInput,
21
- DropzoneUploader,
22
- DropzoneUploaderDniDigital,
23
- IntlMessages,
24
- Separator,
25
- Timer,
26
- TomarFoto,
27
- ViewLayout,
28
- WhereByRoom,
29
- formatTiempo
30
- };
31
- //# sourceMappingURL=index.js.map