@biorate/config 1.91.4 → 1.93.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.nyc_output/0b821d7f-4869-42b7-8804-bb70bf0dac33.json +1 -0
- package/.nyc_output/processinfo/{1a5f4e85-d6c2-4fa2-8150-36ad5d0930c0.json → 0b821d7f-4869-42b7-8804-bb70bf0dac33.json} +1 -1
- package/.nyc_output/processinfo/2d3d0803-3602-40c9-b1a6-d48868685bb4.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -1
- package/CHANGELOG.md +12 -0
- package/coverage/lcov-report/config.ts.html +24 -24
- package/coverage/lcov-report/errors.ts.html +1 -1
- package/coverage/lcov-report/index.html +5 -5
- package/coverage/lcov-report/index.ts.html +1 -1
- package/coverage/lcov-report/reg-exp-ext.ts.html +1 -1
- package/coverage/lcov-report/template.ts.html +98 -32
- package/coverage/lcov.info +134 -136
- package/dist/src/config.js +9 -9
- package/dist/src/config.js.map +1 -1
- package/dist/src/template.js +10 -9
- package/dist/src/template.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/interfaces.ts +1 -0
- package/package.json +2 -2
- package/.nyc_output/1a5f4e85-d6c2-4fa2-8150-36ad5d0930c0.json +0 -1
- package/.nyc_output/processinfo/1d89b2ec-73ec-4a1b-958c-954b871ea87f.json +0 -1
- /package/.nyc_output/{1d89b2ec-73ec-4a1b-958c-954b871ea87f.json → 2d3d0803-3602-40c9-b1a6-d48868685bb4.json} +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"/www/biorate/core/packages/@biorate/config/src/index.ts":{"path":"/www/biorate/core/packages/@biorate/config/src/index.ts","statementMap":{"0":{"start":{"line":2,"column":22},"end":{"line":12,"column":3}},"1":{"start":{"line":3,"column":4},"end":{"line":3,"column":33}},"2":{"start":{"line":3,"column":26},"end":{"line":3,"column":33}},"3":{"start":{"line":4,"column":15},"end":{"line":4,"column":52}},"4":{"start":{"line":5,"column":4},"end":{"line":7,"column":5}},"5":{"start":{"line":6,"column":6},"end":{"line":6,"column":68}},"6":{"start":{"line":6,"column":51},"end":{"line":6,"column":63}},"7":{"start":{"line":8,"column":4},"end":{"line":8,"column":39}},"8":{"start":{"line":10,"column":4},"end":{"line":10,"column":33}},"9":{"start":{"line":10,"column":26},"end":{"line":10,"column":33}},"10":{"start":{"line":11,"column":4},"end":{"line":11,"column":17}},"11":{"start":{"line":13,"column":19},"end":{"line":15,"column":1}},"12":{"start":{"line":14,"column":4},"end":{"line":14,"column":126}},"13":{"start":{"line":14,"column":21},"end":{"line":14,"column":126}},"14":{"start":{"line":14,"column":95},"end":{"line":14,"column":126}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":62}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":43}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":43}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":48}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":2,"column":74},"end":{"line":2,"column":75}},"loc":{"start":{"line":2,"column":96},"end":{"line":9,"column":1}},"line":2},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":38},"end":{"line":6,"column":39}},"loc":{"start":{"line":6,"column":49},"end":{"line":6,"column":65}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":9,"column":6},"end":{"line":9,"column":7}},"loc":{"start":{"line":9,"column":28},"end":{"line":12,"column":1}},"line":9},"3":{"name":"(anonymous_3)","decl":{"start":{"line":13,"column":50},"end":{"line":13,"column":51}},"loc":{"start":{"line":13,"column":71},"end":{"line":15,"column":1}},"line":13}},"branchMap":{"0":{"loc":{"start":{"line":2,"column":22},"end":{"line":12,"column":3}},"type":"binary-expr","locations":[{"start":{"line":2,"column":23},"end":{"line":2,"column":27}},{"start":{"line":2,"column":31},"end":{"line":2,"column":51}},{"start":{"line":2,"column":57},"end":{"line":12,"column":2}}],"line":2},"1":{"loc":{"start":{"line":2,"column":57},"end":{"line":12,"column":2}},"type":"cond-expr","locations":[{"start":{"line":2,"column":74},"end":{"line":9,"column":1}},{"start":{"line":9,"column":6},"end":{"line":12,"column":1}}],"line":2},"2":{"loc":{"start":{"line":3,"column":4},"end":{"line":3,"column":33}},"type":"if","locations":[{"start":{"line":3,"column":4},"end":{"line":3,"column":33}},{"start":{"line":3,"column":4},"end":{"line":3,"column":33}}],"line":3},"3":{"loc":{"start":{"line":5,"column":4},"end":{"line":7,"column":5}},"type":"if","locations":[{"start":{"line":5,"column":4},"end":{"line":7,"column":5}},{"start":{"line":5,"column":4},"end":{"line":7,"column":5}}],"line":5},"4":{"loc":{"start":{"line":5,"column":8},"end":{"line":5,"column":85}},"type":"binary-expr","locations":[{"start":{"line":5,"column":8},"end":{"line":5,"column":13}},{"start":{"line":5,"column":18},"end":{"line":5,"column":84}}],"line":5},"5":{"loc":{"start":{"line":5,"column":18},"end":{"line":5,"column":84}},"type":"cond-expr","locations":[{"start":{"line":5,"column":34},"end":{"line":5,"column":47}},{"start":{"line":5,"column":50},"end":{"line":5,"column":84}}],"line":5},"6":{"loc":{"start":{"line":5,"column":50},"end":{"line":5,"column":84}},"type":"binary-expr","locations":[{"start":{"line":5,"column":50},"end":{"line":5,"column":63}},{"start":{"line":5,"column":67},"end":{"line":5,"column":84}}],"line":5},"7":{"loc":{"start":{"line":10,"column":4},"end":{"line":10,"column":33}},"type":"if","locations":[{"start":{"line":10,"column":4},"end":{"line":10,"column":33}},{"start":{"line":10,"column":4},"end":{"line":10,"column":33}}],"line":10},"8":{"loc":{"start":{"line":13,"column":19},"end":{"line":15,"column":1}},"type":"binary-expr","locations":[{"start":{"line":13,"column":20},"end":{"line":13,"column":24}},{"start":{"line":13,"column":28},"end":{"line":13,"column":45}},{"start":{"line":13,"column":50},"end":{"line":15,"column":1}}],"line":13},"9":{"loc":{"start":{"line":14,"column":21},"end":{"line":14,"column":126}},"type":"if","locations":[{"start":{"line":14,"column":21},"end":{"line":14,"column":126}},{"start":{"line":14,"column":21},"end":{"line":14,"column":126}}],"line":14},"10":{"loc":{"start":{"line":14,"column":25},"end":{"line":14,"column":93}},"type":"binary-expr","locations":[{"start":{"line":14,"column":25},"end":{"line":14,"column":40}},{"start":{"line":14,"column":44},"end":{"line":14,"column":93}}],"line":14}},"s":{"0":1,"1":2,"2":2,"3":2,"4":2,"5":2,"6":1,"7":2,"8":0,"9":0,"10":0,"11":1,"12":3,"13":2,"14":2,"15":1,"16":1,"17":1,"18":1},"f":{"0":2,"1":1,"2":0,"3":3},"b":{"0":[1,1,1],"1":[1,0],"2":[2,0],"3":[2,0],"4":[2,2],"5":[0,2],"6":[2,0],"7":[0,0],"8":[1,1,1],"9":[2,0],"10":[2,2]},"inputSourceMap":{"version":3,"file":"/www/biorate/core/packages/@biorate/config/src/index.ts","sources":["/www/biorate/core/packages/@biorate/config/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,2CAAyB;AACzB,gDAA8B","sourcesContent":["export * from './config';\nexport * from './errors';\nexport * from '../interfaces';\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"baec144c0b1c5275a2b10d0bca1f993d069dcab4","contentHash":"f397226aef3381560905a0f1aa08b2355fb3e6d33aeb2489af644d7b5ae78109"},"/www/biorate/core/packages/@biorate/config/src/config.ts":{"path":"/www/biorate/core/packages/@biorate/config/src/config.ts","statementMap":{"0":{"start":{"line":2,"column":17},"end":{"line":7,"column":1}},"1":{"start":{"line":3,"column":12},"end":{"line":3,"column":28}},"2":{"start":{"line":3,"column":34},"end":{"line":3,"column":125}},"3":{"start":{"line":4,"column":4},"end":{"line":5,"column":150}},"4":{"start":{"line":4,"column":79},"end":{"line":4,"column":131}},"5":{"start":{"line":5,"column":9},"end":{"line":5,"column":150}},"6":{"start":{"line":5,"column":22},"end":{"line":5,"column":43}},"7":{"start":{"line":5,"column":58},"end":{"line":5,"column":150}},"8":{"start":{"line":5,"column":81},"end":{"line":5,"column":150}},"9":{"start":{"line":6,"column":4},"end":{"line":6,"column":66}},"10":{"start":{"line":8,"column":0},"end":{"line":8,"column":62}},"11":{"start":{"line":9,"column":0},"end":{"line":9,"column":24}},"12":{"start":{"line":10,"column":20},"end":{"line":10,"column":49}},"13":{"start":{"line":11,"column":17},"end":{"line":11,"column":34}},"14":{"start":{"line":12,"column":17},"end":{"line":12,"column":36}},"15":{"start":{"line":13,"column":19},"end":{"line":13,"column":40}},"16":{"start":{"line":14,"column":17},"end":{"line":14,"column":36}},"17":{"start":{"line":15,"column":13},"end":{"line":60,"column":1}},"18":{"start":{"line":17,"column":8},"end":{"line":17,"column":23}},"19":{"start":{"line":20,"column":23},"end":{"line":20,"column":32}},"20":{"start":{"line":21,"column":8},"end":{"line":21,"column":66}},"21":{"start":{"line":22,"column":8},"end":{"line":22,"column":64}},"22":{"start":{"line":23,"column":8},"end":{"line":23,"column":66}},"23":{"start":{"line":24,"column":8},"end":{"line":24,"column":68}},"24":{"start":{"line":25,"column":8},"end":{"line":25,"column":65}},"25":{"start":{"line":26,"column":8},"end":{"line":26,"column":28}},"26":{"start":{"line":29,"column":25},"end":{"line":29,"column":49}},"27":{"start":{"line":30,"column":8},"end":{"line":33,"column":11}},"28":{"start":{"line":31,"column":12},"end":{"line":32,"column":45}},"29":{"start":{"line":32,"column":16},"end":{"line":32,"column":45}},"30":{"start":{"line":36,"column":8},"end":{"line":40,"column":9}},"31":{"start":{"line":37,"column":12},"end":{"line":38,"column":66}},"32":{"start":{"line":38,"column":16},"end":{"line":38,"column":66}},"33":{"start":{"line":39,"column":12},"end":{"line":39,"column":23}},"34":{"start":{"line":41,"column":23},"end":{"line":41,"column":57}},"35":{"start":{"line":42,"column":8},"end":{"line":49,"column":9}},"36":{"start":{"line":44,"column":16},"end":{"line":44,"column":50}},"37":{"start":{"line":46,"column":16},"end":{"line":46,"column":70}},"38":{"start":{"line":48,"column":16},"end":{"line":48,"column":30}},"39":{"start":{"line":52,"column":8},"end":{"line":52,"column":50}},"40":{"start":{"line":55,"column":8},"end":{"line":55,"column":50}},"41":{"start":{"line":58,"column":8},"end":{"line":58,"column":45}},"42":{"start":{"line":61,"column":0},"end":{"line":67,"column":2}},"43":{"start":{"line":68,"column":0},"end":{"line":70,"column":11}},"44":{"start":{"line":71,"column":0},"end":{"line":71,"column":24}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":2,"column":46},"end":{"line":2,"column":47}},"loc":{"start":{"line":2,"column":87},"end":{"line":7,"column":1}},"line":2},"1":{"name":"(anonymous_1)","decl":{"start":{"line":16,"column":4},"end":{"line":16,"column":5}},"loc":{"start":{"line":16,"column":18},"end":{"line":18,"column":5}},"line":16},"2":{"name":"(anonymous_2)","decl":{"start":{"line":19,"column":4},"end":{"line":19,"column":5}},"loc":{"start":{"line":19,"column":25},"end":{"line":27,"column":5}},"line":19},"3":{"name":"(anonymous_3)","decl":{"start":{"line":28,"column":4},"end":{"line":28,"column":5}},"loc":{"start":{"line":28,"column":28},"end":{"line":34,"column":5}},"line":28},"4":{"name":"(anonymous_4)","decl":{"start":{"line":30,"column":40},"end":{"line":30,"column":41}},"loc":{"start":{"line":30,"column":57},"end":{"line":33,"column":9}},"line":30},"5":{"name":"(anonymous_5)","decl":{"start":{"line":35,"column":4},"end":{"line":35,"column":5}},"loc":{"start":{"line":35,"column":19},"end":{"line":50,"column":5}},"line":35},"6":{"name":"(anonymous_6)","decl":{"start":{"line":51,"column":4},"end":{"line":51,"column":5}},"loc":{"start":{"line":51,"column":14},"end":{"line":53,"column":5}},"line":51},"7":{"name":"(anonymous_7)","decl":{"start":{"line":54,"column":4},"end":{"line":54,"column":5}},"loc":{"start":{"line":54,"column":21},"end":{"line":56,"column":5}},"line":54},"8":{"name":"(anonymous_8)","decl":{"start":{"line":57,"column":4},"end":{"line":57,"column":5}},"loc":{"start":{"line":57,"column":16},"end":{"line":59,"column":5}},"line":57}},"branchMap":{"0":{"loc":{"start":{"line":2,"column":17},"end":{"line":7,"column":1}},"type":"binary-expr","locations":[{"start":{"line":2,"column":18},"end":{"line":2,"column":22}},{"start":{"line":2,"column":26},"end":{"line":2,"column":41}},{"start":{"line":2,"column":46},"end":{"line":7,"column":1}}],"line":2},"1":{"loc":{"start":{"line":3,"column":34},"end":{"line":3,"column":125}},"type":"cond-expr","locations":[{"start":{"line":3,"column":42},"end":{"line":3,"column":48}},{"start":{"line":3,"column":51},"end":{"line":3,"column":125}}],"line":3},"2":{"loc":{"start":{"line":3,"column":51},"end":{"line":3,"column":125}},"type":"cond-expr","locations":[{"start":{"line":3,"column":67},"end":{"line":3,"column":118}},{"start":{"line":3,"column":121},"end":{"line":3,"column":125}}],"line":3},"3":{"loc":{"start":{"line":4,"column":4},"end":{"line":5,"column":150}},"type":"if","locations":[{"start":{"line":4,"column":4},"end":{"line":5,"column":150}},{"start":{"line":4,"column":4},"end":{"line":5,"column":150}}],"line":4},"4":{"loc":{"start":{"line":4,"column":8},"end":{"line":4,"column":77}},"type":"binary-expr","locations":[{"start":{"line":4,"column":8},"end":{"line":4,"column":35}},{"start":{"line":4,"column":39},"end":{"line":4,"column":77}}],"line":4},"5":{"loc":{"start":{"line":5,"column":58},"end":{"line":5,"column":150}},"type":"if","locations":[{"start":{"line":5,"column":58},"end":{"line":5,"column":150}},{"start":{"line":5,"column":58},"end":{"line":5,"column":150}}],"line":5},"6":{"loc":{"start":{"line":5,"column":85},"end":{"line":5,"column":149}},"type":"binary-expr","locations":[{"start":{"line":5,"column":86},"end":{"line":5,"column":143}},{"start":{"line":5,"column":148},"end":{"line":5,"column":149}}],"line":5},"7":{"loc":{"start":{"line":5,"column":86},"end":{"line":5,"column":143}},"type":"cond-expr","locations":[{"start":{"line":5,"column":94},"end":{"line":5,"column":98}},{"start":{"line":5,"column":101},"end":{"line":5,"column":143}}],"line":5},"8":{"loc":{"start":{"line":5,"column":101},"end":{"line":5,"column":143}},"type":"cond-expr","locations":[{"start":{"line":5,"column":109},"end":{"line":5,"column":126}},{"start":{"line":5,"column":129},"end":{"line":5,"column":143}}],"line":5},"9":{"loc":{"start":{"line":6,"column":11},"end":{"line":6,"column":62}},"type":"binary-expr","locations":[{"start":{"line":6,"column":11},"end":{"line":6,"column":16}},{"start":{"line":6,"column":20},"end":{"line":6,"column":21}},{"start":{"line":6,"column":25},"end":{"line":6,"column":62}}],"line":6},"10":{"loc":{"start":{"line":31,"column":12},"end":{"line":32,"column":45}},"type":"if","locations":[{"start":{"line":31,"column":12},"end":{"line":32,"column":45}},{"start":{"line":31,"column":12},"end":{"line":32,"column":45}}],"line":31},"11":{"loc":{"start":{"line":36,"column":8},"end":{"line":40,"column":9}},"type":"if","locations":[{"start":{"line":36,"column":8},"end":{"line":40,"column":9}},{"start":{"line":36,"column":8},"end":{"line":40,"column":9}}],"line":36},"12":{"loc":{"start":{"line":37,"column":12},"end":{"line":38,"column":66}},"type":"if","locations":[{"start":{"line":37,"column":12},"end":{"line":38,"column":66}},{"start":{"line":37,"column":12},"end":{"line":38,"column":66}}],"line":37},"13":{"loc":{"start":{"line":42,"column":8},"end":{"line":49,"column":9}},"type":"switch","locations":[{"start":{"line":43,"column":12},"end":{"line":44,"column":50}},{"start":{"line":45,"column":12},"end":{"line":46,"column":70}},{"start":{"line":47,"column":12},"end":{"line":48,"column":30}}],"line":42},"14":{"loc":{"start":{"line":46,"column":23},"end":{"line":46,"column":69}},"type":"cond-expr","locations":[{"start":{"line":46,"column":32},"end":{"line":46,"column":60}},{"start":{"line":46,"column":63},"end":{"line":46,"column":69}}],"line":46}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":0,"6":0,"7":0,"8":0,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":22,"20":22,"21":22,"22":22,"23":22,"24":22,"25":22,"26":2,"27":2,"28":6,"29":4,"30":27,"31":3,"32":1,"33":2,"34":24,"35":24,"36":18,"37":2,"38":4,"39":33,"40":1,"41":15,"42":1,"43":1,"44":1},"f":{"0":1,"1":1,"2":22,"3":2,"4":6,"5":27,"6":33,"7":1,"8":15},"b":{"0":[1,1,1],"1":[1,0],"2":[0,0],"3":[1,0],"4":[1,1],"5":[0,0],"6":[0,0],"7":[0,0],"8":[0,0],"9":[1,0,0],"10":[4,2],"11":[3,24],"12":[1,2],"13":[18,2,4],"14":[2,0]},"inputSourceMap":{"version":3,"file":"/www/biorate/core/packages/@biorate/config/src/config.ts","sources":["/www/biorate/core/packages/@biorate/config/src/config.ts"],"names":[],"mappings":";;;;;;;;;AAAA,kDAAgD;AAChD,mCAA4D;AAC5D,qCAAqC;AACrC,yCAAsC;AACtC,qCAAoD;AAIpD,IAAa,MAAM,GAAnB,MAAa,MAAM;IAAnB;QAeY,SAAI,GAAG,EAAE,CAAC;IA6HtB,CAAC;IAxHW,QAAQ,CAAc,KAAa,EAAE,GAAO;QACpD,MAAM,MAAM,GAAY,EAAE,KAAK,EAAE,CAAC;QAClC,mBAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/C,mBAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7C,mBAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/C,mBAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QACjD,mBAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IAKS,UAAU,CAAc,MAAe,EAAE,GAAO;QACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,KAAK;YAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC;IAuBM,GAAG,CAAc,IAAkB,EAAE,GAAO;QACjD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACnB,IAAI,GAAG,KAAK,SAAS;gBAAE,MAAM,IAAI,iCAAwB,CAAC,IAAI,CAAC,CAAC;YAChE,OAAO,GAAG,CAAC;SACZ;QACD,MAAM,MAAM,GAAQ,IAAA,YAAG,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,QAAQ,OAAO,MAAM,EAAE;YACrB,KAAK,QAAQ;gBACX,OAAoB,IAAI,CAAC,QAAQ,CAAI,MAAM,EAAE,GAAG,CAAE,CAAC;YACrD,KAAK,QAAQ;gBACX,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAI,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC3D;gBACE,OAAO,MAAM,CAAC;SACjB;IACH,CAAC;IAgBM,GAAG,CAAC,IAAkB;QAC3B,OAAO,IAAA,YAAG,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IAiBM,GAAG,CAAC,IAAkB,EAAE,KAAc;QAC3C,IAAA,YAAG,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IAyBM,KAAK,CAAC,IAAa;QACxB,IAAA,cAAK,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;;AAvIsB,eAAQ,GAAG;IAChC,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,IAAI;CACZ,AAN8B,CAM7B;AAVS,MAAM;IADlB,IAAA,sBAAU,GAAE;GACA,MAAM,CA4IlB;AA5IY,wBAAM","sourcesContent":["import { injectable } from '@biorate/inversion';\nimport { merge, get, has, set, PropertyPath } from 'lodash';\nimport * as traverse from 'traverse';\nimport { Template } from './template';\nimport { UndefinedConfigPathError } from './errors';\nimport { IConfig, IResult } from '../interfaces';\n\n@injectable()\nexport class Config implements IConfig {\n /**\n * @description Template enabling settings\n * */\n public static readonly Template = {\n string: true,\n link: true,\n regexp: true,\n function: true,\n empty: true,\n };\n\n /**\n * @description Data storage\n * */\n protected data = {};\n\n /**\n * @description Set template value\n * */\n protected template<T = unknown>(value: string, def?: T) {\n const result: IResult = { value };\n Template.string.call(this, value, result, def);\n Template.link.call(this, value, result, def);\n Template.regexp.call(this, value, result, def);\n Template.function.call(this, value, result, def);\n Template.empty.call(this, value, result, def);\n return result.value;\n }\n\n /**\n * @description Walk object recursive to templatize internal values\n * */\n protected templatize<T = unknown>(object: unknown, def?: T) {\n const template = this.template.bind(this);\n return traverse(object).forEach(function (value) {\n if (typeof value === 'string') this.update(template(value));\n });\n }\n\n /**\n * @description Get config property by path\n * @param path - data path\n * @param def - default value\n * @example\n * ```\n * import { Config } from '@biorate/config';\n *\n * const config = new Config();\n *\n * config.set('a', 1);\n *\n * console.log(config.get('a')); // 1\n * console.log(config.get('b', 2)); // 2\n * console.log(config.get('b')); // UndefinedConfigPathError: Undefined config path [b]\n * // at Config.get (src/index.ts:2:1608)\n * // at Context.<anonymous> (tests/index.spec.ts:19:24)\n * // at processImmediate (node:internal/timers:464:21)\n *\n * ```\n * */\n public get<T = unknown>(path: PropertyPath, def?: T): T {\n if (!this.has(path)) {\n if (def === undefined) throw new UndefinedConfigPathError(path);\n return def;\n }\n const result: any = get(this.data, path);\n switch (typeof result) {\n case 'string':\n return <T>(<unknown>this.template<T>(result, def));\n case 'object':\n return result ? this.templatize<T>(result, def) : result;\n default:\n return result;\n }\n }\n\n /**\n * @description Has config property by path\n * @param path - data path\n * @example\n * ```\n * import { Config } from '@biorate/config';\n *\n * const config = new Config();\n *\n * config.set('a', 1);\n *\n * console.log(config.has('a')); // true\n * ```\n * */\n public has(path: PropertyPath) {\n return has(this.data, path);\n }\n\n /**\n * @description Set config property by path\n * @param path - data path\n * @param value - data value\n * @example\n * ```\n * import { Config } from '@biorate/config';\n *\n * const config = new Config();\n *\n * config.set('a', 1);\n *\n * console.log(config.get('a')); // 1\n * ```\n * */\n public set(path: PropertyPath, value: unknown) {\n set(this.data, path, value);\n }\n\n /**\n * @description Merge config data\n * @param data - data object\n * @example\n * ```\n * import { Config } from '@biorate/config';\n *\n * const config = new Config();\n *\n * config.merge({\n * a: { b: { c: 1 } },\n * });\n *\n * config.merge({\n * a: { b: { d: 2 } },\n * });\n *\n * console.log(config.has('a')); // true\n * console.log(config.has('a.b')); // true\n * console.log(config.get('a.b.c')); // 1\n * console.log(config.get('a.b.d')); // 2\n * ```\n * */\n public merge(data: unknown) {\n merge(this.data, data);\n }\n}\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"df7c162ce684e375d1815dcfc6ad0157600c59b8","contentHash":"27be3a4b7be9f34320d1b6c1fbc92229a6995c15831b33c79e3491e1e557e92e"},"/www/biorate/core/packages/@biorate/config/src/template.ts":{"path":"/www/biorate/core/packages/@biorate/config/src/template.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":26}},"2":{"start":{"line":4,"column":17},"end":{"line":4,"column":36}},"3":{"start":{"line":5,"column":22},"end":{"line":5,"column":46}},"4":{"start":{"line":8,"column":8},"end":{"line":9,"column":19}},"5":{"start":{"line":9,"column":12},"end":{"line":9,"column":19}},"6":{"start":{"line":10,"column":21},"end":{"line":10,"column":38}},"7":{"start":{"line":11,"column":8},"end":{"line":13,"column":91}},"8":{"start":{"line":12,"column":12},"end":{"line":13,"column":91}},"9":{"start":{"line":13,"column":16},"end":{"line":13,"column":91}},"10":{"start":{"line":17,"column":8},"end":{"line":18,"column":19}},"11":{"start":{"line":18,"column":12},"end":{"line":18,"column":19}},"12":{"start":{"line":19,"column":21},"end":{"line":19,"column":39}},"13":{"start":{"line":20,"column":22},"end":{"line":20,"column":90}},"14":{"start":{"line":21,"column":8},"end":{"line":22,"column":48}},"15":{"start":{"line":22,"column":12},"end":{"line":22,"column":48}},"16":{"start":{"line":26,"column":8},"end":{"line":27,"column":19}},"17":{"start":{"line":27,"column":12},"end":{"line":27,"column":19}},"18":{"start":{"line":28,"column":21},"end":{"line":28,"column":46}},"19":{"start":{"line":29,"column":22},"end":{"line":29,"column":40}},"20":{"start":{"line":30,"column":8},"end":{"line":31,"column":210}},"21":{"start":{"line":31,"column":12},"end":{"line":31,"column":210}},"22":{"start":{"line":34,"column":8},"end":{"line":35,"column":19}},"23":{"start":{"line":35,"column":12},"end":{"line":35,"column":19}},"24":{"start":{"line":36,"column":21},"end":{"line":36,"column":49}},"25":{"start":{"line":37,"column":22},"end":{"line":37,"column":40}},"26":{"start":{"line":38,"column":8},"end":{"line":39,"column":197}},"27":{"start":{"line":39,"column":12},"end":{"line":39,"column":197}},"28":{"start":{"line":43,"column":8},"end":{"line":44,"column":19}},"29":{"start":{"line":44,"column":12},"end":{"line":44,"column":19}},"30":{"start":{"line":45,"column":21},"end":{"line":45,"column":39}},"31":{"start":{"line":46,"column":22},"end":{"line":46,"column":90}},"32":{"start":{"line":47,"column":8},"end":{"line":60,"column":9}},"33":{"start":{"line":48,"column":12},"end":{"line":59,"column":36}},"34":{"start":{"line":49,"column":16},"end":{"line":49,"column":34}},"35":{"start":{"line":50,"column":17},"end":{"line":59,"column":36}},"36":{"start":{"line":51,"column":16},"end":{"line":51,"column":34}},"37":{"start":{"line":52,"column":17},"end":{"line":59,"column":36}},"38":{"start":{"line":53,"column":16},"end":{"line":53,"column":41}},"39":{"start":{"line":54,"column":17},"end":{"line":59,"column":36}},"40":{"start":{"line":55,"column":16},"end":{"line":55,"column":36}},"41":{"start":{"line":56,"column":17},"end":{"line":59,"column":36}},"42":{"start":{"line":57,"column":16},"end":{"line":57,"column":34}},"43":{"start":{"line":59,"column":16},"end":{"line":59,"column":36}},"44":{"start":{"line":63,"column":0},"end":{"line":63,"column":28}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":7,"column":4},"end":{"line":7,"column":5}},"loc":{"start":{"line":7,"column":38},"end":{"line":14,"column":5}},"line":7},"1":{"name":"(anonymous_1)","decl":{"start":{"line":15,"column":4},"end":{"line":15,"column":5}},"loc":{"start":{"line":15,"column":36},"end":{"line":23,"column":5}},"line":15},"2":{"name":"(anonymous_2)","decl":{"start":{"line":24,"column":4},"end":{"line":24,"column":5}},"loc":{"start":{"line":24,"column":38},"end":{"line":32,"column":5}},"line":24},"3":{"name":"(anonymous_3)","decl":{"start":{"line":33,"column":4},"end":{"line":33,"column":5}},"loc":{"start":{"line":33,"column":40},"end":{"line":40,"column":5}},"line":33},"4":{"name":"(anonymous_4)","decl":{"start":{"line":41,"column":4},"end":{"line":41,"column":5}},"loc":{"start":{"line":41,"column":37},"end":{"line":61,"column":5}},"line":41}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":8},"end":{"line":9,"column":19}},"type":"if","locations":[{"start":{"line":8,"column":8},"end":{"line":9,"column":19}},{"start":{"line":8,"column":8},"end":{"line":9,"column":19}}],"line":8},"1":{"loc":{"start":{"line":12,"column":12},"end":{"line":13,"column":91}},"type":"if","locations":[{"start":{"line":12,"column":12},"end":{"line":13,"column":91}},{"start":{"line":12,"column":12},"end":{"line":13,"column":91}}],"line":12},"2":{"loc":{"start":{"line":17,"column":8},"end":{"line":18,"column":19}},"type":"if","locations":[{"start":{"line":17,"column":8},"end":{"line":18,"column":19}},{"start":{"line":17,"column":8},"end":{"line":18,"column":19}}],"line":17},"3":{"loc":{"start":{"line":20,"column":22},"end":{"line":20,"column":90}},"type":"cond-expr","locations":[{"start":{"line":20,"column":76},"end":{"line":20,"column":82}},{"start":{"line":20,"column":85},"end":{"line":20,"column":90}}],"line":20},"4":{"loc":{"start":{"line":20,"column":22},"end":{"line":20,"column":73}},"type":"binary-expr","locations":[{"start":{"line":20,"column":22},"end":{"line":20,"column":56}},{"start":{"line":20,"column":60},"end":{"line":20,"column":73}}],"line":20},"5":{"loc":{"start":{"line":21,"column":8},"end":{"line":22,"column":48}},"type":"if","locations":[{"start":{"line":21,"column":8},"end":{"line":22,"column":48}},{"start":{"line":21,"column":8},"end":{"line":22,"column":48}}],"line":21},"6":{"loc":{"start":{"line":26,"column":8},"end":{"line":27,"column":19}},"type":"if","locations":[{"start":{"line":26,"column":8},"end":{"line":27,"column":19}},{"start":{"line":26,"column":8},"end":{"line":27,"column":19}}],"line":26},"7":{"loc":{"start":{"line":30,"column":8},"end":{"line":31,"column":210}},"type":"if","locations":[{"start":{"line":30,"column":8},"end":{"line":31,"column":210}},{"start":{"line":30,"column":8},"end":{"line":31,"column":210}}],"line":30},"8":{"loc":{"start":{"line":30,"column":12},"end":{"line":30,"column":66}},"type":"cond-expr","locations":[{"start":{"line":30,"column":49},"end":{"line":30,"column":55}},{"start":{"line":30,"column":58},"end":{"line":30,"column":66}}],"line":30},"9":{"loc":{"start":{"line":30,"column":12},"end":{"line":30,"column":46}},"type":"binary-expr","locations":[{"start":{"line":30,"column":12},"end":{"line":30,"column":26}},{"start":{"line":30,"column":30},"end":{"line":30,"column":46}}],"line":30},"10":{"loc":{"start":{"line":31,"column":55},"end":{"line":31,"column":109}},"type":"cond-expr","locations":[{"start":{"line":31,"column":92},"end":{"line":31,"column":98}},{"start":{"line":31,"column":101},"end":{"line":31,"column":109}}],"line":31},"11":{"loc":{"start":{"line":31,"column":55},"end":{"line":31,"column":89}},"type":"binary-expr","locations":[{"start":{"line":31,"column":55},"end":{"line":31,"column":69}},{"start":{"line":31,"column":73},"end":{"line":31,"column":89}}],"line":31},"12":{"loc":{"start":{"line":31,"column":111},"end":{"line":31,"column":208}},"type":"cond-expr","locations":[{"start":{"line":31,"column":201},"end":{"line":31,"column":203}},{"start":{"line":31,"column":206},"end":{"line":31,"column":208}}],"line":31},"13":{"loc":{"start":{"line":31,"column":111},"end":{"line":31,"column":198}},"type":"binary-expr","locations":[{"start":{"line":31,"column":111},"end":{"line":31,"column":181}},{"start":{"line":31,"column":185},"end":{"line":31,"column":198}}],"line":31},"14":{"loc":{"start":{"line":31,"column":117},"end":{"line":31,"column":171}},"type":"cond-expr","locations":[{"start":{"line":31,"column":154},"end":{"line":31,"column":160}},{"start":{"line":31,"column":163},"end":{"line":31,"column":171}}],"line":31},"15":{"loc":{"start":{"line":31,"column":117},"end":{"line":31,"column":151}},"type":"binary-expr","locations":[{"start":{"line":31,"column":117},"end":{"line":31,"column":131}},{"start":{"line":31,"column":135},"end":{"line":31,"column":151}}],"line":31},"16":{"loc":{"start":{"line":34,"column":8},"end":{"line":35,"column":19}},"type":"if","locations":[{"start":{"line":34,"column":8},"end":{"line":35,"column":19}},{"start":{"line":34,"column":8},"end":{"line":35,"column":19}}],"line":34},"17":{"loc":{"start":{"line":38,"column":8},"end":{"line":39,"column":197}},"type":"if","locations":[{"start":{"line":38,"column":8},"end":{"line":39,"column":197}},{"start":{"line":38,"column":8},"end":{"line":39,"column":197}}],"line":38},"18":{"loc":{"start":{"line":38,"column":12},"end":{"line":38,"column":128}},"type":"binary-expr","locations":[{"start":{"line":38,"column":13},"end":{"line":38,"column":67}},{"start":{"line":38,"column":73},"end":{"line":38,"column":127}}],"line":38},"19":{"loc":{"start":{"line":38,"column":13},"end":{"line":38,"column":67}},"type":"cond-expr","locations":[{"start":{"line":38,"column":50},"end":{"line":38,"column":56}},{"start":{"line":38,"column":59},"end":{"line":38,"column":67}}],"line":38},"20":{"loc":{"start":{"line":38,"column":13},"end":{"line":38,"column":47}},"type":"binary-expr","locations":[{"start":{"line":38,"column":13},"end":{"line":38,"column":27}},{"start":{"line":38,"column":31},"end":{"line":38,"column":47}}],"line":38},"21":{"loc":{"start":{"line":38,"column":73},"end":{"line":38,"column":127}},"type":"cond-expr","locations":[{"start":{"line":38,"column":110},"end":{"line":38,"column":116}},{"start":{"line":38,"column":119},"end":{"line":38,"column":127}}],"line":38},"22":{"loc":{"start":{"line":38,"column":73},"end":{"line":38,"column":107}},"type":"binary-expr","locations":[{"start":{"line":38,"column":73},"end":{"line":38,"column":87}},{"start":{"line":38,"column":91},"end":{"line":38,"column":107}}],"line":38},"23":{"loc":{"start":{"line":39,"column":44},"end":{"line":39,"column":122}},"type":"cond-expr","locations":[{"start":{"line":39,"column":81},"end":{"line":39,"column":87}},{"start":{"line":39,"column":90},"end":{"line":39,"column":122}}],"line":39},"24":{"loc":{"start":{"line":39,"column":44},"end":{"line":39,"column":78}},"type":"binary-expr","locations":[{"start":{"line":39,"column":44},"end":{"line":39,"column":58}},{"start":{"line":39,"column":62},"end":{"line":39,"column":78}}],"line":39},"25":{"loc":{"start":{"line":39,"column":124},"end":{"line":39,"column":185}},"type":"cond-expr","locations":[{"start":{"line":39,"column":161},"end":{"line":39,"column":167}},{"start":{"line":39,"column":170},"end":{"line":39,"column":185}}],"line":39},"26":{"loc":{"start":{"line":39,"column":124},"end":{"line":39,"column":158}},"type":"binary-expr","locations":[{"start":{"line":39,"column":124},"end":{"line":39,"column":138}},{"start":{"line":39,"column":142},"end":{"line":39,"column":158}}],"line":39},"27":{"loc":{"start":{"line":43,"column":8},"end":{"line":44,"column":19}},"type":"if","locations":[{"start":{"line":43,"column":8},"end":{"line":44,"column":19}},{"start":{"line":43,"column":8},"end":{"line":44,"column":19}}],"line":43},"28":{"loc":{"start":{"line":46,"column":22},"end":{"line":46,"column":90}},"type":"cond-expr","locations":[{"start":{"line":46,"column":76},"end":{"line":46,"column":82}},{"start":{"line":46,"column":85},"end":{"line":46,"column":90}}],"line":46},"29":{"loc":{"start":{"line":46,"column":22},"end":{"line":46,"column":73}},"type":"binary-expr","locations":[{"start":{"line":46,"column":22},"end":{"line":46,"column":56}},{"start":{"line":46,"column":60},"end":{"line":46,"column":73}}],"line":46},"30":{"loc":{"start":{"line":47,"column":8},"end":{"line":60,"column":9}},"type":"if","locations":[{"start":{"line":47,"column":8},"end":{"line":60,"column":9}},{"start":{"line":47,"column":8},"end":{"line":60,"column":9}}],"line":47},"31":{"loc":{"start":{"line":48,"column":12},"end":{"line":59,"column":36}},"type":"if","locations":[{"start":{"line":48,"column":12},"end":{"line":59,"column":36}},{"start":{"line":48,"column":12},"end":{"line":59,"column":36}}],"line":48},"32":{"loc":{"start":{"line":50,"column":17},"end":{"line":59,"column":36}},"type":"if","locations":[{"start":{"line":50,"column":17},"end":{"line":59,"column":36}},{"start":{"line":50,"column":17},"end":{"line":59,"column":36}}],"line":50},"33":{"loc":{"start":{"line":52,"column":17},"end":{"line":59,"column":36}},"type":"if","locations":[{"start":{"line":52,"column":17},"end":{"line":59,"column":36}},{"start":{"line":52,"column":17},"end":{"line":59,"column":36}}],"line":52},"34":{"loc":{"start":{"line":54,"column":17},"end":{"line":59,"column":36}},"type":"if","locations":[{"start":{"line":54,"column":17},"end":{"line":59,"column":36}},{"start":{"line":54,"column":17},"end":{"line":59,"column":36}}],"line":54},"35":{"loc":{"start":{"line":56,"column":17},"end":{"line":59,"column":36}},"type":"if","locations":[{"start":{"line":56,"column":17},"end":{"line":59,"column":36}},{"start":{"line":56,"column":17},"end":{"line":59,"column":36}}],"line":56}},"s":{"0":1,"1":1,"2":1,"3":1,"4":22,"5":0,"6":22,"7":22,"8":2,"9":2,"10":22,"11":0,"12":22,"13":22,"14":22,"15":2,"16":22,"17":0,"18":22,"19":22,"20":22,"21":3,"22":22,"23":0,"24":22,"25":22,"26":22,"27":2,"28":22,"29":0,"30":22,"31":22,"32":22,"33":6,"34":1,"35":5,"36":1,"37":4,"38":1,"39":3,"40":1,"41":2,"42":1,"43":1,"44":1},"f":{"0":22,"1":22,"2":22,"3":22,"4":22},"b":{"0":[0,22],"1":[2,0],"2":[0,22],"3":[20,2],"4":[22,2],"5":[2,20],"6":[0,22],"7":[3,19],"8":[19,3],"9":[22,3],"10":[0,3],"11":[3,3],"12":[3,0],"13":[3,3],"14":[0,3],"15":[3,3],"16":[0,22],"17":[2,20],"18":[22,2],"19":[20,2],"20":[22,2],"21":[0,2],"22":[2,2],"23":[0,2],"24":[2,2],"25":[0,2],"26":[2,2],"27":[0,22],"28":[16,6],"29":[22,6],"30":[6,16],"31":[1,5],"32":[1,4],"33":[1,3],"34":[1,2],"35":[1,1]},"inputSourceMap":{"version":3,"file":"/www/biorate/core/packages/@biorate/config/src/template.ts","sources":["/www/biorate/core/packages/@biorate/config/src/template.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAClC,+CAA0C;AAG1C,MAAa,QAAQ;IACZ,MAAM,CAAC,MAAM,CAElB,KAAa,EACb,MAAe,EACf,GAAO;QAEP,IAAI,CAAC,eAAM,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAO;QACpC,IAAI,MAAM,GAAG,iBAAiB,EAC5B,GAAG,CAAC;QACN,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAClB,MAAM,CAAC,KAAK,GAAY,MAAM,CAAC,KAAM,CAAC,OAAO,CAC3C,GAAG,CAAC,CAAC,CAAC,EACN,MAAM,CAAC,IAAI,CAAC,GAAG,CAAI,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CACjC,CAAC;IACR,CAAC;IAEM,MAAM,CAAC,IAAI,CAA4B,KAAa,EAAE,MAAe,EAAE,GAAO;;QACnF,IAAI,CAAC,eAAM,CAAC,QAAQ,CAAC,IAAI;YAAE,OAAO;QAClC,IAAI,MAAM,GAAG,kBAAkB,CAAC;QAChC,MAAM,KAAK,GAAG,MAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,0CAAG,CAAC,CAAC,CAAC;QACtC,IAAI,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAI,KAAK,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IAEM,MAAM,CAAC,MAAM,CAElB,KAAa,EACb,MAAe,EACf,GAAO;;QAEP,IAAI,CAAC,eAAM,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAO;QACpC,IAAI,MAAM,GAAG,yBAAyB,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC;YAAE,MAAM,CAAC,KAAK,GAAG,IAAI,uBAAS,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,mCAAI,EAAE,CAAC,CAAC;IAC7E,CAAC;IAEM,MAAM,CAAC,QAAQ,CAEpB,KAAa,EACb,MAAe,EACf,GAAO;QAEP,IAAI,CAAC,eAAM,CAAC,QAAQ,CAAC,QAAQ;YAAE,OAAO;QACtC,IAAI,MAAM,GAAG,4BAA4B,CAAC;QAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,MAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,KAAK,GAAkB,CAC5B,IAAI,QAAQ,CAAC,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAChF,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,KAAK,CAEjB,KAAa,EACb,MAAe,EACf,GAAO;;QAEP,IAAI,CAAC,eAAM,CAAC,QAAQ,CAAC,KAAK;YAAE,OAAO;QACnC,IAAI,MAAM,GAAG,kBAAkB,CAAC;QAChC,MAAM,KAAK,GAAG,MAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,0CAAG,CAAC,CAAC,CAAC;QACtC,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,KAAK,QAAQ;gBAAE,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;iBACrC,IAAI,KAAK,KAAK,OAAO;gBAAE,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;iBACzC,IAAI,KAAK,KAAK,MAAM;gBAAE,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC;iBAC/C,IAAI,KAAK,KAAK,MAAM;gBAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;iBAC1C,IAAI,KAAK,KAAK,QAAQ;gBAAE,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;;gBAC1C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;SAC1B;IACH,CAAC;CACF;AAtED,4BAsEC","sourcesContent":["import { Config } from './config';\nimport { RegExpExt } from './reg-exp-ext';\nimport { IResult } from '../interfaces';\n\nexport class Template {\n public static string<T = unknown>(\n this: Config,\n value: string,\n result: IResult,\n def?: T,\n ) {\n if (!Config.Template.string) return;\n let regExp = /\\${([^}{]+)+?}/g,\n res;\n while ((res = regExp.exec(value)))\n if (this.has(res[1]))\n result.value = (<string>result.value).replace(\n res[0],\n String(this.get<T>(res[1], def)),\n );\n }\n\n public static link<T = unknown>(this: Config, value: string, result: IResult, def?: T) {\n if (!Config.Template.link) return;\n let regExp = /^#{([^}{]+)+?}$/g;\n const match = regExp.exec(value)?.[1];\n if (match) result.value = this.get<T>(match, def);\n }\n\n public static regexp<T = unknown>(\n this: Config,\n value: string,\n result: IResult,\n def?: T,\n ) {\n if (!Config.Template.regexp) return;\n let regExp = /^R\\{\\/(.*?)\\/([^\\/]*)}$/;\n const match = regExp.exec(value);\n if (match?.[1]) result.value = new RegExpExt(match?.[1], match?.[2] ?? '');\n }\n\n public static function<T = unknown>(\n this: Config,\n value: string,\n result: IResult,\n def?: T,\n ) {\n if (!Config.Template.function) return;\n let regExp = /^F\\{([^=>]+) => ([^}]+)}$/g;\n const match = regExp.exec(value);\n if (match?.[1] && match?.[2])\n result.value = <() => unknown>(\n new Function(...match?.[1].trim().split(/\\s*,\\s*/), match?.[2].trim()).bind({})\n );\n }\n\n public static empty<T = unknown>(\n this: Config,\n value: string,\n result: IResult,\n def?: T,\n ) {\n if (!Config.Template.empty) return;\n let regExp = /^!{([^}{]+)+?}$/g;\n const match = regExp.exec(value)?.[1];\n if (match) {\n if (match === 'object') result.value = {};\n else if (match === 'array') result.value = [];\n else if (match === 'void') result.value = undefined;\n else if (match === 'null') result.value = null;\n else if (match === 'string') result.value = '';\n else result.value = null;\n }\n }\n}\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"2c576d69300702546221058c125fcf7ffccfc2b4","contentHash":"4124cf86b6c8ed2de72eb8945f570c47133eeecc095ddd928cae161b509064ce"},"/www/biorate/core/packages/@biorate/config/src/reg-exp-ext.ts":{"path":"/www/biorate/core/packages/@biorate/config/src/reg-exp-ext.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":27}},"2":{"start":{"line":6,"column":8},"end":{"line":6,"column":58}},"3":{"start":{"line":9,"column":0},"end":{"line":9,"column":30}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":4},"end":{"line":5,"column":5}},"loc":{"start":{"line":5,"column":13},"end":{"line":7,"column":5}},"line":5}},"branchMap":{},"s":{"0":1,"1":1,"2":1,"3":1},"f":{"0":1},"b":{},"inputSourceMap":{"version":3,"file":"/www/biorate/core/packages/@biorate/config/src/reg-exp-ext.ts","sources":["/www/biorate/core/packages/@biorate/config/src/reg-exp-ext.ts"],"names":[],"mappings":";;;AAAA,MAAa,SAAU,SAAQ,MAAM;IAC5B,MAAM;QACX,OAAO,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC;IACpD,CAAC;CACF;AAJD,8BAIC","sourcesContent":["export class RegExpExt extends RegExp {\n public toJSON() {\n return `R{${this.toString().replace(/\\\\/g, '')}}`;\n }\n}\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"4e47313688520d3fc4b91feecdf1e2045b80399f","contentHash":"7f4f013671a2aa8d94c6d4733ebc49ba44760dc350e5646776dc794a54354d3c"},"/www/biorate/core/packages/@biorate/config/src/errors.ts":{"path":"/www/biorate/core/packages/@biorate/config/src/errors.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":42}},"2":{"start":{"line":4,"column":17},"end":{"line":4,"column":43}},"3":{"start":{"line":7,"column":8},"end":{"line":7,"column":52}},"4":{"start":{"line":10,"column":0},"end":{"line":10,"column":60}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":22},"end":{"line":8,"column":5}},"line":6}},"branchMap":{},"s":{"0":1,"1":1,"2":1,"3":1,"4":1},"f":{"0":1},"b":{},"inputSourceMap":{"version":3,"file":"/www/biorate/core/packages/@biorate/config/src/errors.ts","sources":["/www/biorate/core/packages/@biorate/config/src/errors.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAG5C,MAAa,wBAAyB,SAAQ,kBAAS;IACrD,YAAmB,IAAkB;QACnC,KAAK,CAAC,4BAA4B,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;CACF;AAJD,4DAIC","sourcesContent":["import { BaseError } from '@biorate/errors';\nimport { PropertyPath } from 'lodash';\n\nexport class UndefinedConfigPathError extends BaseError {\n public constructor(path: PropertyPath) {\n super(`Undefined config path [%s]`, [path]);\n }\n}\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"79108ff19f8d81998fc3fa3ab5c5e97956adef37","contentHash":"e3d8bcc3d7c2b98f138cbb8d691dad9e285b8cbdc53b8425715652d7990d8043"},"/www/biorate/core/packages/@biorate/config/interfaces.ts":{"path":"/www/biorate/core/packages/@biorate/config/interfaces.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}}},"fnMap":{},"branchMap":{},"s":{"0":1},"f":{},"b":{},"inputSourceMap":{"version":3,"file":"/www/biorate/core/packages/@biorate/config/interfaces.ts","sources":["/www/biorate/core/packages/@biorate/config/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["import { PropertyPath } from 'lodash';\n\nexport interface IConfig {\n get<T = unknown>(path: PropertyPath, def?: T): T;\n has(path: PropertyPath): boolean;\n set(path: PropertyPath, value: unknown): void;\n merge(data: unknown): void;\n}\n\nexport type IResult = {\n value:\n | string\n | RegExp\n | (() => unknown)\n | unknown[]\n | unknown\n | Record<string, unknown>\n | null\n | undefined;\n};\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"e19cb0cde9af15b2b6f7b863be11d036062ae703","contentHash":"c81c321f0d740d38c96957f62e94a5bd2be5a0e18ba28723538f9c2fab0b442d"}}
|
@@ -1 +1 @@
|
|
1
|
-
{"parent":"
|
1
|
+
{"parent":"2d3d0803-3602-40c9-b1a6-d48868685bb4","pid":208744,"argv":["/home/llevkin/.nvm/versions/node/v20.17.0/bin/node","/www/biorate/core/node_modules/mocha/bin/mocha.js","-r","ts-node/register","tests/**/*.spec.ts"],"execArgv":[],"cwd":"/www/biorate/core/packages/@biorate/config","time":1734612895316,"ppid":208728,"coverageFilename":"/www/biorate/core/packages/@biorate/config/.nyc_output/0b821d7f-4869-42b7-8804-bb70bf0dac33.json","externalId":"","uuid":"0b821d7f-4869-42b7-8804-bb70bf0dac33","files":["/www/biorate/core/packages/@biorate/config/src/index.ts","/www/biorate/core/packages/@biorate/config/src/config.ts","/www/biorate/core/packages/@biorate/config/src/template.ts","/www/biorate/core/packages/@biorate/config/src/reg-exp-ext.ts","/www/biorate/core/packages/@biorate/config/src/errors.ts","/www/biorate/core/packages/@biorate/config/interfaces.ts"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"parent":null,"pid":208728,"argv":["/home/llevkin/.nvm/versions/node/v20.17.0/bin/node","/www/biorate/core/node_modules/npx/index.js","mocha","-r","ts-node/register","tests/**/*.spec.ts"],"execArgv":[],"cwd":"/www/biorate/core/packages/@biorate/config","time":1734612895214,"ppid":208712,"coverageFilename":"/www/biorate/core/packages/@biorate/config/.nyc_output/2d3d0803-3602-40c9-b1a6-d48868685bb4.json","externalId":"","uuid":"2d3d0803-3602-40c9-b1a6-d48868685bb4","files":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"processes":{"
|
1
|
+
{"processes":{"0b821d7f-4869-42b7-8804-bb70bf0dac33":{"parent":"2d3d0803-3602-40c9-b1a6-d48868685bb4","children":[]},"2d3d0803-3602-40c9-b1a6-d48868685bb4":{"parent":null,"children":["0b821d7f-4869-42b7-8804-bb70bf0dac33"]}},"files":{"/www/biorate/core/packages/@biorate/config/src/index.ts":["0b821d7f-4869-42b7-8804-bb70bf0dac33"],"/www/biorate/core/packages/@biorate/config/src/config.ts":["0b821d7f-4869-42b7-8804-bb70bf0dac33"],"/www/biorate/core/packages/@biorate/config/src/template.ts":["0b821d7f-4869-42b7-8804-bb70bf0dac33"],"/www/biorate/core/packages/@biorate/config/src/reg-exp-ext.ts":["0b821d7f-4869-42b7-8804-bb70bf0dac33"],"/www/biorate/core/packages/@biorate/config/src/errors.ts":["0b821d7f-4869-42b7-8804-bb70bf0dac33"],"/www/biorate/core/packages/@biorate/config/interfaces.ts":["0b821d7f-4869-42b7-8804-bb70bf0dac33"]},"externalIds":{}}
|
package/CHANGELOG.md
CHANGED
@@ -3,6 +3,18 @@
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
5
5
|
|
6
|
+
# [1.93.0](https://github.com/biorate/core/compare/v1.92.0...v1.93.0) (2024-12-19)
|
7
|
+
|
8
|
+
### Features
|
9
|
+
|
10
|
+
- **config:** fix template default value ([20fcc27](https://github.com/biorate/core/commit/20fcc2760689ee2e5a90de0cf8e28beb32797414))
|
11
|
+
|
12
|
+
## [1.91.5](https://github.com/biorate/core/compare/v1.91.4...v1.91.5) (2024-12-06)
|
13
|
+
|
14
|
+
### Bug Fixes
|
15
|
+
|
16
|
+
- **config:** types + regexpext ([609e939](https://github.com/biorate/core/commit/609e939dc4e5558191bef31e1ddcc635337dec76))
|
17
|
+
|
6
18
|
## [1.91.4](https://github.com/biorate/core/compare/v1.91.3...v1.91.4) (2024-12-06)
|
7
19
|
|
8
20
|
### Bug Fixes
|
@@ -241,13 +241,13 @@
|
|
241
241
|
<span class="cline-any cline-neutral"> </span>
|
242
242
|
<span class="cline-any cline-neutral"> </span>
|
243
243
|
<span class="cline-any cline-neutral"> </span>
|
244
|
-
<span class="cline-any cline-yes">
|
245
|
-
<span class="cline-any cline-yes">
|
246
|
-
<span class="cline-any cline-yes">
|
247
|
-
<span class="cline-any cline-yes">
|
248
|
-
<span class="cline-any cline-yes">
|
249
|
-
<span class="cline-any cline-yes">
|
250
|
-
<span class="cline-any cline-yes">
|
244
|
+
<span class="cline-any cline-yes">22x</span>
|
245
|
+
<span class="cline-any cline-yes">22x</span>
|
246
|
+
<span class="cline-any cline-yes">22x</span>
|
247
|
+
<span class="cline-any cline-yes">22x</span>
|
248
|
+
<span class="cline-any cline-yes">22x</span>
|
249
|
+
<span class="cline-any cline-yes">22x</span>
|
250
|
+
<span class="cline-any cline-yes">22x</span>
|
251
251
|
<span class="cline-any cline-neutral"> </span>
|
252
252
|
<span class="cline-any cline-neutral"> </span>
|
253
253
|
<span class="cline-any cline-neutral"> </span>
|
@@ -282,14 +282,14 @@
|
|
282
282
|
<span class="cline-any cline-neutral"> </span>
|
283
283
|
<span class="cline-any cline-neutral"> </span>
|
284
284
|
<span class="cline-any cline-neutral"> </span>
|
285
|
-
<span class="cline-any cline-yes">
|
285
|
+
<span class="cline-any cline-yes">27x</span>
|
286
|
+
<span class="cline-any cline-yes">3x</span>
|
286
287
|
<span class="cline-any cline-yes">2x</span>
|
287
|
-
<span class="cline-any cline-yes">1x</span>
|
288
288
|
<span class="cline-any cline-neutral"> </span>
|
289
|
-
<span class="cline-any cline-yes">
|
290
|
-
<span class="cline-any cline-yes">
|
289
|
+
<span class="cline-any cline-yes">24x</span>
|
290
|
+
<span class="cline-any cline-yes">24x</span>
|
291
291
|
<span class="cline-any cline-neutral"> </span>
|
292
|
-
<span class="cline-any cline-yes">
|
292
|
+
<span class="cline-any cline-yes">18x</span>
|
293
293
|
<span class="cline-any cline-neutral"> </span>
|
294
294
|
<span class="cline-any cline-yes">2x</span>
|
295
295
|
<span class="cline-any cline-neutral"> </span>
|
@@ -312,7 +312,7 @@
|
|
312
312
|
<span class="cline-any cline-neutral"> </span>
|
313
313
|
<span class="cline-any cline-neutral"> </span>
|
314
314
|
<span class="cline-any cline-neutral"> </span>
|
315
|
-
<span class="cline-any cline-yes">
|
315
|
+
<span class="cline-any cline-yes">33x</span>
|
316
316
|
<span class="cline-any cline-neutral"> </span>
|
317
317
|
<span class="cline-any cline-neutral"> </span>
|
318
318
|
<span class="cline-any cline-neutral"> </span>
|
@@ -358,7 +358,7 @@
|
|
358
358
|
<span class="cline-any cline-neutral"> </span>
|
359
359
|
<span class="cline-any cline-neutral"> </span>
|
360
360
|
<span class="cline-any cline-neutral"> </span>
|
361
|
-
<span class="cline-any cline-yes">
|
361
|
+
<span class="cline-any cline-yes">15x</span>
|
362
362
|
<span class="cline-any cline-neutral"> </span>
|
363
363
|
<span class="cline-any cline-neutral"> </span>
|
364
364
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { injectable } from '@biorate/inversion';
|
@@ -389,20 +389,20 @@ export class Config implements IConfig {
|
|
389
389
|
/**
|
390
390
|
* @description Set template value
|
391
391
|
* */
|
392
|
-
protected template(value: string) {
|
392
|
+
protected template<T = unknown>(value: string, def?: T) {
|
393
393
|
const result: IResult = { value };
|
394
|
-
Template.string.call(this, value, result);
|
395
|
-
Template.link.call(this, value, result);
|
396
|
-
Template.regexp.call(this, value, result);
|
397
|
-
Template.function.call(this, value, result);
|
398
|
-
Template.empty.call(this, value, result);
|
394
|
+
Template.string.call(this, value, result, def);
|
395
|
+
Template.link.call(this, value, result, def);
|
396
|
+
Template.regexp.call(this, value, result, def);
|
397
|
+
Template.function.call(this, value, result, def);
|
398
|
+
Template.empty.call(this, value, result, def);
|
399
399
|
return result.value;
|
400
400
|
}
|
401
401
|
|
402
402
|
/**
|
403
403
|
* @description Walk object recursive to templatize internal values
|
404
404
|
* */
|
405
|
-
protected templatize(object: unknown) {
|
405
|
+
protected templatize<T = unknown>(object: unknown, def?: T) {
|
406
406
|
const template = this.template.bind(this);
|
407
407
|
return traverse(object).forEach(function (value) {
|
408
408
|
if (typeof value === 'string') this.update(template(value));
|
@@ -438,9 +438,9 @@ export class Config implements IConfig {
|
|
438
438
|
const result: any = get(this.data, path);
|
439
439
|
switch (typeof result) {
|
440
440
|
case 'string':
|
441
|
-
return <T>(<unknown>this.template(result));
|
441
|
+
return <T>(<unknown>this.template<T>(result, def));
|
442
442
|
case 'object':
|
443
|
-
return result ? this.templatize(result) : <span class="branch-1 cbranch-no" title="branch not covered" >result;</span>
|
443
|
+
return result ? this.templatize<T>(result, def) : <span class="branch-1 cbranch-no" title="branch not covered" >result;</span>
|
444
444
|
default:
|
445
445
|
return result;
|
446
446
|
}
|
@@ -517,7 +517,7 @@ export class Config implements IConfig {
|
|
517
517
|
<div class='footer quiet pad2 space-top1 center small'>
|
518
518
|
Code coverage generated by
|
519
519
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
520
|
-
at 2024-12-
|
520
|
+
at 2024-12-19T12:54:57.317Z
|
521
521
|
</div>
|
522
522
|
<script src="prettify.js"></script>
|
523
523
|
<script>
|
@@ -94,7 +94,7 @@ export class UndefinedConfigPathError extends BaseError {
|
|
94
94
|
<div class='footer quiet pad2 space-top1 center small'>
|
95
95
|
Code coverage generated by
|
96
96
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
97
|
-
at 2024-12-
|
97
|
+
at 2024-12-19T12:54:57.317Z
|
98
98
|
</div>
|
99
99
|
<script src="prettify.js"></script>
|
100
100
|
<script>
|
@@ -30,9 +30,9 @@
|
|
30
30
|
|
31
31
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
33
|
-
<span class="strong">84.
|
33
|
+
<span class="strong">84.33% </span>
|
34
34
|
<span class="quiet">Branches</span>
|
35
|
-
<span class='fraction'>
|
35
|
+
<span class='fraction'>70/83</span>
|
36
36
|
</div>
|
37
37
|
|
38
38
|
|
@@ -145,8 +145,8 @@
|
|
145
145
|
</td>
|
146
146
|
<td data-value="88.37" class="pct high">88.37%</td>
|
147
147
|
<td data-value="43" class="abs high">38/43</td>
|
148
|
-
<td data-value="83.
|
149
|
-
<td data-value="
|
148
|
+
<td data-value="83.33" class="pct high">83.33%</td>
|
149
|
+
<td data-value="72" class="abs high">60/72</td>
|
150
150
|
<td data-value="100" class="pct high">100%</td>
|
151
151
|
<td data-value="5" class="abs high">5/5</td>
|
152
152
|
<td data-value="100" class="pct high">100%</td>
|
@@ -161,7 +161,7 @@
|
|
161
161
|
<div class='footer quiet pad2 space-top1 center small'>
|
162
162
|
Code coverage generated by
|
163
163
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
164
|
-
at 2024-12-
|
164
|
+
at 2024-12-19T12:54:57.317Z
|
165
165
|
</div>
|
166
166
|
<script src="prettify.js"></script>
|
167
167
|
<script>
|
@@ -79,7 +79,7 @@ export * from '../interfaces';
|
|
79
79
|
<div class='footer quiet pad2 space-top1 center small'>
|
80
80
|
Code coverage generated by
|
81
81
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
82
|
-
at 2024-12-
|
82
|
+
at 2024-12-19T12:54:57.317Z
|
83
83
|
</div>
|
84
84
|
<script src="prettify.js"></script>
|
85
85
|
<script>
|
@@ -85,7 +85,7 @@
|
|
85
85
|
<div class='footer quiet pad2 space-top1 center small'>
|
86
86
|
Code coverage generated by
|
87
87
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
88
|
-
at 2024-12-
|
88
|
+
at 2024-12-19T12:54:57.317Z
|
89
89
|
</div>
|
90
90
|
<script src="prettify.js"></script>
|
91
91
|
<script>
|
@@ -30,9 +30,9 @@
|
|
30
30
|
|
31
31
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
33
|
-
<span class="strong">83.
|
33
|
+
<span class="strong">83.33% </span>
|
34
34
|
<span class="quiet">Branches</span>
|
35
|
-
<span class='fraction'>
|
35
|
+
<span class='fraction'>60/72</span>
|
36
36
|
</div>
|
37
37
|
|
38
38
|
|
@@ -116,50 +116,94 @@
|
|
116
116
|
<a name='L51'></a><a href='#L51'>51</a>
|
117
117
|
<a name='L52'></a><a href='#L52'>52</a>
|
118
118
|
<a name='L53'></a><a href='#L53'>53</a>
|
119
|
-
<a name='L54'></a><a href='#L54'>54</a
|
119
|
+
<a name='L54'></a><a href='#L54'>54</a>
|
120
|
+
<a name='L55'></a><a href='#L55'>55</a>
|
121
|
+
<a name='L56'></a><a href='#L56'>56</a>
|
122
|
+
<a name='L57'></a><a href='#L57'>57</a>
|
123
|
+
<a name='L58'></a><a href='#L58'>58</a>
|
124
|
+
<a name='L59'></a><a href='#L59'>59</a>
|
125
|
+
<a name='L60'></a><a href='#L60'>60</a>
|
126
|
+
<a name='L61'></a><a href='#L61'>61</a>
|
127
|
+
<a name='L62'></a><a href='#L62'>62</a>
|
128
|
+
<a name='L63'></a><a href='#L63'>63</a>
|
129
|
+
<a name='L64'></a><a href='#L64'>64</a>
|
130
|
+
<a name='L65'></a><a href='#L65'>65</a>
|
131
|
+
<a name='L66'></a><a href='#L66'>66</a>
|
132
|
+
<a name='L67'></a><a href='#L67'>67</a>
|
133
|
+
<a name='L68'></a><a href='#L68'>68</a>
|
134
|
+
<a name='L69'></a><a href='#L69'>69</a>
|
135
|
+
<a name='L70'></a><a href='#L70'>70</a>
|
136
|
+
<a name='L71'></a><a href='#L71'>71</a>
|
137
|
+
<a name='L72'></a><a href='#L72'>72</a>
|
138
|
+
<a name='L73'></a><a href='#L73'>73</a>
|
139
|
+
<a name='L74'></a><a href='#L74'>74</a>
|
140
|
+
<a name='L75'></a><a href='#L75'>75</a>
|
141
|
+
<a name='L76'></a><a href='#L76'>76</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
120
142
|
<span class="cline-any cline-yes">1x</span>
|
121
143
|
<span class="cline-any cline-neutral"> </span>
|
122
144
|
<span class="cline-any cline-neutral"> </span>
|
123
145
|
<span class="cline-any cline-yes">1x</span>
|
124
146
|
<span class="cline-any cline-neutral"> </span>
|
125
|
-
<span class="cline-any cline-yes">21x</span>
|
126
|
-
<span class="cline-any cline-yes">21x</span>
|
127
147
|
<span class="cline-any cline-neutral"> </span>
|
128
|
-
<span class="cline-any cline-
|
148
|
+
<span class="cline-any cline-neutral"> </span>
|
149
|
+
<span class="cline-any cline-neutral"> </span>
|
150
|
+
<span class="cline-any cline-neutral"> </span>
|
151
|
+
<span class="cline-any cline-neutral"> </span>
|
152
|
+
<span class="cline-any cline-yes">22x</span>
|
153
|
+
<span class="cline-any cline-yes">22x</span>
|
154
|
+
<span class="cline-any cline-neutral"> </span>
|
155
|
+
<span class="cline-any cline-yes">22x</span>
|
129
156
|
<span class="cline-any cline-yes">2x</span>
|
130
157
|
<span class="cline-any cline-yes">2x</span>
|
131
158
|
<span class="cline-any cline-neutral"> </span>
|
132
159
|
<span class="cline-any cline-neutral"> </span>
|
133
160
|
<span class="cline-any cline-neutral"> </span>
|
134
|
-
<span class="cline-any cline-yes">21x</span>
|
135
|
-
<span class="cline-any cline-yes">21x</span>
|
136
|
-
<span class="cline-any cline-yes">21x</span>
|
137
|
-
<span class="cline-any cline-yes">21x</span>
|
138
161
|
<span class="cline-any cline-neutral"> </span>
|
139
162
|
<span class="cline-any cline-neutral"> </span>
|
140
163
|
<span class="cline-any cline-neutral"> </span>
|
141
|
-
<span class="cline-any cline-yes">
|
164
|
+
<span class="cline-any cline-yes">22x</span>
|
165
|
+
<span class="cline-any cline-yes">22x</span>
|
166
|
+
<span class="cline-any cline-yes">22x</span>
|
167
|
+
<span class="cline-any cline-yes">22x</span>
|
168
|
+
<span class="cline-any cline-neutral"> </span>
|
169
|
+
<span class="cline-any cline-neutral"> </span>
|
170
|
+
<span class="cline-any cline-neutral"> </span>
|
171
|
+
<span class="cline-any cline-neutral"> </span>
|
172
|
+
<span class="cline-any cline-neutral"> </span>
|
173
|
+
<span class="cline-any cline-neutral"> </span>
|
142
174
|
<span class="cline-any cline-neutral"> </span>
|
143
|
-
<span class="cline-any cline-yes">21x</span>
|
144
|
-
<span class="cline-any cline-yes">21x</span>
|
145
|
-
<span class="cline-any cline-yes">21x</span>
|
146
175
|
<span class="cline-any cline-neutral"> </span>
|
176
|
+
<span class="cline-any cline-yes">22x</span>
|
177
|
+
<span class="cline-any cline-yes">22x</span>
|
178
|
+
<span class="cline-any cline-yes">22x</span>
|
179
|
+
<span class="cline-any cline-yes">22x</span>
|
147
180
|
<span class="cline-any cline-neutral"> </span>
|
148
181
|
<span class="cline-any cline-neutral"> </span>
|
149
|
-
<span class="cline-any cline-
|
150
|
-
<span class="cline-any cline-
|
151
|
-
<span class="cline-any cline-
|
152
|
-
<span class="cline-any cline-
|
182
|
+
<span class="cline-any cline-neutral"> </span>
|
183
|
+
<span class="cline-any cline-neutral"> </span>
|
184
|
+
<span class="cline-any cline-neutral"> </span>
|
185
|
+
<span class="cline-any cline-neutral"> </span>
|
186
|
+
<span class="cline-any cline-neutral"> </span>
|
187
|
+
<span class="cline-any cline-neutral"> </span>
|
188
|
+
<span class="cline-any cline-yes">22x</span>
|
189
|
+
<span class="cline-any cline-yes">22x</span>
|
190
|
+
<span class="cline-any cline-yes">22x</span>
|
191
|
+
<span class="cline-any cline-yes">22x</span>
|
153
192
|
<span class="cline-any cline-yes">2x</span>
|
154
193
|
<span class="cline-any cline-neutral"> </span>
|
155
194
|
<span class="cline-any cline-neutral"> </span>
|
156
195
|
<span class="cline-any cline-neutral"> </span>
|
157
196
|
<span class="cline-any cline-neutral"> </span>
|
158
197
|
<span class="cline-any cline-neutral"> </span>
|
159
|
-
<span class="cline-any cline-
|
160
|
-
<span class="cline-any cline-
|
161
|
-
<span class="cline-any cline-
|
162
|
-
<span class="cline-any cline-
|
198
|
+
<span class="cline-any cline-neutral"> </span>
|
199
|
+
<span class="cline-any cline-neutral"> </span>
|
200
|
+
<span class="cline-any cline-neutral"> </span>
|
201
|
+
<span class="cline-any cline-neutral"> </span>
|
202
|
+
<span class="cline-any cline-neutral"> </span>
|
203
|
+
<span class="cline-any cline-yes">22x</span>
|
204
|
+
<span class="cline-any cline-yes">22x</span>
|
205
|
+
<span class="cline-any cline-yes">22x</span>
|
206
|
+
<span class="cline-any cline-yes">22x</span>
|
163
207
|
<span class="cline-any cline-yes">6x</span>
|
164
208
|
<span class="cline-any cline-yes">5x</span>
|
165
209
|
<span class="cline-any cline-yes">4x</span>
|
@@ -174,31 +218,48 @@ import { RegExpExt } from './reg-exp-ext';
|
|
174
218
|
import { IResult } from '../interfaces';
|
175
219
|
|
176
220
|
export class Template {
|
177
|
-
public static string
|
221
|
+
public static string<T = unknown>(
|
222
|
+
this: Config,
|
223
|
+
value: string,
|
224
|
+
result: IResult,
|
225
|
+
def?: T,
|
226
|
+
) {
|
178
227
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!Config.Template.string) <span class="cstat-no" title="statement not covered" >return;</span>
|
179
228
|
let regExp = /\${([^}{]+)+?}/g,
|
180
229
|
res;
|
181
230
|
while ((res = regExp.exec(value)))
|
182
231
|
<span class="missing-if-branch" title="else path not taken" >E</span>if (this.has(res[1]))
|
183
|
-
result.value = (<string>result.value).replace(
|
232
|
+
result.value = (<string>result.value).replace(
|
233
|
+
res[0],
|
234
|
+
String(this.get<T>(res[1], def)),
|
235
|
+
);
|
184
236
|
}
|
185
237
|
|
186
|
-
public static link(this: Config, value: string, result: IResult) {
|
238
|
+
public static link<T = unknown>(this: Config, value: string, result: IResult, def?: T) {
|
187
239
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!Config.Template.link) <span class="cstat-no" title="statement not covered" >return;</span>
|
188
240
|
let regExp = /^#{([^}{]+)+?}$/g;
|
189
241
|
const match = regExp.exec(value)?.[1];
|
190
|
-
if (match) result.value = this.get(match);
|
242
|
+
if (match) result.value = this.get<T>(match, def);
|
191
243
|
}
|
192
244
|
|
193
|
-
public static regexp
|
245
|
+
public static regexp<T = unknown>(
|
246
|
+
this: Config,
|
247
|
+
value: string,
|
248
|
+
result: IResult,
|
249
|
+
def?: T,
|
250
|
+
) {
|
194
251
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!Config.Template.regexp) <span class="cstat-no" title="statement not covered" >return;</span>
|
195
|
-
// let regExp = /^R\{\/([^\/]+)\/([^\/]+)}$/g;
|
196
252
|
let regExp = /^R\{\/(.*?)\/([^\/]*)}$/;
|
197
253
|
const match = regExp.exec(value);
|
198
|
-
if (match?.[1]
|
254
|
+
if (match?.[1]) result.value = new RegExpExt(match<span class="branch-0 cbranch-no" title="branch not covered" >?.[1</span>], match<span class="branch-0 cbranch-no" title="branch not covered" >?.[2</span>] ?? <span class="branch-1 cbranch-no" title="branch not covered" >'')</span>;
|
199
255
|
}
|
200
256
|
|
201
|
-
public static function
|
257
|
+
public static function<T = unknown>(
|
258
|
+
this: Config,
|
259
|
+
value: string,
|
260
|
+
result: IResult,
|
261
|
+
def?: T,
|
262
|
+
) {
|
202
263
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!Config.Template.function) <span class="cstat-no" title="statement not covered" >return;</span>
|
203
264
|
let regExp = /^F\{([^=>]+) => ([^}]+)}$/g;
|
204
265
|
const match = regExp.exec(value);
|
@@ -208,7 +269,12 @@ export class Template {
|
|
208
269
|
);
|
209
270
|
}
|
210
271
|
|
211
|
-
public static empty
|
272
|
+
public static empty<T = unknown>(
|
273
|
+
this: Config,
|
274
|
+
value: string,
|
275
|
+
result: IResult,
|
276
|
+
def?: T,
|
277
|
+
) {
|
212
278
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!Config.Template.empty) <span class="cstat-no" title="statement not covered" >return;</span>
|
213
279
|
let regExp = /^!{([^}{]+)+?}$/g;
|
214
280
|
const match = regExp.exec(value)?.[1];
|
@@ -229,7 +295,7 @@ export class Template {
|
|
229
295
|
<div class='footer quiet pad2 space-top1 center small'>
|
230
296
|
Code coverage generated by
|
231
297
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
232
|
-
at 2024-12-
|
298
|
+
at 2024-12-19T12:54:57.317Z
|
233
299
|
</div>
|
234
300
|
<script src="prettify.js"></script>
|
235
301
|
<script>
|