@@ -124,20 +148,32 @@ const FilePreviewTab = ({
- setIsEditColumnsOpen(true)}>
+ setIsEditColumnsOpen(true)}
+ className="hue-importer-preview-page__edit-columns-button"
+ >
{t('Edit Columns')}
loading={guessingFormat || loadingPreview || guessingHeader}
data={tableData}
- columns={columns}
+ columns={displayColumns}
rowKey="importerDataKey"
isDynamicHeight
locale={{ emptyText: t('No data found in the file!') }}
/>
-
setIsEditColumnsOpen(false)} />
+
+ setIsEditColumnsOpen(false)}
+ columns={editableColumns}
+ setColumns={setEditableColumns}
+ sample={tableData[0]}
+ sqlDialect={destinationConfig.connectorId}
+ fileFormat={fileFormat}
+ />
);
};
diff --git a/desktop/core/src/desktop/js/apps/newimporter/FilePreviewTab/SourceConfiguration/SourceConfiguration.tsx b/desktop/core/src/desktop/js/apps/newimporter/FilePreviewTab/SourceConfiguration/SourceConfiguration.tsx
index 5a4ced1f09e..7224fc5ea3d 100644
--- a/desktop/core/src/desktop/js/apps/newimporter/FilePreviewTab/SourceConfiguration/SourceConfiguration.tsx
+++ b/desktop/core/src/desktop/js/apps/newimporter/FilePreviewTab/SourceConfiguration/SourceConfiguration.tsx
@@ -62,6 +62,7 @@ const SourceConfiguration = ({
onChange={value => onChange(value, config.name)}
value={fileFormat?.[config.name]}
getPopupContainer={triggerNode => triggerNode.parentElement}
+ aria-label={t(config.label)}
/>
))}
diff --git a/desktop/core/src/desktop/js/apps/newimporter/types.ts b/desktop/core/src/desktop/js/apps/newimporter/types.ts
index d7b09c2308b..7fa9c902ec7 100644
--- a/desktop/core/src/desktop/js/apps/newimporter/types.ts
+++ b/desktop/core/src/desktop/js/apps/newimporter/types.ts
@@ -66,11 +66,15 @@ export interface FileMetaData {
source: ImporterFileSource;
}
-export type FilePreviewTableColumn = {
+export interface BaseColumnProperties {
+ type?: string;
+ comment?: string;
+}
+
+export interface FilePreviewTableColumn extends BaseColumnProperties {
importerDataKey?: string; // key for identifying unique data row
name: string;
- type?: string;
-};
+}
export interface FilePreviewTableData {
[key: string]: (string | number)[];
diff --git a/desktop/core/src/desktop/js/apps/newimporter/utils/utils.ts b/desktop/core/src/desktop/js/apps/newimporter/utils/utils.ts
index 62a1f868f1a..d709e8b7467 100644
--- a/desktop/core/src/desktop/js/apps/newimporter/utils/utils.ts
+++ b/desktop/core/src/desktop/js/apps/newimporter/utils/utils.ts
@@ -49,7 +49,7 @@ export const convertToDataSource = (
importerDataKey: `importer-row__${index}`
};
Object.keys(inputData).forEach(key => {
- row[key] = inputData[key][index] ?? null;
+ row[toCamelCase(key)] = inputData[key][index] ?? null;
});
return row;
});
diff --git a/tools/cloudera/build_hue_common.sh b/tools/cloudera/build_hue_common.sh
index 9199e83d1d8..308e707bf34 100644
--- a/tools/cloudera/build_hue_common.sh
+++ b/tools/cloudera/build_hue_common.sh
@@ -44,18 +44,12 @@ function install_build_dependencies() {
libbz2-dev libncurses5-dev libgdbm-dev libreadline-dev libkrb5-dev \
liblzma-dev uuid-dev libldap2-dev libffi-dev zlib1g-dev libssl-dev wget curl'
;;
- redhat9|redhat8|centos7)
+ redhat9|redhat8|redhat8-arm64|centos7)
sudo -- sh -c 'yum groupinstall -y "Development Tools" && \
yum install -y \
bzip2-devel ncurses-devel gdbm-devel readline-devel krb5-devel \
xz-devel libuuid-devel openldap-devel libffi-devel zlib-devel openssl-devel wget curl'
;;
- redhat8-arm64)
- sudo -- sh -c 'yum groupinstall -y "Development Tools" --nobest && \
- yum install -y \
- bzip2-devel ncurses-devel gdbm-devel readline-devel krb5-devel \
- xz-devel libuuid-devel openldap-devel libffi-devel zlib-devel openssl-devel wget curl'
- ;;
sles12|sles15)
sudo -- sh -c 'zypper refresh'
sudo -- sh -c 'zypper install -y \