From 8f397e395dac0b2e9db93137a7ab11d1aee361c9 Mon Sep 17 00:00:00 2001 From: SAM LUDFORD Date: Thu, 23 May 2019 11:31:16 +0100 Subject: [PATCH 1/3] list of list of blueprints flattened into single list --- src/lib/Controller.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/Controller.js b/src/lib/Controller.js index b9e9351..970e6f2 100644 --- a/src/lib/Controller.js +++ b/src/lib/Controller.js @@ -16,7 +16,7 @@ class Controller { blueprints () { return Object.keys(this.fetchers).map( sheet => this.fetchers[sheet].blueprints - ) + ).reduce((acc, curr) => acc.concat(curr)) } update () { From 9deb5aae3fcba32473fbee7e832b43d15dd4b058 Mon Sep 17 00:00:00 2001 From: SAM LUDFORD Date: Thu, 23 May 2019 11:32:14 +0100 Subject: [PATCH 2/3] multiple resources collapsed into single blueprint --- .env.enc | Bin 1888 -> 1952 bytes .travis.yml | 3 --- src/lib/Fetcher.js | 17 +++++++++++++---- src/lib/blueprinters.js | 7 +++++-- 4 files changed, 18 insertions(+), 9 deletions(-) diff --git a/.env.enc b/.env.enc index 0d1e55bcc0eb594ed062202e62f28eb52815258b..cfdd705700bd198a85496ac222eb73bb09d8d5b2 100644 GIT binary patch literal 1952 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 diff --git a/.travis.yml b/.travis.yml index ab894fd..1df6ad7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,6 +12,3 @@ script: - yarn build - yarn lint - yarn test -before_install: -- openssl aes-256-cbc -K $encrypted_36ad509d33c5_key -iv $encrypted_36ad509d33c5_iv - -in .env.enc -out .env -d diff --git a/src/lib/Fetcher.js b/src/lib/Fetcher.js index cd571dc..2b05bee 100644 --- a/src/lib/Fetcher.js +++ b/src/lib/Fetcher.js @@ -66,11 +66,20 @@ class Fetcher { const allParts = allUrls.reduce((acc, url) => { if (url.startsWith(this.id)) { const parts = url.split('/') - acc.push([ parts[1], parts[2] ]) - return acc - } else { - return acc + let duplicateTab = acc.reduce((tabFound, p) => { + return tabFound || p[0] === parts[1] + }, false) + if (duplicateTab) { + acc.forEach(p => { + if (p[0] === parts[1]) { + p[1].push(parts[2]) + } + }) + } else { + acc.push([ parts[1], [ parts[2] ] ]) + } } + return acc }, []) return allParts diff --git a/src/lib/blueprinters.js b/src/lib/blueprinters.js index 6193972..f222f29 100644 --- a/src/lib/blueprinters.js +++ b/src/lib/blueprinters.js @@ -15,12 +15,15 @@ export const defaultResource = { data: [] } -export function buildDesaturated (sheetId, sheetName, tab, resource) { +export function buildDesaturated (sheetId, sheetName, tab, resources) { const bp = R.clone(defaultBlueprint) bp.sheet.name = sheetName bp.sheet.id = sheetId bp.name = tab - bp.resources[resource] = null + bp.resources = resources.reduce((acc, r) => { + acc[r] = null + return acc + }, {}) return bp } From fdcf4f28d03e88c21bc9323501601966d72a973e Mon Sep 17 00:00:00 2001 From: Lachlan Kermode Date: Thu, 23 May 2019 16:40:29 +0100 Subject: [PATCH 3/3] encrypt with maintainer secret --- .env.enc | Bin 1952 -> 1888 bytes .travis.yml | 3 +++ 2 files changed, 3 insertions(+) diff --git a/.env.enc b/.env.enc index cfdd705700bd198a85496ac222eb73bb09d8d5b2..f053b933e781a6efcbfbbdf824e04452646f449e 100644 GIT binary patch literal 1888 zcmV-m2cP(;jH)qy`)dmLRJ)7p=5cxJF-Sln$5pAd;((IQzc(^+WMvX7)<>z2{@u0i zFMoncRQi?@@$ELmcs^=HnYE~XS17}5$+MdP^OGKsmmpPmWJ_E!{s8=ygV`y_pcv;> zP>f!k`5??P=SdU|s`U8)j~u<`+gW;1vkUGh~LmNnE5 z>s+=KE=vJ@>H%dGIWwE)uJk?n-hKe+Xf$%D+QnvJtN4!DpaW{v5 zhO8_-huo4z9}#CxNnxJ_L2kMlsJnkqjj>7oOiEz|lX^eD8YTIeGja7!^BXB_@HXku zWAb}NH#ez@i@p+Nw8VdWqOw4Q|B!J1Jo^33xOOOb4}uzXwKA7Y6Z5FVMW9}iZYgw2 z>Md~Bc0G|>H@@#~(XrTS?Bvmrb!M7~J4b9YUD4VwrEqLZ=MwHBcY~~Me>gZXk3)59 zl$%ol?*>&^K=kcx=`$kmRL(kN>u%Q?1@;*uu8Ec3qKCrkrgcbv#ePiP^P<$1KQ_gP zsvEIV!d4iNiAlky_gsS`>1-8GbrcxSKALy&jT?x!9<=3bxG;b0-R4Qf=c}U)r;Pgr z%+9=RMMssxUoN0=sz7onXM~)EVcSKhW^cs10Q@AFYUdI$6AVY8cwWLLQ^+{7vODp0 zXwa2fFntb}*=sG0AZjYHY-CD8q&VDTGYcBbJBXYi*&p7Cpbu8Bfuv5XV?6D#X`IJ< z8Sc|uCli|!!Iq9<$mQ<_H8e}3A~<=x=1Fm_xa68m741ZBABiOHg^94(r(45`W%Fd) z4AO;f1Z#eo$W)8jziDs2MGI)-ZME0DJ!pP+cM4vF?-2OBzmdO-SiG432WQ&GrXTM1 zJSJ-|%uVzdvVK6<>{UA2Ttb#{A98))0tH^@dJo`EU#__sQ1k6RzYxp1$2hd+yD$Ya z%!PI8rftEVd`(46DtD&8Auw!t|HWw@j#drbgahrhnCW_b5jDzLK_rN~8L|RWd|73N zyDmmhEQ4?MlG;UMl=^9}b_Wjq|0g<-mzsxxJ zyP%c(8ti|*5-eT`*mTTyU6D>E*Podpx1SIMO0;_FFHoL;VG2JY?ktC9-6fkATaPje zZJSZ8e_{qlsdsm}(9}a-`I%imd4bT94Jvir>y{sp43#|NbZ;XB(b7Z zq__YckJi#XS^__!={^=NQjdo6(I+&{eYO!yss-3>3t>zy6#71{WcU7-k8hx=LjZgP zacqUIX3+5uX-R0cR!z3sXSF6{Rrmh=2aR+xMmkLOx=mN`Cabaqr94S;Pm}7Dgen1HO)|0m^EmektL&<-AF@R*w z9x;1r5;JkAMVZtpvK+Okpm{(3%aONM zc}zCz9zM?OEIZFO$b+cuVoRF}GQ;s=p>Yc(cnZP`g`{bA_$j(LpOK6B3| afziM-q6C>3Ic(6ni(_G5xHo3Oq@s^uO|(w{ literal 1952 zcmV;R2VeN!J>(`x9^XrFBgn~A1RP^CHZV~vK=d+!^=ym!xHLj;zsty@)>JZ-Ze)Hh zq-5g(XUYQo#P+W$s$;2T;wZ7WG1nrOOwF{sN4Z)eMO_-8b@_KPC}sTHRD|GDw-8Q; zdStNtFQE)f&W$5a*q5T=4BX($kiTr%3Gbf>n7I&2YShI%o{@8kWw;u8ae@zwbdBBR z?!V>E(1G5BD~?9|<|YrtU#8?(nTa8^uKCteuLrOlD6@A-Xf4ytmd?s<%cy>~r8<@M zwHE;01|^V&+ERiebXavp-U!lxr09N{z~sJdKb3uM;CA!EbAAO?|KMh(KBs#&io`1%OB~7LkGFz0*Da8nb31lAE>%vR#7l=;v z!VI|rQH8%hhUXssKaQdC8$uRg{{T*6rPB5mn(`6)Z~CsJNS&tx2X%=IZdMl3+)FdE z#EiHP5WGr49?%Ika8v*J9YfV}6NBmC!suEV zFGN{-Upi~~JFY)-jk{Jw&CYhi(r##fIag?5`+d|qDCN=OPBTTxgiR&`qy z2dMk)4w{Zzbe*2K*=*W4aDx;EPc+Z)1QIqvXq~RZrtRs49H~<8y>eGk zkzS1eE#$SPAnj>u`q@7@sv4NkI(^DZBp5|v**?TnM2Ze1`^AWcL=E3~3U-;n=`5uI zm3V1AaOl*hX(A=__WV6&?$lfQO7FoM^lZu=t3#r;VH{0ZPkQ89f-|E-ME|TS>VM8B z7QNI}$j!-{fWK^NDC5iPt4e?&`&S3P`}-}NK+_CGHglD#a?rzHUPN7@(teO|{yg9p zKSV-_uRo|&ndLklpp+oV1U;O@y9~&wJoR!cs$69><%48Yx1hopk(M4${{;v248@TN ztNt~PdNM6rBi443;Ijj+hVt8hPU+Z7)Izw6SCVr-9EZr=Vm&=<`^!ZOB_c$filj?b zM+$1Eh7f6eQ~fxoOt8qtK6q1LXllxh^$4d;+(NEUyZdI0`Ny8lw$rDtOSNL(s>tWH zGn3R!#dupGLO7-Q)Hj*+*nIa4?WLw>idhgxtdiz=x!-du4cMHB!Uq{noFen2sFwic z&8-wuAZLK$sk^X3X@Avw$(dKCijE z9a-sx56jTSN}G920Yr3y^Y-ZcF91#5xcr^eSQ^-An zGZvLHh%lG0TVL zGz8X#{_pvVx_rTSsDwjzol)biPAh0K+i|K)aWW6pL}eC8{bUXy2hGWeL0-JQGhMG? z^EMiYVPP?k{5gF_=CGXJPw%K&jrs3kQoWjfapES=?Vi}G`q7}h`QgBTJpY-`Zwe_9 z#LBCQ5!sI2G(=^CwH=`}PaN!uz-P6DEAqJqlX%|N+i9clz{;f5As-C@Z#)6!hEDW^ zW4|o03)Fi$U7IQh_KGBQ`_AHGuJB4WO`aH;PuqaPcy)#0(QOspINqha;H+lv6gP07 zcK7J_*Tw3Em<(Q2qkt%zIs)Kwus&~FRlvDxt);Om1o=H){C~*Ax`Xr65jXksrUe($ z7M6oOk=8g<`*hW4FF4p}(-ZE->sf#wvb8#;6de=Stbt{5LHzG0Q;9ht?w^8%