albinasoft-ui-package 1.1.55 → 1.1.56
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.
@@ -61,8 +61,6 @@ export interface CustomFileUploaderProps {
|
|
61
61
|
* Bu, yükleme işlemi başladığında ve bittiğinde çağrılabilir.
|
62
62
|
*/
|
63
63
|
onUploadingChange?: (uploading: boolean) => void;
|
64
|
-
/** Paket içindeki tüm toast çağrıları bu containerId'ye yönlendirilecek. Opsiyoneldir. */
|
65
|
-
toastContainerId?: string;
|
66
64
|
}
|
67
65
|
export type CustomFileUploaderHandle = {
|
68
66
|
/** Pending dosya varsa toast gösterir ve false döner. */
|
@@ -85,7 +85,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
85
85
|
exports.defaultTranslations = exports.AllowedTypes = void 0;
|
86
86
|
// CustomFileUploader.tsx
|
87
87
|
var react_1 = __importStar(require("react"));
|
88
|
-
// import { toast } from "react-toastify";
|
89
88
|
var react_toastify_1 = require("react-toastify");
|
90
89
|
var fa_1 = require("react-icons/fa");
|
91
90
|
var CustomButton_1 = __importDefault(require("./CustomButton"));
|
@@ -224,8 +223,7 @@ var isAllowedFileType = function (file, allowedType) {
|
|
224
223
|
// CustomFileUploader Bileşeni
|
225
224
|
// ====================
|
226
225
|
var CustomFileUploader = (0, react_1.forwardRef)(function (props, ref) {
|
227
|
-
var url = props.url, multi = props.multi, allowedTypes = props.allowedTypes, maxFile = props.maxFile, maxSize = props.maxSize, onUploadComplete = props.onUploadComplete, onRemoveUploaded = props.onRemoveUploaded, label = props.label, onPendingChange = props.onPendingChange, translations = props.translations, clearTrigger = props.clearTrigger, onUploadingChange = props.onUploadingChange
|
228
|
-
var toastOpts = toastContainerId ? { containerId: toastContainerId } : undefined;
|
226
|
+
var url = props.url, multi = props.multi, allowedTypes = props.allowedTypes, maxFile = props.maxFile, maxSize = props.maxSize, onUploadComplete = props.onUploadComplete, onRemoveUploaded = props.onRemoveUploaded, label = props.label, onPendingChange = props.onPendingChange, translations = props.translations, clearTrigger = props.clearTrigger, onUploadingChange = props.onUploadingChange;
|
229
227
|
// Varsayılan çeviri metinlerini, gelen prop ile birleştiriyoruz.
|
230
228
|
var finalTranslations = __assign(__assign({}, exports.defaultTranslations), translations);
|
231
229
|
var _a = (0, react_1.useState)([]), previews = _a[0], setPreviews = _a[1];
|
@@ -235,7 +233,7 @@ var CustomFileUploader = (0, react_1.forwardRef)(function (props, ref) {
|
|
235
233
|
validateReady: function () {
|
236
234
|
var hasPending = previews.some(function (p) { return !p.uploaded; });
|
237
235
|
if (hasPending) {
|
238
|
-
react_toastify_1.toast.warning(finalTranslations.pendingBeforeSubmitWarning || exports.defaultTranslations.pendingBeforeSubmitWarning
|
236
|
+
react_toastify_1.toast.warning(finalTranslations.pendingBeforeSubmitWarning || exports.defaultTranslations.pendingBeforeSubmitWarning);
|
239
237
|
return false;
|
240
238
|
}
|
241
239
|
return true;
|
@@ -282,22 +280,22 @@ var CustomFileUploader = (0, react_1.forwardRef)(function (props, ref) {
|
|
282
280
|
var currentCount = multi ? previews.length : (previews.length > 0 ? 1 : 0);
|
283
281
|
var availableSlots = multi ? maxFile - currentCount : (currentCount === 0 ? 1 : 0);
|
284
282
|
if (availableSlots <= 0) {
|
285
|
-
react_toastify_1.toast.warning(finalTranslations.uploadWarningLimit
|
283
|
+
react_toastify_1.toast.warning(finalTranslations.uploadWarningLimit);
|
286
284
|
return;
|
287
285
|
}
|
288
286
|
var filesToAdd = filesArray.slice(0, availableSlots);
|
289
287
|
if (filesArray.length > availableSlots) {
|
290
|
-
react_toastify_1.toast.warning(finalTranslations.uploadWarningExceed + availableSlots
|
288
|
+
react_toastify_1.toast.warning(finalTranslations.uploadWarningExceed + availableSlots);
|
291
289
|
}
|
292
290
|
var newPreviews = [];
|
293
291
|
filesToAdd.forEach(function (file, index) {
|
294
292
|
if (file.size > maxSize) {
|
295
293
|
// Dosya adını eklemek için file.name'i dışarıda ekliyoruz.
|
296
|
-
react_toastify_1.toast.error(file.name + " " + finalTranslations.fileSizeError
|
294
|
+
react_toastify_1.toast.error(file.name + " " + finalTranslations.fileSizeError);
|
297
295
|
return;
|
298
296
|
}
|
299
297
|
if (!isAllowedFileType(file, allowedTypes)) {
|
300
|
-
react_toastify_1.toast.error(file.name + " " + finalTranslations.fileTypeError
|
298
|
+
react_toastify_1.toast.error(file.name + " " + finalTranslations.fileTypeError);
|
301
299
|
return;
|
302
300
|
}
|
303
301
|
var isImg = allowedTypes === AllowedTypes.IMAGE || (allowedTypes === AllowedTypes.VISUAL && isImageFile(file));
|
@@ -359,7 +357,7 @@ var CustomFileUploader = (0, react_1.forwardRef)(function (props, ref) {
|
|
359
357
|
onUploadingChange === null || onUploadingChange === void 0 ? void 0 : onUploadingChange(true);
|
360
358
|
filesToUpload = previews.filter(function (item) { return !item.uploaded; }).map(function (item) { return item.file; });
|
361
359
|
if (filesToUpload.length === 0) {
|
362
|
-
react_toastify_1.toast.warning(finalTranslations.noFileSelectedWarning
|
360
|
+
react_toastify_1.toast.warning(finalTranslations.noFileSelectedWarning);
|
363
361
|
return [2 /*return*/];
|
364
362
|
}
|
365
363
|
// Yüklenmeye başlayan dosyaları işaretle
|
@@ -403,23 +401,23 @@ var CustomFileUploader = (0, react_1.forwardRef)(function (props, ref) {
|
|
403
401
|
updatePendingStatus(updatedPreviews);
|
404
402
|
return updatedPreviews;
|
405
403
|
});
|
406
|
-
react_toastify_1.toast.success(finalTranslations.uploadSuccessToast
|
404
|
+
react_toastify_1.toast.success(finalTranslations.uploadSuccessToast);
|
407
405
|
}
|
408
406
|
else {
|
409
|
-
react_toastify_1.toast.error(finalTranslations.uploadErrorToast
|
407
|
+
react_toastify_1.toast.error(finalTranslations.uploadErrorToast);
|
410
408
|
}
|
411
409
|
return [3 /*break*/, 6];
|
412
410
|
case 4: return [4 /*yield*/, response.json()];
|
413
411
|
case 5:
|
414
412
|
errorData = _a.sent();
|
415
413
|
console.error("API Hatası:", errorData);
|
416
|
-
react_toastify_1.toast.error(finalTranslations.uploadErrorToast
|
414
|
+
react_toastify_1.toast.error(finalTranslations.uploadErrorToast);
|
417
415
|
_a.label = 6;
|
418
416
|
case 6: return [3 /*break*/, 9];
|
419
417
|
case 7:
|
420
418
|
error_1 = _a.sent();
|
421
419
|
console.error("API çağrısında hata:", error_1);
|
422
|
-
react_toastify_1.toast.error(finalTranslations.uploadErrorToast
|
420
|
+
react_toastify_1.toast.error(finalTranslations.uploadErrorToast);
|
423
421
|
return [3 /*break*/, 9];
|
424
422
|
case 8:
|
425
423
|
onUploadingChange === null || onUploadingChange === void 0 ? void 0 : onUploadingChange(false);
|
@@ -264,7 +264,7 @@ var CustomForm = function (_a) {
|
|
264
264
|
} }))) : element.type === ElementType.DATETIMEPICKER ? (react_1.default.createElement(CustomDateTimePicker_1.default, __assign({}, element, { submitted: submitted }))) : element.type === ElementType.DIVIDER ? (react_1.default.createElement(CustomDivider_1.default, __assign({}, element))) : element.type === ElementType.RICHTEXTBOX ? (react_1.default.createElement(CustomRichTextbox_1.default, __assign({}, element))) : element.type === ElementType.TREEVIEW ? (react_1.default.createElement(CustomTreeView_1.default, __assign({}, element, { submitted: submitted }))) : element.type === ElementType.BUTTON ? (react_1.default.createElement(CustomButton_1.default, __assign({}, element, { isLoading: isLoading }))) : element.type === ElementType.AUTOCOMPLETEINPUT ? (react_1.default.createElement(CustomAutocompleteInput_1.default, __assign({}, element))) : element.type === ElementType.PHONE ? (react_1.default.createElement(CustomPhoneInput_1.default, __assign({}, element))) : element.type === ElementType.FILEUPLOADER ? (
|
265
265
|
// FILEUPLOADER elemanı için CustomFileUploader'ı render ediyoruz
|
266
266
|
react_1.default.createElement(react_1.default.Fragment, null,
|
267
|
-
react_1.default.createElement(CustomFileUploader_1.default, { ref: getUploaderRefCb(element.id), url: element.url, multi: element.multi, allowedTypes: element.allowedTypes, maxFile: element.maxFile, maxSize: element.maxSize, onUploadComplete: element.onUploadComplete, onRemoveUploaded: element.onRemoveUploaded, onPendingChange: element.onPendingChange, clearTrigger: element.clearTrigger, label: element.label, translations: element.translations, onUploadingChange: setIsUploading
|
267
|
+
react_1.default.createElement(CustomFileUploader_1.default, { ref: getUploaderRefCb(element.id), url: element.url, multi: element.multi, allowedTypes: element.allowedTypes, maxFile: element.maxFile, maxSize: element.maxSize, onUploadComplete: element.onUploadComplete, onRemoveUploaded: element.onRemoveUploaded, onPendingChange: element.onPendingChange, clearTrigger: element.clearTrigger, label: element.label, translations: element.translations, onUploadingChange: setIsUploading }))) : null)); })));
|
268
268
|
})));
|
269
269
|
})));
|
270
270
|
}),
|