@veeqo/ui 12.4.0-beta-8 → 12.4.0

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 (127) hide show
  1. package/dist/components/UploadFile/UploadFile.cjs +82 -70
  2. package/dist/components/UploadFile/UploadFile.cjs.map +1 -1
  3. package/dist/components/UploadFile/UploadFile.js +85 -73
  4. package/dist/components/UploadFile/UploadFile.js.map +1 -1
  5. package/dist/components/UploadFile/UploadGraphic.cjs +14 -0
  6. package/dist/components/UploadFile/UploadGraphic.cjs.map +1 -0
  7. package/dist/components/UploadFile/UploadGraphic.d.ts +2 -0
  8. package/dist/components/UploadFile/UploadGraphic.js +8 -0
  9. package/dist/components/UploadFile/UploadGraphic.js.map +1 -0
  10. package/dist/components/UploadFile/components/UploadCopy/UploadCopy.cjs +6 -6
  11. package/dist/components/UploadFile/components/UploadCopy/UploadCopy.cjs.map +1 -1
  12. package/dist/components/UploadFile/components/UploadCopy/UploadCopy.js +6 -6
  13. package/dist/components/UploadFile/components/UploadCopy/UploadCopy.js.map +1 -1
  14. package/dist/components/UploadFile/components/UploadFileErrors/UploadFileErrors.cjs +31 -0
  15. package/dist/components/UploadFile/components/UploadFileErrors/UploadFileErrors.cjs.map +1 -0
  16. package/dist/components/UploadFile/components/UploadFileErrors/UploadFileErrors.d.ts +7 -0
  17. package/dist/components/UploadFile/components/UploadFileErrors/UploadFileErrors.js +25 -0
  18. package/dist/components/UploadFile/components/UploadFileErrors/UploadFileErrors.js.map +1 -0
  19. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.cjs +5 -52
  20. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.cjs.map +1 -1
  21. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.d.ts +3 -7
  22. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.js +5 -52
  23. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.js.map +1 -1
  24. package/dist/components/UploadFile/components/UploadedFile/styled.cjs +20 -0
  25. package/dist/components/UploadFile/components/UploadedFile/styled.cjs.map +1 -0
  26. package/dist/components/UploadFile/components/UploadedFile/styled.d.ts +2 -0
  27. package/dist/components/UploadFile/components/UploadedFile/styled.js +13 -0
  28. package/dist/components/UploadFile/components/UploadedFile/styled.js.map +1 -0
  29. package/dist/components/UploadFile/constants.cjs +8 -64
  30. package/dist/components/UploadFile/constants.cjs.map +1 -1
  31. package/dist/components/UploadFile/constants.d.ts +5 -52
  32. package/dist/components/UploadFile/constants.js +9 -63
  33. package/dist/components/UploadFile/constants.js.map +1 -1
  34. package/dist/components/UploadFile/mocks/files.d.ts +0 -2
  35. package/dist/components/UploadFile/mocks/utils.d.ts +2 -1
  36. package/dist/components/UploadFile/styled.cjs +1 -41
  37. package/dist/components/UploadFile/styled.cjs.map +1 -1
  38. package/dist/components/UploadFile/styled.d.ts +1 -5
  39. package/dist/components/UploadFile/styled.js +1 -41
  40. package/dist/components/UploadFile/styled.js.map +1 -1
  41. package/dist/components/UploadFile/types.d.ts +1 -15
  42. package/dist/components/UploadFile/utils/getFileSizeString/getFileSizeString.cjs +11 -14
  43. package/dist/components/UploadFile/utils/getFileSizeString/getFileSizeString.cjs.map +1 -1
  44. package/dist/components/UploadFile/utils/getFileSizeString/getFileSizeString.d.ts +7 -10
  45. package/dist/components/UploadFile/utils/getFileSizeString/getFileSizeString.js +11 -14
  46. package/dist/components/UploadFile/utils/getFileSizeString/getFileSizeString.js.map +1 -1
  47. package/dist/components/UploadFile/utils/getValidTypesString/getValidTypesString.cjs +30 -16
  48. package/dist/components/UploadFile/utils/getValidTypesString/getValidTypesString.cjs.map +1 -1
  49. package/dist/components/UploadFile/utils/getValidTypesString/getValidTypesString.js +30 -16
  50. package/dist/components/UploadFile/utils/getValidTypesString/getValidTypesString.js.map +1 -1
  51. package/dist/components/UploadFile/utils/index.d.ts +1 -0
  52. package/dist/components/UploadFile/utils/setInputElFile/setInputElFile.cjs +18 -0
  53. package/dist/components/UploadFile/utils/setInputElFile/setInputElFile.cjs.map +1 -0
  54. package/dist/components/UploadFile/utils/setInputElFile/setInputElFile.d.ts +13 -0
  55. package/dist/components/UploadFile/utils/setInputElFile/setInputElFile.js +16 -0
  56. package/dist/components/UploadFile/utils/setInputElFile/setInputElFile.js.map +1 -0
  57. package/dist/components/ViewsContainer/ViewsContainer.cjs +37 -10
  58. package/dist/components/ViewsContainer/ViewsContainer.cjs.map +1 -1
  59. package/dist/components/ViewsContainer/ViewsContainer.js +37 -10
  60. package/dist/components/ViewsContainer/ViewsContainer.js.map +1 -1
  61. package/dist/components/ViewsContainer/ViewsContainer.module.scss.cjs +9 -0
  62. package/dist/components/ViewsContainer/ViewsContainer.module.scss.cjs.map +1 -0
  63. package/dist/components/ViewsContainer/ViewsContainer.module.scss.js +7 -0
  64. package/dist/components/ViewsContainer/ViewsContainer.module.scss.js.map +1 -0
  65. package/dist/components/ViewsContainer/hooks/useSetScrollPosition.cjs +73 -45
  66. package/dist/components/ViewsContainer/hooks/useSetScrollPosition.cjs.map +1 -1
  67. package/dist/components/ViewsContainer/hooks/useSetScrollPosition.d.ts +9 -1
  68. package/dist/components/ViewsContainer/hooks/useSetScrollPosition.js +74 -46
  69. package/dist/components/ViewsContainer/hooks/useSetScrollPosition.js.map +1 -1
  70. package/dist/components/ViewsContainer/types.d.ts +18 -0
  71. package/dist/utils/forms/form.module.scss.cjs +2 -2
  72. package/dist/utils/forms/form.module.scss.cjs.map +1 -1
  73. package/dist/utils/forms/form.module.scss.js +2 -2
  74. package/dist/utils/forms/form.module.scss.js.map +1 -1
  75. package/package.json +1 -1
  76. package/dist/components/UploadFile/components/DropCopy/DropCopy.cjs +0 -28
  77. package/dist/components/UploadFile/components/DropCopy/DropCopy.cjs.map +0 -1
  78. package/dist/components/UploadFile/components/DropCopy/DropCopy.d.ts +0 -2
  79. package/dist/components/UploadFile/components/DropCopy/DropCopy.js +0 -22
  80. package/dist/components/UploadFile/components/DropCopy/DropCopy.js.map +0 -1
  81. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.module.scss.cjs +0 -9
  82. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.module.scss.cjs.map +0 -1
  83. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.module.scss.js +0 -7
  84. package/dist/components/UploadFile/components/UploadedFile/UploadedFile.module.scss.js.map +0 -1
  85. package/dist/components/UploadFile/hooks/useFileErrorMessages/index.d.ts +0 -1
  86. package/dist/components/UploadFile/hooks/useFileErrorMessages/useFileErrorMessages.cjs +0 -39
  87. package/dist/components/UploadFile/hooks/useFileErrorMessages/useFileErrorMessages.cjs.map +0 -1
  88. package/dist/components/UploadFile/hooks/useFileErrorMessages/useFileErrorMessages.d.ts +0 -13
  89. package/dist/components/UploadFile/hooks/useFileErrorMessages/useFileErrorMessages.js +0 -37
  90. package/dist/components/UploadFile/hooks/useFileErrorMessages/useFileErrorMessages.js.map +0 -1
  91. package/dist/components/UploadFile/hooks/usePreviewImage/index.d.ts +0 -1
  92. package/dist/components/UploadFile/hooks/usePreviewImage/usePreviewImage.cjs +0 -36
  93. package/dist/components/UploadFile/hooks/usePreviewImage/usePreviewImage.cjs.map +0 -1
  94. package/dist/components/UploadFile/hooks/usePreviewImage/usePreviewImage.d.ts +0 -8
  95. package/dist/components/UploadFile/hooks/usePreviewImage/usePreviewImage.js +0 -34
  96. package/dist/components/UploadFile/hooks/usePreviewImage/usePreviewImage.js.map +0 -1
  97. package/dist/components/UploadFile/hooks/useUploadFile/index.d.ts +0 -1
  98. package/dist/components/UploadFile/hooks/useUploadFile/useUploadFile.cjs +0 -65
  99. package/dist/components/UploadFile/hooks/useUploadFile/useUploadFile.cjs.map +0 -1
  100. package/dist/components/UploadFile/hooks/useUploadFile/useUploadFile.d.ts +0 -9
  101. package/dist/components/UploadFile/hooks/useUploadFile/useUploadFile.js +0 -63
  102. package/dist/components/UploadFile/hooks/useUploadFile/useUploadFile.js.map +0 -1
  103. package/dist/components/UploadFile/hooks/useValidateInput/index.d.ts +0 -1
  104. package/dist/components/UploadFile/hooks/useValidateInput/useValidateInput.cjs +0 -70
  105. package/dist/components/UploadFile/hooks/useValidateInput/useValidateInput.cjs.map +0 -1
  106. package/dist/components/UploadFile/hooks/useValidateInput/useValidateInput.d.ts +0 -12
  107. package/dist/components/UploadFile/hooks/useValidateInput/useValidateInput.js +0 -68
  108. package/dist/components/UploadFile/hooks/useValidateInput/useValidateInput.js.map +0 -1
  109. package/dist/components/UploadFile/mocks/mockUseUploadFile.d.ts +0 -14
  110. package/dist/components/UploadFile/utils/convertFileTypeToAcceptedFileExtension/convertFileTypeToAcceptedFileExtension.d.ts +0 -1
  111. package/dist/components/UploadFile/utils/convertFileTypeToAcceptedFileExtension/convertFileTypeToAcceptedFileType.cjs +0 -17
  112. package/dist/components/UploadFile/utils/convertFileTypeToAcceptedFileExtension/convertFileTypeToAcceptedFileType.cjs.map +0 -1
  113. package/dist/components/UploadFile/utils/convertFileTypeToAcceptedFileExtension/convertFileTypeToAcceptedFileType.d.ts +0 -1
  114. package/dist/components/UploadFile/utils/convertFileTypeToAcceptedFileExtension/convertFileTypeToAcceptedFileType.js +0 -15
  115. package/dist/components/UploadFile/utils/convertFileTypeToAcceptedFileExtension/convertFileTypeToAcceptedFileType.js.map +0 -1
  116. package/dist/components/UploadFile/utils/convertFileTypeToAcceptedFileExtension/index.d.ts +0 -1
  117. package/dist/components/UploadFile/utils/isImageType/index.d.ts +0 -1
  118. package/dist/components/UploadFile/utils/isImageType/isImageType.cjs +0 -14
  119. package/dist/components/UploadFile/utils/isImageType/isImageType.cjs.map +0 -1
  120. package/dist/components/UploadFile/utils/isImageType/isImageType.d.ts +0 -1
  121. package/dist/components/UploadFile/utils/isImageType/isImageType.js +0 -12
  122. package/dist/components/UploadFile/utils/isImageType/isImageType.js.map +0 -1
  123. package/dist/components/ViewsContainer/styled.cjs +0 -37
  124. package/dist/components/ViewsContainer/styled.cjs.map +0 -1
  125. package/dist/components/ViewsContainer/styled.d.ts +0 -34
  126. package/dist/components/ViewsContainer/styled.js +0 -23
  127. package/dist/components/ViewsContainer/styled.js.map +0 -1
