1
0
Fork 0
mirror of synced 2024-08-15 18:11:40 +12:00

Remove invalid columns from display column selection and fix schema failure handling

This commit is contained in:
Andrew Kingston 2023-07-20 14:06:31 +01:00
parent 5d0918a6cb
commit 08920f8015
2 changed files with 15 additions and 12 deletions

View file

@ -4,16 +4,6 @@
import { API } from "api" import { API } from "api"
import { parseFile } from "./utils" import { parseFile } from "./utils"
let fileInput
let error = null
let fileName = null
let fileType = null
let loading = false
let validation = {}
let validateHash = ""
let errors = {}
export let rows = [] export let rows = []
export let schema = {} export let schema = {}
export let allValid = true export let allValid = true
@ -51,6 +41,19 @@
}, },
] ]
let fileInput
let error = null
let fileName = null
let fileType = null
let loading = false
let validation = {}
let validateHash = ""
let errors = {}
$: displayColumnOptions = Object.keys(schema || {}).filter(column => {
return validation[column]
})
async function handleFile(e) { async function handleFile(e) {
loading = true loading = true
error = null error = null
@ -178,7 +181,7 @@
<Select <Select
label="Display Column" label="Display Column"
bind:value={displayColumn} bind:value={displayColumn}
options={Object.keys(schema)} options={displayColumnOptions}
sort sort
/> />
</div> </div>

View file

@ -84,7 +84,7 @@ export function validate(rows: Rows, schema: Schema): ValidationResults {
results.invalidColumns.push(columnName) results.invalidColumns.push(columnName)
} else if (!columnName.match(ValidColumnNameRegex)) { } else if (!columnName.match(ValidColumnNameRegex)) {
// Check for special characters in column names // Check for special characters in column names
results.invalidColumns.push(columnName) results.schemaValidation[columnName] = false
results.errors[columnName] = results.errors[columnName] =
"Column names can't contain special characters" "Column names can't contain special characters"
} else if ( } else if (