Small preact-based (like React.js) project https://inga-lovinde.github.io/static/komoot-demo/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

27 lines
955 B

import { useCallback } from 'preact/hooks';
import { MarkerProps } from './types';
export const MarkerComponent = ({ marker, isFirst, isLast }: MarkerProps) => {
const changeLongLabel = useCallback(() => {
const newLongLabel = prompt('Enter new label', marker.longLabel);
if (newLongLabel?.length) {
marker.changeLongLabel(newLongLabel);
}
}, [marker]);
return (
<li key={marker.key}>
{`Waypoint ${marker.shortLabel} (${marker.longLabel})`}
<span class="buttons">
<button onClick={changeLongLabel}></button>
<button onClick={marker.moveUp} disabled={isFirst}>
</button>
<button onClick={marker.moveDown} disabled={isLast}>
</button>
<button onClick={marker.remove}>🗑</button>
</span>
</li>
);
};