@@ -1,64 +1,17 @@
1
1
  export declare enum AcceptedFileTypes {
2
2
  CSV = ".csv",
3
- JSON = ".json",
4
- XML = ".xml",
5
- TXT = ".txt",
6
- PDF = ".pdf",
7
- DOC = ".doc",
8
- DOCX = ".docx",
9
- XLS = ".xls",
10
- XLSX = ".xlsx",
11
- PPT = ".ppt",
12
- PPTX = ".pptx",
13
- ODT = ".odt",
14
- ODS = ".ods",
15
- ODP = ".odp",
16
- RTF = ".rtf",
17
3
  JPEG = ".jpeg",
18
4
  JPG = ".jpg",
19
- PNG = ".png",
20
5
  GIF = ".gif",
21
- BMP = ".bmp",
22
- WEBP = ".webp",
23
- SVG = ".svg",
24
- ICO = ".ico",
25
- TIFF = ".tiff",
26
- TIF = ".tif",
27
- MP3 = ".mp3",
28
- WAV = ".wav",
29
- OGG = ".ogg",
30
- AAC = ".aac",
31
- FLAC = ".flac",
32
- M4A = ".m4a",
33
- WMA = ".wma",
34
- MP4 = ".mp4",
35
- AVI = ".avi",
36
- MOV = ".mov",
37
- WMV = ".wmv",
38
- FLV = ".flv",
39
- WEBM = ".webm",
40
- MKV = ".mkv",
41
- M4V = ".m4v",
42
- ZIP = ".zip",
43
- RAR = ".rar",
44
- SEVEN_Z = ".7z",
45
- TAR = ".tar",
46
- GZ = ".gz"
6
+ PNG = ".png"
47
7
  }
48
8
  export declare enum FileSizeUnit {
49
9
  KB = "KB",
50
10
  MB = "MB"
51
11
  }
