Socket
Socket
Sign inDemoInstall

father

Package Overview
Dependencies
Maintainers
1
Versions
233
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

father - npm Package Compare versions

Comparing version 0.5.6 to 0.6.0

2

coverage/coverage.json

@@ -1,1 +0,1 @@

{"/Users/popomore/code/popomore/father/index.js":{"path":"/Users/popomore/code/popomore/father/index.js","s":{"1":1,"2":1,"3":1},"b":{},"f":{},"fnMap":{},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":43}},"2":{"start":{"line":2,"column":0},"end":{"line":2,"column":50}},"3":{"start":{"line":3,"column":0},"end":{"line":3,"column":62}}},"branchMap":{}},"/Users/popomore/code/popomore/father/lib/package.js":{"path":"/Users/popomore/code/popomore/father/lib/package.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":25,"14":25,"15":11,"16":14,"17":25,"18":25,"19":25,"20":25,"21":25,"22":25,"23":25,"24":25,"25":25,"26":25,"27":22,"28":22,"29":22,"30":13,"31":13,"32":11,"33":11,"34":13,"35":22,"36":22,"37":22,"38":22,"39":22,"40":22,"41":22,"42":22,"43":22,"44":22,"45":8,"46":22,"47":22,"48":22,"49":22,"50":5,"51":22,"52":1,"53":43,"54":43,"55":7,"56":7,"57":43,"58":1,"59":42,"60":42,"61":4,"62":4,"63":38,"64":38,"65":38,"66":29,"67":29,"68":3,"69":26,"70":10,"71":10,"72":0,"73":10,"74":16,"75":16,"76":7,"77":5,"78":2,"79":2,"80":2,"81":16,"82":16,"83":38,"84":36,"85":38,"86":38,"87":38,"88":16,"89":5,"90":11,"91":11,"92":136,"93":50,"94":86,"95":0,"96":86,"97":0,"98":0,"99":0,"100":0,"101":0,"102":25,"103":25,"104":175,"105":63,"106":14,"107":60,"108":7,"109":7,"110":10,"111":10,"112":7,"113":53,"114":53,"115":1,"116":1,"117":38,"118":26,"119":7,"120":5,"121":1,"122":26,"123":1,"124":11,"125":11,"126":22,"127":37,"128":11},"b":{"1":[25,11],"2":[11,14],"3":[25,12],"4":[25,13],"5":[11,2],"6":[22,0],"7":[7,36],"8":[1,42],"9":[3,26],"10":[10,16],"11":[0,10],"12":[5,2],"13":[1,1],"14":[7,31],"15":[5,11],"16":[11,0],"17":[50,86],"18":[0,86],"19":[86,13],"20":[23,63],"21":[0,0],"22":[0,0],"23":[0,0],"24":[14,49],"25":[63,14],"26":[7,53],"27":[53,0],"28":[26,7,5],"29":[3,2]},"f":{"1":25,"2":25,"3":13,"4":22,"5":8,"6":5,"7":43,"8":29,"9":7,"10":36,"11":16,"12":136,"13":0,"14":25,"15":175,"16":63,"17":10,"18":0,"19":38,"20":26,"21":11,"22":22},"fnMap":{"1":{"name":"(anonymous_1)","line":20,"loc":{"start":{"line":20,"column":14},"end":{"line":20,"column":37}}},"2":{"name":"(anonymous_2)","line":39,"loc":{"start":{"line":39,"column":10},"end":{"line":39,"column":21}}},"3":{"name":"(anonymous_3)","line":50,"loc":{"start":{"line":50,"column":15},"end":{"line":50,"column":30}}},"4":{"name":"(anonymous_4)","line":68,"loc":{"start":{"line":68,"column":15},"end":{"line":68,"column":26}}},"5":{"name":"(anonymous_5)","line":73,"loc":{"start":{"line":73,"column":9},"end":{"line":73,"column":23}}},"6":{"name":"(anonymous_6)","line":84,"loc":{"start":{"line":84,"column":16},"end":{"line":84,"column":43}}},"7":{"name":"lookupFiles","line":90,"loc":{"start":{"line":90,"column":4},"end":{"line":90,"column":30}}},"8":{"name":"(anonymous_8)","line":113,"loc":{"start":{"line":113,"column":25},"end":{"line":113,"column":53}}},"9":{"name":"(anonymous_9)","line":133,"loc":{"start":{"line":133,"column":15},"end":{"line":133,"column":28}}},"10":{"name":"(anonymous_10)","line":144,"loc":{"start":{"line":144,"column":25},"end":{"line":144,"column":52}}},"11":{"name":"(anonymous_11)","line":158,"loc":{"start":{"line":158,"column":7},"end":{"line":158,"column":21}}},"12":{"name":"(anonymous_12)","line":168,"loc":{"start":{"line":168,"column":7},"end":{"line":168,"column":20}}},"13":{"name":"(anonymous_13)","line":177,"loc":{"start":{"line":177,"column":15},"end":{"line":177,"column":26}}},"14":{"name":"(anonymous_14)","line":186,"loc":{"start":{"line":186,"column":19},"end":{"line":186,"column":34}}},"15":{"name":"(anonymous_15)","line":188,"loc":{"start":{"line":188,"column":17},"end":{"line":188,"column":31}}},"16":{"name":"(anonymous_16)","line":190,"loc":{"start":{"line":190,"column":13},"end":{"line":190,"column":24}}},"17":{"name":"(anonymous_17)","line":194,"loc":{"start":{"line":194,"column":39},"end":{"line":194,"column":52}}},"18":{"name":"(anonymous_18)","line":213,"loc":{"start":{"line":213,"column":15},"end":{"line":213,"column":26}}},"19":{"name":"getFileDeps","line":220,"loc":{"start":{"line":220,"column":0},"end":{"line":220,"column":43}}},"20":{"name":"transform","line":232,"loc":{"start":{"line":232,"column":2},"end":{"line":232,"column":27}}},"21":{"name":"extend","line":237,"loc":{"start":{"line":237,"column":0},"end":{"line":237,"column":24}}},"22":{"name":"(anonymous_22)","line":239,"loc":{"start":{"line":239,"column":15},"end":{"line":239,"column":29}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":23}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":27}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":21}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":27}},"5":{"start":{"line":7,"column":0},"end":{"line":7,"column":27}},"6":{"start":{"line":8,"column":0},"end":{"line":8,"column":29}},"7":{"start":{"line":9,"column":0},"end":{"line":9,"column":35}},"8":{"start":{"line":10,"column":0},"end":{"line":10,"column":37}},"9":{"start":{"line":11,"column":0},"end":{"line":11,"column":35}},"10":{"start":{"line":12,"column":0},"end":{"line":12,"column":37}},"11":{"start":{"line":13,"column":0},"end":{"line":13,"column":47}},"12":{"start":{"line":16,"column":0},"end":{"line":215,"column":3}},"13":{"start":{"line":21,"column":4},"end":{"line":21,"column":33}},"14":{"start":{"line":23,"column":4},"end":{"line":27,"column":5}},"15":{"start":{"line":24,"column":6},"end":{"line":24,"column":40}},"16":{"start":{"line":26,"column":6},"end":{"line":26,"column":25}},"17":{"start":{"line":30,"column":4},"end":{"line":30,"column":58}},"18":{"start":{"line":31,"column":4},"end":{"line":31,"column":52}},"19":{"start":{"line":32,"column":4},"end":{"line":32,"column":20}},"20":{"start":{"line":33,"column":4},"end":{"line":33,"column":28}},"21":{"start":{"line":35,"column":4},"end":{"line":35,"column":88}},"22":{"start":{"line":36,"column":4},"end":{"line":36,"column":31}},"23":{"start":{"line":40,"column":4},"end":{"line":40,"column":39}},"24":{"start":{"line":41,"column":4},"end":{"line":41,"column":25}},"25":{"start":{"line":43,"column":4},"end":{"line":43,"column":32}},"26":{"start":{"line":44,"column":4},"end":{"line":44,"column":45}},"27":{"start":{"line":46,"column":4},"end":{"line":46,"column":43}},"28":{"start":{"line":47,"column":4},"end":{"line":47,"column":21}},"29":{"start":{"line":49,"column":4},"end":{"line":57,"column":20}},"30":{"start":{"line":51,"column":8},"end":{"line":51,"column":41}},"31":{"start":{"line":52,"column":8},"end":{"line":55,"column":9}},"32":{"start":{"line":53,"column":10},"end":{"line":53,"column":61}},"33":{"start":{"line":54,"column":10},"end":{"line":54,"column":53}},"34":{"start":{"line":56,"column":8},"end":{"line":56,"column":40}},"35":{"start":{"line":58,"column":4},"end":{"line":58,"column":79}},"36":{"start":{"line":60,"column":4},"end":{"line":60,"column":23}},"37":{"start":{"line":62,"column":4},"end":{"line":62,"column":37}},"38":{"start":{"line":63,"column":4},"end":{"line":63,"column":24}},"39":{"start":{"line":64,"column":4},"end":{"line":64,"column":26}},"40":{"start":{"line":65,"column":4},"end":{"line":65,"column":16}},"41":{"start":{"line":69,"column":4},"end":{"line":69,"column":38}},"42":{"start":{"line":70,"column":4},"end":{"line":70,"column":48}},"43":{"start":{"line":71,"column":4},"end":{"line":71,"column":43}},"44":{"start":{"line":72,"column":4},"end":{"line":75,"column":7}},"45":{"start":{"line":74,"column":6},"end":{"line":74,"column":28}},"46":{"start":{"line":78,"column":4},"end":{"line":78,"column":26}},"47":{"start":{"line":81,"column":4},"end":{"line":81,"column":37}},"48":{"start":{"line":82,"column":4},"end":{"line":87,"column":5}},"49":{"start":{"line":83,"column":6},"end":{"line":86,"column":11}},"50":{"start":{"line":85,"column":10},"end":{"line":85,"column":45}},"51":{"start":{"line":88,"column":4},"end":{"line":88,"column":32}},"52":{"start":{"line":90,"column":4},"end":{"line":155,"column":5}},"53":{"start":{"line":91,"column":6},"end":{"line":91,"column":42}},"54":{"start":{"line":92,"column":6},"end":{"line":95,"column":7}},"55":{"start":{"line":93,"column":8},"end":{"line":93,"column":26}},"56":{"start":{"line":94,"column":8},"end":{"line":94,"column":19}},"57":{"start":{"line":97,"column":6},"end":{"line":99,"column":7}},"58":{"start":{"line":98,"column":8},"end":{"line":98,"column":39}},"59":{"start":{"line":101,"column":6},"end":{"line":106,"column":7}},"60":{"start":{"line":102,"column":8},"end":{"line":102,"column":63}},"61":{"start":{"line":104,"column":8},"end":{"line":104,"column":38}},"62":{"start":{"line":105,"column":8},"end":{"line":105,"column":18}},"63":{"start":{"line":109,"column":6},"end":{"line":109,"column":51}},"64":{"start":{"line":110,"column":6},"end":{"line":110,"column":43}},"65":{"start":{"line":113,"column":6},"end":{"line":141,"column":13}},"66":{"start":{"line":114,"column":8},"end":{"line":114,"column":31}},"67":{"start":{"line":117,"column":8},"end":{"line":119,"column":9}},"68":{"start":{"line":118,"column":10},"end":{"line":118,"column":26}},"69":{"start":{"line":122,"column":8},"end":{"line":128,"column":9}},"70":{"start":{"line":123,"column":10},"end":{"line":123,"column":47}},"71":{"start":{"line":124,"column":10},"end":{"line":126,"column":11}},"72":{"start":{"line":125,"column":12},"end":{"line":125,"column":65}},"73":{"start":{"line":127,"column":10},"end":{"line":127,"column":26}},"74":{"start":{"line":131,"column":8},"end":{"line":131,"column":46}},"75":{"start":{"line":132,"column":8},"end":{"line":138,"column":13}},"76":{"start":{"line":134,"column":12},"end":{"line":134,"column":48}},"77":{"start":{"line":134,"column":38},"end":{"line":134,"column":48}},"78":{"start":{"line":135,"column":12},"end":{"line":135,"column":44}},"79":{"start":{"line":136,"column":12},"end":{"line":136,"column":44}},"80":{"start":{"line":137,"column":12},"end":{"line":137,"column":57}},"81":{"start":{"line":139,"column":8},"end":{"line":139,"column":42}},"82":{"start":{"line":140,"column":8},"end":{"line":140,"column":24}},"83":{"start":{"line":144,"column":6},"end":{"line":146,"column":9}},"84":{"start":{"line":145,"column":8},"end":{"line":145,"column":43}},"85":{"start":{"line":148,"column":6},"end":{"line":150,"column":8}},"86":{"start":{"line":152,"column":6},"end":{"line":152,"column":59}},"87":{"start":{"line":154,"column":6},"end":{"line":154,"column":39}},"88":{"start":{"line":159,"column":4},"end":{"line":161,"column":5}},"89":{"start":{"line":160,"column":6},"end":{"line":160,"column":34}},"90":{"start":{"line":163,"column":4},"end":{"line":165,"column":5}},"91":{"start":{"line":164,"column":6},"end":{"line":164,"column":34}},"92":{"start":{"line":169,"column":4},"end":{"line":171,"column":5}},"93":{"start":{"line":170,"column":6},"end":{"line":170,"column":33}},"94":{"start":{"line":173,"column":4},"end":{"line":173,"column":55}},"95":{"start":{"line":173,"column":41},"end":{"line":173,"column":55}},"96":{"start":{"line":174,"column":4},"end":{"line":174,"column":53}},"97":{"start":{"line":178,"column":4},"end":{"line":180,"column":5}},"98":{"start":{"line":179,"column":6},"end":{"line":179,"column":39}},"99":{"start":{"line":182,"column":4},"end":{"line":182,"column":55}},"100":{"start":{"line":182,"column":41},"end":{"line":182,"column":55}},"101":{"start":{"line":183,"column":4},"end":{"line":183,"column":25}},"102":{"start":{"line":187,"column":4},"end":{"line":187,"column":20}},"103":{"start":{"line":188,"column":4},"end":{"line":206,"column":7}},"104":{"start":{"line":189,"column":6},"end":{"line":205,"column":9}},"105":{"start":{"line":191,"column":10},"end":{"line":191,"column":61}},"106":{"start":{"line":191,"column":47},"end":{"line":191,"column":61}},"107":{"start":{"line":192,"column":10},"end":{"line":202,"column":11}},"108":{"start":{"line":193,"column":12},"end":{"line":193,"column":26}},"109":{"start":{"line":194,"column":12},"end":{"line":197,"column":15}},"110":{"start":{"line":195,"column":14},"end":{"line":195,"column":37}},"111":{"start":{"line":196,"column":14},"end":{"line":196,"column":35}},"112":{"start":{"line":198,"column":12},"end":{"line":198,"column":24}},"113":{"start":{"line":200,"column":12},"end":{"line":200,"column":40}},"114":{"start":{"line":201,"column":12},"end":{"line":201,"column":44}},"115":{"start":{"line":217,"column":0},"end":{"line":217,"column":25}},"116":{"start":{"line":220,"column":0},"end":{"line":235,"column":1}},"117":{"start":{"line":221,"column":2},"end":{"line":230,"column":3}},"118":{"start":{"line":223,"column":6},"end":{"line":223,"column":43}},"119":{"start":{"line":225,"column":6},"end":{"line":225,"column":42}},"120":{"start":{"line":229,"column":6},"end":{"line":229,"column":52}},"121":{"start":{"line":232,"column":2},"end":{"line":234,"column":3}},"122":{"start":{"line":233,"column":4},"end":{"line":233,"column":42}},"123":{"start":{"line":237,"column":0},"end":{"line":245,"column":1}},"124":{"start":{"line":238,"column":2},"end":{"line":238,"column":41}},"125":{"start":{"line":239,"column":2},"end":{"line":243,"column":5}},"126":{"start":{"line":240,"column":4},"end":{"line":242,"column":5}},"127":{"start":{"line":241,"column":6},"end":{"line":241,"column":25}},"128":{"start":{"line":244,"column":2},"end":{"line":244,"column":16}}},"branchMap":{"1":{"line":21,"type":"binary-expr","locations":[{"start":{"line":21,"column":19},"end":{"line":21,"column":26}},{"start":{"line":21,"column":30},"end":{"line":21,"column":32}}]},"2":{"line":23,"type":"if","locations":[{"start":{"line":23,"column":4},"end":{"line":23,"column":4}},{"start":{"line":23,"column":4},"end":{"line":23,"column":4}}]},"3":{"line":30,"type":"binary-expr","locations":[{"start":{"line":30,"column":29},"end":{"line":30,"column":51}},{"start":{"line":30,"column":55},"end":{"line":30,"column":57}}]},"4":{"line":31,"type":"binary-expr","locations":[{"start":{"line":31,"column":26},"end":{"line":31,"column":45}},{"start":{"line":31,"column":49},"end":{"line":31,"column":51}}]},"5":{"line":52,"type":"if","locations":[{"start":{"line":52,"column":8},"end":{"line":52,"column":8}},{"start":{"line":52,"column":8},"end":{"line":52,"column":8}}]},"6":{"line":82,"type":"if","locations":[{"start":{"line":82,"column":4},"end":{"line":82,"column":4}},{"start":{"line":82,"column":4},"end":{"line":82,"column":4}}]},"7":{"line":92,"type":"if","locations":[{"start":{"line":92,"column":6},"end":{"line":92,"column":6}},{"start":{"line":92,"column":6},"end":{"line":92,"column":6}}]},"8":{"line":97,"type":"if","locations":[{"start":{"line":97,"column":6},"end":{"line":97,"column":6}},{"start":{"line":97,"column":6},"end":{"line":97,"column":6}}]},"9":{"line":117,"type":"if","locations":[{"start":{"line":117,"column":8},"end":{"line":117,"column":8}},{"start":{"line":117,"column":8},"end":{"line":117,"column":8}}]},"10":{"line":122,"type":"if","locations":[{"start":{"line":122,"column":8},"end":{"line":122,"column":8}},{"start":{"line":122,"column":8},"end":{"line":122,"column":8}}]},"11":{"line":124,"type":"if","locations":[{"start":{"line":124,"column":10},"end":{"line":124,"column":10}},{"start":{"line":124,"column":10},"end":{"line":124,"column":10}}]},"12":{"line":134,"type":"if","locations":[{"start":{"line":134,"column":12},"end":{"line":134,"column":12}},{"start":{"line":134,"column":12},"end":{"line":134,"column":12}}]},"13":{"line":137,"type":"cond-expr","locations":[{"start":{"line":137,"column":42},"end":{"line":137,"column":44}},{"start":{"line":137,"column":47},"end":{"line":137,"column":56}}]},"14":{"line":154,"type":"cond-expr","locations":[{"start":{"line":154,"column":29},"end":{"line":154,"column":31}},{"start":{"line":154,"column":34},"end":{"line":154,"column":38}}]},"15":{"line":159,"type":"if","locations":[{"start":{"line":159,"column":4},"end":{"line":159,"column":4}},{"start":{"line":159,"column":4},"end":{"line":159,"column":4}}]},"16":{"line":163,"type":"if","locations":[{"start":{"line":163,"column":4},"end":{"line":163,"column":4}},{"start":{"line":163,"column":4},"end":{"line":163,"column":4}}]},"17":{"line":169,"type":"if","locations":[{"start":{"line":169,"column":4},"end":{"line":169,"column":4}},{"start":{"line":169,"column":4},"end":{"line":169,"column":4}}]},"18":{"line":173,"type":"if","locations":[{"start":{"line":173,"column":4},"end":{"line":173,"column":4}},{"start":{"line":173,"column":4},"end":{"line":173,"column":4}}]},"19":{"line":173,"type":"binary-expr","locations":[{"start":{"line":173,"column":8},"end":{"line":173,"column":21}},{"start":{"line":173,"column":25},"end":{"line":173,"column":39}}]},"20":{"line":174,"type":"cond-expr","locations":[{"start":{"line":174,"column":28},"end":{"line":174,"column":32}},{"start":{"line":174,"column":35},"end":{"line":174,"column":52}}]},"21":{"line":178,"type":"if","locations":[{"start":{"line":178,"column":4},"end":{"line":178,"column":4}},{"start":{"line":178,"column":4},"end":{"line":178,"column":4}}]},"22":{"line":182,"type":"if","locations":[{"start":{"line":182,"column":4},"end":{"line":182,"column":4}},{"start":{"line":182,"column":4},"end":{"line":182,"column":4}}]},"23":{"line":182,"type":"binary-expr","locations":[{"start":{"line":182,"column":8},"end":{"line":182,"column":21}},{"start":{"line":182,"column":25},"end":{"line":182,"column":39}}]},"24":{"line":191,"type":"if","locations":[{"start":{"line":191,"column":10},"end":{"line":191,"column":10}},{"start":{"line":191,"column":10},"end":{"line":191,"column":10}}]},"25":{"line":191,"type":"binary-expr","locations":[{"start":{"line":191,"column":14},"end":{"line":191,"column":27}},{"start":{"line":191,"column":31},"end":{"line":191,"column":45}}]},"26":{"line":192,"type":"if","locations":[{"start":{"line":192,"column":10},"end":{"line":192,"column":10}},{"start":{"line":192,"column":10},"end":{"line":192,"column":10}}]},"27":{"line":201,"type":"cond-expr","locations":[{"start":{"line":201,"column":25},"end":{"line":201,"column":38}},{"start":{"line":201,"column":41},"end":{"line":201,"column":43}}]},"28":{"line":221,"type":"switch","locations":[{"start":{"line":222,"column":4},"end":{"line":223,"column":43}},{"start":{"line":224,"column":4},"end":{"line":225,"column":42}},{"start":{"line":226,"column":4},"end":{"line":229,"column":52}}]},"29":{"line":229,"type":"cond-expr","locations":[{"start":{"line":229,"column":30},"end":{"line":229,"column":46}},{"start":{"line":229,"column":49},"end":{"line":229,"column":51}}]}}},"/Users/popomore/code/popomore/father/lib/spm-package.js":{"path":"/Users/popomore/code/popomore/father/lib/spm-package.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":25,"9":23,"10":23,"11":14,"12":22,"13":1,"14":1,"15":25,"16":25,"17":25,"18":25,"19":25,"20":14,"21":25,"22":1,"23":24,"24":20,"25":24,"26":1,"27":23,"28":23,"29":1,"30":1,"31":14,"32":14,"33":14,"34":14,"35":3,"36":11,"37":11,"38":14,"39":14,"40":1,"41":13,"42":1,"43":11,"44":13,"45":1,"46":1,"47":14,"48":7,"49":14},"b":{"1":[25,5],"2":[14,11],"3":[1,24],"4":[20,4],"5":[1,23],"6":[23,12],"7":[3,11],"8":[1,13]},"f":{"1":25,"2":14,"3":25,"4":14,"5":11,"6":13,"7":1,"8":14},"fnMap":{"1":{"name":"(anonymous_1)","line":12,"loc":{"start":{"line":12,"column":15},"end":{"line":12,"column":26}}},"2":{"name":"(anonymous_2)","line":17,"loc":{"start":{"line":17,"column":15},"end":{"line":17,"column":30}}},"3":{"name":"normalize","line":27,"loc":{"start":{"line":27,"column":0},"end":{"line":27,"column":24}}},"4":{"name":"resolveDeps","line":64,"loc":{"start":{"line":64,"column":0},"end":{"line":64,"column":38}}},"5":{"name":"getVersions","line":93,"loc":{"start":{"line":93,"column":0},"end":{"line":93,"column":27}}},"6":{"name":"(anonymous_6)","line":95,"loc":{"start":{"line":95,"column":12},"end":{"line":95,"column":27}}},"7":{"name":"(anonymous_7)","line":98,"loc":{"start":{"line":98,"column":10},"end":{"line":98,"column":25}}},"8":{"name":"getAncestor","line":103,"loc":{"start":{"line":103,"column":0},"end":{"line":103,"column":27}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":23}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":27}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":21}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":31}},"5":{"start":{"line":7,"column":0},"end":{"line":7,"column":35}},"6":{"start":{"line":8,"column":0},"end":{"line":8,"column":43}},"7":{"start":{"line":10,"column":0},"end":{"line":23,"column":3}},"8":{"start":{"line":13,"column":4},"end":{"line":13,"column":57}},"9":{"start":{"line":14,"column":4},"end":{"line":14,"column":46}},"10":{"start":{"line":16,"column":4},"end":{"line":19,"column":20}},"11":{"start":{"line":18,"column":8},"end":{"line":18,"column":62}},"12":{"start":{"line":20,"column":4},"end":{"line":20,"column":15}},"13":{"start":{"line":25,"column":0},"end":{"line":25,"column":28}},"14":{"start":{"line":27,"column":0},"end":{"line":60,"column":1}},"15":{"start":{"line":28,"column":2},"end":{"line":28,"column":31}},"16":{"start":{"line":29,"column":2},"end":{"line":29,"column":28}},"17":{"start":{"line":30,"column":2},"end":{"line":30,"column":21}},"18":{"start":{"line":31,"column":2},"end":{"line":31,"column":26}},"19":{"start":{"line":34,"column":2},"end":{"line":36,"column":3}},"20":{"start":{"line":35,"column":4},"end":{"line":35,"column":30}},"21":{"start":{"line":37,"column":2},"end":{"line":39,"column":3}},"22":{"start":{"line":38,"column":4},"end":{"line":38,"column":54}},"23":{"start":{"line":42,"column":2},"end":{"line":44,"column":3}},"24":{"start":{"line":43,"column":4},"end":{"line":43,"column":24}},"25":{"start":{"line":45,"column":2},"end":{"line":47,"column":3}},"26":{"start":{"line":46,"column":4},"end":{"line":46,"column":55}},"27":{"start":{"line":49,"column":2},"end":{"line":58,"column":4}},"28":{"start":{"line":59,"column":2},"end":{"line":59,"column":13}},"29":{"start":{"line":62,"column":0},"end":{"line":62,"column":22}},"30":{"start":{"line":64,"column":0},"end":{"line":87,"column":1}},"31":{"start":{"line":65,"column":2},"end":{"line":65,"column":49}},"32":{"start":{"line":66,"column":2},"end":{"line":66,"column":35}},"33":{"start":{"line":67,"column":2},"end":{"line":67,"column":54}},"34":{"start":{"line":69,"column":2},"end":{"line":74,"column":3}},"35":{"start":{"line":70,"column":4},"end":{"line":70,"column":34}},"36":{"start":{"line":72,"column":4},"end":{"line":72,"column":33}},"37":{"start":{"line":73,"column":4},"end":{"line":73,"column":34}},"38":{"start":{"line":76,"column":2},"end":{"line":76,"column":52}},"39":{"start":{"line":77,"column":2},"end":{"line":79,"column":3}},"40":{"start":{"line":78,"column":4},"end":{"line":78,"column":53}},"41":{"start":{"line":81,"column":2},"end":{"line":86,"column":4}},"42":{"start":{"line":93,"column":0},"end":{"line":101,"column":1}},"43":{"start":{"line":94,"column":2},"end":{"line":100,"column":7}},"44":{"start":{"line":96,"column":6},"end":{"line":96,"column":32}},"45":{"start":{"line":99,"column":6},"end":{"line":99,"column":29}},"46":{"start":{"line":103,"column":0},"end":{"line":108,"column":1}},"47":{"start":{"line":104,"column":2},"end":{"line":106,"column":3}},"48":{"start":{"line":105,"column":4},"end":{"line":105,"column":23}},"49":{"start":{"line":107,"column":2},"end":{"line":107,"column":14}}},"branchMap":{"1":{"line":31,"type":"binary-expr","locations":[{"start":{"line":31,"column":12},"end":{"line":31,"column":19}},{"start":{"line":31,"column":23},"end":{"line":31,"column":25}}]},"2":{"line":34,"type":"if","locations":[{"start":{"line":34,"column":2},"end":{"line":34,"column":2}},{"start":{"line":34,"column":2},"end":{"line":34,"column":2}}]},"3":{"line":37,"type":"if","locations":[{"start":{"line":37,"column":2},"end":{"line":37,"column":2}},{"start":{"line":37,"column":2},"end":{"line":37,"column":2}}]},"4":{"line":42,"type":"if","locations":[{"start":{"line":42,"column":2},"end":{"line":42,"column":2}},{"start":{"line":42,"column":2},"end":{"line":42,"column":2}}]},"5":{"line":45,"type":"if","locations":[{"start":{"line":45,"column":2},"end":{"line":45,"column":2}},{"start":{"line":45,"column":2},"end":{"line":45,"column":2}}]},"6":{"line":53,"type":"binary-expr","locations":[{"start":{"line":53,"column":18},"end":{"line":53,"column":38}},{"start":{"line":53,"column":42},"end":{"line":53,"column":44}}]},"7":{"line":69,"type":"if","locations":[{"start":{"line":69,"column":2},"end":{"line":69,"column":2}},{"start":{"line":69,"column":2},"end":{"line":69,"column":2}}]},"8":{"line":77,"type":"if","locations":[{"start":{"line":77,"column":2},"end":{"line":77,"column":2}},{"start":{"line":77,"column":2},"end":{"line":77,"column":2}}]}}},"/Users/popomore/code/popomore/father/lib/component-package.js":{"path":"/Users/popomore/code/popomore/father/lib/component-package.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":0,"7":0,"8":0,"9":0,"10":0,"11":1,"12":1,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":1,"20":0,"21":0,"22":0,"23":0,"24":1,"25":0,"26":0,"27":0},"b":{"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0]},"f":{"1":0,"2":0,"3":0,"4":0,"5":0},"fnMap":{"1":{"name":"(anonymous_1)","line":10,"loc":{"start":{"line":10,"column":15},"end":{"line":10,"column":26}}},"2":{"name":"(anonymous_2)","line":15,"loc":{"start":{"line":15,"column":15},"end":{"line":15,"column":30}}},"3":{"name":"normalize","line":25,"loc":{"start":{"line":25,"column":0},"end":{"line":25,"column":24}}},"4":{"name":"resolveDeps","line":43,"loc":{"start":{"line":43,"column":0},"end":{"line":43,"column":33}}},"5":{"name":"getAncestor","line":56,"loc":{"start":{"line":56,"column":0},"end":{"line":56,"column":27}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":27}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":21}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":35}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":49}},"5":{"start":{"line":8,"column":0},"end":{"line":21,"column":3}},"6":{"start":{"line":11,"column":4},"end":{"line":11,"column":59}},"7":{"start":{"line":12,"column":4},"end":{"line":12,"column":46}},"8":{"start":{"line":14,"column":4},"end":{"line":17,"column":20}},"9":{"start":{"line":16,"column":8},"end":{"line":16,"column":57}},"10":{"start":{"line":18,"column":4},"end":{"line":18,"column":15}},"11":{"start":{"line":23,"column":0},"end":{"line":23,"column":34}},"12":{"start":{"line":25,"column":0},"end":{"line":41,"column":1}},"13":{"start":{"line":26,"column":2},"end":{"line":26,"column":31}},"14":{"start":{"line":27,"column":2},"end":{"line":27,"column":21}},"15":{"start":{"line":28,"column":2},"end":{"line":28,"column":34}},"16":{"start":{"line":29,"column":2},"end":{"line":29,"column":32}},"17":{"start":{"line":30,"column":2},"end":{"line":39,"column":4}},"18":{"start":{"line":40,"column":2},"end":{"line":40,"column":13}},"19":{"start":{"line":43,"column":0},"end":{"line":54,"column":1}},"20":{"start":{"line":44,"column":2},"end":{"line":44,"column":35}},"21":{"start":{"line":45,"column":2},"end":{"line":45,"column":71}},"22":{"start":{"line":46,"column":2},"end":{"line":46,"column":50}},"23":{"start":{"line":48,"column":2},"end":{"line":53,"column":4}},"24":{"start":{"line":56,"column":0},"end":{"line":61,"column":1}},"25":{"start":{"line":57,"column":2},"end":{"line":59,"column":3}},"26":{"start":{"line":58,"column":4},"end":{"line":58,"column":23}},"27":{"start":{"line":60,"column":2},"end":{"line":60,"column":14}}},"branchMap":{"1":{"line":28,"type":"binary-expr","locations":[{"start":{"line":28,"column":16},"end":{"line":28,"column":27}},{"start":{"line":28,"column":31},"end":{"line":28,"column":33}}]},"2":{"line":29,"type":"binary-expr","locations":[{"start":{"line":29,"column":15},"end":{"line":29,"column":25}},{"start":{"line":29,"column":29},"end":{"line":29,"column":31}}]},"3":{"line":34,"type":"binary-expr","locations":[{"start":{"line":34,"column":18},"end":{"line":34,"column":34}},{"start":{"line":34,"column":38},"end":{"line":34,"column":40}}]},"4":{"line":35,"type":"binary-expr","locations":[{"start":{"line":35,"column":10},"end":{"line":35,"column":18}},{"start":{"line":35,"column":22},"end":{"line":35,"column":32}}]}}}}
{"/Users/popomore/code/popomore/father/index.js":{"path":"/Users/popomore/code/popomore/father/index.js","s":{"1":1,"2":1,"3":1},"b":{},"f":{},"fnMap":{},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":43}},"2":{"start":{"line":2,"column":0},"end":{"line":2,"column":50}},"3":{"start":{"line":3,"column":0},"end":{"line":3,"column":62}}},"branchMap":{}},"/Users/popomore/code/popomore/father/lib/package.js":{"path":"/Users/popomore/code/popomore/father/lib/package.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":45,"16":1,"17":44,"18":44,"19":44,"20":44,"21":44,"22":44,"23":44,"24":38,"25":12,"26":26,"27":25,"28":85,"29":22,"30":63,"31":2,"32":63,"33":3,"34":1,"35":2,"36":1,"37":2,"38":44,"39":44,"40":308,"41":68,"42":11,"43":67,"44":7,"45":7,"46":12,"47":12,"48":7,"49":60,"50":308,"51":45,"52":45,"53":45,"54":42,"55":42,"56":41,"57":38,"58":38,"59":38,"60":38,"61":42,"62":42,"63":35,"64":35,"65":25,"66":25,"67":34,"68":41,"69":41,"70":41,"71":41,"72":41,"73":1,"74":82,"75":82,"76":11,"77":11,"78":82,"79":1,"80":81,"81":81,"82":3,"83":81,"84":81,"85":80,"86":1,"87":80,"88":80,"89":80,"90":68,"91":68,"92":3,"93":65,"94":34,"95":34,"96":2,"97":32,"98":31,"99":31,"100":16,"101":13,"102":3,"103":3,"104":3,"105":30,"106":77,"107":116,"108":77,"109":77,"110":77,"111":1,"112":1,"113":80,"114":57,"115":8,"116":15,"117":1,"118":66,"119":1,"120":41,"121":41,"122":1,"123":41,"124":11,"125":41,"126":54,"127":1,"128":41,"129":8,"130":1,"131":69,"132":69,"133":138,"134":252,"135":69},"b":{"1":[1,44],"2":[12,26],"3":[25,1],"4":[22,63],"5":[2,61],"6":[63,34],"7":[1,62],"8":[1,2],"9":[1,1],"10":[2,1],"11":[11,57],"12":[68,11],"13":[7,60],"14":[25,10],"15":[11,71],"16":[1,81],"17":[3,78],"18":[3,65],"19":[34,31],"20":[2,32],"21":[13,3],"22":[1,2],"23":[1,76],"24":[77,25],"25":[57,8,15],"26":[1,40],"27":[41,41],"28":[11,30],"29":[41,41]},"f":{"1":45,"2":38,"3":85,"4":3,"5":44,"6":308,"7":68,"8":12,"9":45,"10":42,"11":35,"12":41,"13":82,"14":68,"15":16,"16":116,"17":0,"18":80,"19":66,"20":41,"21":54,"22":41,"23":8,"24":69,"25":138},"fnMap":{"1":{"name":"(anonymous_1)","line":38,"loc":{"start":{"line":38,"column":14},"end":{"line":38,"column":37}}},"2":{"name":"(anonymous_2)","line":49,"loc":{"start":{"line":49,"column":7},"end":{"line":49,"column":21}}},"3":{"name":"(anonymous_3)","line":58,"loc":{"start":{"line":58,"column":7},"end":{"line":58,"column":20}}},"4":{"name":"(anonymous_4)","line":66,"loc":{"start":{"line":66,"column":15},"end":{"line":66,"column":26}}},"5":{"name":"(anonymous_5)","line":74,"loc":{"start":{"line":74,"column":19},"end":{"line":74,"column":34}}},"6":{"name":"(anonymous_6)","line":76,"loc":{"start":{"line":76,"column":17},"end":{"line":76,"column":31}}},"7":{"name":"(anonymous_7)","line":78,"loc":{"start":{"line":78,"column":13},"end":{"line":78,"column":24}}},"8":{"name":"(anonymous_8)","line":82,"loc":{"start":{"line":82,"column":39},"end":{"line":82,"column":52}}},"9":{"name":"(anonymous_9)","line":98,"loc":{"start":{"line":98,"column":10},"end":{"line":98,"column":21}}},"10":{"name":"(anonymous_10)","line":116,"loc":{"start":{"line":116,"column":17},"end":{"line":116,"column":28}}},"11":{"name":"(anonymous_11)","line":119,"loc":{"start":{"line":119,"column":15},"end":{"line":119,"column":30}}},"12":{"name":"(anonymous_12)","line":130,"loc":{"start":{"line":130,"column":15},"end":{"line":130,"column":26}}},"13":{"name":"lookupFiles","line":137,"loc":{"start":{"line":137,"column":4},"end":{"line":137,"column":37}}},"14":{"name":"(anonymous_14)","line":164,"loc":{"start":{"line":164,"column":23},"end":{"line":164,"column":38}}},"15":{"name":"(anonymous_15)","line":184,"loc":{"start":{"line":184,"column":15},"end":{"line":184,"column":28}}},"16":{"name":"(anonymous_16)","line":194,"loc":{"start":{"line":194,"column":25},"end":{"line":194,"column":52}}},"17":{"name":"(anonymous_17)","line":213,"loc":{"start":{"line":213,"column":15},"end":{"line":213,"column":26}}},"18":{"name":"getFileDeps","line":220,"loc":{"start":{"line":220,"column":0},"end":{"line":220,"column":32}}},"19":{"name":"transform","line":230,"loc":{"start":{"line":230,"column":2},"end":{"line":230,"column":27}}},"20":{"name":"getEntry","line":236,"loc":{"start":{"line":236,"column":0},"end":{"line":236,"column":32}}},"21":{"name":"(anonymous_21)","line":251,"loc":{"start":{"line":251,"column":12},"end":{"line":251,"column":39}}},"22":{"name":"getExtraVal","line":256,"loc":{"start":{"line":256,"column":0},"end":{"line":256,"column":32}}},"23":{"name":"(anonymous_23)","line":258,"loc":{"start":{"line":258,"column":9},"end":{"line":258,"column":23}}},"24":{"name":"extend","line":262,"loc":{"start":{"line":262,"column":0},"end":{"line":262,"column":24}}},"25":{"name":"(anonymous_25)","line":264,"loc":{"start":{"line":264,"column":15},"end":{"line":264,"column":29}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":23}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":27}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":21}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":27}},"5":{"start":{"line":7,"column":0},"end":{"line":7,"column":27}},"6":{"start":{"line":8,"column":0},"end":{"line":8,"column":29}},"7":{"start":{"line":9,"column":0},"end":{"line":9,"column":35}},"8":{"start":{"line":10,"column":0},"end":{"line":10,"column":37}},"9":{"start":{"line":11,"column":0},"end":{"line":11,"column":35}},"10":{"start":{"line":12,"column":0},"end":{"line":12,"column":37}},"11":{"start":{"line":13,"column":0},"end":{"line":13,"column":47}},"12":{"start":{"line":15,"column":0},"end":{"line":22,"column":2}},"13":{"start":{"line":24,"column":0},"end":{"line":32,"column":2}},"14":{"start":{"line":34,"column":0},"end":{"line":215,"column":3}},"15":{"start":{"line":39,"column":4},"end":{"line":39,"column":57}},"16":{"start":{"line":39,"column":14},"end":{"line":39,"column":57}},"17":{"start":{"line":40,"column":4},"end":{"line":40,"column":44}},"18":{"start":{"line":41,"column":4},"end":{"line":41,"column":33}},"19":{"start":{"line":42,"column":4},"end":{"line":42,"column":27}},"20":{"start":{"line":43,"column":4},"end":{"line":43,"column":20}},"21":{"start":{"line":44,"column":4},"end":{"line":44,"column":24}},"22":{"start":{"line":45,"column":4},"end":{"line":45,"column":28}},"23":{"start":{"line":46,"column":4},"end":{"line":46,"column":37}},"24":{"start":{"line":50,"column":4},"end":{"line":52,"column":5}},"25":{"start":{"line":51,"column":6},"end":{"line":51,"column":34}},"26":{"start":{"line":53,"column":4},"end":{"line":55,"column":5}},"27":{"start":{"line":54,"column":6},"end":{"line":54,"column":35}},"28":{"start":{"line":59,"column":4},"end":{"line":61,"column":5}},"29":{"start":{"line":60,"column":6},"end":{"line":60,"column":33}},"30":{"start":{"line":62,"column":4},"end":{"line":62,"column":55}},"31":{"start":{"line":62,"column":41},"end":{"line":62,"column":55}},"32":{"start":{"line":63,"column":4},"end":{"line":63,"column":54}},"33":{"start":{"line":67,"column":4},"end":{"line":69,"column":5}},"34":{"start":{"line":68,"column":6},"end":{"line":68,"column":39}},"35":{"start":{"line":70,"column":4},"end":{"line":70,"column":55}},"36":{"start":{"line":70,"column":41},"end":{"line":70,"column":55}},"37":{"start":{"line":71,"column":4},"end":{"line":71,"column":26}},"38":{"start":{"line":75,"column":4},"end":{"line":75,"column":20}},"39":{"start":{"line":76,"column":4},"end":{"line":95,"column":7}},"40":{"start":{"line":77,"column":6},"end":{"line":92,"column":8}},"41":{"start":{"line":79,"column":10},"end":{"line":79,"column":61}},"42":{"start":{"line":79,"column":47},"end":{"line":79,"column":61}},"43":{"start":{"line":80,"column":10},"end":{"line":89,"column":11}},"44":{"start":{"line":81,"column":12},"end":{"line":81,"column":26}},"45":{"start":{"line":82,"column":12},"end":{"line":85,"column":15}},"46":{"start":{"line":83,"column":14},"end":{"line":83,"column":37}},"47":{"start":{"line":84,"column":14},"end":{"line":84,"column":35}},"48":{"start":{"line":86,"column":12},"end":{"line":86,"column":24}},"49":{"start":{"line":88,"column":12},"end":{"line":88,"column":34}},"50":{"start":{"line":94,"column":6},"end":{"line":94,"column":45}},"51":{"start":{"line":100,"column":4},"end":{"line":100,"column":40}},"52":{"start":{"line":101,"column":4},"end":{"line":101,"column":25}},"53":{"start":{"line":102,"column":4},"end":{"line":102,"column":35}},"54":{"start":{"line":103,"column":4},"end":{"line":103,"column":27}},"55":{"start":{"line":106,"column":4},"end":{"line":106,"column":25}},"56":{"start":{"line":107,"column":4},"end":{"line":107,"column":23}},"57":{"start":{"line":110,"column":4},"end":{"line":110,"column":24}},"58":{"start":{"line":111,"column":4},"end":{"line":111,"column":26}},"59":{"start":{"line":112,"column":4},"end":{"line":112,"column":40}},"60":{"start":{"line":113,"column":4},"end":{"line":113,"column":16}},"61":{"start":{"line":117,"column":4},"end":{"line":117,"column":63}},"62":{"start":{"line":118,"column":4},"end":{"line":126,"column":20}},"63":{"start":{"line":120,"column":8},"end":{"line":120,"column":29}},"64":{"start":{"line":121,"column":8},"end":{"line":124,"column":9}},"65":{"start":{"line":122,"column":10},"end":{"line":122,"column":61}},"66":{"start":{"line":123,"column":10},"end":{"line":123,"column":53}},"67":{"start":{"line":125,"column":8},"end":{"line":125,"column":40}},"68":{"start":{"line":127,"column":4},"end":{"line":127,"column":71}},"69":{"start":{"line":131,"column":4},"end":{"line":131,"column":49}},"70":{"start":{"line":132,"column":4},"end":{"line":132,"column":48}},"71":{"start":{"line":133,"column":4},"end":{"line":133,"column":50}},"72":{"start":{"line":135,"column":4},"end":{"line":135,"column":48}},"73":{"start":{"line":137,"column":4},"end":{"line":206,"column":5}},"74":{"start":{"line":138,"column":6},"end":{"line":138,"column":53}},"75":{"start":{"line":139,"column":6},"end":{"line":142,"column":7}},"76":{"start":{"line":140,"column":8},"end":{"line":140,"column":26}},"77":{"start":{"line":141,"column":8},"end":{"line":141,"column":19}},"78":{"start":{"line":144,"column":6},"end":{"line":146,"column":7}},"79":{"start":{"line":145,"column":8},"end":{"line":145,"column":39}},"80":{"start":{"line":150,"column":6},"end":{"line":150,"column":40}},"81":{"start":{"line":151,"column":6},"end":{"line":151,"column":52}},"82":{"start":{"line":151,"column":26},"end":{"line":151,"column":52}},"83":{"start":{"line":154,"column":6},"end":{"line":159,"column":7}},"84":{"start":{"line":155,"column":8},"end":{"line":155,"column":63}},"85":{"start":{"line":156,"column":8},"end":{"line":156,"column":60}},"86":{"start":{"line":158,"column":8},"end":{"line":158,"column":44}},"87":{"start":{"line":162,"column":6},"end":{"line":162,"column":26}},"88":{"start":{"line":163,"column":6},"end":{"line":163,"column":16}},"89":{"start":{"line":164,"column":6},"end":{"line":191,"column":9}},"90":{"start":{"line":165,"column":8},"end":{"line":165,"column":24}},"91":{"start":{"line":168,"column":8},"end":{"line":170,"column":9}},"92":{"start":{"line":169,"column":10},"end":{"line":169,"column":33}},"93":{"start":{"line":173,"column":8},"end":{"line":179,"column":9}},"94":{"start":{"line":174,"column":10},"end":{"line":174,"column":44}},"95":{"start":{"line":175,"column":10},"end":{"line":177,"column":11}},"96":{"start":{"line":176,"column":12},"end":{"line":176,"column":62}},"97":{"start":{"line":178,"column":10},"end":{"line":178,"column":33}},"98":{"start":{"line":182,"column":8},"end":{"line":182,"column":40}},"99":{"start":{"line":183,"column":8},"end":{"line":189,"column":13}},"100":{"start":{"line":185,"column":12},"end":{"line":185,"column":48}},"101":{"start":{"line":185,"column":38},"end":{"line":185,"column":48}},"102":{"start":{"line":186,"column":12},"end":{"line":186,"column":41}},"103":{"start":{"line":187,"column":12},"end":{"line":187,"column":44}},"104":{"start":{"line":188,"column":12},"end":{"line":188,"column":57}},"105":{"start":{"line":190,"column":8},"end":{"line":190,"column":34}},"106":{"start":{"line":194,"column":6},"end":{"line":196,"column":9}},"107":{"start":{"line":195,"column":8},"end":{"line":195,"column":43}},"108":{"start":{"line":198,"column":6},"end":{"line":200,"column":8}},"109":{"start":{"line":202,"column":6},"end":{"line":202,"column":77}},"110":{"start":{"line":205,"column":6},"end":{"line":205,"column":67}},"111":{"start":{"line":217,"column":0},"end":{"line":217,"column":25}},"112":{"start":{"line":220,"column":0},"end":{"line":233,"column":1}},"113":{"start":{"line":221,"column":2},"end":{"line":228,"column":3}},"114":{"start":{"line":223,"column":6},"end":{"line":223,"column":43}},"115":{"start":{"line":225,"column":6},"end":{"line":225,"column":42}},"116":{"start":{"line":227,"column":6},"end":{"line":227,"column":16}},"117":{"start":{"line":230,"column":2},"end":{"line":232,"column":3}},"118":{"start":{"line":231,"column":4},"end":{"line":231,"column":42}},"119":{"start":{"line":236,"column":0},"end":{"line":254,"column":1}},"120":{"start":{"line":238,"column":2},"end":{"line":238,"column":25}},"121":{"start":{"line":241,"column":2},"end":{"line":243,"column":3}},"122":{"start":{"line":242,"column":4},"end":{"line":242,"column":40}},"123":{"start":{"line":246,"column":2},"end":{"line":248,"column":3}},"124":{"start":{"line":247,"column":4},"end":{"line":247,"column":37}},"125":{"start":{"line":250,"column":2},"end":{"line":253,"column":7}},"126":{"start":{"line":252,"column":6},"end":{"line":252,"column":41}},"127":{"start":{"line":256,"column":0},"end":{"line":261,"column":1}},"128":{"start":{"line":257,"column":2},"end":{"line":260,"column":7}},"129":{"start":{"line":259,"column":6},"end":{"line":259,"column":28}},"130":{"start":{"line":262,"column":0},"end":{"line":270,"column":1}},"131":{"start":{"line":263,"column":2},"end":{"line":263,"column":41}},"132":{"start":{"line":264,"column":2},"end":{"line":268,"column":5}},"133":{"start":{"line":265,"column":4},"end":{"line":267,"column":5}},"134":{"start":{"line":266,"column":6},"end":{"line":266,"column":25}},"135":{"start":{"line":269,"column":2},"end":{"line":269,"column":16}}},"branchMap":{"1":{"line":39,"type":"if","locations":[{"start":{"line":39,"column":4},"end":{"line":39,"column":4}},{"start":{"line":39,"column":4},"end":{"line":39,"column":4}}]},"2":{"line":50,"type":"if","locations":[{"start":{"line":50,"column":4},"end":{"line":50,"column":4}},{"start":{"line":50,"column":4},"end":{"line":50,"column":4}}]},"3":{"line":53,"type":"if","locations":[{"start":{"line":53,"column":4},"end":{"line":53,"column":4}},{"start":{"line":53,"column":4},"end":{"line":53,"column":4}}]},"4":{"line":59,"type":"if","locations":[{"start":{"line":59,"column":4},"end":{"line":59,"column":4}},{"start":{"line":59,"column":4},"end":{"line":59,"column":4}}]},"5":{"line":62,"type":"if","locations":[{"start":{"line":62,"column":4},"end":{"line":62,"column":4}},{"start":{"line":62,"column":4},"end":{"line":62,"column":4}}]},"6":{"line":62,"type":"binary-expr","locations":[{"start":{"line":62,"column":8},"end":{"line":62,"column":21}},{"start":{"line":62,"column":25},"end":{"line":62,"column":39}}]},"7":{"line":63,"type":"cond-expr","locations":[{"start":{"line":63,"column":28},"end":{"line":63,"column":32}},{"start":{"line":63,"column":35},"end":{"line":63,"column":53}}]},"8":{"line":67,"type":"if","locations":[{"start":{"line":67,"column":4},"end":{"line":67,"column":4}},{"start":{"line":67,"column":4},"end":{"line":67,"column":4}}]},"9":{"line":70,"type":"if","locations":[{"start":{"line":70,"column":4},"end":{"line":70,"column":4}},{"start":{"line":70,"column":4},"end":{"line":70,"column":4}}]},"10":{"line":70,"type":"binary-expr","locations":[{"start":{"line":70,"column":8},"end":{"line":70,"column":21}},{"start":{"line":70,"column":25},"end":{"line":70,"column":39}}]},"11":{"line":79,"type":"if","locations":[{"start":{"line":79,"column":10},"end":{"line":79,"column":10}},{"start":{"line":79,"column":10},"end":{"line":79,"column":10}}]},"12":{"line":79,"type":"binary-expr","locations":[{"start":{"line":79,"column":14},"end":{"line":79,"column":27}},{"start":{"line":79,"column":31},"end":{"line":79,"column":45}}]},"13":{"line":80,"type":"if","locations":[{"start":{"line":80,"column":10},"end":{"line":80,"column":10}},{"start":{"line":80,"column":10},"end":{"line":80,"column":10}}]},"14":{"line":121,"type":"if","locations":[{"start":{"line":121,"column":8},"end":{"line":121,"column":8}},{"start":{"line":121,"column":8},"end":{"line":121,"column":8}}]},"15":{"line":139,"type":"if","locations":[{"start":{"line":139,"column":6},"end":{"line":139,"column":6}},{"start":{"line":139,"column":6},"end":{"line":139,"column":6}}]},"16":{"line":144,"type":"if","locations":[{"start":{"line":144,"column":6},"end":{"line":144,"column":6}},{"start":{"line":144,"column":6},"end":{"line":144,"column":6}}]},"17":{"line":151,"type":"if","locations":[{"start":{"line":151,"column":6},"end":{"line":151,"column":6}},{"start":{"line":151,"column":6},"end":{"line":151,"column":6}}]},"18":{"line":168,"type":"if","locations":[{"start":{"line":168,"column":8},"end":{"line":168,"column":8}},{"start":{"line":168,"column":8},"end":{"line":168,"column":8}}]},"19":{"line":173,"type":"if","locations":[{"start":{"line":173,"column":8},"end":{"line":173,"column":8}},{"start":{"line":173,"column":8},"end":{"line":173,"column":8}}]},"20":{"line":175,"type":"if","locations":[{"start":{"line":175,"column":10},"end":{"line":175,"column":10}},{"start":{"line":175,"column":10},"end":{"line":175,"column":10}}]},"21":{"line":185,"type":"if","locations":[{"start":{"line":185,"column":12},"end":{"line":185,"column":12}},{"start":{"line":185,"column":12},"end":{"line":185,"column":12}}]},"22":{"line":188,"type":"cond-expr","locations":[{"start":{"line":188,"column":42},"end":{"line":188,"column":44}},{"start":{"line":188,"column":47},"end":{"line":188,"column":56}}]},"23":{"line":205,"type":"cond-expr","locations":[{"start":{"line":205,"column":57},"end":{"line":205,"column":59}},{"start":{"line":205,"column":62},"end":{"line":205,"column":66}}]},"24":{"line":205,"type":"binary-expr","locations":[{"start":{"line":205,"column":13},"end":{"line":205,"column":37}},{"start":{"line":205,"column":41},"end":{"line":205,"column":54}}]},"25":{"line":221,"type":"switch","locations":[{"start":{"line":222,"column":4},"end":{"line":223,"column":43}},{"start":{"line":224,"column":4},"end":{"line":225,"column":42}},{"start":{"line":226,"column":4},"end":{"line":227,"column":16}}]},"26":{"line":241,"type":"if","locations":[{"start":{"line":241,"column":2},"end":{"line":241,"column":2}},{"start":{"line":241,"column":2},"end":{"line":241,"column":2}}]},"27":{"line":241,"type":"binary-expr","locations":[{"start":{"line":241,"column":6},"end":{"line":241,"column":34}},{"start":{"line":241,"column":38},"end":{"line":241,"column":58}}]},"28":{"line":246,"type":"if","locations":[{"start":{"line":246,"column":2},"end":{"line":246,"column":2}},{"start":{"line":246,"column":2},"end":{"line":246,"column":2}}]},"29":{"line":246,"type":"binary-expr","locations":[{"start":{"line":246,"column":6},"end":{"line":246,"column":31}},{"start":{"line":246,"column":35},"end":{"line":246,"column":52}}]}}},"/Users/popomore/code/popomore/father/lib/spm-package.js":{"path":"/Users/popomore/code/popomore/father/lib/spm-package.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":41,"9":39,"10":39,"11":33,"12":38,"13":1,"14":1,"15":41,"16":41,"17":41,"18":41,"19":41,"20":24,"21":41,"22":1,"23":40,"24":31,"25":40,"26":1,"27":39,"28":39,"29":1,"30":1,"31":33,"32":33,"33":33,"34":33,"35":22,"36":11,"37":11,"38":33,"39":33,"40":1,"41":32,"42":1,"43":11,"44":13,"45":1,"46":1,"47":33,"48":16,"49":33},"b":{"1":[41,5],"2":[24,17],"3":[1,40],"4":[31,9],"5":[1,39],"6":[39,19],"7":[22,11],"8":[1,32]},"f":{"1":41,"2":33,"3":41,"4":33,"5":11,"6":13,"7":1,"8":33},"fnMap":{"1":{"name":"(anonymous_1)","line":12,"loc":{"start":{"line":12,"column":15},"end":{"line":12,"column":26}}},"2":{"name":"(anonymous_2)","line":17,"loc":{"start":{"line":17,"column":15},"end":{"line":17,"column":30}}},"3":{"name":"normalize","line":27,"loc":{"start":{"line":27,"column":0},"end":{"line":27,"column":24}}},"4":{"name":"resolveDeps","line":64,"loc":{"start":{"line":64,"column":0},"end":{"line":64,"column":38}}},"5":{"name":"getVersions","line":93,"loc":{"start":{"line":93,"column":0},"end":{"line":93,"column":27}}},"6":{"name":"(anonymous_6)","line":95,"loc":{"start":{"line":95,"column":12},"end":{"line":95,"column":27}}},"7":{"name":"(anonymous_7)","line":98,"loc":{"start":{"line":98,"column":10},"end":{"line":98,"column":25}}},"8":{"name":"getAncestor","line":103,"loc":{"start":{"line":103,"column":0},"end":{"line":103,"column":27}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":23}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":27}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":21}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":31}},"5":{"start":{"line":7,"column":0},"end":{"line":7,"column":35}},"6":{"start":{"line":8,"column":0},"end":{"line":8,"column":43}},"7":{"start":{"line":10,"column":0},"end":{"line":23,"column":3}},"8":{"start":{"line":13,"column":4},"end":{"line":13,"column":57}},"9":{"start":{"line":14,"column":4},"end":{"line":14,"column":66}},"10":{"start":{"line":16,"column":4},"end":{"line":19,"column":20}},"11":{"start":{"line":18,"column":8},"end":{"line":18,"column":62}},"12":{"start":{"line":20,"column":4},"end":{"line":20,"column":15}},"13":{"start":{"line":25,"column":0},"end":{"line":25,"column":28}},"14":{"start":{"line":27,"column":0},"end":{"line":60,"column":1}},"15":{"start":{"line":28,"column":2},"end":{"line":28,"column":31}},"16":{"start":{"line":29,"column":2},"end":{"line":29,"column":28}},"17":{"start":{"line":30,"column":2},"end":{"line":30,"column":21}},"18":{"start":{"line":31,"column":2},"end":{"line":31,"column":26}},"19":{"start":{"line":34,"column":2},"end":{"line":36,"column":3}},"20":{"start":{"line":35,"column":4},"end":{"line":35,"column":30}},"21":{"start":{"line":37,"column":2},"end":{"line":39,"column":3}},"22":{"start":{"line":38,"column":4},"end":{"line":38,"column":54}},"23":{"start":{"line":42,"column":2},"end":{"line":44,"column":3}},"24":{"start":{"line":43,"column":4},"end":{"line":43,"column":24}},"25":{"start":{"line":45,"column":2},"end":{"line":47,"column":3}},"26":{"start":{"line":46,"column":4},"end":{"line":46,"column":55}},"27":{"start":{"line":49,"column":2},"end":{"line":58,"column":4}},"28":{"start":{"line":59,"column":2},"end":{"line":59,"column":13}},"29":{"start":{"line":62,"column":0},"end":{"line":62,"column":22}},"30":{"start":{"line":64,"column":0},"end":{"line":87,"column":1}},"31":{"start":{"line":65,"column":2},"end":{"line":65,"column":49}},"32":{"start":{"line":66,"column":2},"end":{"line":66,"column":35}},"33":{"start":{"line":67,"column":2},"end":{"line":67,"column":54}},"34":{"start":{"line":69,"column":2},"end":{"line":74,"column":3}},"35":{"start":{"line":70,"column":4},"end":{"line":70,"column":34}},"36":{"start":{"line":72,"column":4},"end":{"line":72,"column":33}},"37":{"start":{"line":73,"column":4},"end":{"line":73,"column":34}},"38":{"start":{"line":76,"column":2},"end":{"line":76,"column":52}},"39":{"start":{"line":77,"column":2},"end":{"line":79,"column":3}},"40":{"start":{"line":78,"column":4},"end":{"line":78,"column":53}},"41":{"start":{"line":81,"column":2},"end":{"line":86,"column":4}},"42":{"start":{"line":93,"column":0},"end":{"line":101,"column":1}},"43":{"start":{"line":94,"column":2},"end":{"line":100,"column":7}},"44":{"start":{"line":96,"column":6},"end":{"line":96,"column":32}},"45":{"start":{"line":99,"column":6},"end":{"line":99,"column":29}},"46":{"start":{"line":103,"column":0},"end":{"line":108,"column":1}},"47":{"start":{"line":104,"column":2},"end":{"line":106,"column":3}},"48":{"start":{"line":105,"column":4},"end":{"line":105,"column":23}},"49":{"start":{"line":107,"column":2},"end":{"line":107,"column":14}}},"branchMap":{"1":{"line":31,"type":"binary-expr","locations":[{"start":{"line":31,"column":12},"end":{"line":31,"column":19}},{"start":{"line":31,"column":23},"end":{"line":31,"column":25}}]},"2":{"line":34,"type":"if","locations":[{"start":{"line":34,"column":2},"end":{"line":34,"column":2}},{"start":{"line":34,"column":2},"end":{"line":34,"column":2}}]},"3":{"line":37,"type":"if","locations":[{"start":{"line":37,"column":2},"end":{"line":37,"column":2}},{"start":{"line":37,"column":2},"end":{"line":37,"column":2}}]},"4":{"line":42,"type":"if","locations":[{"start":{"line":42,"column":2},"end":{"line":42,"column":2}},{"start":{"line":42,"column":2},"end":{"line":42,"column":2}}]},"5":{"line":45,"type":"if","locations":[{"start":{"line":45,"column":2},"end":{"line":45,"column":2}},{"start":{"line":45,"column":2},"end":{"line":45,"column":2}}]},"6":{"line":53,"type":"binary-expr","locations":[{"start":{"line":53,"column":18},"end":{"line":53,"column":38}},{"start":{"line":53,"column":42},"end":{"line":53,"column":44}}]},"7":{"line":69,"type":"if","locations":[{"start":{"line":69,"column":2},"end":{"line":69,"column":2}},{"start":{"line":69,"column":2},"end":{"line":69,"column":2}}]},"8":{"line":77,"type":"if","locations":[{"start":{"line":77,"column":2},"end":{"line":77,"column":2}},{"start":{"line":77,"column":2},"end":{"line":77,"column":2}}]}}},"/Users/popomore/code/popomore/father/lib/component-package.js":{"path":"/Users/popomore/code/popomore/father/lib/component-package.js","s":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":4,"7":4,"8":4,"9":4,"10":4,"11":1,"12":1,"13":4,"14":4,"15":4,"16":4,"17":4,"18":4,"19":1,"20":4,"21":4,"22":4,"23":4,"24":1,"25":4,"26":2,"27":4},"b":{"1":[4,0],"2":[4,4],"3":[4,1],"4":[4,3]},"f":{"1":4,"2":4,"3":4,"4":4,"5":4},"fnMap":{"1":{"name":"(anonymous_1)","line":10,"loc":{"start":{"line":10,"column":15},"end":{"line":10,"column":26}}},"2":{"name":"(anonymous_2)","line":15,"loc":{"start":{"line":15,"column":15},"end":{"line":15,"column":30}}},"3":{"name":"normalize","line":25,"loc":{"start":{"line":25,"column":0},"end":{"line":25,"column":24}}},"4":{"name":"resolveDeps","line":43,"loc":{"start":{"line":43,"column":0},"end":{"line":43,"column":33}}},"5":{"name":"getAncestor","line":56,"loc":{"start":{"line":56,"column":0},"end":{"line":56,"column":27}}}},"statementMap":{"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":27}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":21}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":35}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":49}},"5":{"start":{"line":8,"column":0},"end":{"line":21,"column":3}},"6":{"start":{"line":11,"column":4},"end":{"line":11,"column":59}},"7":{"start":{"line":12,"column":4},"end":{"line":12,"column":46}},"8":{"start":{"line":14,"column":4},"end":{"line":17,"column":20}},"9":{"start":{"line":16,"column":8},"end":{"line":16,"column":57}},"10":{"start":{"line":18,"column":4},"end":{"line":18,"column":15}},"11":{"start":{"line":23,"column":0},"end":{"line":23,"column":34}},"12":{"start":{"line":25,"column":0},"end":{"line":41,"column":1}},"13":{"start":{"line":26,"column":2},"end":{"line":26,"column":31}},"14":{"start":{"line":27,"column":2},"end":{"line":27,"column":21}},"15":{"start":{"line":28,"column":2},"end":{"line":28,"column":34}},"16":{"start":{"line":29,"column":2},"end":{"line":29,"column":32}},"17":{"start":{"line":30,"column":2},"end":{"line":39,"column":4}},"18":{"start":{"line":40,"column":2},"end":{"line":40,"column":13}},"19":{"start":{"line":43,"column":0},"end":{"line":54,"column":1}},"20":{"start":{"line":44,"column":2},"end":{"line":44,"column":35}},"21":{"start":{"line":45,"column":2},"end":{"line":45,"column":71}},"22":{"start":{"line":46,"column":2},"end":{"line":46,"column":50}},"23":{"start":{"line":48,"column":2},"end":{"line":53,"column":4}},"24":{"start":{"line":56,"column":0},"end":{"line":61,"column":1}},"25":{"start":{"line":57,"column":2},"end":{"line":59,"column":3}},"26":{"start":{"line":58,"column":4},"end":{"line":58,"column":23}},"27":{"start":{"line":60,"column":2},"end":{"line":60,"column":14}}},"branchMap":{"1":{"line":28,"type":"binary-expr","locations":[{"start":{"line":28,"column":16},"end":{"line":28,"column":27}},{"start":{"line":28,"column":31},"end":{"line":28,"column":33}}]},"2":{"line":29,"type":"binary-expr","locations":[{"start":{"line":29,"column":15},"end":{"line":29,"column":25}},{"start":{"line":29,"column":29},"end":{"line":29,"column":31}}]},"3":{"line":34,"type":"binary-expr","locations":[{"start":{"line":34,"column":18},"end":{"line":34,"column":34}},{"start":{"line":34,"column":38},"end":{"line":34,"column":40}}]},"4":{"line":35,"type":"binary-expr","locations":[{"start":{"line":35,"column":10},"end":{"line":35,"column":18}},{"start":{"line":35,"column":22},"end":{"line":35,"column":32}}]}}}}

