import { Component, createSignal } from 'solid-js' import { apiHost } from '../consts' import styles from './harmonie.module.css' import { GribFile } from './GribFile' import { LoadingSpinner } from '../components/LoadingSpinner' export const Harmonie: Component<{}> = () => { const [getFileList, setFileList] = createSignal([]) const [getActiveGrib, setActiveGrib] = createSignal('') const [getCanvas, setCanvas] = createSignal() const [getIsLoading, setIsLoading] = createSignal(true) const [getIsCrop, setIsCrop] = createSignal(true) fetch(`${apiHost}/api/show/grib-list`) .then(re => re.json()) .then(fileList => { fileList.sort((a: string, b: string) => a < b ? 1 : -1) setFileList(fileList) }) .finally(() => setIsLoading(false)) return
    {getFileList().map(fileName => getActiveGrib() === fileName} getCanvas={getCanvas} setIsLoading={setIsLoading} getIsCrop={getIsCrop} onClick={() => setActiveGrib(fileName)} /> )}
{ getIsLoading() && }
}