52
- export declare enum ErrorType {
53
- critical = "CRITICAL",
54
- warning = "WARNING"
55
- }
56
- export declare const DEFAULT_MAXIMUM_MULTIPLE_FILES = 10;
57
- export declare enum InputErrorStateMessages {
12
+ export declare enum InputState {
58
13
  VALID = "",
59
- INVALID_FORMAT = "Please provide a file with a valid format.",
60
- INVALID_FORMATS = "Please provide files with a valid format.",
61
- INVALID_SIZE = "Please provide file with an acceptable size.",
62
- INVALID_SIZES = "Please provide files with an acceptable size.",
63
- INVALID_FORMAT_AND_SIZE = "Please provide files with an acceptable size and format."
14
+ INVALID_FORMAT = "File is incorrect format",
15
+ INVALID_SIZE = "File size is too big",
16
+ INVALID_FORMAT_AND_SIZE = "File is incorrect format and too big"
64
17
  }
@@ -1,77 +1,23 @@
1
1
  var AcceptedFileTypes;
2
2
  (function (AcceptedFileTypes) {
3
- // DATA FILES
4
3
  AcceptedFileTypes["CSV"] = ".csv";
5
- AcceptedFileTypes["JSON"] = ".json";
6
- AcceptedFileTypes["XML"] = ".xml";
7
- AcceptedFileTypes["TXT"] = ".txt";
8
- // DOCUMENTS
9
- AcceptedFileTypes["PDF"] = ".pdf";
10
- AcceptedFileTypes["DOC"] = ".doc";
11
- AcceptedFileTypes["DOCX"] = ".docx";
12
- AcceptedFileTypes["XLS"] = ".xls";
13
- AcceptedFileTypes["XLSX"] = ".xlsx";
14
- AcceptedFileTypes["PPT"] = ".ppt";
15
- AcceptedFileTypes["PPTX"] = ".pptx";
16
- AcceptedFileTypes["ODT"] = ".odt";
17
- AcceptedFileTypes["ODS"] = ".ods";
18
- AcceptedFileTypes["ODP"] = ".odp";
19
- AcceptedFileTypes["RTF"] = ".rtf";
20
- // IMAGES
21
4
  AcceptedFileTypes["JPEG"] = ".jpeg";
22
5
  AcceptedFileTypes["JPG"] = ".jpg";
23
- AcceptedFileTypes["PNG"] = ".png";
24
6
  AcceptedFileTypes["GIF"] = ".gif";
25
- AcceptedFileTypes["BMP"] = ".bmp";
26
- AcceptedFileTypes["WEBP"] = ".webp";
27
- AcceptedFileTypes["SVG"] = ".svg";
28
- AcceptedFileTypes["ICO"] = ".ico";
29
- AcceptedFileTypes["TIFF"] = ".tiff";
30
- AcceptedFileTypes["TIF"] = ".tif";
31
- // AUDIO
32
- AcceptedFileTypes["MP3"] = ".mp3";
33
- AcceptedFileTypes["WAV"] = ".wav";
34
- AcceptedFileTypes["OGG"] = ".ogg";
35
- AcceptedFileTypes["AAC"] = ".aac";
36
- AcceptedFileTypes["FLAC"] = ".flac";
37
- AcceptedFileTypes["M4A"] = ".m4a";
38
- AcceptedFileTypes["WMA"] = ".wma";
39
- // VIDEO
40
- AcceptedFileTypes["MP4"] = ".mp4";
41
- AcceptedFileTypes["AVI"] = ".avi";
42
- AcceptedFileTypes["MOV"] = ".mov";
43
- AcceptedFileTypes["WMV"] = ".wmv";
44
- AcceptedFileTypes["FLV"] = ".flv";
45
- AcceptedFileTypes["WEBM"] = ".webm";
46
- AcceptedFileTypes["MKV"] = ".mkv";
47
- AcceptedFileTypes["M4V"] = ".m4v";
48
- // ARCHIVES
49
- AcceptedFileTypes["ZIP"] = ".zip";
50
- AcceptedFileTypes["RAR"] = ".rar";
51
- AcceptedFileTypes["SEVEN_Z"] = ".7z";
52
- AcceptedFileTypes["TAR"] = ".tar";
53
- AcceptedFileTypes["GZ"] = ".gz";
7
+ AcceptedFileTypes["PNG"] = ".png";
54
8
  })(AcceptedFileTypes || (AcceptedFileTypes = {}));
55
9
  var FileSizeUnit;
56
10
  (function (FileSizeUnit) {
57
11
  FileSizeUnit["KB"] = "KB";
58
12
  FileSizeUnit["MB"] = "MB";
59
13
  })(FileSizeUnit || (FileSizeUnit = {}));
60
- var ErrorType;
61
- (function (ErrorType) {
62
- ErrorType["critical"] = "CRITICAL";
63
- ErrorType["warning"] = "WARNING";
64
- })(ErrorType || (ErrorType = {}));
65
- const DEFAULT_MAXIMUM_MULTIPLE_FILES = 10;
66
- var InputErrorStateMessages;
67
- (function (InputErrorStateMessages) {
68
- InputErrorStateMessages["VALID"] = "";
69
- InputErrorStateMessages["INVALID_FORMAT"] = "Please provide a file with a valid format.";
70
- InputErrorStateMessages["INVALID_FORMATS"] = "Please provide files with a valid format.";
71
- InputErrorStateMessages["INVALID_SIZE"] = "Please provide file with an acceptable size.";
72
- InputErrorStateMessages["INVALID_SIZES"] = "Please provide files with an acceptable size.";
73
- InputErrorStateMessages["INVALID_FORMAT_AND_SIZE"] = "Please provide files with an acceptable size and format.";
74
- })(InputErrorStateMessages || (InputErrorStateMessages = {}));
14
+ var InputState;
15
+ (function (InputState) {
16
+ InputState["VALID"] = "";
17
+ InputState["INVALID_FORMAT"] = "File is incorrect format";
18
+ InputState["INVALID_SIZE"] = "File size is too big";
19
+ InputState["INVALID_FORMAT_AND_SIZE"] = "File is incorrect format and too big";
20
+ })(InputState || (InputState = {}));
75
21
 
76
- export { AcceptedFileTypes, DEFAULT_MAXIMUM_MULTIPLE_FILES, ErrorType, FileSizeUnit, InputErrorStateMessages };
22
+ export { AcceptedFileTypes, FileSizeUnit, InputState };
77
23
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../src/components/UploadFile/constants.ts"],"sourcesContent":["export enum AcceptedFileTypes {\n // DATA FILES\n CSV = '.csv',\n JSON = '.json',\n XML = '.xml',\n TXT = '.txt',\n\n // DOCUMENTS\n PDF = '.pdf',\n DOC = '.doc',\n DOCX = '.docx',\n XLS = '.xls',\n XLSX = '.xlsx',\n PPT = '.ppt',\n PPTX = '.pptx',\n ODT = '.odt',\n ODS = '.ods',\n ODP = '.odp',\n RTF = '.rtf',\n\n // IMAGES\n JPEG = '.jpeg',\n JPG = '.jpg',\n PNG = '.png',\n GIF = '.gif',\n BMP = '.bmp',\n WEBP = '.webp',\n SVG = '.svg',\n ICO = '.ico',\n TIFF = '.tiff',\n TIF = '.tif',\n\n // AUDIO\n MP3 = '.mp3',\n WAV = '.wav',\n OGG = '.ogg',\n AAC = '.aac',\n FLAC = '.flac',\n M4A = '.m4a',\n WMA = '.wma',\n\n // VIDEO\n MP4 = '.mp4',\n AVI = '.avi',\n MOV = '.mov',\n WMV = '.wmv',\n FLV = '.flv',\n WEBM = '.webm',\n MKV = '.mkv',\n M4V = '.m4v',\n\n // ARCHIVES\n ZIP = '.zip',\n RAR = '.rar',\n SEVEN_Z = '.7z',\n TAR = '.tar',\n GZ = '.gz',\n}\n\nexport enum FileSizeUnit {\n KB = 'KB',\n MB = 'MB',\n}\n\nexport enum ErrorType {\n critical = 'CRITICAL',\n warning = 'WARNING',\n}\n\nexport const DEFAULT_MAXIMUM_MULTIPLE_FILES = 10;\n\nexport enum InputErrorStateMessages {\n VALID = '',\n INVALID_FORMAT = 'Please provide a file with a valid format.',\n INVALID_FORMATS = 'Please provide files with a valid format.',\n INVALID_SIZE = 'Please provide file with an acceptable size.',\n INVALID_SIZES = 'Please provide files with an acceptable size.',\n INVALID_FORMAT_AND_SIZE = 'Please provide files with an acceptable size and format.',\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sources":["../../../src/components/UploadFile/constants.ts"],"sourcesContent":["export enum AcceptedFileTypes {\n CSV = '.csv',\n JPEG = '.jpeg',\n JPG = '.jpg',\n GIF = '.gif',\n PNG = '.png',\n}\n\nexport enum FileSizeUnit {\n KB = 'KB',\n MB = 'MB',\n}\n\nexport enum InputState {\n VALID = '',\n INVALID_FORMAT = 'File is incorrect format',\n INVALID_SIZE = 'File size is too big',\n INVALID_FORMAT_AND_SIZE = 'File is incorrect format and too big',\n}\n"],"names":[],"mappings":"IAAY;AAAZ,CAAA,UAAY,iBAAiB,EAAA;AAC3B,IAAA,iBAAA,CAAA,KAAA,CAAA,GAAA,MAAY;AACZ,IAAA,iBAAA,CAAA,MAAA,CAAA,GAAA,OAAc;AACd,IAAA,iBAAA,CAAA,KAAA,CAAA,GAAA,MAAY;AACZ,IAAA,iBAAA,CAAA,KAAA,CAAA,GAAA,MAAY;AACZ,IAAA,iBAAA,CAAA,KAAA,CAAA,GAAA,MAAY;AACd,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,GAM5B,EAAA,CAAA,CAAA;IAEW;AAAZ,CAAA,UAAY,YAAY,EAAA;AACtB,IAAA,YAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,YAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACX,CAAC,EAHW,YAAY,KAAZ,YAAY,GAGvB,EAAA,CAAA,CAAA;IAEW;AAAZ,CAAA,UAAY,UAAU,EAAA;AACpB,IAAA,UAAA,CAAA,OAAA,CAAA,GAAA,EAAU;AACV,IAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,0BAA2C;AAC3C,IAAA,UAAA,CAAA,cAAA,CAAA,GAAA,sBAAqC;AACrC,IAAA,UAAA,CAAA,yBAAA,CAAA,GAAA,sCAAgE;AAClE,CAAC,EALW,UAAU,KAAV,UAAU,GAKrB,EAAA,CAAA,CAAA;;;;"}
@@ -1,4 +1,2 @@
1
1
  export declare const mockImageFile: File;
2
2
  export declare const mockCsvFile: File;
3
- export declare const mockOtherCsvFile: File;
4
- export declare const mockAnotherCsvFile: File;
@@ -4,6 +4,7 @@ type MockHelperProps = {
4
4
  };
5
5
  export declare const mockDrop: ({ file, label }: MockHelperProps) => void;
6
6
  export declare const mockDragOver: ({ file, label }: MockHelperProps) => void;
7
- export declare const getDefaultInput: () => HTMLInputElement;
7
+ export declare const getDefaultInput: () => HTMLElement;
8
8
  export declare const getStyledDropzoneContainer: () => HTMLElement;
9
+ export declare const getUploadGraphic: () => HTMLElement;
9
10
  export {};
@@ -9,47 +9,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
9
9
 
10
10
  var styled__default = /*#__PURE__*/_interopDefaultCompat(styled);
11
11
 
12
- const DropZoneContainer = styled__default.default.div.withConfig({ displayName: "vui--DropZoneContainer", componentId: "vui--17v0v3c" }) `display:flex;align-items:center;justify-content:center;padding:${sizes.sizes.base};border-radius:${radius.radius.base};input[type='file']{position:absolute;opacity:0;width:1px;height:1px;cursor:pointer;}cursor:pointer;border:2px dashed ${colors.colors.neutral.ink.lightest};background-color:${colors.colors.neutral.grey.lightest};:hover{border:2px dashed ${colors.colors.secondary.blue.base};background-color:${colors.colors.secondary.blue.lightest};svg{color:${colors.colors.secondary.blue.base};}}:active,:focus-within{border:2px dashed ${colors.colors.secondary.blue.base};box-shadow:0 0 0 4px ${colors.colors.secondary.blue.light};background-color:${colors.colors.secondary.blue.lightest};svg{color:${colors.colors.secondary.blue.base};}}${({ isDragOver }) => isDragOver &&
13
- `
14
- border: 2px dashed ${colors.colors.secondary.blue.base};
15
- box-shadow: 0 0 0 4px ${colors.colors.secondary.blue.light};
16
- background-color: ${colors.colors.secondary.blue.lightest};
17
-
18
- svg {
19
- color: ${colors.colors.secondary.blue.base};
20
- }
21
- `} ${({ hasUserProvidedNoFiles, isDragOver, isDirty }) => hasUserProvidedNoFiles &&
22
- isDirty &&
23
- `
24
- border: 2px dashed ${colors.colors.secondary.red.base};
25
-
26
- :hover {
27
- border: 2px dashed ${colors.colors.secondary.red.base};
28
- background-color: ${colors.colors.secondary.red.lightest};
29
-
30
- svg {
31
- color: ${colors.colors.secondary.red.base};
32
- }
33
- }
34
-
35
- :active, :focus-within {
36
- border: 2px dashed ${colors.colors.secondary.red.base};
37
- box-shadow: 0 0 0 4px ${colors.colors.secondary.red.light};
38
- background-color: ${colors.colors.secondary.red.lightest};
39
-
40
- svg {
41
- color: ${colors.colors.secondary.red.base};
42
- }
43
- }
44
-
45
- ${isDragOver
46
- ? `
47
- border: 2px dashed ${colors.colors.secondary.red.base};
48
- box-shadow: 0 0 0 4px ${colors.colors.secondary.red.light};
49
- background-color: ${colors.colors.secondary.red.lightest};
50
- `
51
- : ''}
52
- `} &:has(input:disabled){cursor:not-allowed;box-shadow:none;background-color:${colors.colors.neutral.grey.light};border-color:${colors.colors.neutral.ink.lightest};color:${colors.colors.neutral.ink.light};svg{color:${colors.colors.neutral.ink.lightest};}}`;
12
+ const DropZoneContainer = styled__default.default.div.withConfig({ displayName: "vui--DropZoneContainer", componentId: "vui--17v0v3c" }) `display:flex;align-items:center;justify-content:center;padding:${sizes.sizes.md};border-radius:${radius.radius.base};input[type='file']{position:absolute;opacity:0;width:1px;height:1px;cursor:pointer;}cursor:pointer;border:2px dashed ${colors.colors.neutral.ink.lightest};background-color:${colors.colors.neutral.grey.lightest};:hover{border:2px dashed ${colors.colors.secondary.blue.base};background-color:${colors.colors.secondary.blue.lightest};}:active{border:2px dashed ${colors.colors.secondary.blue.base};box-shadow:0 0 0 4px ${colors.colors.secondary.blue.light};background-color:${colors.colors.secondary.blue.lightest};}:focus-within{border:2px dashed ${colors.colors.secondary.blue.base};box-shadow:0 0 0 4px ${colors.colors.secondary.blue.light};background-color:${colors.colors.secondary.blue.lightest};}&:has(input:invalid){border:2px dashed ${colors.colors.secondary.red.base};:hover{border:2px dashed ${colors.colors.secondary.red.base};background-color:${colors.colors.secondary.red.lightest};}:active{border:2px dashed ${colors.colors.secondary.red.base};box-shadow:0 0 0 4px ${colors.colors.secondary.red.light};background-color:${colors.colors.secondary.red.lightest};}:focus-within{border:2px dashed ${colors.colors.secondary.red.base};box-shadow:0 0 0 4px ${colors.colors.secondary.red.light};background-color:${colors.colors.secondary.red.lightest};}}&:has(input:disabled){cursor:not-allowed;box-shadow:none;background-color:${colors.colors.neutral.grey.light};border-color:${colors.colors.neutral.ink.lightest};color:${colors.colors.neutral.ink.light};}`;
53
13
 
54
14
  exports.DropZoneContainer = DropZoneContainer;
55
15
  //# sourceMappingURL=styled.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"styled.cjs","sources":["../../../src/components/UploadFile/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { radius } from '../../theme/modules/radius';\nimport { sizes } from '../../theme/modules/sizes';\n\nexport const DropZoneContainer = styled.div<{\n hasUserProvidedNoFiles: boolean;\n isDirty: boolean;\n isDragOver?: boolean;\n}>`\n display: flex;\n align-items: center;\n justify-content: center;\n\n padding: ${sizes.base};\n border-radius: ${radius.base};\n\n input[type='file'] {\n position: absolute;\n opacity: 0;\n width: 1px;\n height: 1px;\n cursor: pointer;\n }\n\n cursor: pointer;\n\n border: 2px dashed ${colors.neutral.ink.lightest};\n background-color: ${colors.neutral.grey.lightest};\n\n :hover {\n border: 2px dashed ${colors.secondary.blue.base};\n background-color: ${colors.secondary.blue.lightest};\n\n svg {\n color: ${colors.secondary.blue.base};\n }\n }\n :active,\n :focus-within {\n border: 2px dashed ${colors.secondary.blue.base};\n box-shadow: 0 0 0 4px ${colors.secondary.blue.light};\n background-color: ${colors.secondary.blue.lightest};\n\n svg {\n color: ${colors.secondary.blue.base};\n }\n }\n\n ${({ isDragOver }) =>\n isDragOver &&\n `\n border: 2px dashed ${colors.secondary.blue.base};\n box-shadow: 0 0 0 4px ${colors.secondary.blue.light};\n background-color: ${colors.secondary.blue.lightest};\n\n svg {\n color: ${colors.secondary.blue.base};\n }\n `}\n\n ${({ hasUserProvidedNoFiles, isDragOver, isDirty }) =>\n hasUserProvidedNoFiles &&\n isDirty &&\n `\n border: 2px dashed ${colors.secondary.red.base};\n\n :hover {\n border: 2px dashed ${colors.secondary.red.base};\n background-color: ${colors.secondary.red.lightest};\n\n svg {\n color: ${colors.secondary.red.base};\n }\n }\n\n :active, :focus-within {\n border: 2px dashed ${colors.secondary.red.base};\n box-shadow: 0 0 0 4px ${colors.secondary.red.light};\n background-color: ${colors.secondary.red.lightest};\n\n svg {\n color: ${colors.secondary.red.base};\n }\n }\n\n ${\n isDragOver\n ? `\n border: 2px dashed ${colors.secondary.red.base};\n box-shadow: 0 0 0 4px ${colors.secondary.red.light};\n background-color: ${colors.secondary.red.lightest};\n `\n : ''\n }\n `}\n\n\n &:has(input:disabled) {\n cursor: not-allowed;\n box-shadow: none;\n background-color: ${colors.neutral.grey.light};\n border-color: ${colors.neutral.ink.lightest};\n color: ${colors.neutral.ink.light};\n\n svg {\n color: ${colors.neutral.ink.lightest};\n }\n }\n`;\n"],"names":["styled","sizes","radius","colors"],"mappings":";;;;;;;;;;;MAKa,iBAAiB,GAAGA,uBAAM,CAAC,GAAG,sJAS9BC,WAAK,CAAC,IAAI,CACJ,eAAA,EAAAC,aAAM,CAAC,IAAI,CAAA,sHAAA,EAYPC,aAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAC5B,kBAAA,EAAAA,aAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,6BAGzBA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,kBAAA,EAC3BA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,cAGvCA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,2CAAA,EAKhBA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CACvB,sBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAA,kBAAA,EAC/BA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAGvC,WAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,MAIrC,CAAC,EAAE,UAAU,EAAE,KACf,UAAU;AACV,IAAA;AACqB,uBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA;AACvB,0BAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAA;AAC/B,sBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAA;;;AAGvC,aAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA;;GAEtC,CAEC,CAAA,EAAA,CAAC,EAAE,sBAAsB,EAAE,UAAU,EAAE,OAAO,EAAE,KAChD,sBAAsB;IACtB,OAAO;AACP,IAAA;AACqB,uBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;;;AAGvB,yBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;AAC1B,wBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAA;;;AAGtC,eAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;;;;;AAKf,yBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;AACtB,4BAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAA;AAC9B,wBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAA;;;AAGtC,eAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;;;;MAKpC;AACE,UAAE;AACe,uBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;AACtB,0BAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAA;AAC9B,sBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAA;AAClD,EAAA;AACK,UAAE,EACN;AACD,EAAA,CAAA,CAAA,2EAAA,EAMqBA,aAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAC7B,cAAA,EAAAA,aAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAA,OAAA,EAClCA,aAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAGtB,WAAA,EAAAA,aAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ;;;;"}
1
+ {"version":3,"file":"styled.cjs","sources":["../../../src/components/UploadFile/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { radius } from '../../theme/modules/radius';\nimport { sizes } from '../../theme/modules/sizes';\n\nexport const DropZoneContainer = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n\n padding: ${sizes.md};\n border-radius: ${radius.base};\n\n input[type='file'] {\n position: absolute;\n opacity: 0;\n width: 1px;\n height: 1px;\n cursor: pointer;\n }\n\n cursor: pointer;\n\n border: 2px dashed ${colors.neutral.ink.lightest};\n background-color: ${colors.neutral.grey.lightest};\n\n :hover {\n border: 2px dashed ${colors.secondary.blue.base};\n background-color: ${colors.secondary.blue.lightest};\n }\n :active {\n border: 2px dashed ${colors.secondary.blue.base};\n box-shadow: 0 0 0 4px ${colors.secondary.blue.light};\n background-color: ${colors.secondary.blue.lightest};\n }\n :focus-within {\n border: 2px dashed ${colors.secondary.blue.base};\n box-shadow: 0 0 0 4px ${colors.secondary.blue.light};\n background-color: ${colors.secondary.blue.lightest};\n }\n\n &:has(input:invalid) {\n border: 2px dashed ${colors.secondary.red.base};\n :hover {\n border: 2px dashed ${colors.secondary.red.base};\n background-color: ${colors.secondary.red.lightest};\n }\n\n :active {\n border: 2px dashed ${colors.secondary.red.base};\n box-shadow: 0 0 0 4px ${colors.secondary.red.light};\n background-color: ${colors.secondary.red.lightest};\n }\n\n :focus-within {\n border: 2px dashed ${colors.secondary.red.base};\n box-shadow: 0 0 0 4px ${colors.secondary.red.light};\n background-color: ${colors.secondary.red.lightest};\n }\n }\n\n &:has(input:disabled) {\n cursor: not-allowed;\n box-shadow: none;\n background-color: ${colors.neutral.grey.light};\n border-color: ${colors.neutral.ink.lightest};\n color: ${colors.neutral.ink.light};\n }\n`;\n"],"names":["styled","sizes","radius","colors"],"mappings":";;;;;;;;;;;MAKa,iBAAiB,GAAGA,uBAAM,CAAC,GAAG,sJAK9BC,WAAK,CAAC,EAAE,CACF,eAAA,EAAAC,aAAM,CAAC,IAAI,CAAA,sHAAA,EAYPC,aAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAC5B,kBAAA,EAAAA,aAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,6BAGzBA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,kBAAA,EAC3BA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,+BAG7BA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,sBAAA,EACvBA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAC/B,kBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,qCAG7BA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,sBAAA,EACvBA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAC/B,kBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAA,yCAAA,EAI7BA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAEvB,0BAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,qBAC1BA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAA,4BAAA,EAI5BA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CACtB,sBAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,qBAC9BA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAI5B,kCAAA,EAAAA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,yBACtBA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAA,kBAAA,EAC9BA,aAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAO/B,6EAAA,EAAAA,aAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,iBAC7BA,aAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAA,OAAA,EAClCA,aAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAA,EAAA;;;;"}
@@ -1,5 +1 @@
1
- export declare const DropZoneContainer: import("styled-components").StyledComponent<"div", any, {
2
- hasUserProvidedNoFiles: boolean;
3
- isDirty: boolean;
4
- isDragOver?: boolean | undefined;
5
- }, never>;
1
+ export declare const DropZoneContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -3,47 +3,7 @@ import { colors } from '../../theme/modules/colors.js';
3
3
  import { radius } from '../../theme/modules/radius.js';
4
4
  import { sizes } from '../../theme/modules/sizes.js';
5
5
 
6
- const DropZoneContainer = styled.div.withConfig({ displayName: "vui--DropZoneContainer", componentId: "vui--17v0v3c" }) `display:flex;align-items:center;justify-content:center;padding:${sizes.base};border-radius:${radius.base};input[type='file']{position:absolute;opacity:0;width:1px;height:1px;cursor:pointer;}cursor:pointer;border:2px dashed ${colors.neutral.ink.lightest};background-color:${colors.neutral.grey.lightest};:hover{border:2px dashed ${colors.secondary.blue.base};background-color:${colors.secondary.blue.lightest};svg{color:${colors.secondary.blue.base};}}:active,:focus-within{border:2px dashed ${colors.secondary.blue.base};box-shadow:0 0 0 4px ${colors.secondary.blue.light};background-color:${colors.secondary.blue.lightest};svg{color:${colors.secondary.blue.base};}}${({ isDragOver }) => isDragOver &&
7
- `
8
- border: 2px dashed ${colors.secondary.blue.base};
9
- box-shadow: 0 0 0 4px ${colors.secondary.blue.light};
10
- background-color: ${colors.secondary.blue.lightest};
11
-
12
- svg {
13
- color: ${colors.secondary.blue.base};
14
- }
15
- `} ${({ hasUserProvidedNoFiles, isDragOver, isDirty }) => hasUserProvidedNoFiles &&
16
- isDirty &&
17
- `
18
- border: 2px dashed ${colors.secondary.red.base};
19
-
20
- :hover {
21
- border: 2px dashed ${colors.secondary.red.base};
22
- background-color: ${colors.secondary.red.lightest};
23
-
24
- svg {
25
- color: ${colors.secondary.red.base};
26
- }
27
- }
28
-
29
- :active, :focus-within {
30
- border: 2px dashed ${colors.secondary.red.base};
31
- box-shadow: 0 0 0 4px ${colors.secondary.red.light};
32
- background-color: ${colors.secondary.red.lightest};
33
-
34
- svg {
35
- color: ${colors.secondary.red.base};
36
- }
37
- }
38
-
39
- ${isDragOver
40
- ? `
41
- border: 2px dashed ${colors.secondary.red.base};
42
- box-shadow: 0 0 0 4px ${colors.secondary.red.light};
43
- background-color: ${colors.secondary.red.lightest};
44
- `
45
- : ''}
46
- `} &:has(input:disabled){cursor:not-allowed;box-shadow:none;background-color:${colors.neutral.grey.light};border-color:${colors.neutral.ink.lightest};color:${colors.neutral.ink.light};svg{color:${colors.neutral.ink.lightest};}}`;
6
+ const DropZoneContainer = styled.div.withConfig({ displayName: "vui--DropZoneContainer", componentId: "vui--17v0v3c" }) `display:flex;align-items:center;justify-content:center;padding:${sizes.md};border-radius:${radius.base};input[type='file']{position:absolute;opacity:0;width:1px;height:1px;cursor:pointer;}cursor:pointer;border:2px dashed ${colors.neutral.ink.lightest};background-color:${colors.neutral.grey.lightest};:hover{border:2px dashed ${colors.secondary.blue.base};background-color:${colors.secondary.blue.lightest};}:active{border:2px dashed ${colors.secondary.blue.base};box-shadow:0 0 0 4px ${colors.secondary.blue.light};background-color:${colors.secondary.blue.lightest};}:focus-within{border:2px dashed ${colors.secondary.blue.base};box-shadow:0 0 0 4px ${colors.secondary.blue.light};background-color:${colors.secondary.blue.lightest};}&:has(input:invalid){border:2px dashed ${colors.secondary.red.base};:hover{border:2px dashed ${colors.secondary.red.base};background-color:${colors.secondary.red.lightest};}:active{border:2px dashed ${colors.secondary.red.base};box-shadow:0 0 0 4px ${colors.secondary.red.light};background-color:${colors.secondary.red.lightest};}:focus-within{border:2px dashed ${colors.secondary.red.base};box-shadow:0 0 0 4px ${colors.secondary.red.light};background-color:${colors.secondary.red.lightest};}}&:has(input:disabled){cursor:not-allowed;box-shadow:none;background-color:${colors.neutral.grey.light};border-color:${colors.neutral.ink.lightest};color:${colors.neutral.ink.light};}`;
47
7
 
48
8
  export { DropZoneContainer };
49
9
  //# sourceMappingURL=styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","sources":["../../../src/components/UploadFile/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { radius } from '../../theme/modules/radius';\nimport { sizes } from '../../theme/modules/sizes';\n\nexport const DropZoneContainer = styled.div<{\n hasUserProvidedNoFiles: boolean;\n isDirty: boolean;\n isDragOver?: boolean;\n}>`\n display: flex;\n align-items: center;\n justify-content: center;\n\n padding: ${sizes.base};\n border-radius: ${radius.base};\n\n input[type='file'] {\n position: absolute;\n opacity: 0;\n width: 1px;\n height: 1px;\n cursor: pointer;\n }\n\n cursor: pointer;\n\n border: 2px dashed ${colors.neutral.ink.lightest};\n background-color: ${colors.neutral.grey.lightest};\n\n :hover {\n border: 2px dashed ${colors.secondary.blue.base};\n background-color: ${colors.secondary.blue.lightest};\n\n svg {\n color: ${colors.secondary.blue.base};\n }\n }\n :active,\n :focus-within {\n border: 2px dashed ${colors.secondary.blue.base};\n box-shadow: 0 0 0 4px ${colors.secondary.blue.light};\n background-color: ${colors.secondary.blue.lightest};\n\n svg {\n color: ${colors.secondary.blue.base};\n }\n }\n\n ${({ isDragOver }) =>\n isDragOver &&\n `\n border: 2px dashed ${colors.secondary.blue.base};\n box-shadow: 0 0 0 4px ${colors.secondary.blue.light};\n background-color: ${colors.secondary.blue.lightest};\n\n svg {\n color: ${colors.secondary.blue.base};\n }\n `}\n\n ${({ hasUserProvidedNoFiles, isDragOver, isDirty }) =>\n hasUserProvidedNoFiles &&\n isDirty &&\n `\n border: 2px dashed ${colors.secondary.red.base};\n\n :hover {\n border: 2px dashed ${colors.secondary.red.base};\n background-color: ${colors.secondary.red.lightest};\n\n svg {\n color: ${colors.secondary.red.base};\n }\n }\n\n :active, :focus-within {\n border: 2px dashed ${colors.secondary.red.base};\n box-shadow: 0 0 0 4px ${colors.secondary.red.light};\n background-color: ${colors.secondary.red.lightest};\n\n svg {\n color: ${colors.secondary.red.base};\n }\n }\n\n ${\n isDragOver\n ? `\n border: 2px dashed ${colors.secondary.red.base};\n box-shadow: 0 0 0 4px ${colors.secondary.red.light};\n background-color: ${colors.secondary.red.lightest};\n `\n : ''\n }\n `}\n\n\n &:has(input:disabled) {\n cursor: not-allowed;\n box-shadow: none;\n background-color: ${colors.neutral.grey.light};\n border-color: ${colors.neutral.ink.lightest};\n color: ${colors.neutral.ink.light};\n\n svg {\n color: ${colors.neutral.ink.lightest};\n }\n }\n`;\n"],"names":[],"mappings":";;;;;MAKa,iBAAiB,GAAG,MAAM,CAAC,GAAG,sJAS9B,KAAK,CAAC,IAAI,CACJ,eAAA,EAAA,MAAM,CAAC,IAAI,CAAA,sHAAA,EAYP,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAC5B,kBAAA,EAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,6BAGzB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,kBAAA,EAC3B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,cAGvC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,2CAAA,EAKhB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CACvB,sBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAA,kBAAA,EAC/B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAGvC,WAAA,EAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,MAIrC,CAAC,EAAE,UAAU,EAAE,KACf,UAAU;AACV,IAAA;AACqB,uBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA;AACvB,0BAAA,EAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAA;AAC/B,sBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAA;;;AAGvC,aAAA,EAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA;;GAEtC,CAEC,CAAA,EAAA,CAAC,EAAE,sBAAsB,EAAE,UAAU,EAAE,OAAO,EAAE,KAChD,sBAAsB;IACtB,OAAO;AACP,IAAA;AACqB,uBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;;;AAGvB,yBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;AAC1B,wBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAA;;;AAGtC,eAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;;;;;AAKf,yBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;AACtB,4BAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAA;AAC9B,wBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAA;;;AAGtC,eAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;;;;MAKpC;AACE,UAAE;AACe,uBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAA;AACtB,0BAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAA;AAC9B,sBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAA;AAClD,EAAA;AACK,UAAE,EACN;AACD,EAAA,CAAA,CAAA,2EAAA,EAMqB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAC7B,cAAA,EAAA,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAA,OAAA,EAClC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAGtB,WAAA,EAAA,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ;;;;"}
1
+ {"version":3,"file":"styled.js","sources":["../../../src/components/UploadFile/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { radius } from '../../theme/modules/radius';\nimport { sizes } from '../../theme/modules/sizes';\n\nexport const DropZoneContainer = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n\n padding: ${sizes.md};\n border-radius: ${radius.base};\n\n input[type='file'] {\n position: absolute;\n opacity: 0;\n width: 1px;\n height: 1px;\n cursor: pointer;\n }\n\n cursor: pointer;\n\n border: 2px dashed ${colors.neutral.ink.lightest};\n background-color: ${colors.neutral.grey.lightest};\n\n :hover {\n border: 2px dashed ${colors.secondary.blue.base};\n background-color: ${colors.secondary.blue.lightest};\n }\n :active {\n border: 2px dashed ${colors.secondary.blue.base};\n box-shadow: 0 0 0 4px ${colors.secondary.blue.light};\n background-color: ${colors.secondary.blue.lightest};\n }\n :focus-within {\n border: 2px dashed ${colors.secondary.blue.base};\n box-shadow: 0 0 0 4px ${colors.secondary.blue.light};\n background-color: ${colors.secondary.blue.lightest};\n }\n\n &:has(input:invalid) {\n border: 2px dashed ${colors.secondary.red.base};\n :hover {\n border: 2px dashed ${colors.secondary.red.base};\n background-color: ${colors.secondary.red.lightest};\n }\n\n :active {\n border: 2px dashed ${colors.secondary.red.base};\n box-shadow: 0 0 0 4px ${colors.secondary.red.light};\n background-color: ${colors.secondary.red.lightest};\n }\n\n :focus-within {\n border: 2px dashed ${colors.secondary.red.base};\n box-shadow: 0 0 0 4px ${colors.secondary.red.light};\n background-color: ${colors.secondary.red.lightest};\n }\n }\n\n &:has(input:disabled) {\n cursor: not-allowed;\n box-shadow: none;\n background-color: ${colors.neutral.grey.light};\n border-color: ${colors.neutral.ink.lightest};\n color: ${colors.neutral.ink.light};\n }\n`;\n"],"names":[],"mappings":";;;;;MAKa,iBAAiB,GAAG,MAAM,CAAC,GAAG,sJAK9B,KAAK,CAAC,EAAE,CACF,eAAA,EAAA,MAAM,CAAC,IAAI,CAAA,sHAAA,EAYP,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAC5B,kBAAA,EAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,6BAGzB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,kBAAA,EAC3B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,+BAG7B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,sBAAA,EACvB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAC/B,kBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,qCAG7B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,sBAAA,EACvB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAC/B,kBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAA,yCAAA,EAI7B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAEvB,0BAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,qBAC1B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAA,4BAAA,EAI5B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CACtB,sBAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,qBAC9B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAI5B,kCAAA,EAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,yBACtB,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAA,kBAAA,EAC9B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAO/B,6EAAA,EAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,iBAC7B,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAA,OAAA,EAClC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAA,EAAA;;;;"}
@@ -1,23 +1,9 @@
1
1
  /// <reference types="react" />
2
- import { AcceptedFileTypes, ErrorType, FileSizeUnit } from './constants';
2
+ import { AcceptedFileTypes, FileSizeUnit } from './constants';
3
3
  export interface UploadFileProps extends React.InputHTMLAttributes<HTMLInputElement> {
4
4
  id: string;
5
5
  fileTypes: Array<AcceptedFileTypes>;
6
6
  label?: string;
7
7
  format?: FileSizeUnit;
8
8
  maxBytes?: number;
9
- errorMessage?: string;
10
- hideUploadedFiles?: boolean;
11
- onMaxFilesExceeded?: () => void;
12
- maxFiles?: number;
13
- disabledMessage?: string;
14
- isDirty?: boolean;
15
9
  }
16
- export type UploadFileErrors = {
17
- criticalErrors: Array<UploadFileError>;
18
- };
19
- type UploadFileError = {
20
- errorType: ErrorType;
21
- errorMessage: string;
22
- };
23
- export {};
@@ -3,33 +3,30 @@
3
3
  var constants = require('../../constants.cjs');
4
4
 
5
5
  /**
6
- * Converts a file size in bytes to a human-readable string with the specified format unit.
6
+ * Constructs a string intended to be consumed by an <input> element of type "file". This string
7
+ * should go inside the accept property
7
8
  *
8
9
  * E.g.
9
10
  *
10
11
  * const maxSizeCopy = getFileSizeString({
11
- * maxBytes: 10000000,
12
+ * maxBytes: 10000,
12
13
  * format: FileSizeUnit.MB
13
14
  * });
14
15
  *
15
- * Where @constant maxSizeCopy would equal "Maximum file size: 10 MB"
16
+ * Where @constant maxSizeCopy would equal "Max size: 1 MB"
16
17
  *
17
- * @param maxBytes - The file size in bytes to convert
18
- * @param format - The unit format to display (KB or MB)
19
- * @param baseString - Optional prefix string, defaults to "Maximum file size: "
20
- * @param digits - Number of decimal places to show, defaults to 2 (strips any leading zeros)
21
- * @returns A formatted string representing the file size
18
+ * @param fileTypes - A list of file types, each value being of @type AcceptedFileTypes
19
+ * the returned string
22
20
  */
23
- const getFileSizeString = ({ maxBytes, format, baseString, digits = 2, }) => {
24
- const base = baseString !== null && baseString !== undefined ? baseString : 'Maximum file size: ';
25
- const getValue = (divisor) => parseFloat((maxBytes / divisor).toFixed(digits));
21
+ const getFileSizeString = ({ maxBytes, format, baseString }) => {
22
+ const base = baseString == null ? 'Max size: ' : baseString;
26
23
  switch (format) {
27
24
  case constants.FileSizeUnit.KB:
28
- return `${base}${getValue(1000)} KB`;
25
+ return `${base}${Number(maxBytes) / 1000} KB`;
29
26
  case constants.FileSizeUnit.MB:
30
- return `${base}${getValue(1000000)} MB`;
27
+ return `${base}${Number(maxBytes) / 1000000} MB`;
31
28
  default:
32
- return `${base}${getValue(1000)} KB`;
29
+ return `${base}${Number(maxBytes) / 1000} KB`;
33
30
  }
34
31
  };
35
32
 
@@ -1 +1 @@
1
- {"version":3,"file":"getFileSizeString.cjs","sources":["../../../../../src/components/UploadFile/utils/getFileSizeString/getFileSizeString.ts"],"sourcesContent":["import { FileSizeUnit } from '../../constants';\n\ntype GetFileSizeStringProps = {\n maxBytes: number;\n format: FileSizeUnit;\n baseString?: string;\n digits?: number;\n};\n/**\n * Converts a file size in bytes to a human-readable string with the specified format unit.\n *\n * E.g.\n *\n * const maxSizeCopy = getFileSizeString({\n * maxBytes: 10000000,\n * format: FileSizeUnit.MB\n * });\n *\n * Where @constant maxSizeCopy would equal \"Maximum file size: 10 MB\"\n *\n * @param maxBytes - The file size in bytes to convert\n * @param format - The unit format to display (KB or MB)\n * @param baseString - Optional prefix string, defaults to \"Maximum file size: \"\n * @param digits - Number of decimal places to show, defaults to 2 (strips any leading zeros)\n * @returns A formatted string representing the file size\n */\nexport const getFileSizeString = ({\n maxBytes,\n format,\n baseString,\n digits = 2,\n}: GetFileSizeStringProps) => {\n const base = baseString ?? 'Maximum file size: ';\n const getValue = (divisor: number) => parseFloat((maxBytes / divisor).toFixed(digits));\n switch (format) {\n case FileSizeUnit.KB:\n return `${base}${getValue(1000)} KB`;\n case FileSizeUnit.MB:\n return `${base}${getValue(1000000)} MB`;\n default:\n return `${base}${getValue(1000)} KB`;\n }\n};\n"],"names":["FileSizeUnit"],"mappings":";;;;AAQA;;;;;;;;;;;;;;;;;AAiBG;AACU,MAAA,iBAAiB,GAAG,CAAC,EAChC,QAAQ,EACR,MAAM,EACN,UAAU,EACV,MAAM,GAAG,CAAC,GACa,KAAI;IAC3B,MAAM,IAAI,GAAG,UAAU,KAAA,IAAA,IAAV,UAAU,KAAV,SAAA,GAAA,UAAU,GAAI,qBAAqB;IAChD,MAAM,QAAQ,GAAG,CAAC,OAAe,KAAK,UAAU,CAAC,CAAC,QAAQ,GAAG,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;AACtF,IAAA,QAAQ,MAAM;QACZ,KAAKA,sBAAY,CAAC,EAAE;YAClB,OAAO,CAAA,EAAG,IAAI,CAAG,EAAA,QAAQ,CAAC,IAAI,CAAC,KAAK;QACtC,KAAKA,sBAAY,CAAC,EAAE;YAClB,OAAO,CAAA,EAAG,IAAI,CAAG,EAAA,QAAQ,CAAC,OAAO,CAAC,KAAK;AACzC,QAAA;YACE,OAAO,CAAA,EAAG,IAAI,CAAG,EAAA,QAAQ,CAAC,IAAI,CAAC,KAAK;AACvC;AACH;;;;"}
1
+ {"version":3,"file":"getFileSizeString.cjs","sources":["../../../../../src/components/UploadFile/utils/getFileSizeString/getFileSizeString.ts"],"sourcesContent":["import { FileSizeUnit } from '../../constants';\n\ntype GetFileSizeStringProps = {\n maxBytes: number;\n format: FileSizeUnit;\n baseString?: string;\n};\n/**\n * Constructs a string intended to be consumed by an <input> element of type \"file\". This string\n * should go inside the accept property \n *\n * E.g.\n *\n * const maxSizeCopy = getFileSizeString({\n * maxBytes: 10000,\n * format: FileSizeUnit.MB\n * });\n *\n * Where @constant maxSizeCopy would equal \"Max size: 1 MB\"\n *\n * @param fileTypes - A list of file types, each value being of @type AcceptedFileTypes\n * the returned string\n */\nexport const getFileSizeString = ({ maxBytes, format, baseString }: GetFileSizeStringProps) => {\n const base = baseString == null ? 'Max size: ' : baseString;\n switch (format) {\n case FileSizeUnit.KB:\n return `${base}${Number(maxBytes) / 1000} KB`;\n case FileSizeUnit.MB:\n return `${base}${Number(maxBytes) / 1000000} MB`;\n default:\n return `${base}${Number(maxBytes) / 1000} KB`;\n }\n};\n"],"names":["FileSizeUnit"],"mappings":";;;;AAOA;;;;;;;;;;;;;;;AAeG;AACI,MAAM,iBAAiB,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAA0B,KAAI;AAC5F,IAAA,MAAM,IAAI,GAAG,UAAU,IAAI,IAAI,GAAG,YAAY,GAAG,UAAU;AAC3D,IAAA,QAAQ,MAAM;QACZ,KAAKA,sBAAY,CAAC,EAAE;YAClB,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA,GAAA,CAAK;QAC/C,KAAKA,sBAAY,CAAC,EAAE;YAClB,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAA,GAAA,CAAK;AAClD,QAAA;YACE,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA,GAAA,CAAK;AAChD;AACH;;;;"}
@@ -3,25 +3,22 @@ type GetFileSizeStringProps = {
3
3
  maxBytes: number;
4
4
  format: FileSizeUnit;
5
5
  baseString?: string;
6
- digits?: number;
7
6
  };
8
7
  /**
9
- * Converts a file size in bytes to a human-readable string with the specified format unit.
8
+ * Constructs a string intended to be consumed by an <input> element of type "file". This string
9
+ * should go inside the accept property
10
10
  *
11
11
  * E.g.
12
12
  *
13
13
  * const maxSizeCopy = getFileSizeString({
14
- * maxBytes: 10000000,
14
+ * maxBytes: 10000,
15
15
  * format: FileSizeUnit.MB
16
16
  * });
17
17
  *
18
- * Where @constant maxSizeCopy would equal "Maximum file size: 10 MB"
18
+ * Where @constant maxSizeCopy would equal "Max size: 1 MB"
19
19
  *
20
- * @param maxBytes - The file size in bytes to convert
21
- * @param format - The unit format to display (KB or MB)
22
- * @param baseString - Optional prefix string, defaults to "Maximum file size: "
23
- * @param digits - Number of decimal places to show, defaults to 2 (strips any leading zeros)
24
- * @returns A formatted string representing the file size
20
+ * @param fileTypes - A list of file types, each value being of @type AcceptedFileTypes
21
+ * the returned string
25
22
  */
26
- export declare const getFileSizeString: ({ maxBytes, format, baseString, digits, }: GetFileSizeStringProps) => string;
23
+ export declare const getFileSizeString: ({ maxBytes, format, baseString }: GetFileSizeStringProps) => string;
27
24
  export {};
@@ -1,33 +1,30 @@
1
1
  import { FileSizeUnit } from '../../constants.js';
2
2
 
3
3
  /**
4
- * Converts a file size in bytes to a human-readable string with the specified format unit.
4
+ * Constructs a string intended to be consumed by an <input> element of type "file". This string
5
+ * should go inside the accept property
5
6
  *
6
7
  * E.g.
7
8
  *
8
9
  * const maxSizeCopy = getFileSizeString({
9
- * maxBytes: 10000000,
10
+ * maxBytes: 10000,
10
11
  * format: FileSizeUnit.MB
11
12
  * });
12
13
  *
13
- * Where @constant maxSizeCopy would equal "Maximum file size: 10 MB"
14
+ * Where @constant maxSizeCopy would equal "Max size: 1 MB"
14
15
  *
15
- * @param maxBytes - The file size in bytes to convert
16
- * @param format - The unit format to display (KB or MB)
17
- * @param baseString - Optional prefix string, defaults to "Maximum file size: "
18
- * @param digits - Number of decimal places to show, defaults to 2 (strips any leading zeros)
19
- * @returns A formatted string representing the file size
16
+ * @param fileTypes - A list of file types, each value being of @type AcceptedFileTypes
17
+ * the returned string
20
18
  */
21
- const getFileSizeString = ({ maxBytes, format, baseString, digits = 2, }) => {
22
- const base = baseString !== null && baseString !== undefined ? baseString : 'Maximum file size: ';
23
- const getValue = (divisor) => parseFloat((maxBytes / divisor).toFixed(digits));
19
+ const getFileSizeString = ({ maxBytes, format, baseString }) => {
20
+ const base = baseString == null ? 'Max size: ' : baseString;
24
21
  switch (format) {
25
22
  case FileSizeUnit.KB:
26
- return `${base}${getValue(1000)} KB`;
23
+ return `${base}${Number(maxBytes) / 1000} KB`;
27
24
  case FileSizeUnit.MB:
28
- return `${base}${getValue(1000000)} MB`;
25
+ return `${base}${Number(maxBytes) / 1000000} MB`;
29
26
  default:
30
- return `${base}${getValue(1000)} KB`;
27
+ return `${base}${Number(maxBytes) / 1000} KB`;
31
28
  }
32
29
  };
33
30
 
@@ -1 +1 @@
1
- {"version":3,"file":"getFileSizeString.js","sources":["../../../../../src/components/UploadFile/utils/getFileSizeString/getFileSizeString.ts"],"sourcesContent":["import { FileSizeUnit } from '../../constants';\n\ntype GetFileSizeStringProps = {\n maxBytes: number;\n format: FileSizeUnit;\n baseString?: string;\n digits?: number;\n};\n/**\n * Converts a file size in bytes to a human-readable string with the specified format unit.\n *\n * E.g.\n *\n * const maxSizeCopy = getFileSizeString({\n * maxBytes: 10000000,\n * format: FileSizeUnit.MB\n * });\n *\n * Where @constant maxSizeCopy would equal \"Maximum file size: 10 MB\"\n *\n * @param maxBytes - The file size in bytes to convert\n * @param format - The unit format to display (KB or MB)\n * @param baseString - Optional prefix string, defaults to \"Maximum file size: \"\n * @param digits - Number of decimal places to show, defaults to 2 (strips any leading zeros)\n * @returns A formatted string representing the file size\n */\nexport const getFileSizeString = ({\n maxBytes,\n format,\n baseString,\n digits = 2,\n}: GetFileSizeStringProps) => {\n const base = baseString ?? 'Maximum file size: ';\n const getValue = (divisor: number) => parseFloat((maxBytes / divisor).toFixed(digits));\n switch (format) {\n case FileSizeUnit.KB:\n return `${base}${getValue(1000)} KB`;\n case FileSizeUnit.MB:\n return `${base}${getValue(1000000)} MB`;\n default:\n return `${base}${getValue(1000)} KB`;\n }\n};\n"],"names":[],"mappings":";;AAQA;;;;;;;;;;;;;;;;;AAiBG;AACU,MAAA,iBAAiB,GAAG,CAAC,EAChC,QAAQ,EACR,MAAM,EACN,UAAU,EACV,MAAM,GAAG,CAAC,GACa,KAAI;IAC3B,MAAM,IAAI,GAAG,UAAU,KAAA,IAAA,IAAV,UAAU,KAAV,SAAA,GAAA,UAAU,GAAI,qBAAqB;IAChD,MAAM,QAAQ,GAAG,CAAC,OAAe,KAAK,UAAU,CAAC,CAAC,QAAQ,GAAG,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;AACtF,IAAA,QAAQ,MAAM;QACZ,KAAK,YAAY,CAAC,EAAE;YAClB,OAAO,CAAA,EAAG,IAAI,CAAG,EAAA,QAAQ,CAAC,IAAI,CAAC,KAAK;QACtC,KAAK,YAAY,CAAC,EAAE;YAClB,OAAO,CAAA,EAAG,IAAI,CAAG,EAAA,QAAQ,CAAC,OAAO,CAAC,KAAK;AACzC,QAAA;YACE,OAAO,CAAA,EAAG,IAAI,CAAG,EAAA,QAAQ,CAAC,IAAI,CAAC,KAAK;AACvC;AACH;;;;"}
1
+ {"version":3,"file":"getFileSizeString.js","sources":["../../../../../src/components/UploadFile/utils/getFileSizeString/getFileSizeString.ts"],"sourcesContent":["import { FileSizeUnit } from '../../constants';\n\ntype GetFileSizeStringProps = {\n maxBytes: number;\n format: FileSizeUnit;\n baseString?: string;\n};\n/**\n * Constructs a string intended to be consumed by an <input> element of type \"file\". This string\n * should go inside the accept property \n *\n * E.g.\n *\n * const maxSizeCopy = getFileSizeString({\n * maxBytes: 10000,\n * format: FileSizeUnit.MB\n * });\n *\n * Where @constant maxSizeCopy would equal \"Max size: 1 MB\"\n *\n * @param fileTypes - A list of file types, each value being of @type AcceptedFileTypes\n * the returned string\n */\nexport const getFileSizeString = ({ maxBytes, format, baseString }: GetFileSizeStringProps) => {\n const base = baseString == null ? 'Max size: ' : baseString;\n switch (format) {\n case FileSizeUnit.KB:\n return `${base}${Number(maxBytes) / 1000} KB`;\n case FileSizeUnit.MB:\n return `${base}${Number(maxBytes) / 1000000} MB`;\n default:\n return `${base}${Number(maxBytes) / 1000} KB`;\n }\n};\n"],"names":[],"mappings":";;AAOA;;;;;;;;;;;;;;;AAeG;AACI,MAAM,iBAAiB,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAA0B,KAAI;AAC5F,IAAA,MAAM,IAAI,GAAG,UAAU,IAAI,IAAI,GAAG,YAAY,GAAG,UAAU;AAC3D,IAAA,QAAQ,MAAM;QACZ,KAAK,YAAY,CAAC,EAAE;YAClB,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA,GAAA,CAAK;QAC/C,KAAK,YAAY,CAAC,EAAE;YAClB,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAA,GAAA,CAAK;AAClD,QAAA;YACE,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA,GAAA,CAAK;AAChD;AACH;;;;"}
@@ -1,5 +1,7 @@
1
1
  'use strict';
2
2
 
3
+ var constants = require('../../constants.cjs');
4
+
3
5
  /**
4
6
  * Constructs a user-friendly string of accepted types valid for the UploadFile component based on the
5
7
  * fileTypes list passed as parameter.
@@ -19,22 +21,34 @@
19
21
  * the returned string
20
22
  */
21
23
  const getValidTypesString = ({ fileTypes, baseString }) => {
22
- // Remove leading dot and uppercase for display
23
- const getDisplayType = (fileType) => fileType.replace(/^\./, '').toUpperCase();
24
- if (!fileTypes.length)
25
- return baseString !== null && baseString !== undefined ? baseString : '';
26
- const displayTypes = fileTypes.map(getDisplayType);
27
- let result = baseString == null ? 'Valid file types: ' : baseString;
28
- if (displayTypes.length === 1) {
29
- result += displayTypes[0];
30
- }
31
- else if (displayTypes.length === 2) {
32
- result += `${displayTypes[0]} and ${displayTypes[1]}`;
33
- }
34
- else {
35
- result += `${displayTypes.slice(0, -1).join(', ')} and ${displayTypes[displayTypes.length - 1]}`;
36
- }
37
- return result;
24
+ let base = baseString == null ? 'Valid types: ' : baseString;
25
+ fileTypes.forEach((fileType, index, list) => {
26
+ const iterable = list.length > 1;
27
+ const isLast = index === list.length - 1 && iterable;
28
+ const isPenultimate = index === list.length - 2 && iterable;
29
+ if (isLast)
30
+ base += ' and ';
31
+ switch (fileType) {
32
+ case constants.AcceptedFileTypes.CSV:
33
+ base += 'CSV';
34
+ break;
35
+ case constants.AcceptedFileTypes.GIF:
36
+ base += 'GIF';
37
+ break;
38
+ case constants.AcceptedFileTypes.JPEG:
39
+ base += 'JPEG';
40
+ break;
41
+ case constants.AcceptedFileTypes.JPG:
42
+ base += 'JPG';
43
+ break;
44
+ case constants.AcceptedFileTypes.PNG:
45
+ base += 'PNG';
46
+ break;
47
+ }
48
+ if (!isPenultimate && !isLast && list.length > 2)
49
+ base += ', ';
50
+ });
51
+ return base;
38
52
  };
39
53
 
40
54
  exports.getValidTypesString = getValidTypesString;