@adobe-commerce/aio-experience-kit 1.0.2 → 1.0.3

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 (36) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/README.md +56 -2
  3. package/dist/cjs/components/DataForm/FieldBuilder/index.js +3 -2
  4. package/dist/cjs/components/DataForm/FieldBuilder/index.js.map +1 -1
  5. package/dist/cjs/components/DataTable/GridBuilder/index.js +72 -58
  6. package/dist/cjs/components/DataTable/GridBuilder/index.js.map +1 -1
  7. package/dist/cjs/components/DataTable/index.js +8 -4
  8. package/dist/cjs/components/DataTable/index.js.map +1 -1
  9. package/dist/cjs/components/DataTable/types.js.map +1 -1
  10. package/dist/cjs/components/FileUpload/index.js +12 -2
  11. package/dist/cjs/components/FileUpload/index.js.map +1 -1
  12. package/dist/esm/components/DataForm/FieldBuilder/index.js +3 -2
  13. package/dist/esm/components/DataForm/FieldBuilder/index.js.map +1 -1
  14. package/dist/esm/components/DataTable/GridBuilder/index.js +74 -60
  15. package/dist/esm/components/DataTable/GridBuilder/index.js.map +1 -1
  16. package/dist/esm/components/DataTable/index.js +9 -5
  17. package/dist/esm/components/DataTable/index.js.map +1 -1
  18. package/dist/esm/components/DataTable/types.js.map +1 -1
  19. package/dist/esm/components/FileUpload/index.js +13 -3
  20. package/dist/esm/components/FileUpload/index.js.map +1 -1
  21. package/dist/esm/types/components/DataForm/FieldBuilder/index.d.ts.map +1 -1
  22. package/dist/esm/types/components/DataTable/GridBuilder/index.d.ts +1 -1
  23. package/dist/esm/types/components/DataTable/GridBuilder/index.d.ts.map +1 -1
  24. package/dist/esm/types/components/DataTable/GridBuilder/types.d.ts +1 -0
  25. package/dist/esm/types/components/DataTable/GridBuilder/types.d.ts.map +1 -1
  26. package/dist/esm/types/components/DataTable/index.d.ts +1 -1
  27. package/dist/esm/types/components/DataTable/index.d.ts.map +1 -1
  28. package/dist/esm/types/components/DataTable/types.d.ts +1 -0
  29. package/dist/esm/types/components/DataTable/types.d.ts.map +1 -1
  30. package/dist/esm/types/components/FileUpload/index.d.ts +2 -3
  31. package/dist/esm/types/components/FileUpload/index.d.ts.map +1 -1
  32. package/dist/esm/types/components/FileUpload/types.d.ts +14 -0
  33. package/dist/esm/types/components/FileUpload/types.d.ts.map +1 -1
  34. package/dist/esm/types/components/index.d.ts +1 -1
  35. package/dist/esm/types/components/index.d.ts.map +1 -1
  36. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/FileUpload/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React, { useState, useCallback } from 'react';\nimport { FileTrigger, Button, View, Text, InlineAlert, Link } from '@adobe/react-spectrum';\nimport { FileUploadProps, FileInfo } from './types';\n\nconst FileUpload: React.FC<FileUploadProps> = ({\n name,\n label,\n isRequired = false,\n isDisabled = false,\n acceptedFileTypes,\n allowsMultiple = false,\n contextualHelp,\n onSelect,\n}) => {\n const [selectedFiles, setSelectedFiles] = useState<FileInfo[]>([]);\n const [error, setError] = useState<string>('');\n const [isLoading, setIsLoading] = useState<boolean>(false);\n\n // Dynamic button text based on allowsMultiple\n const buttonText = allowsMultiple ? 'Select Files' : 'Select File';\n\n /**\n * Reads file content as text or base64 depending on file type\n */\n const readFileContent = useCallback(\n (file: File): Promise<{ content: string; isBase64: boolean }> => {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.onload = (): void => {\n const result = reader.result as string;\n\n // Check if file is likely binary by checking MIME type\n const isBinary =\n file.type &&\n (file.type.startsWith('image/') ||\n file.type.startsWith('video/') ||\n file.type.startsWith('audio/') ||\n file.type === 'application/pdf' ||\n file.type === 'application/zip' ||\n file.type.includes('binary'));\n\n if (isBinary && result.startsWith('data:')) {\n // Remove data URL prefix for base64 content\n const base64Content = result.split(',')[1] || result;\n resolve({ content: base64Content, isBase64: true });\n } else {\n resolve({ content: result, isBase64: false });\n }\n };\n\n reader.onerror = (): void => {\n reject(new Error(`Failed to read file: ${file.name}`));\n };\n\n // Read as base64 for binary files, as text for text files\n const isBinary =\n file.type &&\n (file.type.startsWith('image/') ||\n file.type.startsWith('video/') ||\n file.type.startsWith('audio/') ||\n file.type === 'application/pdf' ||\n file.type === 'application/zip' ||\n file.type.includes('binary'));\n\n if (isBinary) {\n reader.readAsDataURL(file);\n } else {\n reader.readAsText(file);\n }\n });\n },\n []\n );\n\n /**\n * Processes selected files and reads their content\n */\n const processFiles = useCallback(\n async (fileList: FileList | null): Promise<void> => {\n if (!fileList || fileList.length === 0) {\n return;\n }\n\n setIsLoading(true);\n setError('');\n\n try {\n const files = Array.from(fileList);\n const processedFiles: FileInfo[] = [];\n\n for (const file of files) {\n try {\n const { content, isBase64 } = await readFileContent(file);\n\n const fileInfo: FileInfo = {\n name: file.name,\n size: file.size,\n type: file.type,\n lastModified: file.lastModified,\n content,\n isBase64,\n };\n\n processedFiles.push(fileInfo);\n } catch (fileError) {\n // Log error for debugging (will be suppressed in test environment by setupTests.ts)\n console.error(`Error processing file ${file.name}:`, fileError);\n const errorMsg = `Failed to process file: ${file.name}`;\n setError(errorMsg);\n return;\n }\n }\n\n setSelectedFiles(processedFiles);\n\n // Call callback\n onSelect?.(processedFiles);\n } catch (error) {\n /* istanbul ignore next */\n const errorMsg = 'An error occurred while processing files.';\n /* istanbul ignore next */\n setError(errorMsg);\n /* istanbul ignore next */\n // Log error for debugging (will be suppressed in test environment by setupTests.ts)\n /* istanbul ignore next */\n console.error('File processing error:', error);\n } finally {\n setIsLoading(false);\n }\n },\n [onSelect, readFileContent]\n );\n\n /**\n * Handles file selection from FileTrigger\n */\n const handleFileSelect = useCallback(\n (fileList: FileList | null) => {\n processFiles(fileList);\n },\n [processFiles]\n );\n\n /**\n * Clears selected files and errors\n */\n const clearFiles = useCallback(() => {\n const emptyFiles: FileInfo[] = [];\n setSelectedFiles(emptyFiles);\n setError('');\n\n // Call callback\n onSelect?.(emptyFiles);\n }, [onSelect]);\n\n return (\n <View {...(name && { 'data-name': name })} maxWidth={'size-6000'}>\n {/* Label - Always visible */}\n <View marginBottom={'size-100'}>\n <Text>\n {label}\n {selectedFiles.length > 0 && ` (${selectedFiles.length})`}\n {isRequired && <Text> *</Text>}\n {contextualHelp}\n </Text>\n </View>\n\n {/* File Trigger - Only show when no files are selected */}\n {selectedFiles.length === 0 && (\n <View marginBottom={'size-100'}>\n <FileTrigger\n {...(acceptedFileTypes && acceptedFileTypes.length > 0 && { acceptedFileTypes })}\n allowsMultiple={allowsMultiple}\n acceptDirectory={false}\n onSelect={handleFileSelect}\n >\n <Button variant=\"primary\" isDisabled={isDisabled || isLoading}>\n {isLoading ? 'Processing...' : buttonText}\n </Button>\n </FileTrigger>\n </View>\n )}\n\n {/* Selected Files Display */}\n {selectedFiles.length > 0 && (\n <View marginBottom={'size-100'}>\n <View\n borderWidth={'thin'}\n borderColor={'gray-400'}\n borderRadius={'medium'}\n padding={'size-100'}\n backgroundColor={'gray-50'}\n >\n {selectedFiles.map((file, index) => (\n <View\n key={`${file.name}-${index}`}\n marginBottom={index < selectedFiles.length - 1 ? 'size-50' : 'size-0'}\n >\n <View>\n <Text marginBottom={'size-50'}>\n <strong>{file.name}</strong>: {file.size / 1024} KB | {file.type || 'Unknown'}\n </Text>\n </View>\n </View>\n ))}\n </View>\n\n <View marginTop={'size-100'}>\n <Link onPress={clearFiles}>Clear Files</Link>\n </View>\n </View>\n )}\n\n {/* Error Message - Display at bottom */}\n {error && (\n <View marginTop={'size-100'}>\n <InlineAlert variant={'negative'}>\n <Text>{error}</Text>\n </InlineAlert>\n </View>\n )}\n </View>\n );\n};\n\nexport default FileUpload;\n"],"names":["FileUpload","_ref","name","label","_ref$isRequired","isRequired","_ref$isDisabled","isDisabled","acceptedFileTypes","_ref$allowsMultiple","allowsMultiple","contextualHelp","onSelect","_useState","useState","_useState2","_slicedToArray","selectedFiles","setSelectedFiles","_useState3","_useState4","error","setError","_useState5","_useState6","isLoading","setIsLoading","buttonText","readFileContent","useCallback","file","Promise","resolve","reject","reader","FileReader","onload","result","isBinary","type","startsWith","includes","base64Content","split","content","isBase64","onerror","Error","concat","readAsDataURL","readAsText","processFiles","_ref2","_asyncToGenerator","_regenerator","m","_callee","fileList","files","processedFiles","_i","_files","_yield$readFileConten","fileInfo","errorMsg","_errorMsg","_t","_t2","w","_context","p","n","length","a","Array","from","v","size","lastModified","push","console","f","_x","apply","arguments","handleFileSelect","clearFiles","emptyFiles","_jsxs","View","_objectSpread","maxWidth","children","_jsx","marginBottom","Text","FileTrigger","acceptDirectory","Button","variant","borderWidth","borderColor","borderRadius","padding","backgroundColor","map","index","marginTop","Link","onPress","InlineAlert"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/FileUpload/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport { useState, useCallback, forwardRef, useImperativeHandle } from 'react';\nimport { FileTrigger, Button, View, Text, InlineAlert, Link } from '@adobe/react-spectrum';\nimport { FileUploadProps, FileInfo, FileUploadHandle } from './types';\n\nconst FileUpload = forwardRef<FileUploadHandle, FileUploadProps>(\n (\n {\n name,\n label,\n isRequired = false,\n isDisabled = false,\n acceptedFileTypes,\n allowsMultiple = false,\n contextualHelp,\n onSelect,\n },\n ref\n ) => {\n const [selectedFiles, setSelectedFiles] = useState<FileInfo[]>([]);\n const [error, setError] = useState<string>('');\n const [isLoading, setIsLoading] = useState<boolean>(false);\n\n // Dynamic button text based on allowsMultiple\n const buttonText = allowsMultiple ? 'Select Files' : 'Select File';\n\n /**\n * Reads file content as text or base64 depending on file type\n */\n const readFileContent = useCallback(\n (file: File): Promise<{ content: string; isBase64: boolean }> => {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.onload = (): void => {\n const result = reader.result as string;\n\n // Check if file is likely binary by checking MIME type\n const isBinary =\n file.type &&\n (file.type.startsWith('image/') ||\n file.type.startsWith('video/') ||\n file.type.startsWith('audio/') ||\n file.type === 'application/pdf' ||\n file.type === 'application/zip' ||\n file.type.includes('binary'));\n\n if (isBinary && result.startsWith('data:')) {\n // Remove data URL prefix for base64 content\n const base64Content = result.split(',')[1] || result;\n resolve({ content: base64Content, isBase64: true });\n } else {\n resolve({ content: result, isBase64: false });\n }\n };\n\n reader.onerror = (): void => {\n reject(new Error(`Failed to read file: ${file.name}`));\n };\n\n // Read as base64 for binary files, as text for text files\n const isBinary =\n file.type &&\n (file.type.startsWith('image/') ||\n file.type.startsWith('video/') ||\n file.type.startsWith('audio/') ||\n file.type === 'application/pdf' ||\n file.type === 'application/zip' ||\n file.type.includes('binary'));\n\n if (isBinary) {\n reader.readAsDataURL(file);\n } else {\n reader.readAsText(file);\n }\n });\n },\n []\n );\n\n /**\n * Processes selected files and reads their content\n */\n const processFiles = useCallback(\n async (fileList: FileList | null): Promise<void> => {\n if (!fileList || fileList.length === 0) {\n return;\n }\n\n setIsLoading(true);\n setError('');\n\n try {\n const files = Array.from(fileList);\n const processedFiles: FileInfo[] = [];\n\n for (const file of files) {\n try {\n const { content, isBase64 } = await readFileContent(file);\n\n const fileInfo: FileInfo = {\n name: file.name,\n size: file.size,\n type: file.type,\n lastModified: file.lastModified,\n content,\n isBase64,\n };\n\n processedFiles.push(fileInfo);\n } catch (fileError) {\n // Log error for debugging (will be suppressed in test environment by setupTests.ts)\n console.error(`Error processing file ${file.name}:`, fileError);\n const errorMsg = `Failed to process file: ${file.name}`;\n setError(errorMsg);\n return;\n }\n }\n\n setSelectedFiles(processedFiles);\n\n // Call callback\n onSelect?.(processedFiles);\n } catch (error) {\n /* istanbul ignore next */\n const errorMsg = 'An error occurred while processing files.';\n /* istanbul ignore next */\n setError(errorMsg);\n /* istanbul ignore next */\n // Log error for debugging (will be suppressed in test environment by setupTests.ts)\n /* istanbul ignore next */\n console.error('File processing error:', error);\n } finally {\n setIsLoading(false);\n }\n },\n [onSelect, readFileContent]\n );\n\n /**\n * Handles file selection from FileTrigger\n */\n const handleFileSelect = useCallback(\n (fileList: FileList | null) => {\n processFiles(fileList);\n },\n [processFiles]\n );\n\n /**\n * Clears selected files and errors\n */\n const clearFiles = useCallback(() => {\n const emptyFiles: FileInfo[] = [];\n setSelectedFiles(emptyFiles);\n setError('');\n\n // Call callback\n onSelect?.(emptyFiles);\n }, [onSelect]);\n\n // Expose reset and getFiles methods via ref\n useImperativeHandle(\n ref,\n (): FileUploadHandle => ({\n reset: clearFiles,\n getFiles: (): FileInfo[] => selectedFiles,\n }),\n [clearFiles, selectedFiles]\n );\n\n return (\n <View {...(name && { 'data-name': name })} maxWidth={'size-6000'}>\n {/* Label - Always visible */}\n <View marginBottom={'size-100'}>\n <Text>\n {label}\n {selectedFiles.length > 0 && ` (${selectedFiles.length})`}\n {isRequired && <Text> *</Text>}\n {contextualHelp}\n </Text>\n </View>\n\n {/* File Trigger - Only show when no files are selected */}\n {selectedFiles.length === 0 && (\n <View marginBottom={'size-100'}>\n <FileTrigger\n {...(acceptedFileTypes && acceptedFileTypes.length > 0 && { acceptedFileTypes })}\n allowsMultiple={allowsMultiple}\n acceptDirectory={false}\n onSelect={handleFileSelect}\n >\n <Button variant=\"primary\" isDisabled={isDisabled || isLoading}>\n {isLoading ? 'Processing...' : buttonText}\n </Button>\n </FileTrigger>\n </View>\n )}\n\n {/* Selected Files Display */}\n {selectedFiles.length > 0 && (\n <View marginBottom={'size-100'}>\n <View\n borderWidth={'thin'}\n borderColor={'gray-400'}\n borderRadius={'medium'}\n padding={'size-100'}\n backgroundColor={'gray-50'}\n >\n {selectedFiles.map((file, index) => (\n <View\n key={`${file.name}-${index}`}\n marginBottom={index < selectedFiles.length - 1 ? 'size-50' : 'size-0'}\n >\n <View>\n <Text marginBottom={'size-50'}>\n <strong>{file.name}</strong>: {file.size / 1024} KB | {file.type || 'Unknown'}\n </Text>\n </View>\n </View>\n ))}\n </View>\n\n <View marginTop={'size-100'}>\n <Link onPress={clearFiles}>Clear Files</Link>\n </View>\n </View>\n )}\n\n {/* Error Message - Display at bottom */}\n {error && (\n <View marginTop={'size-100'}>\n <InlineAlert variant={'negative'}>\n <Text>{error}</Text>\n </InlineAlert>\n </View>\n )}\n </View>\n );\n }\n);\n\nFileUpload.displayName = 'FileUpload';\n\nexport default FileUpload;\n"],"names":["FileUpload","forwardRef","_ref","ref","name","label","_ref$isRequired","isRequired","_ref$isDisabled","isDisabled","acceptedFileTypes","_ref$allowsMultiple","allowsMultiple","contextualHelp","onSelect","_useState","useState","_useState2","_slicedToArray","selectedFiles","setSelectedFiles","_useState3","_useState4","error","setError","_useState5","_useState6","isLoading","setIsLoading","buttonText","readFileContent","useCallback","file","Promise","resolve","reject","reader","FileReader","onload","result","isBinary","type","startsWith","includes","base64Content","split","content","isBase64","onerror","Error","concat","readAsDataURL","readAsText","processFiles","_ref2","_asyncToGenerator","_regenerator","m","_callee","fileList","files","processedFiles","_i","_files","_yield$readFileConten","fileInfo","errorMsg","_errorMsg","_t","_t2","w","_context","p","n","length","a","Array","from","v","size","lastModified","push","console","f","_x","apply","arguments","handleFileSelect","clearFiles","emptyFiles","useImperativeHandle","reset","getFiles","_jsxs","View","_objectSpread","maxWidth","children","_jsx","marginBottom","Text","FileTrigger","acceptDirectory","Button","variant","borderWidth","borderColor","borderRadius","padding","backgroundColor","map","index","marginTop","Link","onPress","InlineAlert","displayName"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/FieldBuilder/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAYxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAG5C,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAkN7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/FieldBuilder/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAYxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAG5C,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAmN7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -3,6 +3,6 @@
3
3
  */
4
4
  import { GridBuilderProps } from './types';
5
5
  import { DataTableRow } from '../types';
6
- declare const GridBuilder: <T extends DataTableRow = DataTableRow>({ columns, data, isMassActionsEnabled, gridAction, gridActions, onGridActionPress, onSelectionChange, }: GridBuilderProps<T>) => JSX.Element;
6
+ declare const GridBuilder: <T extends DataTableRow = DataTableRow>({ columns, data, isMassActionsEnabled, gridAction, gridActions, onGridActionPress, onSelectionChange, maxHeight, }: GridBuilderProps<T>) => JSX.Element;
7
7
  export default GridBuilder;
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataTable/GridBuilder/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAgBH,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAc,YAAY,EAAE,MAAM,UAAU,CAAC;AAKpD,QAAA,MAAM,WAAW,GAAI,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,yGAQzD,gBAAgB,CAAC,CAAC,CAAC,KAAG,GAAG,CAAC,OAkF5B,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataTable/GridBuilder/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAiBH,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAc,YAAY,EAAE,MAAM,UAAU,CAAC;AAKpD,QAAA,MAAM,WAAW,GAAI,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,oHASzD,gBAAgB,CAAC,CAAC,CAAC,KAAG,GAAG,CAAC,OA+F5B,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -11,5 +11,6 @@ export interface GridBuilderProps<T extends DataTableRow = DataTableRow> {
11
11
  gridActions?: GridActionProps<T>[];
12
12
  onGridActionPress?: (key: string, item: T) => Promise<void>;
13
13
  onSelectionChange?: (keys: Selection) => void;
14
+ maxHeight?: string;
14
15
  }
15
16
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataTable/GridBuilder/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAEtF,MAAM,WAAW,gBAAgB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACrE,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CAC/C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataTable/GridBuilder/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAEtF,MAAM,WAAW,gBAAgB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACrE,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -2,6 +2,6 @@
2
2
  * <license header>
3
3
  */
4
4
  import { DataTableProps, DataTableRow } from './types';
5
- declare const DataTable: <T extends DataTableRow = DataTableRow>({ columns, data, buttons, massActions, onMassActionPress, gridAction, gridActions, onGridActionPress, onGridLoad, isProcessing, }: DataTableProps<T>) => JSX.Element;
5
+ declare const DataTable: <T extends DataTableRow = DataTableRow>({ columns, data, buttons, massActions, onMassActionPress, gridAction, gridActions, onGridActionPress, onGridLoad, isProcessing, maxHeight, }: DataTableProps<T>) => JSX.Element;
6
6
  export default DataTable;
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataTable/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,cAAc,EAAc,YAAY,EAAE,MAAM,SAAS,CAAC;AAGnE,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,mIAWvD,cAAc,CAAC,CAAC,CAAC,KAAG,GAAG,CAAC,OA+E1B,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataTable/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,cAAc,EAAc,YAAY,EAAE,MAAM,SAAS,CAAC;AAGnE,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,8IAYvD,cAAc,CAAC,CAAC,CAAC,KAAG,GAAG,CAAC,OAgF1B,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -23,6 +23,7 @@ export interface DataTableProps<T extends DataTableRow = DataTableRow> {
23
23
  onGridActionPress?: (key: string, item: T) => Promise<void>;
24
24
  onGridLoad?: () => Promise<void>;
25
25
  isProcessing?: boolean;
26
+ maxHeight?: string;
26
27
  }
27
28
  export interface MassActionProps {
28
29
  key: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataTable/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACnE,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACpE,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3C;AAED,oBAAY,UAAU;IACpB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataTable/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACnE,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACpE,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3C;AAED,oBAAY,UAAU;IACpB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB"}
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * <license header>
3
3
  */
4
- import React from 'react';
5
- import { FileUploadProps } from './types';
6
- declare const FileUpload: React.FC<FileUploadProps>;
4
+ import { FileUploadProps, FileUploadHandle } from './types';
5
+ declare const FileUpload: import("react").ForwardRefExoticComponent<FileUploadProps & import("react").RefAttributes<FileUploadHandle>>;
7
6
  export default FileUpload;
8
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/FileUpload/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AAErD,OAAO,EAAE,eAAe,EAAY,MAAM,SAAS,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA4NzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/FileUpload/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,eAAe,EAAY,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEtE,QAAA,MAAM,UAAU,8GA2Of,CAAC;AAIF,eAAe,UAAU,CAAC"}
@@ -30,6 +30,20 @@ export interface FileInfo {
30
30
  */
31
31
  isBase64: boolean;
32
32
  }
33
+ /**
34
+ * FileUpload component imperative handle interface
35
+ */
36
+ export interface FileUploadHandle {
37
+ /**
38
+ * Programmatically reset the component, clearing all selected files
39
+ * and resetting error state
40
+ */
41
+ reset: () => void;
42
+ /**
43
+ * Get current selected files
44
+ */
45
+ getFiles: () => FileInfo[];
46
+ }
33
47
  /**
34
48
  * FileUpload component props interface
35
49
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/FileUpload/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACjC;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;CACxC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/FileUpload/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,MAAM,QAAQ,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACjC;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;CACxC"}
@@ -25,5 +25,5 @@ export type { FieldBuilderProps } from './DataForm/FieldBuilder/types';
25
25
  * @deprecated ShippingCarrierForm types are deprecated. Use DataForm types directly.
26
26
  */
27
27
  export type { ShippingCarrierFormProps, SelectOption } from './ShippingCarrierForm/types';
28
- export type { FileUploadProps, FileInfo } from './FileUpload/types';
28
+ export type { FileUploadProps, FileInfo, FileUploadHandle } from './FileUpload/types';
29
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAGrD,YAAY,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACnF,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,YAAY,EACV,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EACV,cAAc,EACd,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,YAAY,EACV,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAEvE;;GAEG;AACH,YAAY,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC1F,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAGrD,YAAY,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACnF,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,YAAY,EACV,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EACV,cAAc,EACd,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,YAAY,EACV,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAEvE;;GAEG;AACH,YAAY,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC1F,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adobe-commerce/aio-experience-kit",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "A comprehensive TypeScript toolkit for building Adobe Commerce Admin UI extensions with React Spectrum components. Provides production-ready components and utilities for Adobe I/O extensibility platform integration.",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",