UNPKG

@factorialco/shadowdog

Version:

<img src="https://raw.githubusercontent.com/factorialco/shadowdog/refs/heads/main/logo.png" alt="drawing" width="100"/>

38 lines (37 loc) 1.15 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const chalk_1 = __importDefault(require("chalk")); const utils_1 = require("../utils"); const filterTags = (task, tag) => { switch (task.type) { case 'parallel': { return { ...task, tasks: task.tasks.map((subTask) => filterTags(subTask, tag)) }; } case 'serial': { return { ...task, tasks: task.tasks.map((subTask) => filterTags(subTask, tag)) }; } case 'command': { if (task.config.tags.includes(tag)) { return task; } return { type: 'empty' }; } case 'empty': { return task; } } }; const command = (task) => { const tag = process.env.SHADOWDOG_TAG; if (!tag) { return task; } (0, utils_1.logMessage)(`🏷️ Filtering commands by tag: ${chalk_1.default.green(tag)}`); return filterTags(task, tag); }; exports.default = { command, };