@lark-project/cli
Version:
飞书项目插件开发工具
28 lines (27 loc) • 1.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.findEntries = void 0;
const types_1 = require("../../types");
function findEntries(pluginProfile) {
let missedResourceIds = [];
let needBuildResources = [];
function findEntry(resourceId) {
if (!resourceId) {
return;
}
const matched = pluginProfile.resources.find(r => r.id === resourceId);
if (matched && needBuildResources.every(r => r.id !== matched.id)) {
needBuildResources.push(matched);
}
else if (missedResourceIds.every(id => id !== resourceId)) {
missedResourceIds.push(resourceId);
}
}
pluginProfile.features.forEach(feature => {
var _a, _b, _c, _d;
findEntry((_b = (_a = feature[types_1.EFeaturePlatform.web]) === null || _a === void 0 ? void 0 : _a.resourceId) === null || _b === void 0 ? void 0 : _b.resource);
findEntry((_d = (_c = feature[types_1.EFeaturePlatform.mobile]) === null || _c === void 0 ? void 0 : _c.resourceId) === null || _d === void 0 ? void 0 : _d.resource);
});
return [needBuildResources, missedResourceIds];
}
exports.findEntries = findEntries;