@fctc/sme-widget-ui 1.8.10 → 1.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +47 -13
- package/dist/index.mjs +47 -13
- package/dist/widgets.d.mts +2 -2
- package/dist/widgets.d.ts +2 -2
- package/dist/widgets.js +47 -13
- package/dist/widgets.mjs +47 -13
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -16516,7 +16516,13 @@ var VideoPlayer = ({ src }) => {
|
|
|
16516
16516
|
|
|
16517
16517
|
// src/widgets/common/render-files.tsx
|
|
16518
16518
|
var import_jsx_runtime68 = require("react/jsx-runtime");
|
|
16519
|
-
var ImageItem = ({
|
|
16519
|
+
var ImageItem = ({
|
|
16520
|
+
filename,
|
|
16521
|
+
checksum,
|
|
16522
|
+
index: index4,
|
|
16523
|
+
src = null,
|
|
16524
|
+
useGetImage
|
|
16525
|
+
}) => {
|
|
16520
16526
|
const { data: image } = useGetImage({
|
|
16521
16527
|
data: { filename, checksum },
|
|
16522
16528
|
queryKey: [`get-image-${""}`],
|
|
@@ -16527,7 +16533,7 @@ var ImageItem = ({ filename, checksum, index: index4, src = null, useGetImage })
|
|
|
16527
16533
|
{
|
|
16528
16534
|
src: image || src,
|
|
16529
16535
|
alt: filename,
|
|
16530
|
-
className: "w-32 h-32 object-cover rounded-md"
|
|
16536
|
+
className: "w-32 h-32 object-cover rounded-md cursor-pointer"
|
|
16531
16537
|
}
|
|
16532
16538
|
) }, index4);
|
|
16533
16539
|
};
|
|
@@ -16567,22 +16573,35 @@ var FileItem = (props) => {
|
|
|
16567
16573
|
return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
|
|
16568
16574
|
"div",
|
|
16569
16575
|
{
|
|
16570
|
-
className: "flex relative items-center overflow-hidden justify-between group rounded-md w-fit
|
|
16576
|
+
className: "flex relative items-center overflow-hidden justify-between group rounded-md w-fit",
|
|
16571
16577
|
children: [
|
|
16572
16578
|
renderFile(),
|
|
16573
16579
|
handleRemoveFile && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
16574
16580
|
"div",
|
|
16575
16581
|
{
|
|
16582
|
+
style: {
|
|
16583
|
+
position: "absolute",
|
|
16584
|
+
top: 0,
|
|
16585
|
+
right: 0,
|
|
16586
|
+
backgroundColor: "rgba(0,0,0,0.2)"
|
|
16587
|
+
},
|
|
16576
16588
|
onClick: () => handleRemoveFile(index4),
|
|
16577
|
-
className: "cursor-pointer
|
|
16589
|
+
className: "cursor-pointer p-2 hidden group-hover:block",
|
|
16578
16590
|
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(DeleteIcon, {})
|
|
16579
16591
|
}
|
|
16580
16592
|
),
|
|
16581
16593
|
!handleRemoveFile && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
16582
16594
|
"span",
|
|
16583
16595
|
{
|
|
16596
|
+
style: {
|
|
16597
|
+
position: "absolute",
|
|
16598
|
+
top: 0,
|
|
16599
|
+
right: 0,
|
|
16600
|
+
backgroundColor: "rgba(0,0,0,0.2)",
|
|
16601
|
+
zIndex: 10
|
|
16602
|
+
},
|
|
16584
16603
|
onClick: (e3) => handleFileDownload(e3, src, filename),
|
|
16585
|
-
className: "
|
|
16604
|
+
className: "hidden group-hover:block cursor-pointer p-2 text-white ",
|
|
16586
16605
|
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(DownloadIcon, {})
|
|
16587
16606
|
}
|
|
16588
16607
|
)
|
|
@@ -16611,7 +16630,11 @@ var downloadFile = async (url, filename) => {
|
|
|
16611
16630
|
console.error("File download failed:", error2);
|
|
16612
16631
|
}
|
|
16613
16632
|
};
|
|
16614
|
-
var RenderFiles = ({
|
|
16633
|
+
var RenderFiles = ({
|
|
16634
|
+
selectedFiles,
|
|
16635
|
+
setSelectedFiles,
|
|
16636
|
+
useGetImage
|
|
16637
|
+
}) => {
|
|
16615
16638
|
const handleRemoveFile = (index4) => {
|
|
16616
16639
|
if (setSelectedFiles) {
|
|
16617
16640
|
const files = selectedFiles.filter((_2, i3) => i3 !== index4);
|
|
@@ -16635,7 +16658,7 @@ var RenderFiles = ({ selectedFiles, setSelectedFiles, useGetImage }) => {
|
|
|
16635
16658
|
useGetImage
|
|
16636
16659
|
},
|
|
16637
16660
|
index4
|
|
16638
|
-
) });
|
|
16661
|
+
) }, file?.id ?? index4);
|
|
16639
16662
|
}) });
|
|
16640
16663
|
};
|
|
16641
16664
|
|
|
@@ -16835,7 +16858,10 @@ var ButtonSelectFiles = ({
|
|
|
16835
16858
|
id,
|
|
16836
16859
|
widget,
|
|
16837
16860
|
useUploadImage,
|
|
16838
|
-
useUploadFile
|
|
16861
|
+
useUploadFile,
|
|
16862
|
+
env,
|
|
16863
|
+
service,
|
|
16864
|
+
user
|
|
16839
16865
|
}) => {
|
|
16840
16866
|
const { t: t3 } = useI18n();
|
|
16841
16867
|
const ALLOWED_TYPES = [
|
|
@@ -16852,6 +16878,7 @@ var ButtonSelectFiles = ({
|
|
|
16852
16878
|
const MAX_TOTAL_SIZE = 50 * 1024 * 1024;
|
|
16853
16879
|
const isBinary = widget === "many2many_binary";
|
|
16854
16880
|
const { mutate, isPending } = isBinary ? useUploadFile() : useUploadImage();
|
|
16881
|
+
const dataUser = user?.userProfile?.data;
|
|
16855
16882
|
const validateFile = (file) => {
|
|
16856
16883
|
if (!ALLOWED_TYPES.includes(file.type)) {
|
|
16857
16884
|
setUploadError(t3("file_accept_single"));
|
|
@@ -16871,9 +16898,13 @@ var ButtonSelectFiles = ({
|
|
|
16871
16898
|
}
|
|
16872
16899
|
return true;
|
|
16873
16900
|
};
|
|
16874
|
-
const handleUpload = async (formData) => {
|
|
16901
|
+
const handleUpload = async (formData, service2, xNode) => {
|
|
16875
16902
|
mutate(
|
|
16876
|
-
{
|
|
16903
|
+
{
|
|
16904
|
+
formData,
|
|
16905
|
+
service: service2,
|
|
16906
|
+
xNode
|
|
16907
|
+
},
|
|
16877
16908
|
{
|
|
16878
16909
|
onSuccess: (data) => {
|
|
16879
16910
|
let newFiles = [];
|
|
@@ -16888,7 +16919,8 @@ var ButtonSelectFiles = ({
|
|
|
16888
16919
|
});
|
|
16889
16920
|
y2.success(instance.t("upload_success"));
|
|
16890
16921
|
},
|
|
16891
|
-
onError: () => {
|
|
16922
|
+
onError: (err) => {
|
|
16923
|
+
console.log("data", err);
|
|
16892
16924
|
y2.error(instance.t("upload_failure"));
|
|
16893
16925
|
}
|
|
16894
16926
|
}
|
|
@@ -16898,6 +16930,8 @@ var ButtonSelectFiles = ({
|
|
|
16898
16930
|
const files = Array.from(event.target.files ?? []);
|
|
16899
16931
|
setUploadError(void 0);
|
|
16900
16932
|
event.target.value = "";
|
|
16933
|
+
const serivce = env?.default_service;
|
|
16934
|
+
const xNode = service == "mms" && dataUser?.x_node;
|
|
16901
16935
|
if (files.length === 0) return;
|
|
16902
16936
|
const validFiles = files.filter((file) => validateFile(file));
|
|
16903
16937
|
if (validFiles.length === 0) return;
|
|
@@ -16906,7 +16940,7 @@ var ButtonSelectFiles = ({
|
|
|
16906
16940
|
validFiles.forEach((file) => formData.append("ufile", file));
|
|
16907
16941
|
formData.append("model", String(model));
|
|
16908
16942
|
formData.append("id", id ? String(id) : String(0));
|
|
16909
|
-
await handleUpload(formData);
|
|
16943
|
+
await handleUpload(formData, serivce, xNode);
|
|
16910
16944
|
} else {
|
|
16911
16945
|
const file = validFiles[0];
|
|
16912
16946
|
const formData = new FormData();
|
|
@@ -16914,7 +16948,7 @@ var ButtonSelectFiles = ({
|
|
|
16914
16948
|
formData.append("thread_model", String(model));
|
|
16915
16949
|
formData.append("thread_id", id ? String(id) : String(0));
|
|
16916
16950
|
formData.append("is_pending", "true");
|
|
16917
|
-
await handleUpload(formData);
|
|
16951
|
+
await handleUpload(formData, serivce, xNode);
|
|
16918
16952
|
}
|
|
16919
16953
|
};
|
|
16920
16954
|
return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_jsx_runtime69.Fragment, { children: [
|
package/dist/index.mjs
CHANGED
|
@@ -16394,7 +16394,13 @@ var VideoPlayer = ({ src }) => {
|
|
|
16394
16394
|
|
|
16395
16395
|
// src/widgets/common/render-files.tsx
|
|
16396
16396
|
import { jsx as jsx68, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
16397
|
-
var ImageItem = ({
|
|
16397
|
+
var ImageItem = ({
|
|
16398
|
+
filename,
|
|
16399
|
+
checksum,
|
|
16400
|
+
index: index4,
|
|
16401
|
+
src = null,
|
|
16402
|
+
useGetImage
|
|
16403
|
+
}) => {
|
|
16398
16404
|
const { data: image } = useGetImage({
|
|
16399
16405
|
data: { filename, checksum },
|
|
16400
16406
|
queryKey: [`get-image-${""}`],
|
|
@@ -16405,7 +16411,7 @@ var ImageItem = ({ filename, checksum, index: index4, src = null, useGetImage })
|
|
|
16405
16411
|
{
|
|
16406
16412
|
src: image || src,
|
|
16407
16413
|
alt: filename,
|
|
16408
|
-
className: "w-32 h-32 object-cover rounded-md"
|
|
16414
|
+
className: "w-32 h-32 object-cover rounded-md cursor-pointer"
|
|
16409
16415
|
}
|
|
16410
16416
|
) }, index4);
|
|
16411
16417
|
};
|
|
@@ -16445,22 +16451,35 @@ var FileItem = (props) => {
|
|
|
16445
16451
|
return /* @__PURE__ */ jsxs43(
|
|
16446
16452
|
"div",
|
|
16447
16453
|
{
|
|
16448
|
-
className: "flex relative items-center overflow-hidden justify-between group rounded-md w-fit
|
|
16454
|
+
className: "flex relative items-center overflow-hidden justify-between group rounded-md w-fit",
|
|
16449
16455
|
children: [
|
|
16450
16456
|
renderFile(),
|
|
16451
16457
|
handleRemoveFile && /* @__PURE__ */ jsx68(
|
|
16452
16458
|
"div",
|
|
16453
16459
|
{
|
|
16460
|
+
style: {
|
|
16461
|
+
position: "absolute",
|
|
16462
|
+
top: 0,
|
|
16463
|
+
right: 0,
|
|
16464
|
+
backgroundColor: "rgba(0,0,0,0.2)"
|
|
16465
|
+
},
|
|
16454
16466
|
onClick: () => handleRemoveFile(index4),
|
|
16455
|
-
className: "cursor-pointer
|
|
16467
|
+
className: "cursor-pointer p-2 hidden group-hover:block",
|
|
16456
16468
|
children: /* @__PURE__ */ jsx68(DeleteIcon, {})
|
|
16457
16469
|
}
|
|
16458
16470
|
),
|
|
16459
16471
|
!handleRemoveFile && /* @__PURE__ */ jsx68(
|
|
16460
16472
|
"span",
|
|
16461
16473
|
{
|
|
16474
|
+
style: {
|
|
16475
|
+
position: "absolute",
|
|
16476
|
+
top: 0,
|
|
16477
|
+
right: 0,
|
|
16478
|
+
backgroundColor: "rgba(0,0,0,0.2)",
|
|
16479
|
+
zIndex: 10
|
|
16480
|
+
},
|
|
16462
16481
|
onClick: (e3) => handleFileDownload(e3, src, filename),
|
|
16463
|
-
className: "
|
|
16482
|
+
className: "hidden group-hover:block cursor-pointer p-2 text-white ",
|
|
16464
16483
|
children: /* @__PURE__ */ jsx68(DownloadIcon, {})
|
|
16465
16484
|
}
|
|
16466
16485
|
)
|
|
@@ -16489,7 +16508,11 @@ var downloadFile = async (url, filename) => {
|
|
|
16489
16508
|
console.error("File download failed:", error2);
|
|
16490
16509
|
}
|
|
16491
16510
|
};
|
|
16492
|
-
var RenderFiles = ({
|
|
16511
|
+
var RenderFiles = ({
|
|
16512
|
+
selectedFiles,
|
|
16513
|
+
setSelectedFiles,
|
|
16514
|
+
useGetImage
|
|
16515
|
+
}) => {
|
|
16493
16516
|
const handleRemoveFile = (index4) => {
|
|
16494
16517
|
if (setSelectedFiles) {
|
|
16495
16518
|
const files = selectedFiles.filter((_2, i3) => i3 !== index4);
|
|
@@ -16513,7 +16536,7 @@ var RenderFiles = ({ selectedFiles, setSelectedFiles, useGetImage }) => {
|
|
|
16513
16536
|
useGetImage
|
|
16514
16537
|
},
|
|
16515
16538
|
index4
|
|
16516
|
-
) });
|
|
16539
|
+
) }, file?.id ?? index4);
|
|
16517
16540
|
}) });
|
|
16518
16541
|
};
|
|
16519
16542
|
|
|
@@ -16713,7 +16736,10 @@ var ButtonSelectFiles = ({
|
|
|
16713
16736
|
id,
|
|
16714
16737
|
widget,
|
|
16715
16738
|
useUploadImage,
|
|
16716
|
-
useUploadFile
|
|
16739
|
+
useUploadFile,
|
|
16740
|
+
env,
|
|
16741
|
+
service,
|
|
16742
|
+
user
|
|
16717
16743
|
}) => {
|
|
16718
16744
|
const { t: t3 } = useI18n();
|
|
16719
16745
|
const ALLOWED_TYPES = [
|
|
@@ -16730,6 +16756,7 @@ var ButtonSelectFiles = ({
|
|
|
16730
16756
|
const MAX_TOTAL_SIZE = 50 * 1024 * 1024;
|
|
16731
16757
|
const isBinary = widget === "many2many_binary";
|
|
16732
16758
|
const { mutate, isPending } = isBinary ? useUploadFile() : useUploadImage();
|
|
16759
|
+
const dataUser = user?.userProfile?.data;
|
|
16733
16760
|
const validateFile = (file) => {
|
|
16734
16761
|
if (!ALLOWED_TYPES.includes(file.type)) {
|
|
16735
16762
|
setUploadError(t3("file_accept_single"));
|
|
@@ -16749,9 +16776,13 @@ var ButtonSelectFiles = ({
|
|
|
16749
16776
|
}
|
|
16750
16777
|
return true;
|
|
16751
16778
|
};
|
|
16752
|
-
const handleUpload = async (formData) => {
|
|
16779
|
+
const handleUpload = async (formData, service2, xNode) => {
|
|
16753
16780
|
mutate(
|
|
16754
|
-
{
|
|
16781
|
+
{
|
|
16782
|
+
formData,
|
|
16783
|
+
service: service2,
|
|
16784
|
+
xNode
|
|
16785
|
+
},
|
|
16755
16786
|
{
|
|
16756
16787
|
onSuccess: (data) => {
|
|
16757
16788
|
let newFiles = [];
|
|
@@ -16766,7 +16797,8 @@ var ButtonSelectFiles = ({
|
|
|
16766
16797
|
});
|
|
16767
16798
|
y2.success(instance.t("upload_success"));
|
|
16768
16799
|
},
|
|
16769
|
-
onError: () => {
|
|
16800
|
+
onError: (err) => {
|
|
16801
|
+
console.log("data", err);
|
|
16770
16802
|
y2.error(instance.t("upload_failure"));
|
|
16771
16803
|
}
|
|
16772
16804
|
}
|
|
@@ -16776,6 +16808,8 @@ var ButtonSelectFiles = ({
|
|
|
16776
16808
|
const files = Array.from(event.target.files ?? []);
|
|
16777
16809
|
setUploadError(void 0);
|
|
16778
16810
|
event.target.value = "";
|
|
16811
|
+
const serivce = env?.default_service;
|
|
16812
|
+
const xNode = service == "mms" && dataUser?.x_node;
|
|
16779
16813
|
if (files.length === 0) return;
|
|
16780
16814
|
const validFiles = files.filter((file) => validateFile(file));
|
|
16781
16815
|
if (validFiles.length === 0) return;
|
|
@@ -16784,7 +16818,7 @@ var ButtonSelectFiles = ({
|
|
|
16784
16818
|
validFiles.forEach((file) => formData.append("ufile", file));
|
|
16785
16819
|
formData.append("model", String(model));
|
|
16786
16820
|
formData.append("id", id ? String(id) : String(0));
|
|
16787
|
-
await handleUpload(formData);
|
|
16821
|
+
await handleUpload(formData, serivce, xNode);
|
|
16788
16822
|
} else {
|
|
16789
16823
|
const file = validFiles[0];
|
|
16790
16824
|
const formData = new FormData();
|
|
@@ -16792,7 +16826,7 @@ var ButtonSelectFiles = ({
|
|
|
16792
16826
|
formData.append("thread_model", String(model));
|
|
16793
16827
|
formData.append("thread_id", id ? String(id) : String(0));
|
|
16794
16828
|
formData.append("is_pending", "true");
|
|
16795
|
-
await handleUpload(formData);
|
|
16829
|
+
await handleUpload(formData, serivce, xNode);
|
|
16796
16830
|
}
|
|
16797
16831
|
};
|
|
16798
16832
|
return /* @__PURE__ */ jsxs44(Fragment14, { children: [
|
package/dist/widgets.d.mts
CHANGED
|
@@ -495,9 +495,9 @@ declare const LayerLoading: () => JSX.Element;
|
|
|
495
495
|
|
|
496
496
|
declare const LoadingSmall: () => JSX.Element;
|
|
497
497
|
|
|
498
|
-
declare const RenderFiles: ({ selectedFiles, setSelectedFiles, useGetImage }: any) => JSX.Element;
|
|
498
|
+
declare const RenderFiles: ({ selectedFiles, setSelectedFiles, useGetImage, }: any) => JSX.Element;
|
|
499
499
|
|
|
500
|
-
declare const ButtonSelectFiles: ({ fileInputRef, selectedFiles, setSelectedFiles, setUploadError, model, id, widget, useUploadImage, useUploadFile, }: any) => JSX.Element;
|
|
500
|
+
declare const ButtonSelectFiles: ({ fileInputRef, selectedFiles, setSelectedFiles, setUploadError, model, id, widget, useUploadImage, useUploadFile, env, service, user, }: any) => JSX.Element;
|
|
501
501
|
|
|
502
502
|
interface VideoPlayerProps {
|
|
503
503
|
src: string;
|
package/dist/widgets.d.ts
CHANGED
|
@@ -495,9 +495,9 @@ declare const LayerLoading: () => JSX.Element;
|
|
|
495
495
|
|
|
496
496
|
declare const LoadingSmall: () => JSX.Element;
|
|
497
497
|
|
|
498
|
-
declare const RenderFiles: ({ selectedFiles, setSelectedFiles, useGetImage }: any) => JSX.Element;
|
|
498
|
+
declare const RenderFiles: ({ selectedFiles, setSelectedFiles, useGetImage, }: any) => JSX.Element;
|
|
499
499
|
|
|
500
|
-
declare const ButtonSelectFiles: ({ fileInputRef, selectedFiles, setSelectedFiles, setUploadError, model, id, widget, useUploadImage, useUploadFile, }: any) => JSX.Element;
|
|
500
|
+
declare const ButtonSelectFiles: ({ fileInputRef, selectedFiles, setSelectedFiles, setUploadError, model, id, widget, useUploadImage, useUploadFile, env, service, user, }: any) => JSX.Element;
|
|
501
501
|
|
|
502
502
|
interface VideoPlayerProps {
|
|
503
503
|
src: string;
|
package/dist/widgets.js
CHANGED
|
@@ -15922,7 +15922,13 @@ var VideoPlayer = ({ src }) => {
|
|
|
15922
15922
|
|
|
15923
15923
|
// src/widgets/common/render-files.tsx
|
|
15924
15924
|
var import_jsx_runtime68 = require("react/jsx-runtime");
|
|
15925
|
-
var ImageItem = ({
|
|
15925
|
+
var ImageItem = ({
|
|
15926
|
+
filename,
|
|
15927
|
+
checksum,
|
|
15928
|
+
index: index4,
|
|
15929
|
+
src = null,
|
|
15930
|
+
useGetImage
|
|
15931
|
+
}) => {
|
|
15926
15932
|
const { data: image } = useGetImage({
|
|
15927
15933
|
data: { filename, checksum },
|
|
15928
15934
|
queryKey: [`get-image-${""}`],
|
|
@@ -15933,7 +15939,7 @@ var ImageItem = ({ filename, checksum, index: index4, src = null, useGetImage })
|
|
|
15933
15939
|
{
|
|
15934
15940
|
src: image || src,
|
|
15935
15941
|
alt: filename,
|
|
15936
|
-
className: "w-32 h-32 object-cover rounded-md"
|
|
15942
|
+
className: "w-32 h-32 object-cover rounded-md cursor-pointer"
|
|
15937
15943
|
}
|
|
15938
15944
|
) }, index4);
|
|
15939
15945
|
};
|
|
@@ -15973,22 +15979,35 @@ var FileItem = (props) => {
|
|
|
15973
15979
|
return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
|
|
15974
15980
|
"div",
|
|
15975
15981
|
{
|
|
15976
|
-
className: "flex relative items-center overflow-hidden justify-between group rounded-md w-fit
|
|
15982
|
+
className: "flex relative items-center overflow-hidden justify-between group rounded-md w-fit",
|
|
15977
15983
|
children: [
|
|
15978
15984
|
renderFile(),
|
|
15979
15985
|
handleRemoveFile && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
15980
15986
|
"div",
|
|
15981
15987
|
{
|
|
15988
|
+
style: {
|
|
15989
|
+
position: "absolute",
|
|
15990
|
+
top: 0,
|
|
15991
|
+
right: 0,
|
|
15992
|
+
backgroundColor: "rgba(0,0,0,0.2)"
|
|
15993
|
+
},
|
|
15982
15994
|
onClick: () => handleRemoveFile(index4),
|
|
15983
|
-
className: "cursor-pointer
|
|
15995
|
+
className: "cursor-pointer p-2 hidden group-hover:block",
|
|
15984
15996
|
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(DeleteIcon, {})
|
|
15985
15997
|
}
|
|
15986
15998
|
),
|
|
15987
15999
|
!handleRemoveFile && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
15988
16000
|
"span",
|
|
15989
16001
|
{
|
|
16002
|
+
style: {
|
|
16003
|
+
position: "absolute",
|
|
16004
|
+
top: 0,
|
|
16005
|
+
right: 0,
|
|
16006
|
+
backgroundColor: "rgba(0,0,0,0.2)",
|
|
16007
|
+
zIndex: 10
|
|
16008
|
+
},
|
|
15990
16009
|
onClick: (e3) => handleFileDownload(e3, src, filename),
|
|
15991
|
-
className: "
|
|
16010
|
+
className: "hidden group-hover:block cursor-pointer p-2 text-white ",
|
|
15992
16011
|
children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(DownloadIcon, {})
|
|
15993
16012
|
}
|
|
15994
16013
|
)
|
|
@@ -16017,7 +16036,11 @@ var downloadFile = async (url, filename) => {
|
|
|
16017
16036
|
console.error("File download failed:", error2);
|
|
16018
16037
|
}
|
|
16019
16038
|
};
|
|
16020
|
-
var RenderFiles = ({
|
|
16039
|
+
var RenderFiles = ({
|
|
16040
|
+
selectedFiles,
|
|
16041
|
+
setSelectedFiles,
|
|
16042
|
+
useGetImage
|
|
16043
|
+
}) => {
|
|
16021
16044
|
const handleRemoveFile = (index4) => {
|
|
16022
16045
|
if (setSelectedFiles) {
|
|
16023
16046
|
const files = selectedFiles.filter((_2, i3) => i3 !== index4);
|
|
@@ -16041,7 +16064,7 @@ var RenderFiles = ({ selectedFiles, setSelectedFiles, useGetImage }) => {
|
|
|
16041
16064
|
useGetImage
|
|
16042
16065
|
},
|
|
16043
16066
|
index4
|
|
16044
|
-
) });
|
|
16067
|
+
) }, file?.id ?? index4);
|
|
16045
16068
|
}) });
|
|
16046
16069
|
};
|
|
16047
16070
|
|
|
@@ -16241,7 +16264,10 @@ var ButtonSelectFiles = ({
|
|
|
16241
16264
|
id,
|
|
16242
16265
|
widget,
|
|
16243
16266
|
useUploadImage,
|
|
16244
|
-
useUploadFile
|
|
16267
|
+
useUploadFile,
|
|
16268
|
+
env,
|
|
16269
|
+
service,
|
|
16270
|
+
user
|
|
16245
16271
|
}) => {
|
|
16246
16272
|
const { t: t3 } = useI18n();
|
|
16247
16273
|
const ALLOWED_TYPES = [
|
|
@@ -16258,6 +16284,7 @@ var ButtonSelectFiles = ({
|
|
|
16258
16284
|
const MAX_TOTAL_SIZE = 50 * 1024 * 1024;
|
|
16259
16285
|
const isBinary = widget === "many2many_binary";
|
|
16260
16286
|
const { mutate, isPending } = isBinary ? useUploadFile() : useUploadImage();
|
|
16287
|
+
const dataUser = user?.userProfile?.data;
|
|
16261
16288
|
const validateFile = (file) => {
|
|
16262
16289
|
if (!ALLOWED_TYPES.includes(file.type)) {
|
|
16263
16290
|
setUploadError(t3("file_accept_single"));
|
|
@@ -16277,9 +16304,13 @@ var ButtonSelectFiles = ({
|
|
|
16277
16304
|
}
|
|
16278
16305
|
return true;
|
|
16279
16306
|
};
|
|
16280
|
-
const handleUpload = async (formData) => {
|
|
16307
|
+
const handleUpload = async (formData, service2, xNode) => {
|
|
16281
16308
|
mutate(
|
|
16282
|
-
{
|
|
16309
|
+
{
|
|
16310
|
+
formData,
|
|
16311
|
+
service: service2,
|
|
16312
|
+
xNode
|
|
16313
|
+
},
|
|
16283
16314
|
{
|
|
16284
16315
|
onSuccess: (data) => {
|
|
16285
16316
|
let newFiles = [];
|
|
@@ -16294,7 +16325,8 @@ var ButtonSelectFiles = ({
|
|
|
16294
16325
|
});
|
|
16295
16326
|
y2.success(instance.t("upload_success"));
|
|
16296
16327
|
},
|
|
16297
|
-
onError: () => {
|
|
16328
|
+
onError: (err) => {
|
|
16329
|
+
console.log("data", err);
|
|
16298
16330
|
y2.error(instance.t("upload_failure"));
|
|
16299
16331
|
}
|
|
16300
16332
|
}
|
|
@@ -16304,6 +16336,8 @@ var ButtonSelectFiles = ({
|
|
|
16304
16336
|
const files = Array.from(event.target.files ?? []);
|
|
16305
16337
|
setUploadError(void 0);
|
|
16306
16338
|
event.target.value = "";
|
|
16339
|
+
const serivce = env?.default_service;
|
|
16340
|
+
const xNode = service == "mms" && dataUser?.x_node;
|
|
16307
16341
|
if (files.length === 0) return;
|
|
16308
16342
|
const validFiles = files.filter((file) => validateFile(file));
|
|
16309
16343
|
if (validFiles.length === 0) return;
|
|
@@ -16312,7 +16346,7 @@ var ButtonSelectFiles = ({
|
|
|
16312
16346
|
validFiles.forEach((file) => formData.append("ufile", file));
|
|
16313
16347
|
formData.append("model", String(model));
|
|
16314
16348
|
formData.append("id", id ? String(id) : String(0));
|
|
16315
|
-
await handleUpload(formData);
|
|
16349
|
+
await handleUpload(formData, serivce, xNode);
|
|
16316
16350
|
} else {
|
|
16317
16351
|
const file = validFiles[0];
|
|
16318
16352
|
const formData = new FormData();
|
|
@@ -16320,7 +16354,7 @@ var ButtonSelectFiles = ({
|
|
|
16320
16354
|
formData.append("thread_model", String(model));
|
|
16321
16355
|
formData.append("thread_id", id ? String(id) : String(0));
|
|
16322
16356
|
formData.append("is_pending", "true");
|
|
16323
|
-
await handleUpload(formData);
|
|
16357
|
+
await handleUpload(formData, serivce, xNode);
|
|
16324
16358
|
}
|
|
16325
16359
|
};
|
|
16326
16360
|
return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_jsx_runtime69.Fragment, { children: [
|
package/dist/widgets.mjs
CHANGED
|
@@ -15859,7 +15859,13 @@ var VideoPlayer = ({ src }) => {
|
|
|
15859
15859
|
|
|
15860
15860
|
// src/widgets/common/render-files.tsx
|
|
15861
15861
|
import { jsx as jsx68, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
15862
|
-
var ImageItem = ({
|
|
15862
|
+
var ImageItem = ({
|
|
15863
|
+
filename,
|
|
15864
|
+
checksum,
|
|
15865
|
+
index: index4,
|
|
15866
|
+
src = null,
|
|
15867
|
+
useGetImage
|
|
15868
|
+
}) => {
|
|
15863
15869
|
const { data: image } = useGetImage({
|
|
15864
15870
|
data: { filename, checksum },
|
|
15865
15871
|
queryKey: [`get-image-${""}`],
|
|
@@ -15870,7 +15876,7 @@ var ImageItem = ({ filename, checksum, index: index4, src = null, useGetImage })
|
|
|
15870
15876
|
{
|
|
15871
15877
|
src: image || src,
|
|
15872
15878
|
alt: filename,
|
|
15873
|
-
className: "w-32 h-32 object-cover rounded-md"
|
|
15879
|
+
className: "w-32 h-32 object-cover rounded-md cursor-pointer"
|
|
15874
15880
|
}
|
|
15875
15881
|
) }, index4);
|
|
15876
15882
|
};
|
|
@@ -15910,22 +15916,35 @@ var FileItem = (props) => {
|
|
|
15910
15916
|
return /* @__PURE__ */ jsxs43(
|
|
15911
15917
|
"div",
|
|
15912
15918
|
{
|
|
15913
|
-
className: "flex relative items-center overflow-hidden justify-between group rounded-md w-fit
|
|
15919
|
+
className: "flex relative items-center overflow-hidden justify-between group rounded-md w-fit",
|
|
15914
15920
|
children: [
|
|
15915
15921
|
renderFile(),
|
|
15916
15922
|
handleRemoveFile && /* @__PURE__ */ jsx68(
|
|
15917
15923
|
"div",
|
|
15918
15924
|
{
|
|
15925
|
+
style: {
|
|
15926
|
+
position: "absolute",
|
|
15927
|
+
top: 0,
|
|
15928
|
+
right: 0,
|
|
15929
|
+
backgroundColor: "rgba(0,0,0,0.2)"
|
|
15930
|
+
},
|
|
15919
15931
|
onClick: () => handleRemoveFile(index4),
|
|
15920
|
-
className: "cursor-pointer
|
|
15932
|
+
className: "cursor-pointer p-2 hidden group-hover:block",
|
|
15921
15933
|
children: /* @__PURE__ */ jsx68(DeleteIcon, {})
|
|
15922
15934
|
}
|
|
15923
15935
|
),
|
|
15924
15936
|
!handleRemoveFile && /* @__PURE__ */ jsx68(
|
|
15925
15937
|
"span",
|
|
15926
15938
|
{
|
|
15939
|
+
style: {
|
|
15940
|
+
position: "absolute",
|
|
15941
|
+
top: 0,
|
|
15942
|
+
right: 0,
|
|
15943
|
+
backgroundColor: "rgba(0,0,0,0.2)",
|
|
15944
|
+
zIndex: 10
|
|
15945
|
+
},
|
|
15927
15946
|
onClick: (e3) => handleFileDownload(e3, src, filename),
|
|
15928
|
-
className: "
|
|
15947
|
+
className: "hidden group-hover:block cursor-pointer p-2 text-white ",
|
|
15929
15948
|
children: /* @__PURE__ */ jsx68(DownloadIcon, {})
|
|
15930
15949
|
}
|
|
15931
15950
|
)
|
|
@@ -15954,7 +15973,11 @@ var downloadFile = async (url, filename) => {
|
|
|
15954
15973
|
console.error("File download failed:", error2);
|
|
15955
15974
|
}
|
|
15956
15975
|
};
|
|
15957
|
-
var RenderFiles = ({
|
|
15976
|
+
var RenderFiles = ({
|
|
15977
|
+
selectedFiles,
|
|
15978
|
+
setSelectedFiles,
|
|
15979
|
+
useGetImage
|
|
15980
|
+
}) => {
|
|
15958
15981
|
const handleRemoveFile = (index4) => {
|
|
15959
15982
|
if (setSelectedFiles) {
|
|
15960
15983
|
const files = selectedFiles.filter((_2, i3) => i3 !== index4);
|
|
@@ -15978,7 +16001,7 @@ var RenderFiles = ({ selectedFiles, setSelectedFiles, useGetImage }) => {
|
|
|
15978
16001
|
useGetImage
|
|
15979
16002
|
},
|
|
15980
16003
|
index4
|
|
15981
|
-
) });
|
|
16004
|
+
) }, file?.id ?? index4);
|
|
15982
16005
|
}) });
|
|
15983
16006
|
};
|
|
15984
16007
|
|
|
@@ -16178,7 +16201,10 @@ var ButtonSelectFiles = ({
|
|
|
16178
16201
|
id,
|
|
16179
16202
|
widget,
|
|
16180
16203
|
useUploadImage,
|
|
16181
|
-
useUploadFile
|
|
16204
|
+
useUploadFile,
|
|
16205
|
+
env,
|
|
16206
|
+
service,
|
|
16207
|
+
user
|
|
16182
16208
|
}) => {
|
|
16183
16209
|
const { t: t3 } = useI18n();
|
|
16184
16210
|
const ALLOWED_TYPES = [
|
|
@@ -16195,6 +16221,7 @@ var ButtonSelectFiles = ({
|
|
|
16195
16221
|
const MAX_TOTAL_SIZE = 50 * 1024 * 1024;
|
|
16196
16222
|
const isBinary = widget === "many2many_binary";
|
|
16197
16223
|
const { mutate, isPending } = isBinary ? useUploadFile() : useUploadImage();
|
|
16224
|
+
const dataUser = user?.userProfile?.data;
|
|
16198
16225
|
const validateFile = (file) => {
|
|
16199
16226
|
if (!ALLOWED_TYPES.includes(file.type)) {
|
|
16200
16227
|
setUploadError(t3("file_accept_single"));
|
|
@@ -16214,9 +16241,13 @@ var ButtonSelectFiles = ({
|
|
|
16214
16241
|
}
|
|
16215
16242
|
return true;
|
|
16216
16243
|
};
|
|
16217
|
-
const handleUpload = async (formData) => {
|
|
16244
|
+
const handleUpload = async (formData, service2, xNode) => {
|
|
16218
16245
|
mutate(
|
|
16219
|
-
{
|
|
16246
|
+
{
|
|
16247
|
+
formData,
|
|
16248
|
+
service: service2,
|
|
16249
|
+
xNode
|
|
16250
|
+
},
|
|
16220
16251
|
{
|
|
16221
16252
|
onSuccess: (data) => {
|
|
16222
16253
|
let newFiles = [];
|
|
@@ -16231,7 +16262,8 @@ var ButtonSelectFiles = ({
|
|
|
16231
16262
|
});
|
|
16232
16263
|
y2.success(instance.t("upload_success"));
|
|
16233
16264
|
},
|
|
16234
|
-
onError: () => {
|
|
16265
|
+
onError: (err) => {
|
|
16266
|
+
console.log("data", err);
|
|
16235
16267
|
y2.error(instance.t("upload_failure"));
|
|
16236
16268
|
}
|
|
16237
16269
|
}
|
|
@@ -16241,6 +16273,8 @@ var ButtonSelectFiles = ({
|
|
|
16241
16273
|
const files = Array.from(event.target.files ?? []);
|
|
16242
16274
|
setUploadError(void 0);
|
|
16243
16275
|
event.target.value = "";
|
|
16276
|
+
const serivce = env?.default_service;
|
|
16277
|
+
const xNode = service == "mms" && dataUser?.x_node;
|
|
16244
16278
|
if (files.length === 0) return;
|
|
16245
16279
|
const validFiles = files.filter((file) => validateFile(file));
|
|
16246
16280
|
if (validFiles.length === 0) return;
|
|
@@ -16249,7 +16283,7 @@ var ButtonSelectFiles = ({
|
|
|
16249
16283
|
validFiles.forEach((file) => formData.append("ufile", file));
|
|
16250
16284
|
formData.append("model", String(model));
|
|
16251
16285
|
formData.append("id", id ? String(id) : String(0));
|
|
16252
|
-
await handleUpload(formData);
|
|
16286
|
+
await handleUpload(formData, serivce, xNode);
|
|
16253
16287
|
} else {
|
|
16254
16288
|
const file = validFiles[0];
|
|
16255
16289
|
const formData = new FormData();
|
|
@@ -16257,7 +16291,7 @@ var ButtonSelectFiles = ({
|
|
|
16257
16291
|
formData.append("thread_model", String(model));
|
|
16258
16292
|
formData.append("thread_id", id ? String(id) : String(0));
|
|
16259
16293
|
formData.append("is_pending", "true");
|
|
16260
|
-
await handleUpload(formData);
|
|
16294
|
+
await handleUpload(formData, serivce, xNode);
|
|
16261
16295
|
}
|
|
16262
16296
|
};
|
|
16263
16297
|
return /* @__PURE__ */ jsxs44(Fragment14, { children: [
|