Authored by 陈峰

commit

const priceTask = require('./tasks/price-task');
priceTask();
const {ProductRelationModel, } = require('./models');
ProductRelationModel.findAll().then(products => {
console.log('UFO商品,货号,毒Id')
products.forEach(p => {
if (p.third.du) {
console.log(`${p.productId},${p.productCode},${p.third.du.productId}`)
}
})
})
// spider.spiderFetch(20, 'https://du.hupu.com/mapi/product/lastSoldList', {
... ...
const path = require('path');
const readline = require('readline');
const {mysqlPool} = require('../libs/mysql');
const fs = require('fs');
const inquirer = require('inquirer');
let skns = require('../data/skns.json');
const date = process.argv[2];
const fileName = date.match(/--d=(.*)/)[1];
const fr = fs.createReadStream(path.join(__dirname, `./imports/${fileName}.csv`));
const rl = readline.createInterface({
input: fr
});
const importProducts = [];
const failProduct = [];
const importDb = async(appendSkns, inx = 0, success = 0) => {
if (appendSkns.length - 1 < inx) {
return Promise.resolve(success);
}
const skn = appendSkns[inx];
const storages = await mysqlPool.query('select id, size_id, product_id from storage A where product_id = :productId and not exists (select 1 from channel_sku_compare B where A.product_id=B.product_id and A.size_id=B.size_id)', {
productId: skn.productId
});
//14321 and not exists (select 1 from channel_sku_compare B where A.product_id=B.product_id and A.size_id=B.size_id)
const results = await Promise.all(storages.map(async sku => {
return mysqlPool.insert('insert into `channel_sku_compare` (`product_id`, `sku`, `size_id`, `low_rate`, `high_rate`, `status`, `update_uid`) values (:productId, :sku, :sizeId, :lowRate, :highRate, :status, :updateUid)', {
productId: skn.productId,
sku: sku.id,
sizeId: sku.size_id,
lowRate: 0.05,
highRate: 0.02,
status: 0,
updateUid: 0
});
}));
success += results.filter(r => r).length;
return importDb(appendSkns, inx + 1, success);
}
const importData = async() => {
const appendSkns = importProducts.filter(p => !skns.some(skn => skn.yhId === p.productId));
if (!appendSkns.length) {
return console.log('没有需要新增的数据');
}
const repeatData = appendSkns.filter(p => skns.some(skn => skn.productId === p.id));
console.log(repeatData.length)
if (repeatData.length) {
const {confirm} = await inquirer.prompt([
{
type: 'confirm',
name: 'confirm',
message: `数据映射错误,具有重复的毒ID${JSON.stringify(repeatData)},是否覆盖/退出?`
}
]);
if (confirm) {
skns = skns.filter(skn => !repeatData.some(d => d.id === skn.productId));
} else {
return;
}
}
const {confirm} = await inquirer.prompt([
{
type: 'confirm',
name: 'confirm',
message: `新增:${appendSkns.length},是否继续?`
}
]);
if (confirm) {
const newSkns = skns.concat(appendSkns.map(p => {
return {"productId": p.id, "yhId": p.productId}
}));
const fw = fs.createWriteStream(path.join(__dirname, '../data/skns.json'));
fw.write(JSON.stringify(newSkns, null, 2));
fw.end();
const num = await importDb(appendSkns);
console.log(`数据库导入:${num}`);
}
}
const continueImport = async() => {
const {confirm} = await inquirer.prompt([
{
type: 'list',
name: 'confirm',
choices: ['继续', '查看不符合内容', '取消'],
message: `符合格式的行数:${importProducts.length},不符合格式的行数:${failProduct.length},是否继续?`
}
]);
if (confirm === '查看不符合内容') {
console.log(failProduct);
return continueImport();
} else if (confirm === '取消') {
return;
}
importData();
}
const REG_NUMBER = /^\d+$/;
rl.on('line', line => {
const splits = line.split(',');
if (splits.length === 3) {
const [productId, model, id] = splits;
if (productId) {
if (REG_NUMBER.test(productId) && REG_NUMBER.test(id)) {
importProducts.push({
productId: +productId,
id: +id
});
} else {
failProduct.push(splits);
}
}
} else {
failProduct.push(splits);
}
});
rl.on('close', async() => {
continueImport();
});
\ No newline at end of file
... ...
product_id,model,id
10000557,AO2605-001,11991
10006579,BQ2752-100,21788
10006113,136027-006,16427
10000455,136027-148,13325
10000625,136064-006,16477
10000423,136064-111,10337
10006213,136064-122,21655
10000571,136064-140,11521
10004073,150204C,2284
10004509,158369C,11687
10001247,162050c,9670
10001027,162051C,12058
10005959,162052c,13389
10001895,162054C,9970
10003345,162055C,11618
10000869,162063C,9982
10006049,163170C128,19127
10007519,163785c,22846
10006105,163862C,15554
10007605,164472C,22907
10000469,305381-113,15677
10000435,308497-406,11063
10004249,314192-117,10437
10003947,314996-008,39
10004931,314996-404,14198
10000789,314996-602,10063
10001595,314996-603,16087
10006701,315115-112,2355
10000104,315122-111,2354
10001223,315123-111,2357
10005839,363559-01,9461
10001371,366731-100,2358
10000487,378037-002,17
10000481,378037-003,16
10004981,378037-005,10779
10000517,378037-016,16423
10006053,378037-100,18570
10000471,378037-123,1188
10000479,378037-623,1181
10001017,378038-016,17364
10006227,378038-100,19309
10000461,384664-104,15357
10000463,384665-104,15363
10004043,384665-145,3751
10004307,398614-140,14003
10000505,414571-004,1226
10003445,414571-035,14550
10001309,414571-104,12652
10000663,415082-109,15549
10005633,415445-101,11830
10004603,415445-102,10903
10001383,528895-003,10762
10001935,528895-145,9684
10000589,528896-145,9680
10007677,554723-161,22953
10000787,554724-051,15952
10000130,554724-054,14450
10006685,554724-061,21286
10000785,554724-062,14522
10000120,554724-071,11818
10001293,554724-104,8846
10000567,554724-113,15191
10006687,554724-121,21769
10006689,554724-124,21765
10006901,554724-125,21864
10000150,554724-610,11172
10007897,554725-051,18273
10000125,554725-052,11058
10008009,554725-061,21287
10000107,554725-062,14670
10005565,554725-071,15299
10004405,554725-109,11839
10000631,554725-113,15200
10006073,554725-607,19476
10000136,554725-610,11331
10000106,555088-001,647
10000142,555088-013,9948
10006215,555088-015,21445
10008027,555088-018,21793
10001363,555088-031,8928
10000129,555088-112,10237
10000139,555088-135,10241
10000115,555088-302,14886
10000144,555088-403,9534
10000118,555088-501,14888
10006325,555088-602,21269
10000147,555088-610,9235
10000411,555088-700,15679
10000133,555112-035,11621
10000795,555112-500,14917
10006297,555112-661,21212
10008029,563472C,23740
10008025,563473C,23736
10008031,563474C,23509
10002143,575420-009,9027
10000141,575441-013,9947
10007165,575441-015,21432
10000114,575441-302,14889
10000145,575441-403,9536
10000117,575441-501,14887
10006829,575441-602,21273
10000146,575441-610,9236
10007317,624041-009,16479
10002023,624041-304,13248
10000835,804609-103,18039
10000443,840606-192,212
10007475,852542-007,22416
10007865,852542-010,23290
10006769,852542-203,21285
10006123,852542-301,19902
10000783,852542-306,15316
10006905,852542-400,21783
10006691,852542-800,21770
10004191,852625-030,3869
10000421,854261-001,3655
10000419,854262-001,3638
10000143,861428-007,9212
10000140,861428-061,10579
10001663,861428-106,18032
10000597,882096-200,2347
10000503,884129-104,12893
10003909,942842-001,9416
10000947,943312-200,8722
10000275,943807-012,15676
10003509,A07541-006,9114
10002295,AA2492-021,8866
10000169,AA3830-002,12366
10000171,AA3830-100,12578
10000189,AA3832-001,15082
10000187,AA3832-002,15693
10000179,AA3832-700,15081
10000151,AA3834-101,790
10004915,AA3963-101,12242
10004317,AA3963-200,10145
10007989,AA3963-400,20071
10000953,AA4061-200,2356
10007903,ABAN079-5,23251
10002375,AGBN069-1,11443
10004023,AGWN041-2,9952
10001919,AGWN041-3,9949
10000345,AH2203,3428
10005079,AH7389-004,11619
10000683,AH7832-100,13935
10007829,AH7832-600,13936
10000297,AJ1935-102,11641
10004185,AJ4219-400,8741
10006111,AJ7311-200,16692
10000591,AJ7747-001,14545
10000593,AJ7747-100,14546
10002211,AO0817-001,9225
10005253,AO1133-002,10565
10000437,AO2571-001,11568
10000331,ao2595-002,14775
10002945,AO2595-006,15086
10000561,AO2604-600,11741
10005919,AO2605-002,14533
10000551,AO2605-004,11329
10007463,AO2918-003,22657
10007445,AO2919-010,22411
10007481,AO2919-600,22354
10006199,AO2919-900,20991
10006201,AO2919-901,18261
10001431,AO2919-902,18265
10003333,AO3108-006,15230
10000771,AO3108-101,11132
10006303,AO4606-001,17438
10006305,AO4606-700,20286
10004315,AO9385-100,9018
10000148,AQ0818-148,10904
10005479,AQ1757-004,12226
10007789,AQ2456-010,22495
10008005,AQ2728-105,22643
10000109,AQ7476-016,10242
10007451,,
10001037,AQ8830-101,15699
10006623,AQ9128-600,21829
10007889,AQ9131-401,22762
10007885,AQ9758-300,22291
10001683,AR0715-200,16480
10006573,AR1708-100,18738
10006139,AR4237-001,19632
10006137,AR4237-002,19602
10000601,AR7719-100,11653
10006869,AT3102-006,21872
10006203,AT3102-200,21078
10004739,AT5458-001,18520
10005789,AT5458-100,18437
10007303,AT6147-100,22188
10007971,AT9915-001,21786
10006877,AT9915-002,21865
10007287,AV2253-001,15866
10000451,AV2405-900,15192
10000131,AV3725-010,10351
10008019,AV3803-100,19034
10007541,AV3922-101,22622
10006741,AV3922-126,21977
10000775,AV3922-157,16668
10000769,AV3938-100,15581
10007825,AV4789-004,15881
10003643,AV4789-100,11723
10000449,AV9175-001,14683
10000343,B37571,8815
10000355,B37572,3429
10000157,B75571,3430
10002075,BB6166,8921
10001949,BB6168,8906
10005323,BB6171,8923
10000723,BQ0897-006,17394
10007283,,
10007471,BQ5970-007,21073
10007851,BQ5969-100,23458
10007853,BQ5969-101,23459
10007621,BQ6497-006,22464
10007457,BQ6806-600,22747
10007511,BQ6817-200,22275
10006903,BQ6931-301,21982
10002833,BQ6931-306,15819
10006707,BQ6931-400,21843
10006705,BQ6931-800,21835
10002331,bq6994-600,16531
10007611,BQ7036-001,23060
10007449,BQ7038-001,22421
10000515,BQ7541-100,16161
10000251,BQ8452-006,15404
10001601,BQ8452-007,15395
10001107,BV1300-106,18409
10001207,BV1300-146,18429
10007645,BV1310-013,22599
10006559,BV1310-555,21570
10000641,BV2614-001,18081
10000615,BV5072-100,15798
10007473,BV6352-900,22394
10007695,BV6648-605,23043
10007607,BV6649-708,22474
10007997,BV6650-016,22640
10007447,BV6653-616,22637
10002115,BV6955-106,16515
10005127,BV8016-445,14184
10007249,CD2450-100,22111
10008057,CD2720-400,23864
10007533,CI1184-001,22265
10007843,CI2970-001,23631
10007379,CI2977-006,22331
10007563,CI3125-100,22256
10006885,CI9961-900,22182
10000339,CP9366,20
10000347,,
10004955,cq3009,9426
10000163,DB2908,9242
10000165,DB2966,11061
10006063,EE7287,15368
10007755,EE9292,22952
10000159,EE9614,16420
10007381,EF2367,21973
10006589,EF2829,16740
10006821,EF2905,18335
10000161,F36640,11746
10000341,F36980,11538
10001693,F99710,16787
10008051,G27571,22946
10007319,OMBB009F176190309901,12248
10007129,s0889,12508
10000577,SUP-SS18-599,12524
10006155,SUP-SS18-600,12525
10006059,tnf-002,16619
10007655,VN0A2XSBSHL,22901
10007765,VN0A3WM1276,22406
10004555,vn-0d3hnvy,10801
10001269,vn-0d3hy28,8708
10001335,vn-0d5ib8c,8707
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
,,
\ No newline at end of file
... ...
... ... @@ -14,6 +14,7 @@
"dayjs": "^1.7.7",
"express": "^4.16.4",
"influx-batch-sender": "=0.1.7",
"inquirer": "^6.2.1",
"lodash": "^4.17.11",
"mysql": "^2.16.0",
"nedb-promise": "^2.0.1",
... ...
... ... @@ -57,6 +57,10 @@ ansi-regex@^3.0.0:
version "3.0.0"
resolved "http://npm.yohops.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
ansi-regex@^4.0.0:
version "4.0.0"
resolved "http://npm.yohops.com/ansi-regex/-/ansi-regex-4.0.0.tgz#70de791edf021404c3fd615aa89118ae0432e5a9"
ansi-styles@^3.2.0, ansi-styles@^3.2.1:
version "3.2.1"
resolved "http://npm.yohops.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
... ... @@ -753,6 +757,24 @@ inquirer@^6.1.0:
strip-ansi "^4.0.0"
through "^2.3.6"
inquirer@^6.2.1:
version "6.2.1"
resolved "http://npm.yohops.com/inquirer/-/inquirer-6.2.1.tgz#9943fc4882161bdb0b0c9276769c75b32dbfcd52"
dependencies:
ansi-escapes "^3.0.0"
chalk "^2.0.0"
cli-cursor "^2.1.0"
cli-width "^2.0.0"
external-editor "^3.0.0"
figures "^2.0.0"
lodash "^4.17.10"
mute-stream "0.0.7"
run-async "^2.2.0"
rxjs "^6.1.0"
string-width "^2.1.0"
strip-ansi "^5.0.0"
through "^2.3.6"
ipaddr.js@1.8.0:
version "1.8.0"
resolved "http://npm.yohops.com/ipaddr.js/-/ipaddr.js-1.8.0.tgz#eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e"
... ... @@ -1361,6 +1383,12 @@ strip-ansi@^4.0.0:
dependencies:
ansi-regex "^3.0.0"
strip-ansi@^5.0.0:
version "5.0.0"
resolved "http://npm.yohops.com/strip-ansi/-/strip-ansi-5.0.0.tgz#f78f68b5d0866c20b2c9b8c61b5298508dc8756f"
dependencies:
ansi-regex "^4.0.0"
strip-json-comments@^2.0.1:
version "2.0.1"
resolved "http://npm.yohops.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
... ...