UNPKG

@shopware-ag/meteor-admin-sdk

Version:

The Meteor SDK for the Shopware Administration.

33 lines 1.62 kB
(function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports", "vue", "./getRepository"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useRepository = void 0; const vue_1 = require("vue"); const getRepository_1 = require("./getRepository"); /** * Reactive wrapper around getRepository that updates when dependencies change. * Takes reactive references to entityName and/or repositoryFactory and returns * a computed repository that updates when these inputs change. */ function useRepository(entityNameRef, repositoryFactoryRef) { const injectedFactory = (0, vue_1.inject)('repositoryFactory'); return (0, vue_1.computed)(() => { const entityName = (0, vue_1.unref)(entityNameRef); const repositoryFactory = (0, vue_1.unref)(repositoryFactoryRef); return (0, getRepository_1.getRepository)(entityName, repositoryFactory !== null && repositoryFactory !== void 0 ? repositoryFactory : (injectedFactory // eslint-disable-next-line @typescript-eslint/explicit-function-return-type ? (entityName) => injectedFactory.create(entityName) : undefined)); }); } exports.useRepository = useRepository; }); //# sourceMappingURL=useRepository.js.map