react-ketting
Version:
Ketting bindings for React
23 lines • 990 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.SelectLink = void 0;
const React = require("react");
const use_read_resource_1 = require("../hooks/use-read-resource");
function SelectLink(prop) {
const { resource, rel, ...selectProps } = prop;
const { resourceState, loading, error } = (0, use_read_resource_1.useReadResource)(resource, {});
if (loading) {
return React.createElement("select", { ...selectProps },
React.createElement("option", { disabled: true }, "Loading..."));
}
if (error)
throw error;
const links = resourceState.links.getMany(rel !== null && rel !== void 0 ? rel : 'item');
return React.createElement("select", { ...selectProps },
selectProps.children,
links.map(link => {
return React.createElement("option", { value: link.href, key: link.href }, link.title);
}));
}
exports.SelectLink = SelectLink;
//# sourceMappingURL=SelectLink.js.map
;