"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.productCADTask = exports.productLaserTask = exports.productAllTask = void 0; const path = require("path"); const copy_1 = require("@plastichub/fs/copy"); const exists_1 = require("@plastichub/fs/exists"); const remove_1 = require("@plastichub/fs/remove"); const _1 = require("./"); const HTML_DEFAULT_PATH = 'resources/edrawings.html'; const debug = true; const verbose = true; const productAllTask = (grunt, product, options = {}, product_tasks) => { const slug = path.parse(product).base; grunt.registerTask(`product-${slug}`, `laser:product-${slug}`); product_tasks.push(`laser:product-${slug}`); grunt.registerTask(`products-laser`, product_tasks); }; exports.productAllTask = productAllTask; const productLaserTask = (grunt, product, options = {}, product_laser_tasks) => { const config = {}; const slug = path.parse(product).base; config[`product-${slug}`] = { src: [product], options: { clear: true, debug: true, verbose } }; grunt.extendConfig({ laser: config }); grunt.registerTask(`product-${slug}`, `laser:product-${slug}`); product_laser_tasks.push(`laser:product-${slug}`); grunt.registerTask(`products-laser`, product_laser_tasks); }; exports.productLaserTask = productLaserTask; const productCADTask = (grunt, product, options = {}, product_cad_tasks) => { const config = {}; const slug = path.parse(product).base; product = path.resolve(path.join(process.cwd(), product)); config[`product-${slug}`] = { src: [`${product}/cad*/*Global*.+(SLDASM)`], output: '${SRC_DIR}/${SRC_NAME}.+(json|html|step|x_t)', options: { debug, verbose, onNode: (data => { try { options.debug && _1.logger.info(`Converted ${data.src} to ${data.target}`); const parts = path.parse(data.target); if (parts.ext === '.html' && parts.name.toLowerCase().indexOf('global') !== -1) { if ((0, exists_1.sync)(path.join(product, HTML_DEFAULT_PATH))) { (0, remove_1.sync)(path.join(product, HTML_DEFAULT_PATH)); } (0, copy_1.sync)(data.target, path.join(product, HTML_DEFAULT_PATH), {}); } } catch (error) { _1.logger.error(`Error copying ${data.src} to ${HTML_DEFAULT_PATH}`, error); } }) } }; grunt.extendConfig({ cad: config }); grunt.registerTask(`product-${slug}`, `cad:product-${slug}`); product_cad_tasks.push(`cad:product-${slug}`); grunt.registerTask(`products-cad`, product_cad_tasks); }; exports.productCADTask = productCADTask; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRhc2tzL3Byb2R1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQTRCO0FBQzVCLDhDQUFnRDtBQUNoRCxrREFBc0Q7QUFDdEQsa0RBQWtEO0FBRWxELHlCQUEyQjtBQUUzQixNQUFNLGlCQUFpQixHQUFHLDBCQUEwQixDQUFBO0FBRXBELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQTtBQUNsQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUE7QUFHYixNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsVUFBZSxFQUFFLEVBQUUsYUFBYSxFQUFFLEVBQUU7SUFDL0UsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDckMsS0FBSyxDQUFDLFlBQVksQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFBO0lBQzlELGFBQWEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksRUFBRSxDQUFDLENBQUE7SUFDM0MsS0FBSyxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLENBQUMsQ0FBQTtBQUN2RCxDQUFDLENBQUE7QUFMWSxRQUFBLGNBQWMsa0JBSzFCO0FBRU0sTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsVUFBZSxFQUFFLEVBQUUsbUJBQW1CLEVBQUUsRUFBRTtJQUN2RixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUE7SUFDakIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFFckMsTUFBTSxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUMsR0FBRztRQUN4QixHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUM7UUFDZCxPQUFPLEVBQUU7WUFDTCxLQUFLLEVB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WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnXHJcbmltcG9ydCB7IHN5bmMgYXMgY3AgfSBmcm9tICdAcGxhc3RpY2h1Yi9mcy9jb3B5J1xyXG5pbXBvcnQgeyBzeW5jIGFzIGV4aXN0cyB9IGZyb20gJ0BwbGFzdGljaHViL2ZzL2V4aXN0cydcclxuaW1wb3J0IHsgc3luYyBhcyBybSB9IGZyb20gJ0BwbGFzdGljaHViL2ZzL3JlbW92ZSdcclxuXHJcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gJy4vJ1xyXG5cclxuY29uc3QgSFRNTF9ERUZBVUxUX1BBVEggPSAncmVzb3VyY2VzL2VkcmF3aW5ncy5odG1sJ1xyXG5cclxuY29uc3QgZGVidWcgPSB0cnVlXHJcbmNvbnN0IHZlcmJvc2UgPSB0cnVlXHJcblxyXG5cclxuZXhwb3J0IGNvbnN0IHByb2R1Y3RBbGxUYXNrID0gKGdydW50LCBwcm9kdWN0LCBvcHRpb25zOiBhbnkgPSB7fSwgcHJvZHVjdF90YXNrcykgPT4ge1xyXG4gICAgY29uc3Qgc2x1ZyA9IHBhdGgucGFyc2UocHJvZHVjdCkuYmFzZVxyXG4gICAgZ3J1bnQucmVnaXN0ZXJUYXNrKGBwcm9kdWN0LSR7c2x1Z31gLCBgbGFzZXI6cHJvZHVjdC0ke3NsdWd9YClcclxuICAgIHByb2R1Y3RfdGFza3MucHVzaChgbGFzZXI6cHJvZHVjdC0ke3NsdWd9YClcclxuICAgIGdydW50LnJlZ2lzdGVyVGFzayhgcHJvZHVjdHMtbGFzZXJgLCBwcm9kdWN0X3Rhc2tzKVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgcHJvZHVjdExhc2VyVGFzayA9IChncnVudCwgcHJvZHVjdCwgb3B0aW9uczogYW55ID0ge30sIHByb2R1Y3RfbGFzZXJfdGFza3MpID0+IHtcclxuICAgIGNvbnN0IGNvbmZpZyA9IHt9XHJcbiAgICBjb25zdCBzbHVnID0gcGF0aC5wYXJzZShwcm9kdWN0KS5iYXNlXHJcblxyXG4gICAgY29uZmlnW2Bwcm9kdWN0LSR7c2x1Z31gXSA9IHtcclxuICAgICAgICBzcmM6IFtwcm9kdWN0XSxcclxuICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICAgIGNsZWFyOiB0cnVlLFxyXG4gICAgICAgICAgICBkZWJ1ZzogdHJ1ZSxcclxuICAgICAgICAgICAgdmVyYm9zZVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGdydW50LmV4dGVuZENvbmZpZyh7XHJcbiAgICAgICAgbGFzZXI6IGNvbmZpZ1xyXG4gICAgfSlcclxuICAgIGdydW50LnJlZ2lzdGVyVGFzayhgcHJvZHVjdC0ke3NsdWd9YCwgYGxhc2VyOnByb2R1Y3QtJHtzbHVnfWApXHJcblxyXG4gICAgcHJvZHVjdF9sYXNlcl90YXNrcy5wdXNoKGBsYXNlcjpwcm9kdWN0LSR7c2x1Z31gKVxyXG5cclxuICAgIGdydW50LnJlZ2lzdGVyVGFzayhgcHJvZHVjdHMtbGFzZXJgLCBwcm9kdWN0X2xhc2VyX3Rhc2tzKVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgcHJvZHVjdENBRFRhc2sgPSAoZ3J1bnQsIHByb2R1Y3QsIG9wdGlvbnM6IGFueSA9IHt9LCBwcm9kdWN0X2NhZF90YXNrcykgPT4ge1xyXG4gICAgY29uc3QgY29uZmlnID0ge31cclxuICAgIGNvbnN0IHNsdWcgPSBwYXRoLnBhcnNlKHByb2R1Y3QpLmJhc2VcclxuXHJcbiAgICBwcm9kdWN0ID0gcGF0aC5yZXNvbHZlKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBwcm9kdWN0KSlcclxuICAgIGNvbmZpZ1tgcHJvZHVjdC0ke3NsdWd9YF0gPSB7XHJcbiAgICAgICAgc3JjOiBbYCR7cHJvZHVjdH0vY2FkKi8qR2xvYmFsKi4rKFNMREFTTSlgXSxcclxuICAgICAgICBvdXRwdXQ6ICcke1NSQ19ESVJ9LyR7U1JDX05BTUV9LisoanNvbnxodG1sfHN0ZXB8eF90KScsXHJcbiAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICBkZWJ1ZyxcclxuICAgICAgICAgICAgdmVyYm9zZSxcclxuICAgICAgICAgICAgb25Ob2RlOiAoZGF0YSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuZGVidWcgJiYgbG9nZ2VyLmluZm8oYENvbnZlcnRlZCAke2RhdGEuc3JjfSB0byAke2RhdGEudGFyZ2V0fWApXHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGFydHMgPSBwYXRoLnBhcnNlKGRhdGEudGFyZ2V0KVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAocGFydHMuZXh0ID09PSAnLmh0bWwnICYmIHBhcnRzLm5hbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKCdnbG9iYWwnKSAhPT0gLTEpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV4aXN0cyhwYXRoLmpvaW4ocHJvZHVjdCwgSFRNTF9ERUZBVUxUX1BBVEgpKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcm0ocGF0aC5qb2luKHByb2R1Y3QsIEhUTUxfREVGQVVMVF9QQVRIKSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjcChkYXRhLnRhcmdldCwgcGF0aC5qb2luKHByb2R1Y3QsIEhUTUxfREVGQVVMVF9QQVRIKSwge30pXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoYEVycm9yIGNvcHlpbmcgJHtkYXRhLnNyY30gdG8gJHtIVE1MX0RFRkFVTFRfUEFUSH1gLCBlcnJvcilcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBncnVudC5leHRlbmRDb25maWcoe1xyXG4gICAgICAgIGNhZDogY29uZmlnXHJcbiAgICB9KVxyXG4gICAgZ3J1bnQucmVnaXN0ZXJUYXNrKGBwcm9kdWN0LSR7c2x1Z31gLCBgY2FkOnByb2R1Y3QtJHtzbHVnfWApXHJcblxyXG4gICAgcHJvZHVjdF9jYWRfdGFza3MucHVzaChgY2FkOnByb2R1Y3QtJHtzbHVnfWApXHJcblxyXG4gICAgZ3J1bnQucmVnaXN0ZXJUYXNrKGBwcm9kdWN0cy1jYWRgLCBwcm9kdWN0X2NhZF90YXNrcylcclxufVxyXG4iXX0=