@@ -5,2 +5,16 @@ # History

## 0.6.0
- option change: output -> entry
- update readme
- improve code structure
- testcase coverage
## 0.5.6
- export getPackages
- no dependency will throw
- ignore extraDeps
- unmatched version will throw
## 0.5.5

@@ -7,0 +21,0 @@

@@ -15,3 +15,21 @@ 'use strict';

var defaults = {
// config an extension as key, when that extension is found,
// value will be added to deps
extraDeps: {},
// another entry point for parse
entry: []
};
var properties = [
'name',
'version',
'main',
'origin',
'dependencies',
'files',
'output'
];
var Package = Class.create({

@@ -22,33 +40,84 @@

initialize: function(dir, options) {
this.options = options || {};
if (!dir) throw new Error('miss the first argument');
options = extend({}, defaults, options);
this.father = options.father;
this.options = options;
this.dest = dir;
this._packages = {};
this._dependencies = [];
this._exportProperty(properties);
},
if (this.options.father) {
this.father = this.options.father;
} else {
this.packages = {};
set: function(pkg) {
if (this.father) {
return this.father.set(pkg);
}
if (!this._packages[pkg.id]) {
this._packages[pkg.id] = pkg;
}
},
// config an extension as key, when that extension is found, value will be added to deps
this.options.extraDeps = this.options.extraDeps || {};
this.options.output = this.options.output || [];
this.dest = dir;
this._dependencies = [];
get: function(id) {
if (this.father) {
return this.father.get(id);
}
if (!this._parsed && !this._parsing) this._parse();
return id === this.id ? this : this._packages[id];
},
var keys = ['name', 'version', 'main', 'origin', 'dependencies', 'files', 'output'];
this._exportProperty(keys);
getPackages: function() {
if (this.father) {
return this.father.getPackages();
}
if (!this._parsed && !this._parsing) this._parse();
return this._packages;
},
_exportProperty: function(keys) {
var that = this;
keys.forEach(function(key) {
var prop = {
get: function() {
if (!that._parsed && !that._parsing) that._parse();
if (key === 'dependencies') {
var deps = {};
that._dependencies.forEach(function(id) {
var pkg = that.get(id);
deps[pkg.name] = pkg;
});
return deps;
} else {
return that._pkg[key];
}
},
configurable: true
};
Object.defineProperty(that, key, prop);
});
},
_parse: function() {
debug('start parse %s', this.dest);
this._running = true;
// start
debug('*start parse %s', this.dest);
this._parsing = true;
this._pkg = this.readPackage();
this.id = this._pkg.id;
var Self = this.constructor;
var pkg = this._pkg = this.readPackage();
// parsing
this._parsePkgDeps();
this._parseFiles();
debug('pkg(%s) id %s', pkg.id, pkg.id);
this.id = pkg.id;
// end
this._parsed = true;
this._parsing = false;
debug('* end parse %s', this.dest);
return this;
},
Object.keys(pkg.dependencies)
_parsePkgDeps: function() {
var Self = this.constructor, deps = this._pkg.dependencies;
Object.keys(deps)
.forEach(function(name) {
var sub = pkg.dependencies[name];
var sub = deps[name];
if (!this.get(sub.id)) {

@@ -60,36 +129,14 @@ var opt = extend({}, this.options, {father: this});

}.bind(this));
debug('pkg(%s) dependencies [%s]', this.id, Object.keys(pkg.dependencies));
this._parseFiles();
debug('end parse %s', this.dest);
this._parsed = true;
this._running = false;
return this;
debug('_parsePkgDeps of pkg(%s) [%s]', this.id, Object.keys(deps));
},
_parseFiles: function() {
var that = this, dest = this.dest;
var dest = this.dest, options = this.options;
var pkg = this._pkg, files = pkg.files = {};
var extraDeps = this.options.extraDeps;
var extraDepsVal = Object.keys(extraDeps)
.map(function(key) {
return extraDeps[key];
});
var extraVal = getExtraVal(options.extraDeps);
// base on pkg.main
lookupFiles(pkg.main);
getEntry(pkg, options).forEach(lookupFiles);
// base on pkg.output
var output = this.options.output;
if (Array.isArray(pkg.output)) {
output = output.concat(pkg.output)
.filter(function(item, index, arr) {
return index === arr.indexOf(item);
});
}
output.forEach(lookupFiles);
function lookupFiles(src) {
var ext = extname(src).substring(1);
function lookupFiles(src, entry) {
var deps = [], ext = extname(src).substring(1);
if (!ext) {

@@ -104,43 +151,46 @@ src = src + '.js';

// extension in extraDeps will be added to deps
// E.g. a.handlebars should require `handlebars`
var extraDeps = options.extraDeps;
if (extraDeps[ext]) deps.push(extraDeps[ext]);
// file dependencies
try {
var data = fs.readFileSync(join(dest, src)).toString();
deps = deps.concat(getFileDeps(data, ext, options));
} catch(e) {
that.trigger('notfound', src);
return [];
throw new Error(src + ' not found');
}
// file dependencies
var deps = getFileDeps(data, ext, extraDeps);
debug('file %s, deps %s', src, deps);
// conbime with the dependencies of the dependent file
deps = deps.reduce(function(previous, current) {
previous.push(current);
var fileDeps = deps;
deps = [];
fileDeps.forEach(function(name) {
deps.push(name);
// ignore extraDeps, E.g. hanldebars
if (~extraDepsVal.indexOf(current)) {
return previous;
if (~extraVal.indexOf(name)) {
return deps.push(name);
}
// dependent packages
if (current.charAt(0) !== '.') {
var dpkg = pkg.dependencies[current];
if (!dpkg) {
throw new Error(current + ' not found but required');
if (name.charAt(0) !== '.') {
var pkg_ = pkg.dependencies[name];
if (!pkg_) {
throw new Error(name + ' not found but required');
}
return previous;
return deps.push(name);
}
// relative files
current = join(dirname(src), current);
var deps_ = lookupFiles(current)
name = join(dirname(src), name);
var deps_ = lookupFiles(name, src)
.map(function(it) {
if (it.charAt(0) !== '.') return it;
it = join(dirname(current), it);
it = join(dirname(name), it);
it = relative(dirname(src), it);
return it.charAt(0) === '.' ? it : './' + it;
});
previous = previous.concat(deps_);
return previous;
}, []);
deps = deps.concat(deps_);
});

@@ -156,59 +206,9 @@ // unique

debug('pkg(%s) file %s, deps %s', pkg.id, src, deps);
debug('_parseFiles of pkg(%s): file %s, deps [%s]', pkg.id, src, deps);
return ext === 'css' ? [] : deps;
// css which is required by js don't return deps
return extname(entry) === '.js' && ext === 'css' ? [] : deps;
}
},
set: function(pkg) {
if (this.father) {
return this.father.set(pkg);
}
if (!this.packages[pkg.id]) {
this.packages[pkg.id] = pkg;
}
},
get: function(id) {
if (this.father) {
return this.father.get(id);
}
if (!this._parsed && !this._running) this._parse();
return id === this.id ? this : this.packages[id];
},
getPackages: function() {
if (this.father) {
return this.father.getPackages();
}
if (!this._parsed && !this._running) this._parse();
return this.packages;
},
_exportProperty: function(keys) {
var that = this;
keys.forEach(function(key) {
Object.defineProperty(that, key, {
get: function() {
if (!that._parsed && !that._running) that._parse();
if (key === 'dependencies') {
var deps = {};
that._dependencies.forEach(function(id) {
var pkg = that.get(id);
deps[pkg.name] = pkg;
});
return deps;
} else {
var pkg = that.get(that.id);
return pkg ? pkg._pkg[key] : '';
}
},
configurable: true
});
});
},
/*

@@ -225,3 +225,3 @@ Method below can be overridden

function getFileDeps(code, ext, extraDeps) {
function getFileDeps(code, ext) {
switch(ext) {

@@ -233,5 +233,3 @@ case 'js':

default:
// extension in extraDeps will be added to deps
// E.g. a.handlebars should require `handlebars`
return extraDeps[ext] ? [extraDeps[ext]] : [];
return [];
}

@@ -244,2 +242,29 @@

// entry point of package
function getEntry(pkg, options) {
// base on pkg.main
var entry = [pkg.main];
// base on options.entry
if (Array.isArray(options.entry) && options.entry.length) {
entry = entry.concat(options.entry);
}
// base on pkg.output
if (Array.isArray(pkg.output) && pkg.output.length) {
entry = entry.concat(pkg.output);
}
return entry
.filter(function(item, index, arr) {
return index === arr.indexOf(item);
});
}
function getExtraVal(extraDeps) {
return Object.keys(extraDeps)
.map(function(key) {
return extraDeps[key];
});
}
function extend(target) {

@@ -246,0 +271,0 @@ var args = [].slice.call(arguments, 1);

@@ -14,3 +14,3 @@ 'use strict';

var pkg = normalize(join(this.dest, 'package.json'));
debug('pkg info %s', JSON.stringify(pkg));
debug('readPackage(%s) info %s', pkg.id, JSON.stringify(pkg));

@@ -17,0 +17,0 @@ Object.keys(pkg.dependencies)

{
"name": "father",
"version": "0.5.6",
"version": "0.6.0",
"description": "A package parser that can resolve self and dependencies, supporting spm, component.",

@@ -5,0 +5,0 @@ "main": "index",

# father [![Build Status](https://travis-ci.org/popomore/father.png?branch=master)](https://travis-ci.org/popomore/father) [![Coverage Status](https://coveralls.io/repos/popomore/father/badge.png?branch=master)](https://coveralls.io/r/popomore/father?branch=master)
A package parser that can resolve self and dependencies, supporting spm/component.
A package parser that can resolve self and dependencies, supporting [spm](https://github.com/spmjs/spm) / [component](https://github.com/component/component).

@@ -16,3 +16,4 @@ ---

```
var Package = require('father').ComponentPackage;
// using SpmPackage
var Package = require('father').SpmPackage;
var pkg = new Package('path/to/package')

@@ -24,4 +25,144 @@ console.log(pkg.name);

console.log(pkg.get('each')); // return a package named each
// using ComponentPackage
var Package = require('father').ComponentPackage;
```
## Properties
The properties of Package instance
### pkg.id
Unique id for each package
`= {pkg.name}@{pkg.version}`
### pkg.name `require`
Package's name
### pkg.version `require`
Package's version
### pkg.main
Entry point of the package, default is `index.js`
### pkg.dependencies
Package's dependencies, each one will return a Package instance
### pkg.files
All used files will exist in pkg.files, it will be parsed from pkg.main. Each file contains dependent files (no deep dependencies).
Example below
```
{
files: {
'index.js': {
dependencies: ['each', './feature']
}
}
}
```
### pkg.dest
The base directory of the package
### pkg.origin
The origin package info
### pkg.output
Export files when build
## Mothod
### pkg.get(pkg.id)
Get a package of id
### pkg.set(pkg)
Set a package
### pkg.getPackages()
Get all dependent packages
## Options
The options when instantiation
```
new Package('path/to/package', options);
```
### extraDeps
Config an extension as key, when that extension is found, value will be added to deps
```
new Package('path/to/package', {
extraDeps: {
'handlebars': 'handlebars'
}
});
```
If one file `require('./xx.handlebars')`, handlebars will be added to the dependencies `['./xx.handlebars', 'handlebars']`
### entry
Generally, files will be parsed from pkg.main, no dependent file will not be included. `entry` will be another entry point.
Files
```
// a.js <- pkg.main
console.log('no require');
// b.js
require('./c');
// c.js
console.log('no require');
```
Code
```
new Package('path/to/package', {
entry: ['b.js']
});
```
Return
```
// without entry
{
...
files: {
'a.js': []
}
}
// with entry
{
...
files: {
'a.js': [],
'b.js': ['./c'],
'c.js': []
}
}
```
## Custom

@@ -35,5 +176,5 @@

readPackage: function() {
// read config file, E.g. component.json
// return a package contains id, name, version, dependencies, main, dest, files, origin
// dependencies should contain id, dest
// 1. read config file, E.g. component.json
// 2. return a package contains id, name, version, dependencies, main, dest, files, origin
// 3. dependencies should contain id, name, version, dest
};

@@ -48,3 +189,3 @@ })

id: 'a',
name: 'a'
name: 'a'
version: '1.0.0',

@@ -55,3 +196,5 @@ main: 'index.js',

b: {
id: 'b',
id: 'b@1.1.0',
name: 'b',
version: '1.1.0',
dest: '/home/user/a/components/b'

@@ -63,29 +206,4 @@ }

## Properties
- pkg.id
- pkg.name
- pkg.version
- pkg.main
- pkg.origin
- pkg.files
- pkg.dest
- pkg.get(depPackage.id)
### Files
pkg.files contains export files and it's dependencies in your module.
Example below
```
{
files: {
'index.js': ['each', './feature']
}
}
```
## LISENCE
Copyright (c) 2014 popomore. Licensed under the MIT license.

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc