@rxdi/ui-kit
Version:
UI Components for building graphql-server website
43 lines • 1.83 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Render = exports.State = exports.Providers = exports.Settings = exports.Monad = exports.Compose = exports.DefineDependencies = void 0;
const lit_html_1 = require("@rxdi/lit-html");
require("../graph/graph.component");
const DefineDependencies = (...deps) => (injection) => {
for (const [index, dep] of deps.entries()) {
Object.defineProperty(deps, index, {
get: () => (injection && injection.has(dep) ? injection.get(dep) : dep),
});
}
return deps;
};
exports.DefineDependencies = DefineDependencies;
const Compose = (options) => (deps = []) => (state) => (render) => (0, lit_html_1.Component)(Object.assign(Object.assign({}, options), { template() {
return (0, lit_html_1.html) `
<rx-monad>
<rx-state .value=${state.bind(this).call(this, deps)}></rx-state>
<rx-render
.state=${(state, setState, shadowRoot) => {
this.shadowRoot.append(shadowRoot);
return render(deps).bind(this).call(this, state, setState, shadowRoot);
}}
></rx-render>
</rx-monad>
`;
} }));
exports.Compose = Compose;
const Monad = ([options, deps, state, render,]) => (0, exports.Compose)(options)(deps)(state)(render);
exports.Monad = Monad;
const Settings = (o) => o;
exports.Settings = Settings;
// export const λettings = (o: Options) => o;
const Providers = (o) => o;
exports.Providers = Providers;
// export const ρroviders = <S, D, K>(o: D) => o;
const State = (o) => o;
exports.State = State;
// export const ςtate = <S, D, K extends LitElement>(o: StateToRender<S, D, K>) => o;
const Render = (o) => o;
exports.Render = Render;
// export const πender = <S, D, K extends LitElement>(o: RenderResult<S, D, K>) => o;
//# sourceMappingURL=index.js.map