mirror of
https://codeberg.org/uzu/strudel
synced 2026-07-30 00:06:59 -04:00
26 lines
606 B
React
26 lines
606 B
React
import { getClaviature } from 'claviature';
|
|
import React from 'react';
|
|
|
|
export default function Claviature({ options, onClick, onMouseDown, onMouseUp, onMouseLeave }) {
|
|
const svg = getClaviature({
|
|
options,
|
|
onClick,
|
|
onMouseDown,
|
|
onMouseUp,
|
|
onMouseLeave,
|
|
});
|
|
return (
|
|
<svg {...svg.attributes}>
|
|
{svg.children.map((el, i) => {
|
|
const TagName = el.name;
|
|
const { key, ...attributes } = el.attributes;
|
|
return (
|
|
<TagName key={`${el.name}-${i}`} {...attributes}>
|
|
{el.value}
|
|
</TagName>
|
|
);
|
|
})}
|
|
</svg>
|
|
);
|
|
}
|