@medusajs/core-flows
Version:
Set of workflow definitions for Medusa
31 lines • 1.08 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.releaseLockStep = exports.releaseLockStepId = void 0;
const utils_1 = require("@medusajs/framework/utils");
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
exports.releaseLockStepId = "release-lock-step";
/**
* This step releases a lock for a given key.
*
* @example
* const data = releaseLockStep({
* "key": "my-lock-key"
* })
*/
exports.releaseLockStep = (0, workflows_sdk_1.createStep)(exports.releaseLockStepId, async (data, { container }) => {
const keys = Array.isArray(data.key)
? data.key
: (0, utils_1.isDefined)(data.key)
? [data.key]
: [];
if (!keys.length) {
return new workflows_sdk_1.StepResponse(true);
}
const locking = container.resolve(utils_1.Modules.LOCKING);
const released = await locking.release(keys, {
ownerId: data.ownerId,
provider: data.provider,
});
return new workflows_sdk_1.StepResponse(released);
});
//# sourceMappingURL=release-lock.js.map
;