diff --git a/.babelrc b/.babelrc index 222c2bac..8fbb795f 100644 --- a/.babelrc +++ b/.babelrc @@ -1,6 +1,5 @@ { "presets": [ - "env", - "stage-0" + ["@babel/preset-env", {"targets": {"node": "24"}}] ] } diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4232a6f2..614d430c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,12 +14,12 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node-version: [12.x, 14.x, 16.x, 18.x, 19,x] + node-version: ['24.x'] # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} cache: 'npm' @@ -31,7 +31,7 @@ jobs: run: npm run coverage - name: Upload coverage to Codecov if: ${{ matrix.node-version == '16.x' }} - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4 with: token: ${{ secrets.CODECOV_TOKEN }} @@ -40,9 +40,9 @@ jobs: needs: test runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - run: sudo apt-get install -y oathtool - - uses: actions/setup-node@v2 + - uses: actions/setup-node@v4 with: node-version: 16 registry-url: https://registry.npmjs.org/ diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index 3f165c16..7de15fc3 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -16,13 +16,13 @@ jobs: strategy: matrix: - node-version: [12.x, 14.x, 16.x] + node-version: ['24.x'] # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} cache: 'npm' diff --git a/.nyc_output/9ce2e733-f71c-43b9-be5f-7e3689e5be27.json b/.nyc_output/9ce2e733-f71c-43b9-be5f-7e3689e5be27.json new file mode 100644 index 00000000..9e82faef --- /dev/null +++ b/.nyc_output/9ce2e733-f71c-43b9-be5f-7e3689e5be27.json @@ -0,0 +1 @@ +{"/Users/vaibhav.chopra/code/test_node_sdk/lib/oAuthTokenClient.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/lib/oAuthTokenClient.js","statementMap":{"0":{"start":{"line":1,"column":12},"end":{"line":1,"column":28}},"1":{"start":{"line":2,"column":12},"end":{"line":2,"column":38}},"2":{"start":{"line":3,"column":35},"end":{"line":3,"column":77}},"3":{"start":{"line":8,"column":4},"end":{"line":11,"column":6}},"4":{"start":{"line":15,"column":4},"end":{"line":15,"column":23}},"5":{"start":{"line":19,"column":19},"end":{"line":19,"column":65}},"6":{"start":{"line":20,"column":4},"end":{"line":20,"column":54}},"7":{"start":{"line":20,"column":40},"end":{"line":20,"column":54}},"8":{"start":{"line":21,"column":20},"end":{"line":21,"column":59}},"9":{"start":{"line":22,"column":24},"end":{"line":30,"column":14}},"10":{"start":{"line":24,"column":6},"end":{"line":28,"column":49}},"11":{"start":{"line":25,"column":28},"end":{"line":25,"column":66}},"12":{"start":{"line":31,"column":4},"end":{"line":31,"column":39}},"13":{"start":{"line":35,"column":19},"end":{"line":35,"column":64}},"14":{"start":{"line":36,"column":4},"end":{"line":36,"column":70}},"15":{"start":{"line":36,"column":40},"end":{"line":36,"column":70}},"16":{"start":{"line":37,"column":4},"end":{"line":40,"column":16}},"17":{"start":{"line":44,"column":19},"end":{"line":44,"column":62}},"18":{"start":{"line":45,"column":4},"end":{"line":45,"column":70}},"19":{"start":{"line":45,"column":40},"end":{"line":45,"column":70}},"20":{"start":{"line":46,"column":4},"end":{"line":49,"column":16}},"21":{"start":{"line":53,"column":19},"end":{"line":53,"column":61}},"22":{"start":{"line":54,"column":4},"end":{"line":54,"column":70}},"23":{"start":{"line":54,"column":40},"end":{"line":54,"column":70}},"24":{"start":{"line":55,"column":4},"end":{"line":58,"column":16}},"25":{"start":{"line":62,"column":0},"end":{"line":62,"column":33}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":7,"column":2},"end":{"line":7,"column":3}},"loc":{"start":{"line":7,"column":16},"end":{"line":12,"column":3}},"line":7},"1":{"name":"(anonymous_1)","decl":{"start":{"line":14,"column":2},"end":{"line":14,"column":3}},"loc":{"start":{"line":14,"column":22},"end":{"line":16,"column":3}},"line":14},"2":{"name":"(anonymous_2)","decl":{"start":{"line":18,"column":2},"end":{"line":18,"column":3}},"loc":{"start":{"line":18,"column":26},"end":{"line":32,"column":3}},"line":18},"3":{"name":"(anonymous_3)","decl":{"start":{"line":23,"column":13},"end":{"line":23,"column":14}},"loc":{"start":{"line":24,"column":6},"end":{"line":28,"column":49}},"line":24},"4":{"name":"(anonymous_4)","decl":{"start":{"line":25,"column":20},"end":{"line":25,"column":21}},"loc":{"start":{"line":25,"column":28},"end":{"line":25,"column":66}},"line":25},"5":{"name":"(anonymous_5)","decl":{"start":{"line":34,"column":2},"end":{"line":34,"column":3}},"loc":{"start":{"line":34,"column":39},"end":{"line":41,"column":3}},"line":34},"6":{"name":"(anonymous_6)","decl":{"start":{"line":43,"column":2},"end":{"line":43,"column":3}},"loc":{"start":{"line":43,"column":37},"end":{"line":50,"column":3}},"line":43},"7":{"name":"(anonymous_7)","decl":{"start":{"line":52,"column":2},"end":{"line":52,"column":3}},"loc":{"start":{"line":52,"column":36},"end":{"line":59,"column":3}},"line":52}},"branchMap":{"0":{"loc":{"start":{"line":20,"column":4},"end":{"line":20,"column":54}},"type":"if","locations":[{"start":{"line":20,"column":4},"end":{"line":20,"column":54}},{"start":{},"end":{}}],"line":20},"1":{"loc":{"start":{"line":24,"column":6},"end":{"line":28,"column":49}},"type":"cond-expr","locations":[{"start":{"line":25,"column":10},"end":{"line":25,"column":67}},{"start":{"line":26,"column":10},"end":{"line":28,"column":49}}],"line":24},"2":{"loc":{"start":{"line":26,"column":10},"end":{"line":28,"column":49}},"type":"cond-expr","locations":[{"start":{"line":27,"column":12},"end":{"line":27,"column":29}},{"start":{"line":28,"column":12},"end":{"line":28,"column":49}}],"line":26},"3":{"loc":{"start":{"line":34,"column":17},"end":{"line":34,"column":28}},"type":"default-arg","locations":[{"start":{"line":34,"column":26},"end":{"line":34,"column":28}}],"line":34},"4":{"loc":{"start":{"line":36,"column":4},"end":{"line":36,"column":70}},"type":"if","locations":[{"start":{"line":36,"column":4},"end":{"line":36,"column":70}},{"start":{},"end":{}}],"line":36},"5":{"loc":{"start":{"line":43,"column":15},"end":{"line":43,"column":26}},"type":"default-arg","locations":[{"start":{"line":43,"column":24},"end":{"line":43,"column":26}}],"line":43},"6":{"loc":{"start":{"line":45,"column":4},"end":{"line":45,"column":70}},"type":"if","locations":[{"start":{"line":45,"column":4},"end":{"line":45,"column":70}},{"start":{},"end":{}}],"line":45},"7":{"loc":{"start":{"line":52,"column":14},"end":{"line":52,"column":25}},"type":"default-arg","locations":[{"start":{"line":52,"column":23},"end":{"line":52,"column":25}}],"line":52},"8":{"loc":{"start":{"line":54,"column":4},"end":{"line":54,"column":70}},"type":"if","locations":[{"start":{"line":54,"column":4},"end":{"line":54,"column":70}},{"start":{},"end":{}}],"line":54}},"s":{"0":1,"1":1,"2":1,"3":1,"4":3,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":2,"14":2,"15":1,"16":1,"17":2,"18":2,"19":1,"20":1,"21":1,"22":1,"23":0,"24":1,"25":1},"f":{"0":1,"1":3,"2":0,"3":0,"4":0,"5":2,"6":2,"7":1},"b":{"0":[0,0],"1":[0,0],"2":[0,0],"3":[0],"4":[1,1],"5":[1],"6":[1,1],"7":[0],"8":[0,1]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"2bb2535fbda89a96cfa7ab36e4e1fb8cddc6b579","contentHash":"9341343c03fbfcb4034ad240bb6f87a88c383d4c60e02d1fe3630d2c1a0f1cc3"},"/Users/vaibhav.chopra/code/test_node_sdk/lib/api.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/lib/api.js","statementMap":{"0":{"start":{"line":3,"column":14},"end":{"line":3,"column":38}},"1":{"start":{"line":4,"column":16},"end":{"line":4,"column":42}},"2":{"start":{"line":7,"column":4},"end":{"line":7,"column":37}},"3":{"start":{"line":9,"column":23},"end":{"line":12,"column":1}},"4":{"start":{"line":16,"column":17},"end":{"line":16,"column":19}},"5":{"start":{"line":18,"column":2},"end":{"line":21,"column":3}},"6":{"start":{"line":20,"column":4},"end":{"line":20,"column":18}},"7":{"start":{"line":23,"column":2},"end":{"line":31,"column":13}},"8":{"start":{"line":25,"column":4},"end":{"line":28,"column":5}},"9":{"start":{"line":27,"column":6},"end":{"line":27,"column":47}},"10":{"start":{"line":30,"column":4},"end":{"line":30,"column":18}},"11":{"start":{"line":35,"column":2},"end":{"line":38,"column":3}},"12":{"start":{"line":43,"column":4},"end":{"line":43,"column":55}},"13":{"start":{"line":47,"column":19},"end":{"line":53,"column":5}},"14":{"start":{"line":55,"column":4},"end":{"line":60,"column":5}},"15":{"start":{"line":56,"column":6},"end":{"line":59,"column":8}},"16":{"start":{"line":62,"column":4},"end":{"line":67,"column":5}},"17":{"start":{"line":63,"column":6},"end":{"line":66,"column":7}},"18":{"start":{"line":68,"column":4},"end":{"line":68,"column":18}},"19":{"start":{"line":71,"column":12},"end":{"line":71,"column":16}},"20":{"start":{"line":74,"column":4},"end":{"line":74,"column":115}},"21":{"start":{"line":78,"column":4},"end":{"line":80,"column":33}},"22":{"start":{"line":84,"column":4},"end":{"line":85,"column":32}},"23":{"start":{"line":90,"column":5},"end":{"line":95,"column":33}},"24":{"start":{"line":99,"column":4},"end":{"line":100,"column":32}},"25":{"start":{"line":104,"column":4},"end":{"line":105,"column":32}},"26":{"start":{"line":109,"column":4},"end":{"line":110,"column":31}},"27":{"start":{"line":114,"column":0},"end":{"line":114,"column":20}}},"fnMap":{"0":{"name":"getValidHeaders","decl":{"start":{"line":14,"column":9},"end":{"line":14,"column":24}},"loc":{"start":{"line":14,"column":35},"end":{"line":32,"column":1}},"line":14},"1":{"name":"(anonymous_1)","decl":{"start":{"line":23,"column":37},"end":{"line":23,"column":38}},"loc":{"start":{"line":23,"column":67},"end":{"line":31,"column":3}},"line":23},"2":{"name":"normalizeError","decl":{"start":{"line":34,"column":9},"end":{"line":34,"column":23}},"loc":{"start":{"line":34,"column":29},"end":{"line":39,"column":1}},"line":34},"3":{"name":"(anonymous_3)","decl":{"start":{"line":42,"column":2},"end":{"line":42,"column":3}},"loc":{"start":{"line":42,"column":23},"end":{"line":44,"column":3}},"line":42},"4":{"name":"(anonymous_4)","decl":{"start":{"line":46,"column":2},"end":{"line":46,"column":3}},"loc":{"start":{"line":46,"column":25},"end":{"line":69,"column":3}},"line":46},"5":{"name":"(anonymous_5)","decl":{"start":{"line":73,"column":2},"end":{"line":73,"column":3}},"loc":{"start":{"line":73,"column":22},"end":{"line":75,"column":3}},"line":73},"6":{"name":"(anonymous_6)","decl":{"start":{"line":77,"column":2},"end":{"line":77,"column":3}},"loc":{"start":{"line":77,"column":18},"end":{"line":81,"column":3}},"line":77},"7":{"name":"(anonymous_7)","decl":{"start":{"line":83,"column":2},"end":{"line":83,"column":3}},"loc":{"start":{"line":83,"column":19},"end":{"line":86,"column":3}},"line":83},"8":{"name":"(anonymous_8)","decl":{"start":{"line":89,"column":2},"end":{"line":89,"column":3}},"loc":{"start":{"line":89,"column":26},"end":{"line":96,"column":3}},"line":89},"9":{"name":"(anonymous_9)","decl":{"start":{"line":98,"column":2},"end":{"line":98,"column":3}},"loc":{"start":{"line":98,"column":18},"end":{"line":101,"column":3}},"line":98},"10":{"name":"(anonymous_10)","decl":{"start":{"line":103,"column":2},"end":{"line":103,"column":3}},"loc":{"start":{"line":103,"column":20},"end":{"line":106,"column":3}},"line":103},"11":{"name":"(anonymous_11)","decl":{"start":{"line":108,"column":2},"end":{"line":108,"column":3}},"loc":{"start":{"line":108,"column":21},"end":{"line":111,"column":3}},"line":108}},"branchMap":{"0":{"loc":{"start":{"line":18,"column":2},"end":{"line":21,"column":3}},"type":"if","locations":[{"start":{"line":18,"column":2},"end":{"line":21,"column":3}},{"start":{},"end":{}}],"line":18},"1":{"loc":{"start":{"line":25,"column":4},"end":{"line":28,"column":5}},"type":"if","locations":[{"start":{"line":25,"column":4},"end":{"line":28,"column":5}},{"start":{},"end":{}}],"line":25},"2":{"loc":{"start":{"line":55,"column":4},"end":{"line":60,"column":5}},"type":"if","locations":[{"start":{"line":55,"column":4},"end":{"line":60,"column":5}},{"start":{},"end":{}}],"line":55},"3":{"loc":{"start":{"line":55,"column":8},"end":{"line":55,"column":44}},"type":"binary-expr","locations":[{"start":{"line":55,"column":8},"end":{"line":55,"column":22}},{"start":{"line":55,"column":26},"end":{"line":55,"column":44}}],"line":55},"4":{"loc":{"start":{"line":62,"column":4},"end":{"line":67,"column":5}},"type":"if","locations":[{"start":{"line":62,"column":4},"end":{"line":67,"column":5}},{"start":{},"end":{}}],"line":62},"5":{"loc":{"start":{"line":74,"column":11},"end":{"line":74,"column":113}},"type":"cond-expr","locations":[{"start":{"line":74,"column":46},"end":{"line":74,"column":79}},{"start":{"line":74,"column":82},"end":{"line":74,"column":113}}],"line":74}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":0,"8":0,"9":0,"10":0,"11":0,"12":1,"13":1,"14":1,"15":0,"16":1,"17":0,"18":1,"19":1,"20":0,"21":0,"22":3,"23":0,"24":0,"25":0,"26":0,"27":1},"f":{"0":1,"1":0,"2":0,"3":1,"4":1,"5":0,"6":0,"7":3,"8":0,"9":0,"10":0,"11":0},"b":{"0":[1,0],"1":[0,0],"2":[0,1],"3":[1,0],"4":[0,1],"5":[0,0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"30c48d2488227cee4f4128f9cfe5e5e180eea577","contentHash":"f65c63b25b51daf43dac3e81443c7b2ad63f18f50319bf5db824ec421cb62b8e"},"/Users/vaibhav.chopra/code/test_node_sdk/lib/utils/nodeify.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/lib/utils/nodeify.js","statementMap":{"0":{"start":{"line":3,"column":16},"end":{"line":14,"column":1}},"1":{"start":{"line":5,"column":2},"end":{"line":7,"column":3}},"2":{"start":{"line":6,"column":4},"end":{"line":6,"column":51}},"3":{"start":{"line":6,"column":37},"end":{"line":6,"column":50}},"4":{"start":{"line":9,"column":2},"end":{"line":13,"column":4}},"5":{"start":{"line":10,"column":4},"end":{"line":10,"column":27}},"6":{"start":{"line":12,"column":4},"end":{"line":12,"column":19}},"7":{"start":{"line":16,"column":0},"end":{"line":16,"column":24}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":16},"end":{"line":3,"column":17}},"loc":{"start":{"line":3,"column":33},"end":{"line":14,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":24},"end":{"line":6,"column":25}},"loc":{"start":{"line":6,"column":37},"end":{"line":6,"column":50}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":9,"column":22},"end":{"line":9,"column":23}},"loc":{"start":{"line":9,"column":36},"end":{"line":11,"column":3}},"line":9},"3":{"name":"(anonymous_3)","decl":{"start":{"line":11,"column":11},"end":{"line":11,"column":12}},"loc":{"start":{"line":11,"column":22},"end":{"line":13,"column":3}},"line":11}},"branchMap":{"0":{"loc":{"start":{"line":5,"column":2},"end":{"line":7,"column":3}},"type":"if","locations":[{"start":{"line":5,"column":2},"end":{"line":7,"column":3}},{"start":{},"end":{}}],"line":5}},"s":{"0":1,"1":3,"2":3,"3":3,"4":0,"5":0,"6":0,"7":1},"f":{"0":3,"1":3,"2":0,"3":0},"b":{"0":[3,0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"9f0ace70d8c1da11d7651085306977f1ea763eee","contentHash":"7c60cb914a54ceb6d6eec00de37e68313ec681de81eddb441971ff7d281337ee"},"/Users/vaibhav.chopra/code/test_node_sdk/lib/utils/razorpay-utils.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/lib/utils/razorpay-utils.js","statementMap":{"0":{"start":{"line":1,"column":15},"end":{"line":1,"column":32}},"1":{"start":{"line":4,"column":2},"end":{"line":4,"column":31}},"2":{"start":{"line":8,"column":2},"end":{"line":8,"column":51}},"3":{"start":{"line":12,"column":2},"end":{"line":12,"column":28}},"4":{"start":{"line":16,"column":2},"end":{"line":18,"column":31}},"5":{"start":{"line":22,"column":2},"end":{"line":24,"column":3}},"6":{"start":{"line":23,"column":4},"end":{"line":23,"column":15}},"7":{"start":{"line":26,"column":2},"end":{"line":26,"column":21}},"8":{"start":{"line":31,"column":2},"end":{"line":31,"column":38}},"9":{"start":{"line":35,"column":24},"end":{"line":35,"column":26}},"10":{"start":{"line":36,"column":2},"end":{"line":38,"column":3}},"11":{"start":{"line":37,"column":4},"end":{"line":37,"column":49}},"12":{"start":{"line":39,"column":2},"end":{"line":39,"column":24}},"13":{"start":{"line":51,"column":2},"end":{"line":51,"column":38}},"14":{"start":{"line":64,"column":2},"end":{"line":68,"column":4}},"15":{"start":{"line":83,"column":15},"end":{"line":83,"column":32}},"16":{"start":{"line":85,"column":2},"end":{"line":94,"column":3}},"17":{"start":{"line":89,"column":4},"end":{"line":93,"column":6}},"18":{"start":{"line":96,"column":2},"end":{"line":96,"column":25}},"19":{"start":{"line":99,"column":21},"end":{"line":101,"column":36}},"20":{"start":{"line":106,"column":22},"end":{"line":106,"column":51}},"21":{"start":{"line":109,"column":0},"end":{"line":111,"column":1}},"22":{"start":{"line":110,"column":2},"end":{"line":110,"column":15}},"23":{"start":{"line":114,"column":0},"end":{"line":114,"column":63}},"24":{"start":{"line":128,"column":20},"end":{"line":128,"column":37}},"25":{"start":{"line":130,"column":4},"end":{"line":133,"column":5}},"26":{"start":{"line":132,"column":6},"end":{"line":132,"column":45}},"27":{"start":{"line":135,"column":4},"end":{"line":155,"column":5}},"28":{"start":{"line":137,"column":20},"end":{"line":137,"column":35}},"29":{"start":{"line":138,"column":20},"end":{"line":138,"column":45}},"30":{"start":{"line":140,"column":10},"end":{"line":155,"column":5}},"31":{"start":{"line":142,"column":27},"end":{"line":142,"column":49}},"32":{"start":{"line":143,"column":20},"end":{"line":143,"column":52}},"33":{"start":{"line":145,"column":10},"end":{"line":155,"column":5}},"34":{"start":{"line":147,"column":26},"end":{"line":147,"column":48}},"35":{"start":{"line":148,"column":29},"end":{"line":148,"column":61}},"36":{"start":{"line":149,"column":30},"end":{"line":149,"column":56}},"37":{"start":{"line":151,"column":20},"end":{"line":151,"column":102}},"38":{"start":{"line":154,"column":6},"end":{"line":154,"column":73}},"39":{"start":{"line":156,"column":2},"end":{"line":156,"column":60}},"40":{"start":{"line":160,"column":16},"end":{"line":160,"column":38}},"41":{"start":{"line":161,"column":2},"end":{"line":161,"column":34}},"42":{"start":{"line":165,"column":2},"end":{"line":188,"column":3}},"43":{"start":{"line":167,"column":21},"end":{"line":167,"column":61}},"44":{"start":{"line":170,"column":15},"end":{"line":170,"column":31}},"45":{"start":{"line":171,"column":4},"end":{"line":171,"column":32}},"46":{"start":{"line":174,"column":19},"end":{"line":174,"column":69}},"47":{"start":{"line":177,"column":24},"end":{"line":177,"column":60}},"48":{"start":{"line":178,"column":4},"end":{"line":178,"column":67}},"49":{"start":{"line":181,"column":20},"end":{"line":181,"column":39}},"50":{"start":{"line":182,"column":22},"end":{"line":182,"column":61}},"51":{"start":{"line":185,"column":4},"end":{"line":185,"column":37}},"52":{"start":{"line":187,"column":4},"end":{"line":187,"column":57}},"53":{"start":{"line":192,"column":2},"end":{"line":197,"column":3}},"54":{"start":{"line":193,"column":4},"end":{"line":193,"column":17}},"55":{"start":{"line":194,"column":4},"end":{"line":194,"column":16}},"56":{"start":{"line":196,"column":4},"end":{"line":196,"column":17}},"57":{"start":{"line":200,"column":0},"end":{"line":214,"column":1}}},"fnMap":{"0":{"name":"getDateInSecs","decl":{"start":{"line":3,"column":9},"end":{"line":3,"column":22}},"loc":{"start":{"line":3,"column":29},"end":{"line":5,"column":1}},"line":3},"1":{"name":"normalizeDate","decl":{"start":{"line":7,"column":9},"end":{"line":7,"column":22}},"loc":{"start":{"line":7,"column":29},"end":{"line":9,"column":1}},"line":7},"2":{"name":"isNumber","decl":{"start":{"line":11,"column":9},"end":{"line":11,"column":17}},"loc":{"start":{"line":11,"column":23},"end":{"line":13,"column":1}},"line":11},"3":{"name":"isNonNullObject","decl":{"start":{"line":15,"column":9},"end":{"line":15,"column":24}},"loc":{"start":{"line":15,"column":32},"end":{"line":19,"column":1}},"line":15},"4":{"name":"normalizeBoolean","decl":{"start":{"line":21,"column":9},"end":{"line":21,"column":25}},"loc":{"start":{"line":21,"column":32},"end":{"line":27,"column":1}},"line":21},"5":{"name":"isDefined","decl":{"start":{"line":29,"column":9},"end":{"line":29,"column":18}},"loc":{"start":{"line":29,"column":27},"end":{"line":32,"column":1}},"line":29},"6":{"name":"normalizeNotes","decl":{"start":{"line":34,"column":9},"end":{"line":34,"column":23}},"loc":{"start":{"line":34,"column":36},"end":{"line":40,"column":1}},"line":34},"7":{"name":"prettify","decl":{"start":{"line":42,"column":9},"end":{"line":42,"column":17}},"loc":{"start":{"line":42,"column":24},"end":{"line":52,"column":1}},"line":42},"8":{"name":"getTestError","decl":{"start":{"line":54,"column":9},"end":{"line":54,"column":21}},"loc":{"start":{"line":54,"column":53},"end":{"line":69,"column":1}},"line":54},"9":{"name":"validateWebhookSignature","decl":{"start":{"line":71,"column":9},"end":{"line":71,"column":33}},"loc":{"start":{"line":71,"column":60},"end":{"line":115,"column":1}},"line":71},"10":{"name":"validatePaymentVerification","decl":{"start":{"line":117,"column":9},"end":{"line":117,"column":36}},"loc":{"start":{"line":117,"column":66},"end":{"line":157,"column":1}},"line":117},"11":{"name":"generateOnboardingSignature","decl":{"start":{"line":159,"column":9},"end":{"line":159,"column":36}},"loc":{"start":{"line":159,"column":55},"end":{"line":162,"column":1}},"line":159},"12":{"name":"encrypt","decl":{"start":{"line":164,"column":9},"end":{"line":164,"column":16}},"loc":{"start":{"line":164,"column":40},"end":{"line":189,"column":1}},"line":164},"13":{"name":"isValidUrl","decl":{"start":{"line":191,"column":9},"end":{"line":191,"column":19}},"loc":{"start":{"line":191,"column":25},"end":{"line":198,"column":1}},"line":191}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":9},"end":{"line":8,"column":51}},"type":"cond-expr","locations":[{"start":{"line":8,"column":25},"end":{"line":8,"column":29}},{"start":{"line":8,"column":32},"end":{"line":8,"column":51}}],"line":8},"1":{"loc":{"start":{"line":16,"column":9},"end":{"line":18,"column":30}},"type":"binary-expr","locations":[{"start":{"line":16,"column":9},"end":{"line":16,"column":16}},{"start":{"line":17,"column":9},"end":{"line":17,"column":34}},{"start":{"line":18,"column":9},"end":{"line":18,"column":30}}],"line":16},"2":{"loc":{"start":{"line":22,"column":2},"end":{"line":24,"column":3}},"type":"if","locations":[{"start":{"line":22,"column":2},"end":{"line":24,"column":3}},{"start":{},"end":{}}],"line":22},"3":{"loc":{"start":{"line":26,"column":9},"end":{"line":26,"column":21}},"type":"cond-expr","locations":[{"start":{"line":26,"column":16},"end":{"line":26,"column":17}},{"start":{"line":26,"column":20},"end":{"line":26,"column":21}}],"line":26},"4":{"loc":{"start":{"line":34,"column":24},"end":{"line":34,"column":34}},"type":"default-arg","locations":[{"start":{"line":34,"column":32},"end":{"line":34,"column":34}}],"line":34},"5":{"loc":{"start":{"line":85,"column":2},"end":{"line":94,"column":3}},"type":"if","locations":[{"start":{"line":85,"column":2},"end":{"line":94,"column":3}},{"start":{},"end":{}}],"line":85},"6":{"loc":{"start":{"line":85,"column":6},"end":{"line":87,"column":24}},"type":"binary-expr","locations":[{"start":{"line":85,"column":6},"end":{"line":85,"column":22}},{"start":{"line":86,"column":6},"end":{"line":86,"column":27}},{"start":{"line":87,"column":6},"end":{"line":87,"column":24}}],"line":85},"7":{"loc":{"start":{"line":109,"column":0},"end":{"line":111,"column":1}},"type":"if","locations":[{"start":{"line":109,"column":0},"end":{"line":111,"column":1}},{"start":{},"end":{}}],"line":109},"8":{"loc":{"start":{"line":117,"column":37},"end":{"line":117,"column":46}},"type":"default-arg","locations":[{"start":{"line":117,"column":44},"end":{"line":117,"column":46}}],"line":117},"9":{"loc":{"start":{"line":130,"column":4},"end":{"line":133,"column":5}},"type":"if","locations":[{"start":{"line":130,"column":4},"end":{"line":133,"column":5}},{"start":{},"end":{}}],"line":130},"10":{"loc":{"start":{"line":135,"column":4},"end":{"line":155,"column":5}},"type":"if","locations":[{"start":{"line":135,"column":4},"end":{"line":155,"column":5}},{"start":{"line":140,"column":10},"end":{"line":155,"column":5}}],"line":135},"11":{"loc":{"start":{"line":140,"column":10},"end":{"line":155,"column":5}},"type":"if","locations":[{"start":{"line":140,"column":10},"end":{"line":155,"column":5}},{"start":{"line":145,"column":10},"end":{"line":155,"column":5}}],"line":140},"12":{"loc":{"start":{"line":145,"column":10},"end":{"line":155,"column":5}},"type":"if","locations":[{"start":{"line":145,"column":10},"end":{"line":155,"column":5}},{"start":{"line":153,"column":9},"end":{"line":155,"column":5}}],"line":145},"13":{"loc":{"start":{"line":159,"column":37},"end":{"line":159,"column":46}},"type":"default-arg","locations":[{"start":{"line":159,"column":44},"end":{"line":159,"column":46}}],"line":159}},"s":{"0":1,"1":0,"2":0,"3":0,"4":1,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":1,"54":1,"55":1,"56":0,"57":1},"f":{"0":0,"1":0,"2":0,"3":1,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":1},"b":{"0":[0,0],"1":[1,0,0],"2":[0,0],"3":[0,0],"4":[0],"5":[0,0],"6":[0,0,0],"7":[0,0],"8":[0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0],"13":[0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"500431de148db0f307337213a0eed8ba9f5a0a80","contentHash":"dc58c78ed77d854265d819696465124af48bad83930811bdd48b235cb051d9ff"},"/Users/vaibhav.chopra/code/test_node_sdk/lib/resources/oAuthTokenValidator.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/lib/resources/oAuthTokenValidator.js","statementMap":{"0":{"start":{"line":1,"column":23},"end":{"line":1,"column":57}},"1":{"start":{"line":3,"column":16},"end":{"line":30,"column":3}},"2":{"start":{"line":33,"column":17},"end":{"line":33,"column":19}},"3":{"start":{"line":34,"column":4},"end":{"line":44,"column":5}},"4":{"start":{"line":35,"column":6},"end":{"line":43,"column":7}},"5":{"start":{"line":36,"column":8},"end":{"line":36,"column":38}},"6":{"start":{"line":37,"column":13},"end":{"line":43,"column":7}},"7":{"start":{"line":38,"column":8},"end":{"line":38,"column":58}},"8":{"start":{"line":39,"column":13},"end":{"line":43,"column":7}},"9":{"start":{"line":40,"column":8},"end":{"line":40,"column":54}},"10":{"start":{"line":41,"column":13},"end":{"line":43,"column":7}},"11":{"start":{"line":42,"column":8},"end":{"line":42,"column":52}},"12":{"start":{"line":45,"column":4},"end":{"line":45,"column":18}},"13":{"start":{"line":48,"column":0},"end":{"line":51,"column":1}}},"fnMap":{"0":{"name":"validateInput","decl":{"start":{"line":32,"column":11},"end":{"line":32,"column":24}},"loc":{"start":{"line":32,"column":44},"end":{"line":46,"column":3}},"line":32}},"branchMap":{"0":{"loc":{"start":{"line":35,"column":6},"end":{"line":43,"column":7}},"type":"if","locations":[{"start":{"line":35,"column":6},"end":{"line":43,"column":7}},{"start":{"line":37,"column":13},"end":{"line":43,"column":7}}],"line":35},"1":{"loc":{"start":{"line":35,"column":10},"end":{"line":35,"column":107}},"type":"binary-expr","locations":[{"start":{"line":35,"column":10},"end":{"line":35,"column":31}},{"start":{"line":35,"column":36},"end":{"line":35,"column":72}},{"start":{"line":35,"column":76},"end":{"line":35,"column":106}}],"line":35},"2":{"loc":{"start":{"line":37,"column":13},"end":{"line":43,"column":7}},"type":"if","locations":[{"start":{"line":37,"column":13},"end":{"line":43,"column":7}},{"start":{"line":39,"column":13},"end":{"line":43,"column":7}}],"line":37},"3":{"loc":{"start":{"line":37,"column":17},"end":{"line":37,"column":75}},"type":"binary-expr","locations":[{"start":{"line":37,"column":17},"end":{"line":37,"column":41}},{"start":{"line":37,"column":45},"end":{"line":37,"column":75}}],"line":37},"4":{"loc":{"start":{"line":39,"column":13},"end":{"line":43,"column":7}},"type":"if","locations":[{"start":{"line":39,"column":13},"end":{"line":43,"column":7}},{"start":{"line":41,"column":13},"end":{"line":43,"column":7}}],"line":39},"5":{"loc":{"start":{"line":39,"column":17},"end":{"line":39,"column":87}},"type":"binary-expr","locations":[{"start":{"line":39,"column":17},"end":{"line":39,"column":38}},{"start":{"line":39,"column":42},"end":{"line":39,"column":87}}],"line":39},"6":{"loc":{"start":{"line":41,"column":13},"end":{"line":43,"column":7}},"type":"if","locations":[{"start":{"line":41,"column":13},"end":{"line":43,"column":7}},{"start":{},"end":{}}],"line":41},"7":{"loc":{"start":{"line":41,"column":16},"end":{"line":41,"column":125}},"type":"binary-expr","locations":[{"start":{"line":41,"column":16},"end":{"line":41,"column":38}},{"start":{"line":41,"column":43},"end":{"line":41,"column":79}},{"start":{"line":41,"column":83},"end":{"line":41,"column":124}}],"line":41}},"s":{"0":1,"1":1,"2":5,"3":5,"4":22,"5":6,"6":16,"7":0,"8":16,"9":0,"10":16,"11":0,"12":5,"13":1},"f":{"0":5},"b":{"0":[6,16],"1":[22,16,16],"2":[0,16],"3":[16,1],"4":[0,16],"5":[16,4],"6":[0,16],"7":[16,3,2]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"962a0ed0a23fe0c499589f9c7de1e65abad7b9ec","contentHash":"c44fdfadf3f70ed24daf41f20c3fc711ff583ad0b8c956f238e32e0799415e35"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/razorpay.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/razorpay.js","statementMap":{"0":{"start":{"line":3,"column":12},"end":{"line":3,"column":28}},"1":{"start":{"line":4,"column":12},"end":{"line":4,"column":38}},"2":{"start":{"line":7,"column":4},"end":{"line":7,"column":37}},"3":{"start":{"line":9,"column":19},"end":{"line":9,"column":30}},"4":{"start":{"line":11,"column":4},"end":{"line":11,"column":45}},"5":{"start":{"line":19,"column":8},"end":{"line":19,"column":15}},"6":{"start":{"line":20,"column":4},"end":{"line":22,"column":5}},"7":{"start":{"line":21,"column":6},"end":{"line":21,"column":63}},"8":{"start":{"line":23,"column":4},"end":{"line":23,"column":25}},"9":{"start":{"line":24,"column":4},"end":{"line":24,"column":33}},"10":{"start":{"line":25,"column":4},"end":{"line":25,"column":33}},"11":{"start":{"line":26,"column":4},"end":{"line":33,"column":7}},"12":{"start":{"line":34,"column":4},"end":{"line":34,"column":24}},"13":{"start":{"line":37,"column":4},"end":{"line":62,"column":7}},"14":{"start":{"line":65,"column":0},"end":{"line":65,"column":26}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":10,"column":2},"end":{"line":10,"column":3}},"loc":{"start":{"line":10,"column":43},"end":{"line":12,"column":3}},"line":10},"1":{"name":"(anonymous_1)","decl":{"start":{"line":13,"column":2},"end":{"line":13,"column":3}},"loc":{"start":{"line":13,"column":28},"end":{"line":35,"column":3}},"line":13},"2":{"name":"(anonymous_2)","decl":{"start":{"line":36,"column":2},"end":{"line":36,"column":3}},"loc":{"start":{"line":36,"column":17},"end":{"line":63,"column":3}},"line":36}},"branchMap":{"0":{"loc":{"start":{"line":13,"column":14},"end":{"line":13,"column":26}},"type":"default-arg","locations":[{"start":{"line":13,"column":24},"end":{"line":13,"column":26}}],"line":13},"1":{"loc":{"start":{"line":20,"column":4},"end":{"line":22,"column":5}},"type":"if","locations":[{"start":{"line":20,"column":4},"end":{"line":22,"column":5}},{"start":{},"end":{}}],"line":20},"2":{"loc":{"start":{"line":20,"column":8},"end":{"line":20,"column":30}},"type":"binary-expr","locations":[{"start":{"line":20,"column":8},"end":{"line":20,"column":15}},{"start":{"line":20,"column":19},"end":{"line":20,"column":30}}],"line":20}},"s":{"0":1,"1":1,"2":1,"3":1,"4":0,"5":4,"6":4,"7":1,"8":3,"9":3,"10":3,"11":3,"12":3,"13":3,"14":1},"f":{"0":0,"1":4,"2":3},"b":{"0":[1],"1":[1,3],"2":[4,2]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"570553aa37870788c9b932bba48df2885580773d","contentHash":"03e40eb730d75a42585b30271d46debf6861afdfd8c9531c9a49dd32b88fb338"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/api.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/api.js","statementMap":{"0":{"start":{"line":3,"column":14},"end":{"line":3,"column":38}},"1":{"start":{"line":4,"column":16},"end":{"line":4,"column":42}},"2":{"start":{"line":7,"column":4},"end":{"line":7,"column":37}},"3":{"start":{"line":8,"column":23},"end":{"line":11,"column":1}},"4":{"start":{"line":13,"column":17},"end":{"line":13,"column":19}},"5":{"start":{"line":14,"column":2},"end":{"line":16,"column":3}},"6":{"start":{"line":15,"column":4},"end":{"line":15,"column":18}},"7":{"start":{"line":17,"column":2},"end":{"line":22,"column":13}},"8":{"start":{"line":18,"column":4},"end":{"line":20,"column":5}},"9":{"start":{"line":19,"column":6},"end":{"line":19,"column":47}},"10":{"start":{"line":21,"column":4},"end":{"line":21,"column":18}},"11":{"start":{"line":25,"column":2},"end":{"line":28,"column":4}},"12":{"start":{"line":32,"column":4},"end":{"line":32,"column":56}},"13":{"start":{"line":35,"column":19},"end":{"line":40,"column":5}},"14":{"start":{"line":41,"column":4},"end":{"line":46,"column":5}},"15":{"start":{"line":42,"column":6},"end":{"line":45,"column":8}},"16":{"start":{"line":47,"column":4},"end":{"line":52,"column":5}},"17":{"start":{"line":48,"column":6},"end":{"line":51,"column":8}},"18":{"start":{"line":53,"column":4},"end":{"line":53,"column":18}},"19":{"start":{"line":55,"column":12},"end":{"line":55,"column":16}},"20":{"start":{"line":57,"column":4},"end":{"line":57,"column":114}},"21":{"start":{"line":60,"column":4},"end":{"line":62,"column":34}},"22":{"start":{"line":65,"column":4},"end":{"line":65,"column":99}},"23":{"start":{"line":70,"column":4},"end":{"line":74,"column":34}},"24":{"start":{"line":77,"column":4},"end":{"line":77,"column":98}},"25":{"start":{"line":80,"column":4},"end":{"line":80,"column":100}},"26":{"start":{"line":83,"column":4},"end":{"line":83,"column":88}},"27":{"start":{"line":86,"column":0},"end":{"line":86,"column":21}}},"fnMap":{"0":{"name":"getValidHeaders","decl":{"start":{"line":12,"column":9},"end":{"line":12,"column":24}},"loc":{"start":{"line":12,"column":34},"end":{"line":23,"column":1}},"line":12},"1":{"name":"(anonymous_1)","decl":{"start":{"line":17,"column":37},"end":{"line":17,"column":38}},"loc":{"start":{"line":17,"column":67},"end":{"line":22,"column":3}},"line":17},"2":{"name":"normalizeError","decl":{"start":{"line":24,"column":9},"end":{"line":24,"column":23}},"loc":{"start":{"line":24,"column":29},"end":{"line":29,"column":1}},"line":24},"3":{"name":"(anonymous_3)","decl":{"start":{"line":31,"column":2},"end":{"line":31,"column":3}},"loc":{"start":{"line":31,"column":23},"end":{"line":33,"column":3}},"line":31},"4":{"name":"(anonymous_4)","decl":{"start":{"line":34,"column":2},"end":{"line":34,"column":3}},"loc":{"start":{"line":34,"column":25},"end":{"line":54,"column":3}},"line":34},"5":{"name":"(anonymous_5)","decl":{"start":{"line":56,"column":2},"end":{"line":56,"column":3}},"loc":{"start":{"line":56,"column":23},"end":{"line":58,"column":3}},"line":56},"6":{"name":"(anonymous_6)","decl":{"start":{"line":59,"column":2},"end":{"line":59,"column":3}},"loc":{"start":{"line":59,"column":18},"end":{"line":63,"column":3}},"line":59},"7":{"name":"(anonymous_7)","decl":{"start":{"line":64,"column":2},"end":{"line":64,"column":3}},"loc":{"start":{"line":64,"column":19},"end":{"line":66,"column":3}},"line":64},"8":{"name":"(anonymous_8)","decl":{"start":{"line":69,"column":2},"end":{"line":69,"column":3}},"loc":{"start":{"line":69,"column":27},"end":{"line":75,"column":3}},"line":69},"9":{"name":"(anonymous_9)","decl":{"start":{"line":76,"column":2},"end":{"line":76,"column":3}},"loc":{"start":{"line":76,"column":18},"end":{"line":78,"column":3}},"line":76},"10":{"name":"(anonymous_10)","decl":{"start":{"line":79,"column":2},"end":{"line":79,"column":3}},"loc":{"start":{"line":79,"column":20},"end":{"line":81,"column":3}},"line":79},"11":{"name":"(anonymous_11)","decl":{"start":{"line":82,"column":2},"end":{"line":82,"column":3}},"loc":{"start":{"line":82,"column":21},"end":{"line":84,"column":3}},"line":82}},"branchMap":{"0":{"loc":{"start":{"line":14,"column":2},"end":{"line":16,"column":3}},"type":"if","locations":[{"start":{"line":14,"column":2},"end":{"line":16,"column":3}},{"start":{},"end":{}}],"line":14},"1":{"loc":{"start":{"line":18,"column":4},"end":{"line":20,"column":5}},"type":"if","locations":[{"start":{"line":18,"column":4},"end":{"line":20,"column":5}},{"start":{},"end":{}}],"line":18},"2":{"loc":{"start":{"line":41,"column":4},"end":{"line":46,"column":5}},"type":"if","locations":[{"start":{"line":41,"column":4},"end":{"line":46,"column":5}},{"start":{},"end":{}}],"line":41},"3":{"loc":{"start":{"line":41,"column":8},"end":{"line":41,"column":44}},"type":"binary-expr","locations":[{"start":{"line":41,"column":8},"end":{"line":41,"column":22}},{"start":{"line":41,"column":26},"end":{"line":41,"column":44}}],"line":41},"4":{"loc":{"start":{"line":47,"column":4},"end":{"line":52,"column":5}},"type":"if","locations":[{"start":{"line":47,"column":4},"end":{"line":52,"column":5}},{"start":{},"end":{}}],"line":47},"5":{"loc":{"start":{"line":57,"column":11},"end":{"line":57,"column":113}},"type":"cond-expr","locations":[{"start":{"line":57,"column":46},"end":{"line":57,"column":79}},{"start":{"line":57,"column":82},"end":{"line":57,"column":113}}],"line":57}},"s":{"0":1,"1":1,"2":1,"3":1,"4":3,"5":3,"6":3,"7":0,"8":0,"9":0,"10":0,"11":59,"12":3,"13":3,"14":3,"15":2,"16":3,"17":1,"18":3,"19":3,"20":321,"21":167,"22":108,"23":1,"24":1,"25":24,"26":20,"27":1},"f":{"0":3,"1":0,"2":59,"3":3,"4":3,"5":321,"6":167,"7":108,"8":1,"9":1,"10":24,"11":20},"b":{"0":[3,0],"1":[0,0],"2":[2,1],"3":[3,2],"4":[1,2],"5":[16,305]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"06b92b34cc7187ce0416d508eecdbad3994dad36","contentHash":"27998d675eff2676e3c3e4fe874745de2b18e176f7e8613d7163b3a13fa1713b"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/nodeify.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/nodeify.js","statementMap":{"0":{"start":{"line":3,"column":16},"end":{"line":12,"column":1}},"1":{"start":{"line":4,"column":2},"end":{"line":6,"column":3}},"2":{"start":{"line":5,"column":4},"end":{"line":5,"column":51}},"3":{"start":{"line":5,"column":36},"end":{"line":5,"column":49}},"4":{"start":{"line":7,"column":2},"end":{"line":11,"column":5}},"5":{"start":{"line":8,"column":4},"end":{"line":8,"column":28}},"6":{"start":{"line":10,"column":4},"end":{"line":10,"column":20}},"7":{"start":{"line":13,"column":0},"end":{"line":13,"column":25}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":16},"end":{"line":3,"column":17}},"loc":{"start":{"line":3,"column":33},"end":{"line":12,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":5,"column":24},"end":{"line":5,"column":25}},"loc":{"start":{"line":5,"column":36},"end":{"line":5,"column":49}},"line":5},"2":{"name":"(anonymous_2)","decl":{"start":{"line":7,"column":22},"end":{"line":7,"column":23}},"loc":{"start":{"line":7,"column":34},"end":{"line":9,"column":3}},"line":7},"3":{"name":"(anonymous_3)","decl":{"start":{"line":9,"column":11},"end":{"line":9,"column":12}},"loc":{"start":{"line":9,"column":20},"end":{"line":11,"column":3}},"line":9}},"branchMap":{"0":{"loc":{"start":{"line":4,"column":2},"end":{"line":6,"column":3}},"type":"if","locations":[{"start":{"line":4,"column":2},"end":{"line":6,"column":3}},{"start":{},"end":{}}],"line":4}},"s":{"0":1,"1":323,"2":181,"3":177,"4":142,"5":86,"6":56,"7":1},"f":{"0":323,"1":177,"2":86,"3":56},"b":{"0":[181,142]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"e32da181c4a5b6be824452df6c1f16c07dfdc658","contentHash":"49ba86af85005026247145804a3d8b97fcf39facddfe17bcb72e57420213f5e0"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/razorpay-utils.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/razorpay-utils.js","statementMap":{"0":{"start":{"line":3,"column":15},"end":{"line":3,"column":32}},"1":{"start":{"line":5,"column":2},"end":{"line":5,"column":32}},"2":{"start":{"line":8,"column":2},"end":{"line":8,"column":53}},"3":{"start":{"line":11,"column":2},"end":{"line":11,"column":29}},"4":{"start":{"line":14,"column":2},"end":{"line":14,"column":71}},"5":{"start":{"line":17,"column":2},"end":{"line":19,"column":3}},"6":{"start":{"line":18,"column":4},"end":{"line":18,"column":16}},"7":{"start":{"line":20,"column":2},"end":{"line":20,"column":22}},"8":{"start":{"line":23,"column":2},"end":{"line":23,"column":38}},"9":{"start":{"line":26,"column":24},"end":{"line":26,"column":26}},"10":{"start":{"line":27,"column":2},"end":{"line":29,"column":3}},"11":{"start":{"line":28,"column":4},"end":{"line":28,"column":50}},"12":{"start":{"line":30,"column":2},"end":{"line":30,"column":25}},"13":{"start":{"line":40,"column":2},"end":{"line":40,"column":38}},"14":{"start":{"line":51,"column":2},"end":{"line":51,"column":150}},"15":{"start":{"line":64,"column":15},"end":{"line":64,"column":32}},"16":{"start":{"line":65,"column":2},"end":{"line":67,"column":3}},"17":{"start":{"line":66,"column":4},"end":{"line":66,"column":168}},"18":{"start":{"line":68,"column":2},"end":{"line":68,"column":25}},"19":{"start":{"line":71,"column":23},"end":{"line":71,"column":80}},"20":{"start":{"line":76,"column":24},"end":{"line":76,"column":53}},"21":{"start":{"line":79,"column":2},"end":{"line":81,"column":3}},"22":{"start":{"line":80,"column":4},"end":{"line":80,"column":17}},"23":{"start":{"line":84,"column":2},"end":{"line":84,"column":65}},"24":{"start":{"line":96,"column":18},"end":{"line":96,"column":35}},"25":{"start":{"line":97,"column":2},"end":{"line":99,"column":3}},"26":{"start":{"line":98,"column":4},"end":{"line":98,"column":43}},"27":{"start":{"line":100,"column":2},"end":{"line":113,"column":3}},"28":{"start":{"line":101,"column":18},"end":{"line":101,"column":33}},"29":{"start":{"line":102,"column":18},"end":{"line":102,"column":43}},"30":{"start":{"line":103,"column":9},"end":{"line":113,"column":3}},"31":{"start":{"line":104,"column":25},"end":{"line":104,"column":47}},"32":{"start":{"line":105,"column":18},"end":{"line":105,"column":50}},"33":{"start":{"line":106,"column":9},"end":{"line":113,"column":3}},"34":{"start":{"line":107,"column":24},"end":{"line":107,"column":46}},"35":{"start":{"line":108,"column":27},"end":{"line":108,"column":59}},"36":{"start":{"line":109,"column":28},"end":{"line":109,"column":54}},"37":{"start":{"line":110,"column":18},"end":{"line":110,"column":100}},"38":{"start":{"line":112,"column":4},"end":{"line":112,"column":71}},"39":{"start":{"line":114,"column":2},"end":{"line":114,"column":62}},"40":{"start":{"line":118,"column":16},"end":{"line":118,"column":38}},"41":{"start":{"line":119,"column":2},"end":{"line":119,"column":34}},"42":{"start":{"line":122,"column":2},"end":{"line":145,"column":3}},"43":{"start":{"line":124,"column":21},"end":{"line":124,"column":61}},"44":{"start":{"line":127,"column":15},"end":{"line":127,"column":31}},"45":{"start":{"line":128,"column":4},"end":{"line":128,"column":32}},"46":{"start":{"line":131,"column":19},"end":{"line":131,"column":69}},"47":{"start":{"line":134,"column":24},"end":{"line":134,"column":60}},"48":{"start":{"line":135,"column":4},"end":{"line":135,"column":67}},"49":{"start":{"line":138,"column":20},"end":{"line":138,"column":39}},"50":{"start":{"line":139,"column":22},"end":{"line":139,"column":61}},"51":{"start":{"line":142,"column":4},"end":{"line":142,"column":37}},"52":{"start":{"line":144,"column":4},"end":{"line":144,"column":57}},"53":{"start":{"line":148,"column":2},"end":{"line":153,"column":3}},"54":{"start":{"line":149,"column":4},"end":{"line":149,"column":17}},"55":{"start":{"line":150,"column":4},"end":{"line":150,"column":16}},"56":{"start":{"line":152,"column":4},"end":{"line":152,"column":17}},"57":{"start":{"line":155,"column":0},"end":{"line":169,"column":2}}},"fnMap":{"0":{"name":"getDateInSecs","decl":{"start":{"line":4,"column":9},"end":{"line":4,"column":22}},"loc":{"start":{"line":4,"column":29},"end":{"line":6,"column":1}},"line":4},"1":{"name":"normalizeDate","decl":{"start":{"line":7,"column":9},"end":{"line":7,"column":22}},"loc":{"start":{"line":7,"column":29},"end":{"line":9,"column":1}},"line":7},"2":{"name":"isNumber","decl":{"start":{"line":10,"column":9},"end":{"line":10,"column":17}},"loc":{"start":{"line":10,"column":23},"end":{"line":12,"column":1}},"line":10},"3":{"name":"isNonNullObject","decl":{"start":{"line":13,"column":9},"end":{"line":13,"column":24}},"loc":{"start":{"line":13,"column":32},"end":{"line":15,"column":1}},"line":13},"4":{"name":"normalizeBoolean","decl":{"start":{"line":16,"column":9},"end":{"line":16,"column":25}},"loc":{"start":{"line":16,"column":32},"end":{"line":21,"column":1}},"line":16},"5":{"name":"isDefined","decl":{"start":{"line":22,"column":9},"end":{"line":22,"column":18}},"loc":{"start":{"line":22,"column":26},"end":{"line":24,"column":1}},"line":22},"6":{"name":"normalizeNotes","decl":{"start":{"line":25,"column":9},"end":{"line":25,"column":23}},"loc":{"start":{"line":25,"column":36},"end":{"line":31,"column":1}},"line":25},"7":{"name":"prettify","decl":{"start":{"line":32,"column":9},"end":{"line":32,"column":17}},"loc":{"start":{"line":32,"column":23},"end":{"line":41,"column":1}},"line":32},"8":{"name":"getTestError","decl":{"start":{"line":42,"column":9},"end":{"line":42,"column":21}},"loc":{"start":{"line":42,"column":52},"end":{"line":52,"column":1}},"line":42},"9":{"name":"validateWebhookSignature","decl":{"start":{"line":53,"column":9},"end":{"line":53,"column":33}},"loc":{"start":{"line":53,"column":59},"end":{"line":85,"column":1}},"line":53},"10":{"name":"validatePaymentVerification","decl":{"start":{"line":86,"column":9},"end":{"line":86,"column":36}},"loc":{"start":{"line":86,"column":69},"end":{"line":115,"column":1}},"line":86},"11":{"name":"generateOnboardingSignature","decl":{"start":{"line":117,"column":9},"end":{"line":117,"column":36}},"loc":{"start":{"line":117,"column":58},"end":{"line":120,"column":1}},"line":117},"12":{"name":"encrypt","decl":{"start":{"line":121,"column":9},"end":{"line":121,"column":16}},"loc":{"start":{"line":121,"column":40},"end":{"line":146,"column":1}},"line":121},"13":{"name":"isValidUrl","decl":{"start":{"line":147,"column":9},"end":{"line":147,"column":19}},"loc":{"start":{"line":147,"column":25},"end":{"line":154,"column":1}},"line":147}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":9},"end":{"line":8,"column":52}},"type":"cond-expr","locations":[{"start":{"line":8,"column":26},"end":{"line":8,"column":30}},{"start":{"line":8,"column":33},"end":{"line":8,"column":52}}],"line":8},"1":{"loc":{"start":{"line":14,"column":9},"end":{"line":14,"column":70}},"type":"binary-expr","locations":[{"start":{"line":14,"column":9},"end":{"line":14,"column":16}},{"start":{"line":14,"column":20},"end":{"line":14,"column":45}},{"start":{"line":14,"column":49},"end":{"line":14,"column":70}}],"line":14},"2":{"loc":{"start":{"line":17,"column":2},"end":{"line":19,"column":3}},"type":"if","locations":[{"start":{"line":17,"column":2},"end":{"line":19,"column":3}},{"start":{},"end":{}}],"line":17},"3":{"loc":{"start":{"line":20,"column":9},"end":{"line":20,"column":21}},"type":"cond-expr","locations":[{"start":{"line":20,"column":16},"end":{"line":20,"column":17}},{"start":{"line":20,"column":20},"end":{"line":20,"column":21}}],"line":20},"4":{"loc":{"start":{"line":25,"column":24},"end":{"line":25,"column":34}},"type":"default-arg","locations":[{"start":{"line":25,"column":32},"end":{"line":25,"column":34}}],"line":25},"5":{"loc":{"start":{"line":65,"column":2},"end":{"line":67,"column":3}},"type":"if","locations":[{"start":{"line":65,"column":2},"end":{"line":67,"column":3}},{"start":{},"end":{}}],"line":65},"6":{"loc":{"start":{"line":65,"column":6},"end":{"line":65,"column":69}},"type":"binary-expr","locations":[{"start":{"line":65,"column":6},"end":{"line":65,"column":22}},{"start":{"line":65,"column":26},"end":{"line":65,"column":47}},{"start":{"line":65,"column":51},"end":{"line":65,"column":69}}],"line":65},"7":{"loc":{"start":{"line":79,"column":2},"end":{"line":81,"column":3}},"type":"if","locations":[{"start":{"line":79,"column":2},"end":{"line":81,"column":3}},{"start":{},"end":{}}],"line":79},"8":{"loc":{"start":{"line":86,"column":37},"end":{"line":86,"column":48}},"type":"default-arg","locations":[{"start":{"line":86,"column":46},"end":{"line":86,"column":48}}],"line":86},"9":{"loc":{"start":{"line":97,"column":2},"end":{"line":99,"column":3}},"type":"if","locations":[{"start":{"line":97,"column":2},"end":{"line":99,"column":3}},{"start":{},"end":{}}],"line":97},"10":{"loc":{"start":{"line":100,"column":2},"end":{"line":113,"column":3}},"type":"if","locations":[{"start":{"line":100,"column":2},"end":{"line":113,"column":3}},{"start":{"line":103,"column":9},"end":{"line":113,"column":3}}],"line":100},"11":{"loc":{"start":{"line":103,"column":9},"end":{"line":113,"column":3}},"type":"if","locations":[{"start":{"line":103,"column":9},"end":{"line":113,"column":3}},{"start":{"line":106,"column":9},"end":{"line":113,"column":3}}],"line":103},"12":{"loc":{"start":{"line":106,"column":9},"end":{"line":113,"column":3}},"type":"if","locations":[{"start":{"line":106,"column":9},"end":{"line":113,"column":3}},{"start":{"line":111,"column":9},"end":{"line":113,"column":3}}],"line":106},"13":{"loc":{"start":{"line":117,"column":37},"end":{"line":117,"column":48}},"type":"default-arg","locations":[{"start":{"line":117,"column":46},"end":{"line":117,"column":48}}],"line":117}},"s":{"0":1,"1":42,"2":21,"3":23,"4":3,"5":3,"6":1,"7":2,"8":38,"9":1,"10":1,"11":2,"12":1,"13":2,"14":1,"15":8,"16":8,"17":0,"18":8,"19":8,"20":8,"21":8,"22":4,"23":4,"24":6,"25":6,"26":0,"27":6,"28":2,"29":2,"30":4,"31":2,"32":2,"33":2,"34":2,"35":2,"36":2,"37":2,"38":0,"39":6,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":1},"f":{"0":42,"1":21,"2":23,"3":3,"4":3,"5":38,"6":1,"7":2,"8":1,"9":8,"10":6,"11":0,"12":0,"13":0},"b":{"0":[0,21],"1":[3,0,0],"2":[1,2],"3":[1,1],"4":[0],"5":[0,8],"6":[8,8,8],"7":[4,4],"8":[0],"9":[0,6],"10":[2,4],"11":[2,2],"12":[2,0],"13":[0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"b7146d9fb2c8b69bd818bbbd2395fc0fbe78cf65","contentHash":"b01cf0522cab277fcfcf520250db806f938bb39dcb061850161231ab282d538e"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/accounts.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/accounts.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":53,"column":2}},"1":{"start":{"line":4,"column":19},"end":{"line":4,"column":30}},"2":{"start":{"line":5,"column":2},"end":{"line":52,"column":4}},"3":{"start":{"line":7,"column":6},"end":{"line":11,"column":19}},"4":{"start":{"line":14,"column":6},"end":{"line":18,"column":19}},"5":{"start":{"line":21,"column":6},"end":{"line":24,"column":19}},"6":{"start":{"line":27,"column":6},"end":{"line":30,"column":19}},"7":{"start":{"line":36,"column":10},"end":{"line":36,"column":16}},"8":{"start":{"line":37,"column":6},"end":{"line":44,"column":19}},"9":{"start":{"line":47,"column":6},"end":{"line":50,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":53,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":29},"end":{"line":12,"column":5}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":38},"end":{"line":19,"column":5}},"line":13},"3":{"name":"(anonymous_3)","decl":{"start":{"line":20,"column":4},"end":{"line":20,"column":5}},"loc":{"start":{"line":20,"column":31},"end":{"line":25,"column":5}},"line":20},"4":{"name":"(anonymous_4)","decl":{"start":{"line":26,"column":4},"end":{"line":26,"column":5}},"loc":{"start":{"line":26,"column":32},"end":{"line":31,"column":5}},"line":26},"5":{"name":"(anonymous_5)","decl":{"start":{"line":32,"column":4},"end":{"line":32,"column":5}},"loc":{"start":{"line":32,"column":50},"end":{"line":45,"column":5}},"line":32},"6":{"name":"(anonymous_6)","decl":{"start":{"line":46,"column":4},"end":{"line":46,"column":5}},"loc":{"start":{"line":46,"column":41},"end":{"line":51,"column":5}},"line":46}},"branchMap":{},"s":{"0":1,"1":3,"2":3,"3":1,"4":1,"5":1,"6":1,"7":0,"8":0,"9":1},"f":{"0":3,"1":1,"2":1,"3":1,"4":1,"5":0,"6":1},"b":{},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"0074218d53e023bfa03eb7c225b5050f06d46b3e","contentHash":"8caae09538cac1473b645c24f908d24d482398f7cf92e1e39c8eac5c6be25eeb"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/stakeholders.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/stakeholders.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":53,"column":2}},"1":{"start":{"line":4,"column":19},"end":{"line":4,"column":30}},"2":{"start":{"line":5,"column":2},"end":{"line":52,"column":4}},"3":{"start":{"line":7,"column":6},"end":{"line":11,"column":19}},"4":{"start":{"line":14,"column":6},"end":{"line":18,"column":19}},"5":{"start":{"line":21,"column":6},"end":{"line":24,"column":19}},"6":{"start":{"line":27,"column":6},"end":{"line":30,"column":19}},"7":{"start":{"line":36,"column":10},"end":{"line":36,"column":16}},"8":{"start":{"line":37,"column":6},"end":{"line":44,"column":19}},"9":{"start":{"line":47,"column":6},"end":{"line":50,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":53,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":40},"end":{"line":12,"column":5}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":53},"end":{"line":19,"column":5}},"line":13},"3":{"name":"(anonymous_3)","decl":{"start":{"line":20,"column":4},"end":{"line":20,"column":5}},"loc":{"start":{"line":20,"column":46},"end":{"line":25,"column":5}},"line":20},"4":{"name":"(anonymous_4)","decl":{"start":{"line":26,"column":4},"end":{"line":26,"column":5}},"loc":{"start":{"line":26,"column":29},"end":{"line":31,"column":5}},"line":26},"5":{"name":"(anonymous_5)","decl":{"start":{"line":32,"column":4},"end":{"line":32,"column":5}},"loc":{"start":{"line":32,"column":69},"end":{"line":45,"column":5}},"line":32},"6":{"name":"(anonymous_6)","decl":{"start":{"line":46,"column":4},"end":{"line":46,"column":5}},"loc":{"start":{"line":46,"column":60},"end":{"line":51,"column":5}},"line":46}},"branchMap":{},"s":{"0":1,"1":3,"2":3,"3":1,"4":1,"5":1,"6":1,"7":0,"8":0,"9":1},"f":{"0":3,"1":1,"2":1,"3":1,"4":1,"5":0,"6":1},"b":{},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"58d35bece3bf29ab1f8b0d44472e591229e8ac7d","contentHash":"fbea39680d572e7ca5523a58cfc0a26fa049964945d205435080ffcf212b6015"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/payments.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/payments.js","statementMap":{"0":{"start":{"line":5,"column":4},"end":{"line":5,"column":38}},"1":{"start":{"line":6,"column":24},"end":{"line":6,"column":51}},"2":{"start":{"line":7,"column":13},"end":{"line":7,"column":24}},"3":{"start":{"line":8,"column":0},"end":{"line":335,"column":2}},"4":{"start":{"line":9,"column":2},"end":{"line":334,"column":4}},"5":{"start":{"line":16,"column":10},"end":{"line":16,"column":16}},"6":{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},"7":{"start":{"line":19,"column":8},"end":{"line":19,"column":35}},"8":{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},"9":{"start":{"line":22,"column":8},"end":{"line":22,"column":31}},"10":{"start":{"line":24,"column":6},"end":{"line":28,"column":7}},"11":{"start":{"line":25,"column":8},"end":{"line":27,"column":10}},"12":{"start":{"line":29,"column":6},"end":{"line":29,"column":34}},"13":{"start":{"line":30,"column":6},"end":{"line":30,"column":31}},"14":{"start":{"line":31,"column":6},"end":{"line":40,"column":19}},"15":{"start":{"line":44,"column":6},"end":{"line":46,"column":7}},"16":{"start":{"line":45,"column":8},"end":{"line":45,"column":53}},"17":{"start":{"line":47,"column":6},"end":{"line":51,"column":7}},"18":{"start":{"line":48,"column":8},"end":{"line":50,"column":10}},"19":{"start":{"line":52,"column":6},"end":{"line":57,"column":19}},"20":{"start":{"line":60,"column":6},"end":{"line":62,"column":7}},"21":{"start":{"line":61,"column":8},"end":{"line":61,"column":53}},"22":{"start":{"line":63,"column":6},"end":{"line":65,"column":7}},"23":{"start":{"line":64,"column":8},"end":{"line":64,"column":49}},"24":{"start":{"line":66,"column":22},"end":{"line":68,"column":7}},"25":{"start":{"line":76,"column":6},"end":{"line":81,"column":7}},"26":{"start":{"line":77,"column":8},"end":{"line":77,"column":28}},"27":{"start":{"line":78,"column":8},"end":{"line":78,"column":29}},"28":{"start":{"line":79,"column":13},"end":{"line":81,"column":7}},"29":{"start":{"line":80,"column":8},"end":{"line":80,"column":36}},"30":{"start":{"line":82,"column":6},"end":{"line":85,"column":19}},"31":{"start":{"line":88,"column":16},"end":{"line":88,"column":41}},"32":{"start":{"line":91,"column":12},"end":{"line":91,"column":18}},"33":{"start":{"line":92,"column":15},"end":{"line":92,"column":34}},"34":{"start":{"line":93,"column":6},"end":{"line":96,"column":19}},"35":{"start":{"line":99,"column":6},"end":{"line":102,"column":19}},"36":{"start":{"line":105,"column":6},"end":{"line":107,"column":7}},"37":{"start":{"line":106,"column":8},"end":{"line":106,"column":53}},"38":{"start":{"line":108,"column":6},"end":{"line":111,"column":19}},"39":{"start":{"line":114,"column":6},"end":{"line":116,"column":7}},"40":{"start":{"line":115,"column":8},"end":{"line":115,"column":53}},"41":{"start":{"line":117,"column":6},"end":{"line":120,"column":19}},"42":{"start":{"line":138,"column":12},"end":{"line":138,"column":18}},"43":{"start":{"line":139,"column":14},"end":{"line":139,"column":48}},"44":{"start":{"line":140,"column":6},"end":{"line":149,"column":19}},"45":{"start":{"line":152,"column":6},"end":{"line":154,"column":7}},"46":{"start":{"line":153,"column":8},"end":{"line":153,"column":52}},"47":{"start":{"line":155,"column":6},"end":{"line":157,"column":7}},"48":{"start":{"line":156,"column":8},"end":{"line":156,"column":51}},"49":{"start":{"line":158,"column":6},"end":{"line":160,"column":19}},"50":{"start":{"line":172,"column":6},"end":{"line":174,"column":7}},"51":{"start":{"line":173,"column":8},"end":{"line":173,"column":52}},"52":{"start":{"line":175,"column":6},"end":{"line":177,"column":19}},"53":{"start":{"line":180,"column":6},"end":{"line":182,"column":7}},"54":{"start":{"line":181,"column":8},"end":{"line":181,"column":53}},"55":{"start":{"line":183,"column":6},"end":{"line":186,"column":19}},"56":{"start":{"line":189,"column":6},"end":{"line":191,"column":7}},"57":{"start":{"line":190,"column":8},"end":{"line":190,"column":47}},"58":{"start":{"line":192,"column":6},"end":{"line":194,"column":19}},"59":{"start":{"line":197,"column":6},"end":{"line":199,"column":7}},"60":{"start":{"line":198,"column":8},"end":{"line":198,"column":47}},"61":{"start":{"line":200,"column":6},"end":{"line":202,"column":19}},"62":{"start":{"line":205,"column":6},"end":{"line":207,"column":19}},"63":{"start":{"line":219,"column":6},"end":{"line":221,"column":7}},"64":{"start":{"line":220,"column":8},"end":{"line":220,"column":58}},"65":{"start":{"line":222,"column":6},"end":{"line":224,"column":19}},"66":{"start":{"line":236,"column":6},"end":{"line":238,"column":7}},"67":{"start":{"line":237,"column":8},"end":{"line":237,"column":57}},"68":{"start":{"line":239,"column":6},"end":{"line":241,"column":19}},"69":{"start":{"line":254,"column":6},"end":{"line":256,"column":7}},"70":{"start":{"line":255,"column":8},"end":{"line":255,"column":57}},"71":{"start":{"line":257,"column":6},"end":{"line":260,"column":19}},"72":{"start":{"line":272,"column":6},"end":{"line":274,"column":7}},"73":{"start":{"line":273,"column":8},"end":{"line":273,"column":57}},"74":{"start":{"line":275,"column":6},"end":{"line":277,"column":19}},"75":{"start":{"line":289,"column":16},"end":{"line":289,"column":40}},"76":{"start":{"line":292,"column":12},"end":{"line":292,"column":18}},"77":{"start":{"line":293,"column":15},"end":{"line":293,"column":34}},"78":{"start":{"line":294,"column":6},"end":{"line":297,"column":19}},"79":{"start":{"line":309,"column":16},"end":{"line":309,"column":42}},"80":{"start":{"line":312,"column":12},"end":{"line":312,"column":18}},"81":{"start":{"line":313,"column":15},"end":{"line":313,"column":34}},"82":{"start":{"line":314,"column":6},"end":{"line":317,"column":19}},"83":{"start":{"line":329,"column":16},"end":{"line":329,"column":26}},"84":{"start":{"line":330,"column":6},"end":{"line":332,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":8,"column":17},"end":{"line":8,"column":18}},"loc":{"start":{"line":8,"column":32},"end":{"line":335,"column":1}},"line":8},"1":{"name":"(anonymous_1)","decl":{"start":{"line":10,"column":4},"end":{"line":10,"column":5}},"loc":{"start":{"line":10,"column":31},"end":{"line":41,"column":5}},"line":10},"2":{"name":"(anonymous_2)","decl":{"start":{"line":42,"column":4},"end":{"line":42,"column":5}},"loc":{"start":{"line":42,"column":44},"end":{"line":58,"column":5}},"line":42},"3":{"name":"(anonymous_3)","decl":{"start":{"line":59,"column":4},"end":{"line":59,"column":5}},"loc":{"start":{"line":59,"column":51},"end":{"line":86,"column":5}},"line":59},"4":{"name":"(anonymous_4)","decl":{"start":{"line":87,"column":4},"end":{"line":87,"column":5}},"loc":{"start":{"line":87,"column":40},"end":{"line":97,"column":5}},"line":87},"5":{"name":"(anonymous_5)","decl":{"start":{"line":98,"column":4},"end":{"line":98,"column":5}},"loc":{"start":{"line":98,"column":45},"end":{"line":103,"column":5}},"line":98},"6":{"name":"(anonymous_6)","decl":{"start":{"line":104,"column":4},"end":{"line":104,"column":5}},"loc":{"start":{"line":104,"column":43},"end":{"line":112,"column":5}},"line":104},"7":{"name":"(anonymous_7)","decl":{"start":{"line":113,"column":4},"end":{"line":113,"column":5}},"loc":{"start":{"line":113,"column":45},"end":{"line":121,"column":5}},"line":113},"8":{"name":"(anonymous_8)","decl":{"start":{"line":122,"column":4},"end":{"line":122,"column":5}},"loc":{"start":{"line":122,"column":58},"end":{"line":150,"column":5}},"line":122},"9":{"name":"(anonymous_9)","decl":{"start":{"line":151,"column":4},"end":{"line":151,"column":5}},"loc":{"start":{"line":151,"column":47},"end":{"line":161,"column":5}},"line":151},"10":{"name":"(anonymous_10)","decl":{"start":{"line":162,"column":4},"end":{"line":162,"column":5}},"loc":{"start":{"line":162,"column":39},"end":{"line":178,"column":5}},"line":162},"11":{"name":"(anonymous_11)","decl":{"start":{"line":179,"column":4},"end":{"line":179,"column":5}},"loc":{"start":{"line":179,"column":47},"end":{"line":187,"column":5}},"line":179},"12":{"name":"(anonymous_12)","decl":{"start":{"line":188,"column":4},"end":{"line":188,"column":5}},"loc":{"start":{"line":188,"column":38},"end":{"line":195,"column":5}},"line":188},"13":{"name":"(anonymous_13)","decl":{"start":{"line":196,"column":4},"end":{"line":196,"column":5}},"loc":{"start":{"line":196,"column":42},"end":{"line":203,"column":5}},"line":196},"14":{"name":"(anonymous_14)","decl":{"start":{"line":204,"column":4},"end":{"line":204,"column":5}},"loc":{"start":{"line":204,"column":35},"end":{"line":208,"column":5}},"line":204},"15":{"name":"(anonymous_15)","decl":{"start":{"line":209,"column":4},"end":{"line":209,"column":5}},"loc":{"start":{"line":209,"column":51},"end":{"line":225,"column":5}},"line":209},"16":{"name":"(anonymous_16)","decl":{"start":{"line":226,"column":4},"end":{"line":226,"column":5}},"loc":{"start":{"line":226,"column":37},"end":{"line":242,"column":5}},"line":226},"17":{"name":"(anonymous_17)","decl":{"start":{"line":243,"column":4},"end":{"line":243,"column":5}},"loc":{"start":{"line":243,"column":48},"end":{"line":261,"column":5}},"line":243},"18":{"name":"(anonymous_18)","decl":{"start":{"line":262,"column":4},"end":{"line":262,"column":5}},"loc":{"start":{"line":262,"column":35},"end":{"line":278,"column":5}},"line":262},"19":{"name":"(anonymous_19)","decl":{"start":{"line":279,"column":4},"end":{"line":279,"column":5}},"loc":{"start":{"line":279,"column":37},"end":{"line":298,"column":5}},"line":279},"20":{"name":"(anonymous_20)","decl":{"start":{"line":299,"column":4},"end":{"line":299,"column":5}},"loc":{"start":{"line":299,"column":39},"end":{"line":318,"column":5}},"line":299},"21":{"name":"(anonymous_21)","decl":{"start":{"line":319,"column":4},"end":{"line":319,"column":5}},"loc":{"start":{"line":319,"column":34},"end":{"line":333,"column":5}},"line":319}},"branchMap":{"0":{"loc":{"start":{"line":10,"column":8},"end":{"line":10,"column":19}},"type":"default-arg","locations":[{"start":{"line":10,"column":17},"end":{"line":10,"column":19}}],"line":10},"1":{"loc":{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},"type":"if","locations":[{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},{"start":{},"end":{}}],"line":18},"2":{"loc":{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},"type":"if","locations":[{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},{"start":{},"end":{}}],"line":21},"3":{"loc":{"start":{"line":24,"column":6},"end":{"line":28,"column":7}},"type":"if","locations":[{"start":{"line":24,"column":6},"end":{"line":28,"column":7}},{"start":{},"end":{}}],"line":24},"4":{"loc":{"start":{"line":29,"column":14},"end":{"line":29,"column":33}},"type":"binary-expr","locations":[{"start":{"line":29,"column":14},"end":{"line":29,"column":27}},{"start":{"line":29,"column":31},"end":{"line":29,"column":33}}],"line":29},"5":{"loc":{"start":{"line":30,"column":13},"end":{"line":30,"column":30}},"type":"binary-expr","locations":[{"start":{"line":30,"column":13},"end":{"line":30,"column":25}},{"start":{"line":30,"column":29},"end":{"line":30,"column":30}}],"line":30},"6":{"loc":{"start":{"line":42,"column":21},"end":{"line":42,"column":32}},"type":"default-arg","locations":[{"start":{"line":42,"column":30},"end":{"line":42,"column":32}}],"line":42},"7":{"loc":{"start":{"line":44,"column":6},"end":{"line":46,"column":7}},"type":"if","locations":[{"start":{"line":44,"column":6},"end":{"line":46,"column":7}},{"start":{},"end":{}}],"line":44},"8":{"loc":{"start":{"line":47,"column":6},"end":{"line":51,"column":7}},"type":"if","locations":[{"start":{"line":47,"column":6},"end":{"line":51,"column":7}},{"start":{},"end":{}}],"line":47},"9":{"loc":{"start":{"line":60,"column":6},"end":{"line":62,"column":7}},"type":"if","locations":[{"start":{"line":60,"column":6},"end":{"line":62,"column":7}},{"start":{},"end":{}}],"line":60},"10":{"loc":{"start":{"line":63,"column":6},"end":{"line":65,"column":7}},"type":"if","locations":[{"start":{"line":63,"column":6},"end":{"line":65,"column":7}},{"start":{},"end":{}}],"line":63},"11":{"loc":{"start":{"line":76,"column":6},"end":{"line":81,"column":7}},"type":"if","locations":[{"start":{"line":76,"column":6},"end":{"line":81,"column":7}},{"start":{"line":79,"column":13},"end":{"line":81,"column":7}}],"line":76},"12":{"loc":{"start":{"line":76,"column":10},"end":{"line":76,"column":53}},"type":"binary-expr","locations":[{"start":{"line":76,"column":10},"end":{"line":76,"column":40}},{"start":{"line":76,"column":44},"end":{"line":76,"column":53}}],"line":76},"13":{"loc":{"start":{"line":79,"column":13},"end":{"line":81,"column":7}},"type":"if","locations":[{"start":{"line":79,"column":13},"end":{"line":81,"column":7}},{"start":{},"end":{}}],"line":79},"14":{"loc":{"start":{"line":104,"column":20},"end":{"line":104,"column":31}},"type":"default-arg","locations":[{"start":{"line":104,"column":29},"end":{"line":104,"column":31}}],"line":104},"15":{"loc":{"start":{"line":105,"column":6},"end":{"line":107,"column":7}},"type":"if","locations":[{"start":{"line":105,"column":6},"end":{"line":107,"column":7}},{"start":{},"end":{}}],"line":105},"16":{"loc":{"start":{"line":113,"column":22},"end":{"line":113,"column":33}},"type":"default-arg","locations":[{"start":{"line":113,"column":31},"end":{"line":113,"column":33}}],"line":113},"17":{"loc":{"start":{"line":114,"column":6},"end":{"line":116,"column":7}},"type":"if","locations":[{"start":{"line":114,"column":6},"end":{"line":116,"column":7}},{"start":{},"end":{}}],"line":114},"18":{"loc":{"start":{"line":122,"column":35},"end":{"line":122,"column":46}},"type":"default-arg","locations":[{"start":{"line":122,"column":44},"end":{"line":122,"column":46}}],"line":122},"19":{"loc":{"start":{"line":152,"column":6},"end":{"line":154,"column":7}},"type":"if","locations":[{"start":{"line":152,"column":6},"end":{"line":154,"column":7}},{"start":{},"end":{}}],"line":152},"20":{"loc":{"start":{"line":155,"column":6},"end":{"line":157,"column":7}},"type":"if","locations":[{"start":{"line":155,"column":6},"end":{"line":157,"column":7}},{"start":{},"end":{}}],"line":155},"21":{"loc":{"start":{"line":172,"column":6},"end":{"line":174,"column":7}},"type":"if","locations":[{"start":{"line":172,"column":6},"end":{"line":174,"column":7}},{"start":{},"end":{}}],"line":172},"22":{"loc":{"start":{"line":179,"column":24},"end":{"line":179,"column":35}},"type":"default-arg","locations":[{"start":{"line":179,"column":33},"end":{"line":179,"column":35}}],"line":179},"23":{"loc":{"start":{"line":180,"column":6},"end":{"line":182,"column":7}},"type":"if","locations":[{"start":{"line":180,"column":6},"end":{"line":182,"column":7}},{"start":{},"end":{}}],"line":180},"24":{"loc":{"start":{"line":189,"column":6},"end":{"line":191,"column":7}},"type":"if","locations":[{"start":{"line":189,"column":6},"end":{"line":191,"column":7}},{"start":{},"end":{}}],"line":189},"25":{"loc":{"start":{"line":197,"column":6},"end":{"line":199,"column":7}},"type":"if","locations":[{"start":{"line":197,"column":6},"end":{"line":199,"column":7}},{"start":{},"end":{}}],"line":197},"26":{"loc":{"start":{"line":219,"column":6},"end":{"line":221,"column":7}},"type":"if","locations":[{"start":{"line":219,"column":6},"end":{"line":221,"column":7}},{"start":{},"end":{}}],"line":219},"27":{"loc":{"start":{"line":236,"column":6},"end":{"line":238,"column":7}},"type":"if","locations":[{"start":{"line":236,"column":6},"end":{"line":238,"column":7}},{"start":{},"end":{}}],"line":236},"28":{"loc":{"start":{"line":243,"column":25},"end":{"line":243,"column":36}},"type":"default-arg","locations":[{"start":{"line":243,"column":34},"end":{"line":243,"column":36}}],"line":243},"29":{"loc":{"start":{"line":254,"column":6},"end":{"line":256,"column":7}},"type":"if","locations":[{"start":{"line":254,"column":6},"end":{"line":256,"column":7}},{"start":{},"end":{}}],"line":254},"30":{"loc":{"start":{"line":272,"column":6},"end":{"line":274,"column":7}},"type":"if","locations":[{"start":{"line":272,"column":6},"end":{"line":274,"column":7}},{"start":{},"end":{}}],"line":272},"31":{"loc":{"start":{"line":279,"column":14},"end":{"line":279,"column":25}},"type":"default-arg","locations":[{"start":{"line":279,"column":23},"end":{"line":279,"column":25}}],"line":279},"32":{"loc":{"start":{"line":299,"column":16},"end":{"line":299,"column":27}},"type":"default-arg","locations":[{"start":{"line":299,"column":25},"end":{"line":299,"column":27}}],"line":299}},"s":{"0":1,"1":1,"2":1,"3":1,"4":3,"5":2,"6":2,"7":1,"8":2,"9":1,"10":2,"11":0,"12":2,"13":2,"14":2,"15":3,"16":2,"17":1,"18":0,"19":1,"20":3,"21":1,"22":2,"23":1,"24":1,"25":1,"26":0,"27":0,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":0,"38":1,"39":2,"40":1,"41":1,"42":4,"43":4,"44":4,"45":1,"46":0,"47":1,"48":0,"49":1,"50":1,"51":0,"52":1,"53":3,"54":1,"55":2,"56":5,"57":1,"58":4,"59":5,"60":1,"61":4,"62":1,"63":5,"64":1,"65":4,"66":1,"67":0,"68":1,"69":1,"70":0,"71":1,"72":1,"73":0,"74":1,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0},"f":{"0":3,"1":2,"2":3,"3":3,"4":1,"5":1,"6":1,"7":2,"8":4,"9":1,"10":1,"11":3,"12":5,"13":5,"14":1,"15":5,"16":1,"17":1,"18":1,"19":0,"20":0,"21":0},"b":{"0":[1],"1":[1,1],"2":[1,1],"3":[0,2],"4":[2,1],"5":[2,1],"6":[3],"7":[2,1],"8":[0,1],"9":[1,2],"10":[1,1],"11":[0,1],"12":[1,0],"13":[1,0],"14":[0],"15":[0,1],"16":[1],"17":[1,1],"18":[0],"19":[0,1],"20":[0,1],"21":[0,1],"22":[1],"23":[1,2],"24":[1,4],"25":[1,4],"26":[1,4],"27":[0,1],"28":[0],"29":[0,1],"30":[0,1],"31":[0],"32":[0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"ffa24eb85babf4d365c2f95ca80bef70b3ca2032","contentHash":"967e315234244369d24fc0fdfe615cc91595f9037d5ae087727772f6de8aa69b"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/refunds.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/refunds.js","statementMap":{"0":{"start":{"line":6,"column":4},"end":{"line":6,"column":38}},"1":{"start":{"line":7,"column":0},"end":{"line":64,"column":2}},"2":{"start":{"line":8,"column":2},"end":{"line":63,"column":4}},"3":{"start":{"line":16,"column":10},"end":{"line":16,"column":16}},"4":{"start":{"line":17,"column":16},"end":{"line":17,"column":26}},"5":{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},"6":{"start":{"line":19,"column":8},"end":{"line":19,"column":48}},"7":{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},"8":{"start":{"line":22,"column":8},"end":{"line":22,"column":35}},"9":{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},"10":{"start":{"line":25,"column":8},"end":{"line":25,"column":31}},"11":{"start":{"line":27,"column":6},"end":{"line":27,"column":34}},"12":{"start":{"line":28,"column":6},"end":{"line":28,"column":31}},"13":{"start":{"line":29,"column":6},"end":{"line":37,"column":19}},"14":{"start":{"line":40,"column":6},"end":{"line":42,"column":7}},"15":{"start":{"line":41,"column":8},"end":{"line":41,"column":50}},"16":{"start":{"line":43,"column":6},"end":{"line":46,"column":19}},"17":{"start":{"line":51,"column":10},"end":{"line":51,"column":16}},"18":{"start":{"line":52,"column":6},"end":{"line":54,"column":7}},"19":{"start":{"line":53,"column":8},"end":{"line":53,"column":52}},"20":{"start":{"line":55,"column":16},"end":{"line":55,"column":38}},"21":{"start":{"line":56,"column":6},"end":{"line":58,"column":7}},"22":{"start":{"line":57,"column":8},"end":{"line":57,"column":46}},"23":{"start":{"line":59,"column":6},"end":{"line":61,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":7,"column":17},"end":{"line":7,"column":18}},"loc":{"start":{"line":7,"column":32},"end":{"line":64,"column":1}},"line":7},"1":{"name":"(anonymous_1)","decl":{"start":{"line":9,"column":4},"end":{"line":9,"column":5}},"loc":{"start":{"line":9,"column":31},"end":{"line":38,"column":5}},"line":9},"2":{"name":"(anonymous_2)","decl":{"start":{"line":39,"column":4},"end":{"line":39,"column":5}},"loc":{"start":{"line":39,"column":37},"end":{"line":47,"column":5}},"line":39},"3":{"name":"(anonymous_3)","decl":{"start":{"line":48,"column":4},"end":{"line":48,"column":5}},"loc":{"start":{"line":48,"column":43},"end":{"line":62,"column":5}},"line":48}},"branchMap":{"0":{"loc":{"start":{"line":9,"column":8},"end":{"line":9,"column":19}},"type":"default-arg","locations":[{"start":{"line":9,"column":17},"end":{"line":9,"column":19}}],"line":9},"1":{"loc":{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},"type":"if","locations":[{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},{"start":{},"end":{}}],"line":18},"2":{"loc":{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},"type":"if","locations":[{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},{"start":{},"end":{}}],"line":21},"3":{"loc":{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},"type":"if","locations":[{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},{"start":{},"end":{}}],"line":24},"4":{"loc":{"start":{"line":27,"column":14},"end":{"line":27,"column":33}},"type":"binary-expr","locations":[{"start":{"line":27,"column":14},"end":{"line":27,"column":27}},{"start":{"line":27,"column":31},"end":{"line":27,"column":33}}],"line":27},"5":{"loc":{"start":{"line":28,"column":13},"end":{"line":28,"column":30}},"type":"binary-expr","locations":[{"start":{"line":28,"column":13},"end":{"line":28,"column":25}},{"start":{"line":28,"column":29},"end":{"line":28,"column":30}}],"line":28},"6":{"loc":{"start":{"line":40,"column":6},"end":{"line":42,"column":7}},"type":"if","locations":[{"start":{"line":40,"column":6},"end":{"line":42,"column":7}},{"start":{},"end":{}}],"line":40},"7":{"loc":{"start":{"line":48,"column":20},"end":{"line":48,"column":31}},"type":"default-arg","locations":[{"start":{"line":48,"column":29},"end":{"line":48,"column":31}}],"line":48},"8":{"loc":{"start":{"line":52,"column":6},"end":{"line":54,"column":7}},"type":"if","locations":[{"start":{"line":52,"column":6},"end":{"line":54,"column":7}},{"start":{},"end":{}}],"line":52},"9":{"loc":{"start":{"line":56,"column":6},"end":{"line":58,"column":7}},"type":"if","locations":[{"start":{"line":56,"column":6},"end":{"line":58,"column":7}},{"start":{},"end":{}}],"line":56}},"s":{"0":1,"1":1,"2":3,"3":3,"4":3,"5":3,"6":1,"7":3,"8":1,"9":3,"10":1,"11":3,"12":3,"13":3,"14":1,"15":0,"16":1,"17":3,"18":3,"19":1,"20":2,"21":2,"22":1,"23":2},"f":{"0":3,"1":3,"2":1,"3":3},"b":{"0":[1],"1":[1,2],"2":[1,2],"3":[1,2],"4":[3,2],"5":[3,2],"6":[0,1],"7":[2],"8":[1,2],"9":[1,1]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"c149c87a088cca81074ef0345d3cbda01faa2417","contentHash":"412b1d2e5cb9de08da2caca1afbd39b9bf827f667e5e09f7bdc948516c0f61aa"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/orders.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/orders.js","statementMap":{"0":{"start":{"line":5,"column":4},"end":{"line":5,"column":38}},"1":{"start":{"line":6,"column":0},"end":{"line":105,"column":2}},"2":{"start":{"line":7,"column":2},"end":{"line":104,"column":4}},"3":{"start":{"line":16,"column":10},"end":{"line":16,"column":16}},"4":{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},"5":{"start":{"line":19,"column":8},"end":{"line":19,"column":35}},"6":{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},"7":{"start":{"line":22,"column":8},"end":{"line":22,"column":31}},"8":{"start":{"line":24,"column":6},"end":{"line":28,"column":7}},"9":{"start":{"line":25,"column":8},"end":{"line":27,"column":10}},"10":{"start":{"line":29,"column":6},"end":{"line":29,"column":34}},"11":{"start":{"line":30,"column":6},"end":{"line":30,"column":31}},"12":{"start":{"line":31,"column":6},"end":{"line":31,"column":30}},"13":{"start":{"line":32,"column":6},"end":{"line":43,"column":19}},"14":{"start":{"line":46,"column":6},"end":{"line":48,"column":7}},"15":{"start":{"line":47,"column":8},"end":{"line":47,"column":51}},"16":{"start":{"line":49,"column":6},"end":{"line":51,"column":19}},"17":{"start":{"line":57,"column":10},"end":{"line":57,"column":16}},"18":{"start":{"line":58,"column":6},"end":{"line":58,"column":35}},"19":{"start":{"line":59,"column":17},"end":{"line":62,"column":8}},"20":{"start":{"line":63,"column":6},"end":{"line":66,"column":19}},"21":{"start":{"line":69,"column":6},"end":{"line":71,"column":7}},"22":{"start":{"line":70,"column":8},"end":{"line":70,"column":51}},"23":{"start":{"line":72,"column":6},"end":{"line":75,"column":19}},"24":{"start":{"line":78,"column":6},"end":{"line":80,"column":7}},"25":{"start":{"line":79,"column":8},"end":{"line":79,"column":51}},"26":{"start":{"line":81,"column":6},"end":{"line":83,"column":19}},"27":{"start":{"line":86,"column":6},"end":{"line":88,"column":7}},"28":{"start":{"line":87,"column":8},"end":{"line":87,"column":51}},"29":{"start":{"line":89,"column":6},"end":{"line":91,"column":19}},"30":{"start":{"line":94,"column":6},"end":{"line":96,"column":19}},"31":{"start":{"line":99,"column":6},"end":{"line":102,"column":9}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":6,"column":17},"end":{"line":6,"column":18}},"loc":{"start":{"line":6,"column":32},"end":{"line":105,"column":1}},"line":6},"1":{"name":"(anonymous_1)","decl":{"start":{"line":8,"column":4},"end":{"line":8,"column":5}},"loc":{"start":{"line":8,"column":31},"end":{"line":44,"column":5}},"line":8},"2":{"name":"(anonymous_2)","decl":{"start":{"line":45,"column":4},"end":{"line":45,"column":5}},"loc":{"start":{"line":45,"column":29},"end":{"line":52,"column":5}},"line":45},"3":{"name":"(anonymous_3)","decl":{"start":{"line":53,"column":4},"end":{"line":53,"column":5}},"loc":{"start":{"line":53,"column":34},"end":{"line":67,"column":5}},"line":53},"4":{"name":"(anonymous_4)","decl":{"start":{"line":68,"column":4},"end":{"line":68,"column":5}},"loc":{"start":{"line":68,"column":41},"end":{"line":76,"column":5}},"line":68},"5":{"name":"(anonymous_5)","decl":{"start":{"line":77,"column":4},"end":{"line":77,"column":5}},"loc":{"start":{"line":77,"column":37},"end":{"line":84,"column":5}},"line":77},"6":{"name":"(anonymous_6)","decl":{"start":{"line":85,"column":4},"end":{"line":85,"column":5}},"loc":{"start":{"line":85,"column":42},"end":{"line":92,"column":5}},"line":85},"7":{"name":"(anonymous_7)","decl":{"start":{"line":93,"column":4},"end":{"line":93,"column":5}},"loc":{"start":{"line":93,"column":37},"end":{"line":97,"column":5}},"line":93},"8":{"name":"(anonymous_8)","decl":{"start":{"line":98,"column":4},"end":{"line":98,"column":5}},"loc":{"start":{"line":98,"column":51},"end":{"line":103,"column":5}},"line":98}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":8},"end":{"line":8,"column":19}},"type":"default-arg","locations":[{"start":{"line":8,"column":17},"end":{"line":8,"column":19}}],"line":8},"1":{"loc":{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},"type":"if","locations":[{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},{"start":{},"end":{}}],"line":18},"2":{"loc":{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},"type":"if","locations":[{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},{"start":{},"end":{}}],"line":21},"3":{"loc":{"start":{"line":24,"column":6},"end":{"line":28,"column":7}},"type":"if","locations":[{"start":{"line":24,"column":6},"end":{"line":28,"column":7}},{"start":{},"end":{}}],"line":24},"4":{"loc":{"start":{"line":29,"column":14},"end":{"line":29,"column":33}},"type":"binary-expr","locations":[{"start":{"line":29,"column":14},"end":{"line":29,"column":27}},{"start":{"line":29,"column":31},"end":{"line":29,"column":33}}],"line":29},"5":{"loc":{"start":{"line":30,"column":13},"end":{"line":30,"column":30}},"type":"binary-expr","locations":[{"start":{"line":30,"column":13},"end":{"line":30,"column":25}},{"start":{"line":30,"column":29},"end":{"line":30,"column":30}}],"line":30},"6":{"loc":{"start":{"line":46,"column":6},"end":{"line":48,"column":7}},"type":"if","locations":[{"start":{"line":46,"column":6},"end":{"line":48,"column":7}},{"start":{},"end":{}}],"line":46},"7":{"loc":{"start":{"line":53,"column":11},"end":{"line":53,"column":22}},"type":"default-arg","locations":[{"start":{"line":53,"column":20},"end":{"line":53,"column":22}}],"line":53},"8":{"loc":{"start":{"line":58,"column":17},"end":{"line":58,"column":34}},"type":"binary-expr","locations":[{"start":{"line":58,"column":17},"end":{"line":58,"column":25}},{"start":{"line":58,"column":29},"end":{"line":58,"column":34}}],"line":58},"9":{"loc":{"start":{"line":68,"column":18},"end":{"line":68,"column":29}},"type":"default-arg","locations":[{"start":{"line":68,"column":27},"end":{"line":68,"column":29}}],"line":68},"10":{"loc":{"start":{"line":69,"column":6},"end":{"line":71,"column":7}},"type":"if","locations":[{"start":{"line":69,"column":6},"end":{"line":71,"column":7}},{"start":{},"end":{}}],"line":69},"11":{"loc":{"start":{"line":78,"column":6},"end":{"line":80,"column":7}},"type":"if","locations":[{"start":{"line":78,"column":6},"end":{"line":80,"column":7}},{"start":{},"end":{}}],"line":78},"12":{"loc":{"start":{"line":86,"column":6},"end":{"line":88,"column":7}},"type":"if","locations":[{"start":{"line":86,"column":6},"end":{"line":88,"column":7}},{"start":{},"end":{}}],"line":86},"13":{"loc":{"start":{"line":98,"column":29},"end":{"line":98,"column":39}},"type":"default-arg","locations":[{"start":{"line":98,"column":37},"end":{"line":98,"column":39}}],"line":98}},"s":{"0":1,"1":1,"2":3,"3":2,"4":2,"5":1,"6":2,"7":1,"8":2,"9":0,"10":2,"11":2,"12":2,"13":2,"14":2,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":0,"23":1,"24":2,"25":1,"26":1,"27":0,"28":0,"29":0,"30":1,"31":1},"f":{"0":3,"1":2,"2":2,"3":1,"4":1,"5":2,"6":0,"7":1,"8":1},"b":{"0":[1],"1":[1,1],"2":[1,1],"3":[0,2],"4":[2,1],"5":[2,1],"6":[1,1],"7":[0],"8":[1,0],"9":[0],"10":[0,1],"11":[1,1],"12":[0,0],"13":[0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"6ed386ab41e65ea0a7584cd4bc1b988a06a33ba0","contentHash":"60910dffe0ba0e4bebc9003873accd9db00f1be5d730bfb7da0fd0abb35bab1c"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/customers.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/customers.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":75,"column":2}},"1":{"start":{"line":4,"column":2},"end":{"line":74,"column":4}},"2":{"start":{"line":6,"column":6},"end":{"line":9,"column":19}},"3":{"start":{"line":12,"column":6},"end":{"line":15,"column":19}},"4":{"start":{"line":18,"column":6},"end":{"line":20,"column":19}},"5":{"start":{"line":26,"column":10},"end":{"line":26,"column":16}},"6":{"start":{"line":27,"column":6},"end":{"line":27,"column":34}},"7":{"start":{"line":28,"column":6},"end":{"line":28,"column":31}},"8":{"start":{"line":29,"column":6},"end":{"line":35,"column":19}},"9":{"start":{"line":38,"column":6},"end":{"line":40,"column":19}},"10":{"start":{"line":43,"column":6},"end":{"line":45,"column":19}},"11":{"start":{"line":48,"column":6},"end":{"line":50,"column":19}},"12":{"start":{"line":53,"column":6},"end":{"line":56,"column":19}},"13":{"start":{"line":59,"column":6},"end":{"line":61,"column":19}},"14":{"start":{"line":64,"column":6},"end":{"line":67,"column":19}},"15":{"start":{"line":70,"column":6},"end":{"line":72,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":75,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":5,"column":4},"end":{"line":5,"column":5}},"loc":{"start":{"line":5,"column":29},"end":{"line":10,"column":5}},"line":5},"2":{"name":"(anonymous_2)","decl":{"start":{"line":11,"column":4},"end":{"line":11,"column":5}},"loc":{"start":{"line":11,"column":39},"end":{"line":16,"column":5}},"line":11},"3":{"name":"(anonymous_3)","decl":{"start":{"line":17,"column":4},"end":{"line":17,"column":5}},"loc":{"start":{"line":17,"column":32},"end":{"line":21,"column":5}},"line":17},"4":{"name":"(anonymous_4)","decl":{"start":{"line":22,"column":4},"end":{"line":22,"column":5}},"loc":{"start":{"line":22,"column":31},"end":{"line":36,"column":5}},"line":22},"5":{"name":"(anonymous_5)","decl":{"start":{"line":37,"column":4},"end":{"line":37,"column":5}},"loc":{"start":{"line":37,"column":38},"end":{"line":41,"column":5}},"line":37},"6":{"name":"(anonymous_6)","decl":{"start":{"line":42,"column":4},"end":{"line":42,"column":5}},"loc":{"start":{"line":42,"column":46},"end":{"line":46,"column":5}},"line":42},"7":{"name":"(anonymous_7)","decl":{"start":{"line":47,"column":4},"end":{"line":47,"column":5}},"loc":{"start":{"line":47,"column":47},"end":{"line":51,"column":5}},"line":47},"8":{"name":"(anonymous_8)","decl":{"start":{"line":52,"column":4},"end":{"line":52,"column":5}},"loc":{"start":{"line":52,"column":49},"end":{"line":57,"column":5}},"line":52},"9":{"name":"(anonymous_9)","decl":{"start":{"line":58,"column":4},"end":{"line":58,"column":5}},"loc":{"start":{"line":58,"column":52},"end":{"line":62,"column":5}},"line":58},"10":{"name":"(anonymous_10)","decl":{"start":{"line":63,"column":4},"end":{"line":63,"column":5}},"loc":{"start":{"line":63,"column":46},"end":{"line":68,"column":5}},"line":63},"11":{"name":"(anonymous_11)","decl":{"start":{"line":69,"column":4},"end":{"line":69,"column":5}},"loc":{"start":{"line":69,"column":46},"end":{"line":73,"column":5}},"line":69}},"branchMap":{"0":{"loc":{"start":{"line":22,"column":8},"end":{"line":22,"column":19}},"type":"default-arg","locations":[{"start":{"line":22,"column":17},"end":{"line":22,"column":19}}],"line":22},"1":{"loc":{"start":{"line":27,"column":14},"end":{"line":27,"column":33}},"type":"binary-expr","locations":[{"start":{"line":27,"column":14},"end":{"line":27,"column":27}},{"start":{"line":27,"column":31},"end":{"line":27,"column":33}}],"line":27},"2":{"loc":{"start":{"line":28,"column":13},"end":{"line":28,"column":30}},"type":"binary-expr","locations":[{"start":{"line":28,"column":13},"end":{"line":28,"column":25}},{"start":{"line":28,"column":29},"end":{"line":28,"column":30}}],"line":28}},"s":{"0":1,"1":3,"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":1},"f":{"0":3,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1},"b":{"0":[0],"1":[1,0],"2":[1,1]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"6e222cdd2ea25b9178fb920d4328568f24416fcd","contentHash":"e4c06df8d883af44032a01f4036015d9296190954182cd1681363a9f1936ba50"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/transfers.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/transfers.js","statementMap":{"0":{"start":{"line":5,"column":4},"end":{"line":5,"column":38}},"1":{"start":{"line":6,"column":0},"end":{"line":80,"column":2}},"2":{"start":{"line":7,"column":2},"end":{"line":79,"column":4}},"3":{"start":{"line":16,"column":10},"end":{"line":16,"column":16}},"4":{"start":{"line":17,"column":16},"end":{"line":17,"column":28}},"5":{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},"6":{"start":{"line":19,"column":8},"end":{"line":19,"column":50}},"7":{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},"8":{"start":{"line":22,"column":8},"end":{"line":22,"column":35}},"9":{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},"10":{"start":{"line":25,"column":8},"end":{"line":25,"column":31}},"11":{"start":{"line":27,"column":6},"end":{"line":27,"column":34}},"12":{"start":{"line":28,"column":6},"end":{"line":28,"column":31}},"13":{"start":{"line":29,"column":6},"end":{"line":38,"column":19}},"14":{"start":{"line":43,"column":10},"end":{"line":43,"column":16}},"15":{"start":{"line":44,"column":6},"end":{"line":46,"column":7}},"16":{"start":{"line":45,"column":8},"end":{"line":45,"column":54}},"17":{"start":{"line":47,"column":16},"end":{"line":47,"column":42}},"18":{"start":{"line":48,"column":6},"end":{"line":50,"column":19}},"19":{"start":{"line":53,"column":6},"end":{"line":56,"column":19}},"20":{"start":{"line":59,"column":6},"end":{"line":62,"column":19}},"21":{"start":{"line":65,"column":6},"end":{"line":67,"column":7}},"22":{"start":{"line":66,"column":8},"end":{"line":66,"column":54}},"23":{"start":{"line":68,"column":16},"end":{"line":68,"column":52}},"24":{"start":{"line":69,"column":6},"end":{"line":72,"column":19}},"25":{"start":{"line":75,"column":6},"end":{"line":77,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":6,"column":17},"end":{"line":6,"column":18}},"loc":{"start":{"line":6,"column":32},"end":{"line":80,"column":1}},"line":6},"1":{"name":"(anonymous_1)","decl":{"start":{"line":8,"column":4},"end":{"line":8,"column":5}},"loc":{"start":{"line":8,"column":31},"end":{"line":39,"column":5}},"line":8},"2":{"name":"(anonymous_2)","decl":{"start":{"line":40,"column":4},"end":{"line":40,"column":5}},"loc":{"start":{"line":40,"column":45},"end":{"line":51,"column":5}},"line":40},"3":{"name":"(anonymous_3)","decl":{"start":{"line":52,"column":4},"end":{"line":52,"column":5}},"loc":{"start":{"line":52,"column":29},"end":{"line":57,"column":5}},"line":52},"4":{"name":"(anonymous_4)","decl":{"start":{"line":58,"column":4},"end":{"line":58,"column":5}},"loc":{"start":{"line":58,"column":39},"end":{"line":63,"column":5}},"line":58},"5":{"name":"(anonymous_5)","decl":{"start":{"line":64,"column":4},"end":{"line":64,"column":5}},"loc":{"start":{"line":64,"column":42},"end":{"line":73,"column":5}},"line":64},"6":{"name":"(anonymous_6)","decl":{"start":{"line":74,"column":4},"end":{"line":74,"column":5}},"loc":{"start":{"line":74,"column":31},"end":{"line":78,"column":5}},"line":74}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":8},"end":{"line":8,"column":19}},"type":"default-arg","locations":[{"start":{"line":8,"column":17},"end":{"line":8,"column":19}}],"line":8},"1":{"loc":{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},"type":"if","locations":[{"start":{"line":18,"column":6},"end":{"line":20,"column":7}},{"start":{},"end":{}}],"line":18},"2":{"loc":{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},"type":"if","locations":[{"start":{"line":21,"column":6},"end":{"line":23,"column":7}},{"start":{},"end":{}}],"line":21},"3":{"loc":{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},"type":"if","locations":[{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},{"start":{},"end":{}}],"line":24},"4":{"loc":{"start":{"line":27,"column":14},"end":{"line":27,"column":33}},"type":"binary-expr","locations":[{"start":{"line":27,"column":14},"end":{"line":27,"column":27}},{"start":{"line":27,"column":31},"end":{"line":27,"column":33}}],"line":27},"5":{"loc":{"start":{"line":28,"column":13},"end":{"line":28,"column":30}},"type":"binary-expr","locations":[{"start":{"line":28,"column":13},"end":{"line":28,"column":25}},{"start":{"line":28,"column":29},"end":{"line":28,"column":30}}],"line":28},"6":{"loc":{"start":{"line":40,"column":22},"end":{"line":40,"column":33}},"type":"default-arg","locations":[{"start":{"line":40,"column":31},"end":{"line":40,"column":33}}],"line":40},"7":{"loc":{"start":{"line":44,"column":6},"end":{"line":46,"column":7}},"type":"if","locations":[{"start":{"line":44,"column":6},"end":{"line":46,"column":7}},{"start":{},"end":{}}],"line":44},"8":{"loc":{"start":{"line":65,"column":6},"end":{"line":67,"column":7}},"type":"if","locations":[{"start":{"line":65,"column":6},"end":{"line":67,"column":7}},{"start":{},"end":{}}],"line":65}},"s":{"0":1,"1":1,"2":3,"3":2,"4":2,"5":2,"6":0,"7":2,"8":1,"9":2,"10":1,"11":2,"12":2,"13":2,"14":1,"15":1,"16":0,"17":1,"18":1,"19":1,"20":1,"21":1,"22":0,"23":1,"24":1,"25":0},"f":{"0":3,"1":2,"2":1,"3":1,"4":1,"5":1,"6":0},"b":{"0":[1],"1":[0,2],"2":[1,1],"3":[1,1],"4":[2,1],"5":[2,1],"6":[1],"7":[0,1],"8":[0,1]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"2aff80fd00a2999860e0d56656076b6dc1754fb9","contentHash":"2e17076595f82473e0fa2c40cf273df87bf9fc28d13373d9d8c7ba6de3f1ab13"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/tokens.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/tokens.js","statementMap":{"0":{"start":{"line":5,"column":4},"end":{"line":5,"column":38}},"1":{"start":{"line":6,"column":0},"end":{"line":34,"column":2}},"2":{"start":{"line":7,"column":19},"end":{"line":7,"column":28}},"3":{"start":{"line":8,"column":2},"end":{"line":33,"column":4}},"4":{"start":{"line":10,"column":6},"end":{"line":13,"column":19}},"5":{"start":{"line":16,"column":6},"end":{"line":19,"column":19}},"6":{"start":{"line":22,"column":6},"end":{"line":25,"column":19}},"7":{"start":{"line":28,"column":6},"end":{"line":31,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":6,"column":17},"end":{"line":6,"column":18}},"loc":{"start":{"line":6,"column":32},"end":{"line":34,"column":1}},"line":6},"1":{"name":"(anonymous_1)","decl":{"start":{"line":9,"column":4},"end":{"line":9,"column":5}},"loc":{"start":{"line":9,"column":29},"end":{"line":14,"column":5}},"line":9},"2":{"name":"(anonymous_2)","decl":{"start":{"line":15,"column":4},"end":{"line":15,"column":5}},"loc":{"start":{"line":15,"column":28},"end":{"line":20,"column":5}},"line":15},"3":{"name":"(anonymous_3)","decl":{"start":{"line":21,"column":4},"end":{"line":21,"column":5}},"loc":{"start":{"line":21,"column":29},"end":{"line":26,"column":5}},"line":21},"4":{"name":"(anonymous_4)","decl":{"start":{"line":27,"column":4},"end":{"line":27,"column":5}},"loc":{"start":{"line":27,"column":54},"end":{"line":32,"column":5}},"line":27}},"branchMap":{},"s":{"0":1,"1":1,"2":3,"3":3,"4":1,"5":1,"6":1,"7":0},"f":{"0":3,"1":1,"2":1,"3":1,"4":0},"b":{},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"3c7ff743fff39174ed2e4aa2fd24a4bca0222c56","contentHash":"3a8891c99c4e75795737134817e9b8a28e83cfc0d60bcf58f0fa65fd30bcc5ed"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/virtualAccounts.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/virtualAccounts.js","statementMap":{"0":{"start":{"line":6,"column":4},"end":{"line":6,"column":38}},"1":{"start":{"line":7,"column":17},"end":{"line":7,"column":36}},"2":{"start":{"line":8,"column":20},"end":{"line":8,"column":55}},"3":{"start":{"line":9,"column":0},"end":{"line":127,"column":2}},"4":{"start":{"line":10,"column":2},"end":{"line":126,"column":4}},"5":{"start":{"line":18,"column":10},"end":{"line":18,"column":16}},"6":{"start":{"line":19,"column":16},"end":{"line":19,"column":24}},"7":{"start":{"line":20,"column":6},"end":{"line":22,"column":7}},"8":{"start":{"line":21,"column":8},"end":{"line":21,"column":35}},"9":{"start":{"line":23,"column":6},"end":{"line":25,"column":7}},"10":{"start":{"line":24,"column":8},"end":{"line":24,"column":31}},"11":{"start":{"line":26,"column":6},"end":{"line":26,"column":34}},"12":{"start":{"line":27,"column":6},"end":{"line":27,"column":31}},"13":{"start":{"line":28,"column":6},"end":{"line":37,"column":19}},"14":{"start":{"line":40,"column":6},"end":{"line":42,"column":7}},"15":{"start":{"line":41,"column":8},"end":{"line":41,"column":47}},"16":{"start":{"line":43,"column":16},"end":{"line":43,"column":49}},"17":{"start":{"line":44,"column":6},"end":{"line":46,"column":19}},"18":{"start":{"line":49,"column":6},"end":{"line":52,"column":19}},"19":{"start":{"line":55,"column":6},"end":{"line":57,"column":7}},"20":{"start":{"line":56,"column":8},"end":{"line":56,"column":47}},"21":{"start":{"line":58,"column":6},"end":{"line":60,"column":19}},"22":{"start":{"line":63,"column":6},"end":{"line":65,"column":7}},"23":{"start":{"line":64,"column":8},"end":{"line":64,"column":47}},"24":{"start":{"line":66,"column":16},"end":{"line":66,"column":58}},"25":{"start":{"line":67,"column":6},"end":{"line":69,"column":19}},"26":{"start":{"line":81,"column":6},"end":{"line":83,"column":7}},"27":{"start":{"line":82,"column":8},"end":{"line":82,"column":47}},"28":{"start":{"line":84,"column":6},"end":{"line":87,"column":19}},"29":{"start":{"line":98,"column":6},"end":{"line":100,"column":7}},"30":{"start":{"line":99,"column":8},"end":{"line":99,"column":47}},"31":{"start":{"line":101,"column":6},"end":{"line":104,"column":19}},"32":{"start":{"line":116,"column":6},"end":{"line":118,"column":7}},"33":{"start":{"line":117,"column":8},"end":{"line":117,"column":47}},"34":{"start":{"line":119,"column":6},"end":{"line":121,"column":7}},"35":{"start":{"line":120,"column":8},"end":{"line":120,"column":63}},"36":{"start":{"line":122,"column":6},"end":{"line":124,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":9,"column":17},"end":{"line":9,"column":18}},"loc":{"start":{"line":9,"column":32},"end":{"line":127,"column":1}},"line":9},"1":{"name":"(anonymous_1)","decl":{"start":{"line":11,"column":4},"end":{"line":11,"column":5}},"loc":{"start":{"line":11,"column":31},"end":{"line":38,"column":5}},"line":11},"2":{"name":"(anonymous_2)","decl":{"start":{"line":39,"column":4},"end":{"line":39,"column":5}},"loc":{"start":{"line":39,"column":38},"end":{"line":47,"column":5}},"line":39},"3":{"name":"(anonymous_3)","decl":{"start":{"line":48,"column":4},"end":{"line":48,"column":5}},"loc":{"start":{"line":48,"column":34},"end":{"line":53,"column":5}},"line":48},"4":{"name":"(anonymous_4)","decl":{"start":{"line":54,"column":4},"end":{"line":54,"column":5}},"loc":{"start":{"line":54,"column":38},"end":{"line":61,"column":5}},"line":54},"5":{"name":"(anonymous_5)","decl":{"start":{"line":62,"column":4},"end":{"line":62,"column":5}},"loc":{"start":{"line":62,"column":46},"end":{"line":70,"column":5}},"line":62},"6":{"name":"(anonymous_6)","decl":{"start":{"line":71,"column":4},"end":{"line":71,"column":5}},"loc":{"start":{"line":71,"column":57},"end":{"line":88,"column":5}},"line":71},"7":{"name":"(anonymous_7)","decl":{"start":{"line":89,"column":4},"end":{"line":89,"column":5}},"loc":{"start":{"line":89,"column":58},"end":{"line":105,"column":5}},"line":89},"8":{"name":"(anonymous_8)","decl":{"start":{"line":106,"column":4},"end":{"line":106,"column":5}},"loc":{"start":{"line":106,"column":67},"end":{"line":125,"column":5}},"line":106}},"branchMap":{"0":{"loc":{"start":{"line":11,"column":8},"end":{"line":11,"column":19}},"type":"default-arg","locations":[{"start":{"line":11,"column":17},"end":{"line":11,"column":19}}],"line":11},"1":{"loc":{"start":{"line":20,"column":6},"end":{"line":22,"column":7}},"type":"if","locations":[{"start":{"line":20,"column":6},"end":{"line":22,"column":7}},{"start":{},"end":{}}],"line":20},"2":{"loc":{"start":{"line":23,"column":6},"end":{"line":25,"column":7}},"type":"if","locations":[{"start":{"line":23,"column":6},"end":{"line":25,"column":7}},{"start":{},"end":{}}],"line":23},"3":{"loc":{"start":{"line":26,"column":14},"end":{"line":26,"column":33}},"type":"binary-expr","locations":[{"start":{"line":26,"column":14},"end":{"line":26,"column":27}},{"start":{"line":26,"column":31},"end":{"line":26,"column":33}}],"line":26},"4":{"loc":{"start":{"line":27,"column":13},"end":{"line":27,"column":30}},"type":"binary-expr","locations":[{"start":{"line":27,"column":13},"end":{"line":27,"column":25}},{"start":{"line":27,"column":29},"end":{"line":27,"column":30}}],"line":27},"5":{"loc":{"start":{"line":40,"column":6},"end":{"line":42,"column":7}},"type":"if","locations":[{"start":{"line":40,"column":6},"end":{"line":42,"column":7}},{"start":{},"end":{}}],"line":40},"6":{"loc":{"start":{"line":48,"column":11},"end":{"line":48,"column":22}},"type":"default-arg","locations":[{"start":{"line":48,"column":20},"end":{"line":48,"column":22}}],"line":48},"7":{"loc":{"start":{"line":55,"column":6},"end":{"line":57,"column":7}},"type":"if","locations":[{"start":{"line":55,"column":6},"end":{"line":57,"column":7}},{"start":{},"end":{}}],"line":55},"8":{"loc":{"start":{"line":63,"column":6},"end":{"line":65,"column":7}},"type":"if","locations":[{"start":{"line":63,"column":6},"end":{"line":65,"column":7}},{"start":{},"end":{}}],"line":63},"9":{"loc":{"start":{"line":71,"column":34},"end":{"line":71,"column":45}},"type":"default-arg","locations":[{"start":{"line":71,"column":43},"end":{"line":71,"column":45}}],"line":71},"10":{"loc":{"start":{"line":81,"column":6},"end":{"line":83,"column":7}},"type":"if","locations":[{"start":{"line":81,"column":6},"end":{"line":83,"column":7}},{"start":{},"end":{}}],"line":81},"11":{"loc":{"start":{"line":89,"column":35},"end":{"line":89,"column":46}},"type":"default-arg","locations":[{"start":{"line":89,"column":44},"end":{"line":89,"column":46}}],"line":89},"12":{"loc":{"start":{"line":98,"column":6},"end":{"line":100,"column":7}},"type":"if","locations":[{"start":{"line":98,"column":6},"end":{"line":100,"column":7}},{"start":{},"end":{}}],"line":98},"13":{"loc":{"start":{"line":116,"column":6},"end":{"line":118,"column":7}},"type":"if","locations":[{"start":{"line":116,"column":6},"end":{"line":118,"column":7}},{"start":{},"end":{}}],"line":116},"14":{"loc":{"start":{"line":119,"column":6},"end":{"line":121,"column":7}},"type":"if","locations":[{"start":{"line":119,"column":6},"end":{"line":121,"column":7}},{"start":{},"end":{}}],"line":119}},"s":{"0":1,"1":1,"2":1,"3":1,"4":3,"5":2,"6":2,"7":2,"8":1,"9":2,"10":1,"11":2,"12":2,"13":2,"14":2,"15":1,"16":1,"17":1,"18":1,"19":2,"20":1,"21":1,"22":5,"23":1,"24":4,"25":4,"26":1,"27":0,"28":1,"29":1,"30":0,"31":1,"32":1,"33":0,"34":1,"35":0,"36":1},"f":{"0":3,"1":2,"2":2,"3":1,"4":2,"5":5,"6":1,"7":1,"8":1},"b":{"0":[1],"1":[1,1],"2":[1,1],"3":[2,1],"4":[2,1],"5":[1,1],"6":[0],"7":[1,1],"8":[1,4],"9":[0],"10":[0,1],"11":[0],"12":[0,1],"13":[0,1],"14":[0,1]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"6a3eafd8560dd2e4ace381170ac2850ce28b5e5b","contentHash":"763ad756bf1465c4d667defa5e7a6b1d551fef74c1f435f551b36a0d26dd0753"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/invoices.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/invoices.js","statementMap":{"0":{"start":{"line":8,"column":4},"end":{"line":8,"column":38}},"1":{"start":{"line":9,"column":0},"end":{"line":188,"column":2}},"2":{"start":{"line":10,"column":19},"end":{"line":10,"column":30}},"3":{"start":{"line":11,"column":23},"end":{"line":11,"column":48}},"4":{"start":{"line":20,"column":2},"end":{"line":187,"column":4}},"5":{"start":{"line":31,"column":16},"end":{"line":31,"column":24}},"6":{"start":{"line":32,"column":6},"end":{"line":35,"column":19}},"7":{"start":{"line":48,"column":16},"end":{"line":48,"column":42}},"8":{"start":{"line":49,"column":6},"end":{"line":51,"column":7}},"9":{"start":{"line":50,"column":8},"end":{"line":50,"column":57}},"10":{"start":{"line":52,"column":6},"end":{"line":55,"column":19}},"11":{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},"12":{"start":{"line":68,"column":8},"end":{"line":68,"column":48}},"13":{"start":{"line":70,"column":16},"end":{"line":70,"column":48}},"14":{"start":{"line":71,"column":6},"end":{"line":73,"column":19}},"15":{"start":{"line":85,"column":6},"end":{"line":87,"column":7}},"16":{"start":{"line":86,"column":8},"end":{"line":86,"column":48}},"17":{"start":{"line":88,"column":16},"end":{"line":88,"column":42}},"18":{"start":{"line":89,"column":6},"end":{"line":91,"column":19}},"19":{"start":{"line":103,"column":6},"end":{"line":105,"column":7}},"20":{"start":{"line":104,"column":8},"end":{"line":104,"column":48}},"21":{"start":{"line":106,"column":16},"end":{"line":106,"column":49}},"22":{"start":{"line":107,"column":6},"end":{"line":109,"column":19}},"23":{"start":{"line":121,"column":6},"end":{"line":123,"column":7}},"24":{"start":{"line":122,"column":8},"end":{"line":122,"column":48}},"25":{"start":{"line":124,"column":16},"end":{"line":124,"column":42}},"26":{"start":{"line":125,"column":6},"end":{"line":127,"column":19}},"27":{"start":{"line":144,"column":12},"end":{"line":144,"column":18}},"28":{"start":{"line":145,"column":14},"end":{"line":145,"column":22}},"29":{"start":{"line":146,"column":6},"end":{"line":148,"column":7}},"30":{"start":{"line":147,"column":8},"end":{"line":147,"column":35}},"31":{"start":{"line":149,"column":6},"end":{"line":151,"column":7}},"32":{"start":{"line":150,"column":8},"end":{"line":150,"column":31}},"33":{"start":{"line":152,"column":6},"end":{"line":152,"column":34}},"34":{"start":{"line":153,"column":6},"end":{"line":153,"column":31}},"35":{"start":{"line":154,"column":6},"end":{"line":163,"column":19}},"36":{"start":{"line":176,"column":6},"end":{"line":178,"column":7}},"37":{"start":{"line":177,"column":8},"end":{"line":177,"column":48}},"38":{"start":{"line":179,"column":6},"end":{"line":181,"column":7}},"39":{"start":{"line":180,"column":8},"end":{"line":180,"column":54}},"40":{"start":{"line":182,"column":16},"end":{"line":182,"column":62}},"41":{"start":{"line":183,"column":6},"end":{"line":185,"column":19}}},"fnMap":{"0":{"name":"invoicesApi","decl":{"start":{"line":9,"column":26},"end":{"line":9,"column":37}},"loc":{"start":{"line":9,"column":43},"end":{"line":188,"column":1}},"line":9},"1":{"name":"(anonymous_1)","decl":{"start":{"line":21,"column":4},"end":{"line":21,"column":5}},"loc":{"start":{"line":21,"column":34},"end":{"line":36,"column":5}},"line":21},"2":{"name":"(anonymous_2)","decl":{"start":{"line":37,"column":4},"end":{"line":37,"column":5}},"loc":{"start":{"line":37,"column":43},"end":{"line":56,"column":5}},"line":37},"3":{"name":"(anonymous_3)","decl":{"start":{"line":57,"column":4},"end":{"line":57,"column":5}},"loc":{"start":{"line":57,"column":31},"end":{"line":74,"column":5}},"line":57},"4":{"name":"(anonymous_4)","decl":{"start":{"line":75,"column":4},"end":{"line":75,"column":5}},"loc":{"start":{"line":75,"column":32},"end":{"line":92,"column":5}},"line":75},"5":{"name":"(anonymous_5)","decl":{"start":{"line":93,"column":4},"end":{"line":93,"column":5}},"loc":{"start":{"line":93,"column":32},"end":{"line":110,"column":5}},"line":93},"6":{"name":"(anonymous_6)","decl":{"start":{"line":111,"column":4},"end":{"line":111,"column":5}},"loc":{"start":{"line":111,"column":31},"end":{"line":128,"column":5}},"line":111},"7":{"name":"(anonymous_7)","decl":{"start":{"line":129,"column":4},"end":{"line":129,"column":5}},"loc":{"start":{"line":129,"column":31},"end":{"line":164,"column":5}},"line":129},"8":{"name":"(anonymous_8)","decl":{"start":{"line":165,"column":4},"end":{"line":165,"column":5}},"loc":{"start":{"line":165,"column":42},"end":{"line":186,"column":5}},"line":165}},"branchMap":{"0":{"loc":{"start":{"line":21,"column":11},"end":{"line":21,"column":22}},"type":"default-arg","locations":[{"start":{"line":21,"column":20},"end":{"line":21,"column":22}}],"line":21},"1":{"loc":{"start":{"line":37,"column":20},"end":{"line":37,"column":31}},"type":"default-arg","locations":[{"start":{"line":37,"column":29},"end":{"line":37,"column":31}}],"line":37},"2":{"loc":{"start":{"line":49,"column":6},"end":{"line":51,"column":7}},"type":"if","locations":[{"start":{"line":49,"column":6},"end":{"line":51,"column":7}},{"start":{},"end":{}}],"line":49},"3":{"loc":{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},"type":"if","locations":[{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},{"start":{},"end":{}}],"line":67},"4":{"loc":{"start":{"line":85,"column":6},"end":{"line":87,"column":7}},"type":"if","locations":[{"start":{"line":85,"column":6},"end":{"line":87,"column":7}},{"start":{},"end":{}}],"line":85},"5":{"loc":{"start":{"line":103,"column":6},"end":{"line":105,"column":7}},"type":"if","locations":[{"start":{"line":103,"column":6},"end":{"line":105,"column":7}},{"start":{},"end":{}}],"line":103},"6":{"loc":{"start":{"line":121,"column":6},"end":{"line":123,"column":7}},"type":"if","locations":[{"start":{"line":121,"column":6},"end":{"line":123,"column":7}},{"start":{},"end":{}}],"line":121},"7":{"loc":{"start":{"line":129,"column":8},"end":{"line":129,"column":19}},"type":"default-arg","locations":[{"start":{"line":129,"column":17},"end":{"line":129,"column":19}}],"line":129},"8":{"loc":{"start":{"line":146,"column":6},"end":{"line":148,"column":7}},"type":"if","locations":[{"start":{"line":146,"column":6},"end":{"line":148,"column":7}},{"start":{},"end":{}}],"line":146},"9":{"loc":{"start":{"line":149,"column":6},"end":{"line":151,"column":7}},"type":"if","locations":[{"start":{"line":149,"column":6},"end":{"line":151,"column":7}},{"start":{},"end":{}}],"line":149},"10":{"loc":{"start":{"line":152,"column":14},"end":{"line":152,"column":33}},"type":"binary-expr","locations":[{"start":{"line":152,"column":14},"end":{"line":152,"column":27}},{"start":{"line":152,"column":31},"end":{"line":152,"column":33}}],"line":152},"11":{"loc":{"start":{"line":153,"column":13},"end":{"line":153,"column":30}},"type":"binary-expr","locations":[{"start":{"line":153,"column":13},"end":{"line":153,"column":25}},{"start":{"line":153,"column":29},"end":{"line":153,"column":30}}],"line":153},"12":{"loc":{"start":{"line":176,"column":6},"end":{"line":178,"column":7}},"type":"if","locations":[{"start":{"line":176,"column":6},"end":{"line":178,"column":7}},{"start":{},"end":{}}],"line":176},"13":{"loc":{"start":{"line":179,"column":6},"end":{"line":181,"column":7}},"type":"if","locations":[{"start":{"line":179,"column":6},"end":{"line":181,"column":7}},{"start":{},"end":{}}],"line":179}},"s":{"0":1,"1":1,"2":3,"3":3,"4":3,"5":5,"6":5,"7":6,"8":6,"9":1,"10":5,"11":5,"12":1,"13":4,"14":4,"15":5,"16":1,"17":4,"18":4,"19":5,"20":1,"21":4,"22":4,"23":5,"24":1,"25":4,"26":4,"27":6,"28":6,"29":6,"30":1,"31":6,"32":1,"33":6,"34":6,"35":6,"36":6,"37":1,"38":5,"39":1,"40":4,"41":4},"f":{"0":3,"1":5,"2":6,"3":5,"4":5,"5":5,"6":5,"7":6,"8":6},"b":{"0":[0],"1":[1],"2":[1,5],"3":[1,4],"4":[1,4],"5":[1,4],"6":[1,4],"7":[0],"8":[1,5],"9":[1,5],"10":[6,5],"11":[6,5],"12":[1,5],"13":[1,4]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"503ff0c75e87edfc2565660ada6c823b82c2c7ab","contentHash":"81dd159c9cb6a89c2abd138ffb9c1d0297f3edf83ef4a359a197f6e4a40ed691"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/iins.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/iins.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":18,"column":2}},"1":{"start":{"line":4,"column":19},"end":{"line":4,"column":26}},"2":{"start":{"line":5,"column":2},"end":{"line":17,"column":4}},"3":{"start":{"line":7,"column":6},"end":{"line":9,"column":19}},"4":{"start":{"line":12,"column":6},"end":{"line":15,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":18,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":30},"end":{"line":10,"column":5}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":11,"column":4},"end":{"line":11,"column":5}},"loc":{"start":{"line":11,"column":31},"end":{"line":16,"column":5}},"line":11}},"branchMap":{"0":{"loc":{"start":{"line":11,"column":8},"end":{"line":11,"column":19}},"type":"default-arg","locations":[{"start":{"line":11,"column":17},"end":{"line":11,"column":19}}],"line":11}},"s":{"0":1,"1":3,"2":3,"3":1,"4":0},"f":{"0":3,"1":1,"2":0},"b":{"0":[0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"d8fa271c84107cc917c6c12e07316bc133bd17fd","contentHash":"f2cf71d5fa1c9112ca9db2f41395e802ee3211228247ee389dde6b11f17c4985"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/paymentLink.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/paymentLink.js","statementMap":{"0":{"start":{"line":8,"column":4},"end":{"line":8,"column":38}},"1":{"start":{"line":9,"column":0},"end":{"line":130,"column":2}},"2":{"start":{"line":10,"column":19},"end":{"line":10,"column":35}},"3":{"start":{"line":11,"column":23},"end":{"line":11,"column":53}},"4":{"start":{"line":12,"column":2},"end":{"line":129,"column":4}},"5":{"start":{"line":23,"column":16},"end":{"line":23,"column":24}},"6":{"start":{"line":24,"column":6},"end":{"line":27,"column":19}},"7":{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},"8":{"start":{"line":40,"column":8},"end":{"line":40,"column":48}},"9":{"start":{"line":42,"column":16},"end":{"line":42,"column":53}},"10":{"start":{"line":43,"column":6},"end":{"line":45,"column":19}},"11":{"start":{"line":57,"column":6},"end":{"line":59,"column":7}},"12":{"start":{"line":58,"column":8},"end":{"line":58,"column":48}},"13":{"start":{"line":60,"column":16},"end":{"line":60,"column":46}},"14":{"start":{"line":61,"column":6},"end":{"line":63,"column":19}},"15":{"start":{"line":80,"column":12},"end":{"line":80,"column":18}},"16":{"start":{"line":81,"column":14},"end":{"line":81,"column":22}},"17":{"start":{"line":82,"column":6},"end":{"line":84,"column":7}},"18":{"start":{"line":83,"column":8},"end":{"line":83,"column":35}},"19":{"start":{"line":85,"column":6},"end":{"line":87,"column":7}},"20":{"start":{"line":86,"column":8},"end":{"line":86,"column":31}},"21":{"start":{"line":88,"column":6},"end":{"line":88,"column":34}},"22":{"start":{"line":89,"column":6},"end":{"line":89,"column":31}},"23":{"start":{"line":90,"column":6},"end":{"line":99,"column":19}},"24":{"start":{"line":102,"column":6},"end":{"line":105,"column":19}},"25":{"start":{"line":118,"column":6},"end":{"line":120,"column":7}},"26":{"start":{"line":119,"column":8},"end":{"line":119,"column":48}},"27":{"start":{"line":121,"column":6},"end":{"line":123,"column":7}},"28":{"start":{"line":122,"column":8},"end":{"line":122,"column":54}},"29":{"start":{"line":124,"column":16},"end":{"line":124,"column":66}},"30":{"start":{"line":125,"column":6},"end":{"line":127,"column":19}}},"fnMap":{"0":{"name":"paymentLinkApi","decl":{"start":{"line":9,"column":26},"end":{"line":9,"column":40}},"loc":{"start":{"line":9,"column":46},"end":{"line":130,"column":1}},"line":9},"1":{"name":"(anonymous_1)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":29},"end":{"line":28,"column":5}},"line":13},"2":{"name":"(anonymous_2)","decl":{"start":{"line":29,"column":4},"end":{"line":29,"column":5}},"loc":{"start":{"line":29,"column":36},"end":{"line":46,"column":5}},"line":29},"3":{"name":"(anonymous_3)","decl":{"start":{"line":47,"column":4},"end":{"line":47,"column":5}},"loc":{"start":{"line":47,"column":35},"end":{"line":64,"column":5}},"line":47},"4":{"name":"(anonymous_4)","decl":{"start":{"line":65,"column":4},"end":{"line":65,"column":5}},"loc":{"start":{"line":65,"column":31},"end":{"line":100,"column":5}},"line":65},"5":{"name":"(anonymous_5)","decl":{"start":{"line":101,"column":4},"end":{"line":101,"column":5}},"loc":{"start":{"line":101,"column":42},"end":{"line":106,"column":5}},"line":101},"6":{"name":"(anonymous_6)","decl":{"start":{"line":107,"column":4},"end":{"line":107,"column":5}},"loc":{"start":{"line":107,"column":46},"end":{"line":128,"column":5}},"line":107}},"branchMap":{"0":{"loc":{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},"type":"if","locations":[{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},{"start":{},"end":{}}],"line":39},"1":{"loc":{"start":{"line":57,"column":6},"end":{"line":59,"column":7}},"type":"if","locations":[{"start":{"line":57,"column":6},"end":{"line":59,"column":7}},{"start":{},"end":{}}],"line":57},"2":{"loc":{"start":{"line":65,"column":8},"end":{"line":65,"column":19}},"type":"default-arg","locations":[{"start":{"line":65,"column":17},"end":{"line":65,"column":19}}],"line":65},"3":{"loc":{"start":{"line":82,"column":6},"end":{"line":84,"column":7}},"type":"if","locations":[{"start":{"line":82,"column":6},"end":{"line":84,"column":7}},{"start":{},"end":{}}],"line":82},"4":{"loc":{"start":{"line":85,"column":6},"end":{"line":87,"column":7}},"type":"if","locations":[{"start":{"line":85,"column":6},"end":{"line":87,"column":7}},{"start":{},"end":{}}],"line":85},"5":{"loc":{"start":{"line":88,"column":14},"end":{"line":88,"column":33}},"type":"binary-expr","locations":[{"start":{"line":88,"column":14},"end":{"line":88,"column":27}},{"start":{"line":88,"column":31},"end":{"line":88,"column":33}}],"line":88},"6":{"loc":{"start":{"line":89,"column":13},"end":{"line":89,"column":30}},"type":"binary-expr","locations":[{"start":{"line":89,"column":13},"end":{"line":89,"column":25}},{"start":{"line":89,"column":29},"end":{"line":89,"column":30}}],"line":89},"7":{"loc":{"start":{"line":118,"column":6},"end":{"line":120,"column":7}},"type":"if","locations":[{"start":{"line":118,"column":6},"end":{"line":120,"column":7}},{"start":{},"end":{}}],"line":118},"8":{"loc":{"start":{"line":121,"column":6},"end":{"line":123,"column":7}},"type":"if","locations":[{"start":{"line":121,"column":6},"end":{"line":123,"column":7}},{"start":{},"end":{}}],"line":121}},"s":{"0":1,"1":1,"2":3,"3":3,"4":3,"5":1,"6":1,"7":5,"8":1,"9":4,"10":4,"11":5,"12":1,"13":4,"14":4,"15":6,"16":6,"17":6,"18":1,"19":6,"20":1,"21":6,"22":6,"23":6,"24":1,"25":6,"26":1,"27":5,"28":1,"29":4,"30":4},"f":{"0":3,"1":1,"2":5,"3":5,"4":6,"5":1,"6":6},"b":{"0":[1,4],"1":[1,4],"2":[0],"3":[1,5],"4":[1,5],"5":[6,5],"6":[6,5],"7":[1,5],"8":[1,4]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"492d41d5fa977bef4affdbb6ec6e948966576fe5","contentHash":"92bc182f81a988c2cc15678c3794b4249532743806912153708bbe0b0b597fa0"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/plans.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/plans.js","statementMap":{"0":{"start":{"line":8,"column":4},"end":{"line":8,"column":38}},"1":{"start":{"line":9,"column":0},"end":{"line":84,"column":2}},"2":{"start":{"line":10,"column":19},"end":{"line":10,"column":27}},"3":{"start":{"line":11,"column":23},"end":{"line":11,"column":45}},"4":{"start":{"line":12,"column":2},"end":{"line":83,"column":4}},"5":{"start":{"line":23,"column":16},"end":{"line":23,"column":24}},"6":{"start":{"line":24,"column":6},"end":{"line":27,"column":19}},"7":{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},"8":{"start":{"line":40,"column":8},"end":{"line":40,"column":48}},"9":{"start":{"line":42,"column":16},"end":{"line":42,"column":39}},"10":{"start":{"line":43,"column":6},"end":{"line":45,"column":19}},"11":{"start":{"line":62,"column":12},"end":{"line":62,"column":18}},"12":{"start":{"line":63,"column":14},"end":{"line":63,"column":22}},"13":{"start":{"line":64,"column":6},"end":{"line":66,"column":7}},"14":{"start":{"line":65,"column":8},"end":{"line":65,"column":35}},"15":{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},"16":{"start":{"line":68,"column":8},"end":{"line":68,"column":31}},"17":{"start":{"line":70,"column":6},"end":{"line":70,"column":34}},"18":{"start":{"line":71,"column":6},"end":{"line":71,"column":31}},"19":{"start":{"line":72,"column":6},"end":{"line":81,"column":19}}},"fnMap":{"0":{"name":"plansApi","decl":{"start":{"line":9,"column":26},"end":{"line":9,"column":34}},"loc":{"start":{"line":9,"column":40},"end":{"line":84,"column":1}},"line":9},"1":{"name":"(anonymous_1)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":34},"end":{"line":28,"column":5}},"line":13},"2":{"name":"(anonymous_2)","decl":{"start":{"line":29,"column":4},"end":{"line":29,"column":5}},"loc":{"start":{"line":29,"column":28},"end":{"line":46,"column":5}},"line":29},"3":{"name":"(anonymous_3)","decl":{"start":{"line":47,"column":4},"end":{"line":47,"column":5}},"loc":{"start":{"line":47,"column":31},"end":{"line":82,"column":5}},"line":47}},"branchMap":{"0":{"loc":{"start":{"line":13,"column":11},"end":{"line":13,"column":22}},"type":"default-arg","locations":[{"start":{"line":13,"column":20},"end":{"line":13,"column":22}}],"line":13},"1":{"loc":{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},"type":"if","locations":[{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},{"start":{},"end":{}}],"line":39},"2":{"loc":{"start":{"line":47,"column":8},"end":{"line":47,"column":19}},"type":"default-arg","locations":[{"start":{"line":47,"column":17},"end":{"line":47,"column":19}}],"line":47},"3":{"loc":{"start":{"line":64,"column":6},"end":{"line":66,"column":7}},"type":"if","locations":[{"start":{"line":64,"column":6},"end":{"line":66,"column":7}},{"start":{},"end":{}}],"line":64},"4":{"loc":{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},"type":"if","locations":[{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},{"start":{},"end":{}}],"line":67},"5":{"loc":{"start":{"line":70,"column":14},"end":{"line":70,"column":33}},"type":"binary-expr","locations":[{"start":{"line":70,"column":14},"end":{"line":70,"column":27}},{"start":{"line":70,"column":31},"end":{"line":70,"column":33}}],"line":70},"6":{"loc":{"start":{"line":71,"column":13},"end":{"line":71,"column":30}},"type":"binary-expr","locations":[{"start":{"line":71,"column":13},"end":{"line":71,"column":25}},{"start":{"line":71,"column":29},"end":{"line":71,"column":30}}],"line":71}},"s":{"0":1,"1":1,"2":3,"3":3,"4":3,"5":5,"6":5,"7":5,"8":1,"9":4,"10":4,"11":6,"12":6,"13":6,"14":1,"15":6,"16":1,"17":6,"18":6,"19":6},"f":{"0":3,"1":5,"2":5,"3":6},"b":{"0":[0],"1":[1,4],"2":[0],"3":[1,5],"4":[1,5],"5":[6,5],"6":[6,5]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"23269d73a4cbd4b0bb28979ae6c39bb200c9d18e","contentHash":"62dab90a8a7b714fbe054cd2e0206cefdfe2c9dc9696f0e43a76d622a2ac286f"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/products.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/products.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":33,"column":2}},"1":{"start":{"line":4,"column":19},"end":{"line":4,"column":30}},"2":{"start":{"line":5,"column":2},"end":{"line":32,"column":4}},"3":{"start":{"line":7,"column":6},"end":{"line":11,"column":19}},"4":{"start":{"line":14,"column":6},"end":{"line":18,"column":19}},"5":{"start":{"line":21,"column":6},"end":{"line":24,"column":19}},"6":{"start":{"line":27,"column":6},"end":{"line":30,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":33,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":61},"end":{"line":12,"column":5}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":49},"end":{"line":19,"column":5}},"line":13},"3":{"name":"(anonymous_3)","decl":{"start":{"line":20,"column":4},"end":{"line":20,"column":5}},"loc":{"start":{"line":20,"column":42},"end":{"line":25,"column":5}},"line":20},"4":{"name":"(anonymous_4)","decl":{"start":{"line":26,"column":4},"end":{"line":26,"column":5}},"loc":{"start":{"line":26,"column":36},"end":{"line":31,"column":5}},"line":26}},"branchMap":{},"s":{"0":1,"1":3,"2":3,"3":1,"4":1,"5":0,"6":1},"f":{"0":3,"1":1,"2":1,"3":0,"4":1},"b":{},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"3d26fa92babb87449dbfef730c83298e6b22b5b7","contentHash":"593825a7bb42de02b7d13bca69b94be4c4a6b84fef1144a553c9ff6b02913d8e"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/subscriptions.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/subscriptions.js","statementMap":{"0":{"start":{"line":8,"column":4},"end":{"line":8,"column":38}},"1":{"start":{"line":9,"column":0},"end":{"line":259,"column":2}},"2":{"start":{"line":10,"column":19},"end":{"line":10,"column":35}},"3":{"start":{"line":11,"column":23},"end":{"line":11,"column":53}},"4":{"start":{"line":12,"column":2},"end":{"line":258,"column":4}},"5":{"start":{"line":23,"column":16},"end":{"line":23,"column":24}},"6":{"start":{"line":24,"column":6},"end":{"line":27,"column":19}},"7":{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},"8":{"start":{"line":40,"column":8},"end":{"line":40,"column":48}},"9":{"start":{"line":42,"column":16},"end":{"line":42,"column":47}},"10":{"start":{"line":43,"column":6},"end":{"line":45,"column":19}},"11":{"start":{"line":57,"column":16},"end":{"line":57,"column":47}},"12":{"start":{"line":58,"column":6},"end":{"line":60,"column":7}},"13":{"start":{"line":59,"column":8},"end":{"line":59,"column":48}},"14":{"start":{"line":61,"column":6},"end":{"line":64,"column":19}},"15":{"start":{"line":76,"column":16},"end":{"line":76,"column":74}},"16":{"start":{"line":77,"column":6},"end":{"line":79,"column":7}},"17":{"start":{"line":78,"column":8},"end":{"line":78,"column":48}},"18":{"start":{"line":80,"column":6},"end":{"line":82,"column":19}},"19":{"start":{"line":95,"column":16},"end":{"line":95,"column":72}},"20":{"start":{"line":96,"column":6},"end":{"line":98,"column":7}},"21":{"start":{"line":97,"column":8},"end":{"line":97,"column":62}},"22":{"start":{"line":99,"column":6},"end":{"line":101,"column":19}},"23":{"start":{"line":114,"column":16},"end":{"line":114,"column":53}},"24":{"start":{"line":115,"column":6},"end":{"line":117,"column":7}},"25":{"start":{"line":116,"column":8},"end":{"line":116,"column":62}},"26":{"start":{"line":118,"column":6},"end":{"line":121,"column":19}},"27":{"start":{"line":134,"column":16},"end":{"line":134,"column":54}},"28":{"start":{"line":135,"column":6},"end":{"line":137,"column":7}},"29":{"start":{"line":136,"column":8},"end":{"line":136,"column":62}},"30":{"start":{"line":138,"column":6},"end":{"line":141,"column":19}},"31":{"start":{"line":154,"column":16},"end":{"line":154,"column":58}},"32":{"start":{"line":155,"column":6},"end":{"line":157,"column":7}},"33":{"start":{"line":156,"column":8},"end":{"line":156,"column":62}},"34":{"start":{"line":158,"column":6},"end":{"line":160,"column":19}},"35":{"start":{"line":177,"column":12},"end":{"line":177,"column":18}},"36":{"start":{"line":178,"column":14},"end":{"line":178,"column":22}},"37":{"start":{"line":179,"column":6},"end":{"line":181,"column":7}},"38":{"start":{"line":180,"column":8},"end":{"line":180,"column":35}},"39":{"start":{"line":182,"column":6},"end":{"line":184,"column":7}},"40":{"start":{"line":183,"column":8},"end":{"line":183,"column":31}},"41":{"start":{"line":185,"column":6},"end":{"line":185,"column":34}},"42":{"start":{"line":186,"column":6},"end":{"line":186,"column":31}},"43":{"start":{"line":187,"column":6},"end":{"line":196,"column":19}},"44":{"start":{"line":209,"column":18},"end":{"line":209,"column":56}},"45":{"start":{"line":210,"column":6},"end":{"line":212,"column":7}},"46":{"start":{"line":211,"column":8},"end":{"line":211,"column":48}},"47":{"start":{"line":213,"column":6},"end":{"line":220,"column":19}},"48":{"start":{"line":233,"column":18},"end":{"line":233,"column":56}},"49":{"start":{"line":234,"column":6},"end":{"line":236,"column":7}},"50":{"start":{"line":235,"column":8},"end":{"line":235,"column":48}},"51":{"start":{"line":237,"column":6},"end":{"line":242,"column":19}},"52":{"start":{"line":253,"column":6},"end":{"line":256,"column":19}}},"fnMap":{"0":{"name":"subscriptionsApi","decl":{"start":{"line":9,"column":26},"end":{"line":9,"column":42}},"loc":{"start":{"line":9,"column":48},"end":{"line":259,"column":1}},"line":9},"1":{"name":"(anonymous_1)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":34},"end":{"line":28,"column":5}},"line":13},"2":{"name":"(anonymous_2)","decl":{"start":{"line":29,"column":4},"end":{"line":29,"column":5}},"loc":{"start":{"line":29,"column":36},"end":{"line":46,"column":5}},"line":29},"3":{"name":"(anonymous_3)","decl":{"start":{"line":47,"column":4},"end":{"line":47,"column":5}},"loc":{"start":{"line":47,"column":45},"end":{"line":65,"column":5}},"line":47},"4":{"name":"(anonymous_4)","decl":{"start":{"line":66,"column":4},"end":{"line":66,"column":5}},"loc":{"start":{"line":66,"column":44},"end":{"line":83,"column":5}},"line":66},"5":{"name":"(anonymous_5)","decl":{"start":{"line":84,"column":4},"end":{"line":84,"column":5}},"loc":{"start":{"line":84,"column":53},"end":{"line":102,"column":5}},"line":84},"6":{"name":"(anonymous_6)","decl":{"start":{"line":103,"column":4},"end":{"line":103,"column":5}},"loc":{"start":{"line":103,"column":49},"end":{"line":122,"column":5}},"line":103},"7":{"name":"(anonymous_7)","decl":{"start":{"line":123,"column":4},"end":{"line":123,"column":5}},"loc":{"start":{"line":123,"column":50},"end":{"line":142,"column":5}},"line":123},"8":{"name":"(anonymous_8)","decl":{"start":{"line":143,"column":4},"end":{"line":143,"column":5}},"loc":{"start":{"line":143,"column":51},"end":{"line":161,"column":5}},"line":143},"9":{"name":"(anonymous_9)","decl":{"start":{"line":162,"column":4},"end":{"line":162,"column":5}},"loc":{"start":{"line":162,"column":31},"end":{"line":197,"column":5}},"line":162},"10":{"name":"(anonymous_10)","decl":{"start":{"line":198,"column":4},"end":{"line":198,"column":5}},"loc":{"start":{"line":198,"column":63},"end":{"line":221,"column":5}},"line":198},"11":{"name":"(anonymous_11)","decl":{"start":{"line":222,"column":4},"end":{"line":222,"column":5}},"loc":{"start":{"line":222,"column":50},"end":{"line":243,"column":5}},"line":222},"12":{"name":"createRegistrationLink","decl":{"start":{"line":244,"column":37},"end":{"line":244,"column":59}},"loc":{"start":{"line":244,"column":83},"end":{"line":257,"column":5}},"line":244}},"branchMap":{"0":{"loc":{"start":{"line":13,"column":11},"end":{"line":13,"column":22}},"type":"default-arg","locations":[{"start":{"line":13,"column":20},"end":{"line":13,"column":22}}],"line":13},"1":{"loc":{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},"type":"if","locations":[{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},{"start":{},"end":{}}],"line":39},"2":{"loc":{"start":{"line":58,"column":6},"end":{"line":60,"column":7}},"type":"if","locations":[{"start":{"line":58,"column":6},"end":{"line":60,"column":7}},{"start":{},"end":{}}],"line":58},"3":{"loc":{"start":{"line":77,"column":6},"end":{"line":79,"column":7}},"type":"if","locations":[{"start":{"line":77,"column":6},"end":{"line":79,"column":7}},{"start":{},"end":{}}],"line":77},"4":{"loc":{"start":{"line":96,"column":6},"end":{"line":98,"column":7}},"type":"if","locations":[{"start":{"line":96,"column":6},"end":{"line":98,"column":7}},{"start":{},"end":{}}],"line":96},"5":{"loc":{"start":{"line":103,"column":26},"end":{"line":103,"column":37}},"type":"default-arg","locations":[{"start":{"line":103,"column":35},"end":{"line":103,"column":37}}],"line":103},"6":{"loc":{"start":{"line":115,"column":6},"end":{"line":117,"column":7}},"type":"if","locations":[{"start":{"line":115,"column":6},"end":{"line":117,"column":7}},{"start":{},"end":{}}],"line":115},"7":{"loc":{"start":{"line":123,"column":27},"end":{"line":123,"column":38}},"type":"default-arg","locations":[{"start":{"line":123,"column":36},"end":{"line":123,"column":38}}],"line":123},"8":{"loc":{"start":{"line":135,"column":6},"end":{"line":137,"column":7}},"type":"if","locations":[{"start":{"line":135,"column":6},"end":{"line":137,"column":7}},{"start":{},"end":{}}],"line":135},"9":{"loc":{"start":{"line":155,"column":6},"end":{"line":157,"column":7}},"type":"if","locations":[{"start":{"line":155,"column":6},"end":{"line":157,"column":7}},{"start":{},"end":{}}],"line":155},"10":{"loc":{"start":{"line":162,"column":8},"end":{"line":162,"column":19}},"type":"default-arg","locations":[{"start":{"line":162,"column":17},"end":{"line":162,"column":19}}],"line":162},"11":{"loc":{"start":{"line":179,"column":6},"end":{"line":181,"column":7}},"type":"if","locations":[{"start":{"line":179,"column":6},"end":{"line":181,"column":7}},{"start":{},"end":{}}],"line":179},"12":{"loc":{"start":{"line":182,"column":6},"end":{"line":184,"column":7}},"type":"if","locations":[{"start":{"line":182,"column":6},"end":{"line":184,"column":7}},{"start":{},"end":{}}],"line":182},"13":{"loc":{"start":{"line":185,"column":14},"end":{"line":185,"column":33}},"type":"binary-expr","locations":[{"start":{"line":185,"column":14},"end":{"line":185,"column":27}},{"start":{"line":185,"column":31},"end":{"line":185,"column":33}}],"line":185},"14":{"loc":{"start":{"line":186,"column":13},"end":{"line":186,"column":30}},"type":"binary-expr","locations":[{"start":{"line":186,"column":13},"end":{"line":186,"column":25}},{"start":{"line":186,"column":29},"end":{"line":186,"column":30}}],"line":186},"15":{"loc":{"start":{"line":198,"column":27},"end":{"line":198,"column":51}},"type":"default-arg","locations":[{"start":{"line":198,"column":46},"end":{"line":198,"column":51}}],"line":198},"16":{"loc":{"start":{"line":210,"column":6},"end":{"line":212,"column":7}},"type":"if","locations":[{"start":{"line":210,"column":6},"end":{"line":212,"column":7}},{"start":{},"end":{}}],"line":210},"17":{"loc":{"start":{"line":215,"column":12},"end":{"line":219,"column":9}},"type":"binary-expr","locations":[{"start":{"line":215,"column":12},"end":{"line":215,"column":28}},{"start":{"line":215,"column":32},"end":{"line":219,"column":9}}],"line":215},"18":{"loc":{"start":{"line":234,"column":6},"end":{"line":236,"column":7}},"type":"if","locations":[{"start":{"line":234,"column":6},"end":{"line":236,"column":7}},{"start":{},"end":{}}],"line":234},"19":{"loc":{"start":{"line":244,"column":60},"end":{"line":244,"column":71}},"type":"default-arg","locations":[{"start":{"line":244,"column":69},"end":{"line":244,"column":71}}],"line":244}},"s":{"0":1,"1":1,"2":3,"3":3,"4":3,"5":5,"6":5,"7":5,"8":1,"9":4,"10":4,"11":6,"12":6,"13":1,"14":5,"15":5,"16":5,"17":1,"18":4,"19":5,"20":5,"21":1,"22":4,"23":6,"24":6,"25":1,"26":5,"27":6,"28":6,"29":1,"30":5,"31":5,"32":5,"33":1,"34":4,"35":6,"36":6,"37":6,"38":1,"39":6,"40":1,"41":6,"42":6,"43":6,"44":7,"45":7,"46":1,"47":6,"48":2,"49":2,"50":1,"51":1,"52":6},"f":{"0":3,"1":5,"2":5,"3":6,"4":5,"5":5,"6":6,"7":6,"8":5,"9":6,"10":7,"11":2,"12":6},"b":{"0":[0],"1":[1,4],"2":[1,5],"3":[1,4],"4":[1,4],"5":[1],"6":[1,5],"7":[1],"8":[1,5],"9":[1,4],"10":[0],"11":[1,5],"12":[1,5],"13":[6,5],"14":[6,5],"15":[0],"16":[1,6],"17":[6,1],"18":[1,1],"19":[0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"c87d46889cecb92476dbe92dbd5720e57d1036a5","contentHash":"fe799f525c72e0cd6622120eeb3247c1530a32ae6dfe44dc30d4d3b7d963a913"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/addons.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/addons.js","statementMap":{"0":{"start":{"line":8,"column":4},"end":{"line":8,"column":38}},"1":{"start":{"line":9,"column":0},"end":{"line":87,"column":2}},"2":{"start":{"line":10,"column":19},"end":{"line":10,"column":28}},"3":{"start":{"line":11,"column":23},"end":{"line":11,"column":46}},"4":{"start":{"line":12,"column":2},"end":{"line":86,"column":4}},"5":{"start":{"line":22,"column":6},"end":{"line":24,"column":7}},"6":{"start":{"line":23,"column":8},"end":{"line":23,"column":48}},"7":{"start":{"line":25,"column":18},"end":{"line":25,"column":42}},"8":{"start":{"line":26,"column":6},"end":{"line":28,"column":19}},"9":{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},"10":{"start":{"line":40,"column":8},"end":{"line":40,"column":48}},"11":{"start":{"line":42,"column":18},"end":{"line":42,"column":42}},"12":{"start":{"line":43,"column":6},"end":{"line":45,"column":19}},"13":{"start":{"line":48,"column":19},"end":{"line":48,"column":89}},"14":{"start":{"line":49,"column":21},"end":{"line":49,"column":33}},"15":{"start":{"line":65,"column":12},"end":{"line":65,"column":18}},"16":{"start":{"line":66,"column":14},"end":{"line":66,"column":22}},"17":{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},"18":{"start":{"line":68,"column":8},"end":{"line":68,"column":35}},"19":{"start":{"line":70,"column":6},"end":{"line":72,"column":7}},"20":{"start":{"line":71,"column":8},"end":{"line":71,"column":31}},"21":{"start":{"line":73,"column":6},"end":{"line":73,"column":34}},"22":{"start":{"line":74,"column":6},"end":{"line":74,"column":31}},"23":{"start":{"line":75,"column":6},"end":{"line":84,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":9,"column":17},"end":{"line":9,"column":18}},"loc":{"start":{"line":9,"column":32},"end":{"line":87,"column":1}},"line":9},"1":{"name":"(anonymous_1)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":29},"end":{"line":29,"column":5}},"line":13},"2":{"name":"(anonymous_2)","decl":{"start":{"line":30,"column":4},"end":{"line":30,"column":5}},"loc":{"start":{"line":30,"column":30},"end":{"line":46,"column":5}},"line":30},"3":{"name":"(anonymous_3)","decl":{"start":{"line":47,"column":4},"end":{"line":47,"column":5}},"loc":{"start":{"line":47,"column":10},"end":{"line":85,"column":5}},"line":47}},"branchMap":{"0":{"loc":{"start":{"line":22,"column":6},"end":{"line":24,"column":7}},"type":"if","locations":[{"start":{"line":22,"column":6},"end":{"line":24,"column":7}},{"start":{},"end":{}}],"line":22},"1":{"loc":{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},"type":"if","locations":[{"start":{"line":39,"column":6},"end":{"line":41,"column":7}},{"start":{},"end":{}}],"line":39},"2":{"loc":{"start":{"line":48,"column":19},"end":{"line":48,"column":89}},"type":"cond-expr","locations":[{"start":{"line":48,"column":72},"end":{"line":48,"column":84}},{"start":{"line":48,"column":87},"end":{"line":48,"column":89}}],"line":48},"3":{"loc":{"start":{"line":48,"column":19},"end":{"line":48,"column":69}},"type":"binary-expr","locations":[{"start":{"line":48,"column":19},"end":{"line":48,"column":39}},{"start":{"line":48,"column":43},"end":{"line":48,"column":69}}],"line":48},"4":{"loc":{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},"type":"if","locations":[{"start":{"line":67,"column":6},"end":{"line":69,"column":7}},{"start":{},"end":{}}],"line":67},"5":{"loc":{"start":{"line":70,"column":6},"end":{"line":72,"column":7}},"type":"if","locations":[{"start":{"line":70,"column":6},"end":{"line":72,"column":7}},{"start":{},"end":{}}],"line":70},"6":{"loc":{"start":{"line":73,"column":14},"end":{"line":73,"column":33}},"type":"binary-expr","locations":[{"start":{"line":73,"column":14},"end":{"line":73,"column":27}},{"start":{"line":73,"column":31},"end":{"line":73,"column":33}}],"line":73},"7":{"loc":{"start":{"line":74,"column":13},"end":{"line":74,"column":30}},"type":"binary-expr","locations":[{"start":{"line":74,"column":13},"end":{"line":74,"column":25}},{"start":{"line":74,"column":29},"end":{"line":74,"column":30}}],"line":74}},"s":{"0":1,"1":1,"2":3,"3":3,"4":3,"5":5,"6":1,"7":4,"8":4,"9":5,"10":1,"11":4,"12":4,"13":6,"14":6,"15":6,"16":6,"17":6,"18":1,"19":6,"20":1,"21":6,"22":6,"23":6},"f":{"0":3,"1":5,"2":5,"3":6},"b":{"0":[1,4],"1":[1,4],"2":[6,0],"3":[6,6],"4":[1,5],"5":[1,5],"6":[6,5],"7":[6,5]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"9677fc3dd63a7c9c5c0900b13d765338c446ce6d","contentHash":"52502400a06ecfc149f49be410be7c7c82075c08f057e0101e5c91274b4be1bd"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/settlements.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/settlements.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":155,"column":2}},"1":{"start":{"line":4,"column":19},"end":{"line":4,"column":33}},"2":{"start":{"line":5,"column":2},"end":{"line":154,"column":4}},"3":{"start":{"line":16,"column":16},"end":{"line":16,"column":38}},"4":{"start":{"line":17,"column":6},"end":{"line":20,"column":19}},"5":{"start":{"line":37,"column":12},"end":{"line":37,"column":18}},"6":{"start":{"line":38,"column":14},"end":{"line":38,"column":22}},"7":{"start":{"line":39,"column":6},"end":{"line":48,"column":19}},"8":{"start":{"line":60,"column":6},"end":{"line":62,"column":7}},"9":{"start":{"line":61,"column":8},"end":{"line":61,"column":60}},"10":{"start":{"line":63,"column":6},"end":{"line":65,"column":19}},"11":{"start":{"line":78,"column":6},"end":{"line":80,"column":7}},"12":{"start":{"line":79,"column":8},"end":{"line":79,"column":59}},"13":{"start":{"line":81,"column":6},"end":{"line":85,"column":7}},"14":{"start":{"line":82,"column":8},"end":{"line":84,"column":10}},"15":{"start":{"line":86,"column":6},"end":{"line":91,"column":19}},"16":{"start":{"line":109,"column":12},"end":{"line":109,"column":18}},"17":{"start":{"line":110,"column":14},"end":{"line":110,"column":36}},"18":{"start":{"line":111,"column":6},"end":{"line":115,"column":7}},"19":{"start":{"line":112,"column":8},"end":{"line":114,"column":10}},"20":{"start":{"line":116,"column":6},"end":{"line":126,"column":19}},"21":{"start":{"line":142,"column":12},"end":{"line":142,"column":18}},"22":{"start":{"line":143,"column":14},"end":{"line":143,"column":42}},"23":{"start":{"line":144,"column":6},"end":{"line":152,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":155,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":52},"end":{"line":21,"column":5}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":22,"column":4},"end":{"line":22,"column":5}},"loc":{"start":{"line":22,"column":31},"end":{"line":49,"column":5}},"line":22},"3":{"name":"(anonymous_3)","decl":{"start":{"line":50,"column":4},"end":{"line":50,"column":5}},"loc":{"start":{"line":50,"column":34},"end":{"line":66,"column":5}},"line":50},"4":{"name":"fetchOndemandSettlementById","decl":{"start":{"line":67,"column":42},"end":{"line":67,"column":69}},"loc":{"start":{"line":67,"column":106},"end":{"line":92,"column":5}},"line":67},"5":{"name":"(anonymous_5)","decl":{"start":{"line":93,"column":4},"end":{"line":93,"column":5}},"loc":{"start":{"line":93,"column":54},"end":{"line":127,"column":5}},"line":93},"6":{"name":"(anonymous_6)","decl":{"start":{"line":128,"column":4},"end":{"line":128,"column":5}},"loc":{"start":{"line":128,"column":35},"end":{"line":153,"column":5}},"line":128}},"branchMap":{"0":{"loc":{"start":{"line":6,"column":29},"end":{"line":6,"column":40}},"type":"default-arg","locations":[{"start":{"line":6,"column":38},"end":{"line":6,"column":40}}],"line":6},"1":{"loc":{"start":{"line":22,"column":8},"end":{"line":22,"column":19}},"type":"default-arg","locations":[{"start":{"line":22,"column":17},"end":{"line":22,"column":19}}],"line":22},"2":{"loc":{"start":{"line":60,"column":6},"end":{"line":62,"column":7}},"type":"if","locations":[{"start":{"line":60,"column":6},"end":{"line":62,"column":7}},{"start":{},"end":{}}],"line":60},"3":{"loc":{"start":{"line":67,"column":84},"end":{"line":67,"column":94}},"type":"default-arg","locations":[{"start":{"line":67,"column":92},"end":{"line":67,"column":94}}],"line":67},"4":{"loc":{"start":{"line":78,"column":6},"end":{"line":80,"column":7}},"type":"if","locations":[{"start":{"line":78,"column":6},"end":{"line":80,"column":7}},{"start":{},"end":{}}],"line":78},"5":{"loc":{"start":{"line":81,"column":6},"end":{"line":85,"column":7}},"type":"if","locations":[{"start":{"line":81,"column":6},"end":{"line":85,"column":7}},{"start":{},"end":{}}],"line":81},"6":{"loc":{"start":{"line":93,"column":31},"end":{"line":93,"column":42}},"type":"default-arg","locations":[{"start":{"line":93,"column":40},"end":{"line":93,"column":42}}],"line":93},"7":{"loc":{"start":{"line":111,"column":6},"end":{"line":115,"column":7}},"type":"if","locations":[{"start":{"line":111,"column":6},"end":{"line":115,"column":7}},{"start":{},"end":{}}],"line":111},"8":{"loc":{"start":{"line":128,"column":12},"end":{"line":128,"column":23}},"type":"default-arg","locations":[{"start":{"line":128,"column":21},"end":{"line":128,"column":23}}],"line":128}},"s":{"0":1,"1":3,"2":3,"3":4,"4":4,"5":4,"6":4,"7":4,"8":3,"9":0,"10":3,"11":1,"12":0,"13":1,"14":0,"15":1,"16":4,"17":4,"18":4,"19":0,"20":4,"21":4,"22":4,"23":4},"f":{"0":3,"1":4,"2":4,"3":3,"4":1,"5":4,"6":4},"b":{"0":[0],"1":[0],"2":[0,3],"3":[1],"4":[0,1],"5":[0,1],"6":[0],"7":[0,4],"8":[0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"402b9733d872382db1558e44a0f375237169dafc","contentHash":"f53be9315000bb63386cfbb0c829b4012c0e16ccbd557f4b64e1c885188fb57d"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/qrCode.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/qrCode.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":96,"column":2}},"1":{"start":{"line":4,"column":19},"end":{"line":4,"column":39}},"2":{"start":{"line":5,"column":2},"end":{"line":95,"column":4}},"3":{"start":{"line":16,"column":16},"end":{"line":16,"column":24}},"4":{"start":{"line":17,"column":6},"end":{"line":20,"column":19}},"5":{"start":{"line":37,"column":12},"end":{"line":37,"column":18}},"6":{"start":{"line":38,"column":14},"end":{"line":38,"column":22}},"7":{"start":{"line":39,"column":6},"end":{"line":48,"column":19}},"8":{"start":{"line":65,"column":12},"end":{"line":65,"column":18}},"9":{"start":{"line":66,"column":14},"end":{"line":66,"column":48}},"10":{"start":{"line":67,"column":6},"end":{"line":76,"column":19}},"11":{"start":{"line":79,"column":6},"end":{"line":81,"column":7}},"12":{"start":{"line":80,"column":8},"end":{"line":80,"column":56}},"13":{"start":{"line":82,"column":6},"end":{"line":84,"column":19}},"14":{"start":{"line":87,"column":6},"end":{"line":89,"column":7}},"15":{"start":{"line":88,"column":8},"end":{"line":88,"column":56}},"16":{"start":{"line":90,"column":16},"end":{"line":90,"column":47}},"17":{"start":{"line":91,"column":6},"end":{"line":93,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":96,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":34},"end":{"line":21,"column":5}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":22,"column":4},"end":{"line":22,"column":5}},"loc":{"start":{"line":22,"column":31},"end":{"line":49,"column":5}},"line":22},"3":{"name":"(anonymous_3)","decl":{"start":{"line":50,"column":4},"end":{"line":50,"column":5}},"loc":{"start":{"line":50,"column":54},"end":{"line":77,"column":5}},"line":50},"4":{"name":"(anonymous_4)","decl":{"start":{"line":78,"column":4},"end":{"line":78,"column":5}},"loc":{"start":{"line":78,"column":30},"end":{"line":85,"column":5}},"line":78},"5":{"name":"(anonymous_5)","decl":{"start":{"line":86,"column":4},"end":{"line":86,"column":5}},"loc":{"start":{"line":86,"column":30},"end":{"line":94,"column":5}},"line":86}},"branchMap":{"0":{"loc":{"start":{"line":6,"column":11},"end":{"line":6,"column":22}},"type":"default-arg","locations":[{"start":{"line":6,"column":20},"end":{"line":6,"column":22}}],"line":6},"1":{"loc":{"start":{"line":22,"column":8},"end":{"line":22,"column":19}},"type":"default-arg","locations":[{"start":{"line":22,"column":17},"end":{"line":22,"column":19}}],"line":22},"2":{"loc":{"start":{"line":50,"column":31},"end":{"line":50,"column":42}},"type":"default-arg","locations":[{"start":{"line":50,"column":40},"end":{"line":50,"column":42}}],"line":50},"3":{"loc":{"start":{"line":79,"column":6},"end":{"line":81,"column":7}},"type":"if","locations":[{"start":{"line":79,"column":6},"end":{"line":81,"column":7}},{"start":{},"end":{}}],"line":79},"4":{"loc":{"start":{"line":87,"column":6},"end":{"line":89,"column":7}},"type":"if","locations":[{"start":{"line":87,"column":6},"end":{"line":89,"column":7}},{"start":{},"end":{}}],"line":87}},"s":{"0":1,"1":3,"2":3,"3":4,"4":4,"5":18,"6":18,"7":18,"8":8,"9":8,"10":8,"11":0,"12":0,"13":0,"14":4,"15":1,"16":3,"17":3},"f":{"0":3,"1":4,"2":18,"3":8,"4":0,"5":4},"b":{"0":[0],"1":[0],"2":[1],"3":[0,0],"4":[1,3]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"a1a780ee8ebaa84068d7e47d1022d99f928184d6","contentHash":"d469dd7020c6979e896ce00e634d13c8b75b25b99cffeba9b22893556dd0c173"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/fundAccount.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/fundAccount.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":32,"column":2}},"1":{"start":{"line":4,"column":2},"end":{"line":31,"column":4}},"2":{"start":{"line":16,"column":6},"end":{"line":21,"column":19}},"3":{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},"4":{"start":{"line":25,"column":8},"end":{"line":25,"column":58}},"5":{"start":{"line":27,"column":6},"end":{"line":29,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":32,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":5,"column":4},"end":{"line":5,"column":5}},"loc":{"start":{"line":5,"column":29},"end":{"line":22,"column":5}},"line":5},"2":{"name":"(anonymous_2)","decl":{"start":{"line":23,"column":4},"end":{"line":23,"column":5}},"loc":{"start":{"line":23,"column":32},"end":{"line":30,"column":5}},"line":23}},"branchMap":{"0":{"loc":{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},"type":"if","locations":[{"start":{"line":24,"column":6},"end":{"line":26,"column":7}},{"start":{},"end":{}}],"line":24}},"s":{"0":1,"1":3,"2":1,"3":1,"4":0,"5":1},"f":{"0":3,"1":1,"2":1},"b":{"0":[0,1]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"2d1af1d435bcef77a27dbbc67c3219404c95d99a","contentHash":"d1d0ab03e826a1c1a4ed0e8330cc42a9164f77b264b5f724f46a20000efc0702"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/items.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/items.js","statementMap":{"0":{"start":{"line":5,"column":4},"end":{"line":5,"column":38}},"1":{"start":{"line":6,"column":0},"end":{"line":84,"column":2}},"2":{"start":{"line":7,"column":2},"end":{"line":83,"column":4}},"3":{"start":{"line":16,"column":10},"end":{"line":16,"column":16}},"4":{"start":{"line":17,"column":6},"end":{"line":19,"column":7}},"5":{"start":{"line":18,"column":8},"end":{"line":18,"column":35}},"6":{"start":{"line":20,"column":6},"end":{"line":22,"column":7}},"7":{"start":{"line":21,"column":8},"end":{"line":21,"column":31}},"8":{"start":{"line":23,"column":6},"end":{"line":23,"column":34}},"9":{"start":{"line":24,"column":6},"end":{"line":24,"column":31}},"10":{"start":{"line":25,"column":6},"end":{"line":35,"column":19}},"11":{"start":{"line":38,"column":6},"end":{"line":40,"column":7}},"12":{"start":{"line":39,"column":8},"end":{"line":39,"column":50}},"13":{"start":{"line":41,"column":6},"end":{"line":43,"column":19}},"14":{"start":{"line":50,"column":10},"end":{"line":50,"column":16}},"15":{"start":{"line":51,"column":6},"end":{"line":51,"column":35}},"16":{"start":{"line":52,"column":6},"end":{"line":54,"column":7}},"17":{"start":{"line":53,"column":8},"end":{"line":53,"column":49}},"18":{"start":{"line":55,"column":17},"end":{"line":59,"column":8}},"19":{"start":{"line":60,"column":6},"end":{"line":63,"column":19}},"20":{"start":{"line":66,"column":6},"end":{"line":68,"column":7}},"21":{"start":{"line":67,"column":8},"end":{"line":67,"column":50}},"22":{"start":{"line":69,"column":16},"end":{"line":69,"column":34}},"23":{"start":{"line":70,"column":6},"end":{"line":73,"column":19}},"24":{"start":{"line":76,"column":6},"end":{"line":78,"column":7}},"25":{"start":{"line":77,"column":8},"end":{"line":77,"column":50}},"26":{"start":{"line":79,"column":6},"end":{"line":81,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":6,"column":17},"end":{"line":6,"column":18}},"loc":{"start":{"line":6,"column":32},"end":{"line":84,"column":1}},"line":6},"1":{"name":"(anonymous_1)","decl":{"start":{"line":8,"column":4},"end":{"line":8,"column":5}},"loc":{"start":{"line":8,"column":31},"end":{"line":36,"column":5}},"line":8},"2":{"name":"(anonymous_2)","decl":{"start":{"line":37,"column":4},"end":{"line":37,"column":5}},"loc":{"start":{"line":37,"column":28},"end":{"line":44,"column":5}},"line":37},"3":{"name":"(anonymous_3)","decl":{"start":{"line":45,"column":4},"end":{"line":45,"column":5}},"loc":{"start":{"line":45,"column":34},"end":{"line":64,"column":5}},"line":45},"4":{"name":"(anonymous_4)","decl":{"start":{"line":65,"column":4},"end":{"line":65,"column":5}},"loc":{"start":{"line":65,"column":40},"end":{"line":74,"column":5}},"line":65},"5":{"name":"_delete","decl":{"start":{"line":75,"column":21},"end":{"line":75,"column":28}},"loc":{"start":{"line":75,"column":47},"end":{"line":82,"column":5}},"line":75}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":8},"end":{"line":8,"column":19}},"type":"default-arg","locations":[{"start":{"line":8,"column":17},"end":{"line":8,"column":19}}],"line":8},"1":{"loc":{"start":{"line":17,"column":6},"end":{"line":19,"column":7}},"type":"if","locations":[{"start":{"line":17,"column":6},"end":{"line":19,"column":7}},{"start":{},"end":{}}],"line":17},"2":{"loc":{"start":{"line":20,"column":6},"end":{"line":22,"column":7}},"type":"if","locations":[{"start":{"line":20,"column":6},"end":{"line":22,"column":7}},{"start":{},"end":{}}],"line":20},"3":{"loc":{"start":{"line":23,"column":14},"end":{"line":23,"column":33}},"type":"binary-expr","locations":[{"start":{"line":23,"column":14},"end":{"line":23,"column":27}},{"start":{"line":23,"column":31},"end":{"line":23,"column":33}}],"line":23},"4":{"loc":{"start":{"line":24,"column":13},"end":{"line":24,"column":30}},"type":"binary-expr","locations":[{"start":{"line":24,"column":13},"end":{"line":24,"column":25}},{"start":{"line":24,"column":29},"end":{"line":24,"column":30}}],"line":24},"5":{"loc":{"start":{"line":38,"column":6},"end":{"line":40,"column":7}},"type":"if","locations":[{"start":{"line":38,"column":6},"end":{"line":40,"column":7}},{"start":{},"end":{}}],"line":38},"6":{"loc":{"start":{"line":45,"column":11},"end":{"line":45,"column":22}},"type":"default-arg","locations":[{"start":{"line":45,"column":20},"end":{"line":45,"column":22}}],"line":45},"7":{"loc":{"start":{"line":51,"column":17},"end":{"line":51,"column":34}},"type":"binary-expr","locations":[{"start":{"line":51,"column":17},"end":{"line":51,"column":25}},{"start":{"line":51,"column":29},"end":{"line":51,"column":34}}],"line":51},"8":{"loc":{"start":{"line":52,"column":6},"end":{"line":54,"column":7}},"type":"if","locations":[{"start":{"line":52,"column":6},"end":{"line":54,"column":7}},{"start":{},"end":{}}],"line":52},"9":{"loc":{"start":{"line":65,"column":17},"end":{"line":65,"column":28}},"type":"default-arg","locations":[{"start":{"line":65,"column":26},"end":{"line":65,"column":28}}],"line":65},"10":{"loc":{"start":{"line":66,"column":6},"end":{"line":68,"column":7}},"type":"if","locations":[{"start":{"line":66,"column":6},"end":{"line":68,"column":7}},{"start":{},"end":{}}],"line":66},"11":{"loc":{"start":{"line":76,"column":6},"end":{"line":78,"column":7}},"type":"if","locations":[{"start":{"line":76,"column":6},"end":{"line":78,"column":7}},{"start":{},"end":{}}],"line":76}},"s":{"0":1,"1":1,"2":3,"3":5,"4":5,"5":0,"6":5,"7":0,"8":5,"9":5,"10":5,"11":4,"12":0,"13":4,"14":4,"15":4,"16":4,"17":0,"18":4,"19":4,"20":4,"21":0,"22":4,"23":4,"24":4,"25":0,"26":4},"f":{"0":3,"1":5,"2":4,"3":4,"4":4,"5":4},"b":{"0":[0],"1":[0,5],"2":[0,5],"3":[5,4],"4":[5,4],"5":[0,4],"6":[0],"7":[4,0],"8":[0,4],"9":[0],"10":[0,4],"11":[0,4]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"5568b143340ec76fde359e6127369c953fd2a073","contentHash":"274c05f2fc5597e7866817967fa3524287e6b366b37902f8ee9de298a10568d4"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/cards.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/cards.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":20,"column":2}},"1":{"start":{"line":4,"column":2},"end":{"line":19,"column":4}},"2":{"start":{"line":6,"column":6},"end":{"line":8,"column":7}},"3":{"start":{"line":7,"column":8},"end":{"line":7,"column":50}},"4":{"start":{"line":9,"column":6},"end":{"line":11,"column":19}},"5":{"start":{"line":14,"column":6},"end":{"line":17,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":20,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":5,"column":4},"end":{"line":5,"column":5}},"loc":{"start":{"line":5,"column":28},"end":{"line":12,"column":5}},"line":5},"2":{"name":"(anonymous_2)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":43},"end":{"line":18,"column":5}},"line":13}},"branchMap":{"0":{"loc":{"start":{"line":6,"column":6},"end":{"line":8,"column":7}},"type":"if","locations":[{"start":{"line":6,"column":6},"end":{"line":8,"column":7}},{"start":{},"end":{}}],"line":6}},"s":{"0":1,"1":3,"2":4,"3":0,"4":4,"5":0},"f":{"0":3,"1":4,"2":0},"b":{"0":[0,4]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"d5194a685281e9329d117466b616eb1fdf51966f","contentHash":"a59e61fd5ecaa07d526882e02f25adee70b027bdd71a510022c2cd9410cd3be4"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/webhooks.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/webhooks.js","statementMap":{"0":{"start":{"line":5,"column":4},"end":{"line":5,"column":38}},"1":{"start":{"line":6,"column":0},"end":{"line":83,"column":2}},"2":{"start":{"line":7,"column":19},"end":{"line":7,"column":30}},"3":{"start":{"line":8,"column":2},"end":{"line":82,"column":4}},"4":{"start":{"line":10,"column":20},"end":{"line":13,"column":7}},"5":{"start":{"line":14,"column":6},"end":{"line":20,"column":7}},"6":{"start":{"line":15,"column":8},"end":{"line":19,"column":10}},"7":{"start":{"line":21,"column":6},"end":{"line":21,"column":41}},"8":{"start":{"line":24,"column":6},"end":{"line":30,"column":7}},"9":{"start":{"line":25,"column":8},"end":{"line":29,"column":21}},"10":{"start":{"line":31,"column":6},"end":{"line":34,"column":19}},"11":{"start":{"line":42,"column":10},"end":{"line":42,"column":16}},"12":{"start":{"line":43,"column":6},"end":{"line":45,"column":7}},"13":{"start":{"line":44,"column":8},"end":{"line":44,"column":35}},"14":{"start":{"line":46,"column":6},"end":{"line":48,"column":7}},"15":{"start":{"line":47,"column":8},"end":{"line":47,"column":31}},"16":{"start":{"line":49,"column":6},"end":{"line":49,"column":34}},"17":{"start":{"line":50,"column":6},"end":{"line":50,"column":31}},"18":{"start":{"line":51,"column":17},"end":{"line":57,"column":7}},"19":{"start":{"line":58,"column":6},"end":{"line":64,"column":7}},"20":{"start":{"line":59,"column":8},"end":{"line":63,"column":21}},"21":{"start":{"line":65,"column":6},"end":{"line":68,"column":19}},"22":{"start":{"line":71,"column":6},"end":{"line":74,"column":19}},"23":{"start":{"line":77,"column":6},"end":{"line":80,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":6,"column":17},"end":{"line":6,"column":18}},"loc":{"start":{"line":6,"column":32},"end":{"line":83,"column":1}},"line":6},"1":{"name":"(anonymous_1)","decl":{"start":{"line":9,"column":4},"end":{"line":9,"column":5}},"loc":{"start":{"line":9,"column":40},"end":{"line":22,"column":5}},"line":9},"2":{"name":"(anonymous_2)","decl":{"start":{"line":23,"column":4},"end":{"line":23,"column":5}},"loc":{"start":{"line":23,"column":49},"end":{"line":35,"column":5}},"line":23},"3":{"name":"(anonymous_3)","decl":{"start":{"line":36,"column":4},"end":{"line":36,"column":5}},"loc":{"start":{"line":36,"column":42},"end":{"line":69,"column":5}},"line":36},"4":{"name":"(anonymous_4)","decl":{"start":{"line":70,"column":4},"end":{"line":70,"column":5}},"loc":{"start":{"line":70,"column":42},"end":{"line":75,"column":5}},"line":70},"5":{"name":"(anonymous_5)","decl":{"start":{"line":76,"column":4},"end":{"line":76,"column":5}},"loc":{"start":{"line":76,"column":43},"end":{"line":81,"column":5}},"line":76}},"branchMap":{"0":{"loc":{"start":{"line":14,"column":6},"end":{"line":20,"column":7}},"type":"if","locations":[{"start":{"line":14,"column":6},"end":{"line":20,"column":7}},{"start":{},"end":{}}],"line":14},"1":{"loc":{"start":{"line":24,"column":6},"end":{"line":30,"column":7}},"type":"if","locations":[{"start":{"line":24,"column":6},"end":{"line":30,"column":7}},{"start":{},"end":{}}],"line":24},"2":{"loc":{"start":{"line":24,"column":10},"end":{"line":24,"column":32}},"type":"binary-expr","locations":[{"start":{"line":24,"column":10},"end":{"line":24,"column":19}},{"start":{"line":24,"column":23},"end":{"line":24,"column":32}}],"line":24},"3":{"loc":{"start":{"line":36,"column":8},"end":{"line":36,"column":19}},"type":"default-arg","locations":[{"start":{"line":36,"column":17},"end":{"line":36,"column":19}}],"line":36},"4":{"loc":{"start":{"line":43,"column":6},"end":{"line":45,"column":7}},"type":"if","locations":[{"start":{"line":43,"column":6},"end":{"line":45,"column":7}},{"start":{},"end":{}}],"line":43},"5":{"loc":{"start":{"line":46,"column":6},"end":{"line":48,"column":7}},"type":"if","locations":[{"start":{"line":46,"column":6},"end":{"line":48,"column":7}},{"start":{},"end":{}}],"line":46},"6":{"loc":{"start":{"line":49,"column":14},"end":{"line":49,"column":33}},"type":"binary-expr","locations":[{"start":{"line":49,"column":14},"end":{"line":49,"column":27}},{"start":{"line":49,"column":31},"end":{"line":49,"column":33}}],"line":49},"7":{"loc":{"start":{"line":50,"column":13},"end":{"line":50,"column":30}},"type":"binary-expr","locations":[{"start":{"line":50,"column":13},"end":{"line":50,"column":25}},{"start":{"line":50,"column":29},"end":{"line":50,"column":30}}],"line":50},"8":{"loc":{"start":{"line":58,"column":6},"end":{"line":64,"column":7}},"type":"if","locations":[{"start":{"line":58,"column":6},"end":{"line":64,"column":7}},{"start":{},"end":{}}],"line":58}},"s":{"0":1,"1":1,"2":3,"3":3,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":1,"23":0},"f":{"0":3,"1":1,"2":1,"3":0,"4":1,"5":0},"b":{"0":[1,0],"1":[1,0],"2":[1,1],"3":[0],"4":[0,0],"5":[0,0],"6":[0,0],"7":[0,0],"8":[0,0]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"267cf890d53668cdfc18146c628bb64f953f3f4c","contentHash":"ee8054170ec6de99fa860a46b58073f36902c8c2943e2c5103d06d6b03ac1ab2"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/documents.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/documents.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":25,"column":2}},"1":{"start":{"line":4,"column":19},"end":{"line":4,"column":31}},"2":{"start":{"line":5,"column":2},"end":{"line":24,"column":4}},"3":{"start":{"line":10,"column":10},"end":{"line":10,"column":16}},"4":{"start":{"line":11,"column":6},"end":{"line":17,"column":19}},"5":{"start":{"line":20,"column":6},"end":{"line":22,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":25,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":29},"end":{"line":18,"column":5}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":19,"column":4},"end":{"line":19,"column":5}},"loc":{"start":{"line":19,"column":32},"end":{"line":23,"column":5}},"line":19}},"branchMap":{},"s":{"0":1,"1":3,"2":3,"3":1,"4":1,"5":1},"f":{"0":3,"1":1,"2":1},"b":{},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"47fc008014b5654baac1ed72722767920d4517fa","contentHash":"6a64f5c4f721b22d37b4b67f3de22c398c956f3448c0300f2fa89a51f41af66c"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/disputes.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/disputes.js","statementMap":{"0":{"start":{"line":3,"column":0},"end":{"line":38,"column":2}},"1":{"start":{"line":4,"column":19},"end":{"line":4,"column":30}},"2":{"start":{"line":5,"column":2},"end":{"line":37,"column":4}},"3":{"start":{"line":7,"column":6},"end":{"line":9,"column":19}},"4":{"start":{"line":15,"column":10},"end":{"line":15,"column":16}},"5":{"start":{"line":16,"column":6},"end":{"line":16,"column":34}},"6":{"start":{"line":17,"column":6},"end":{"line":17,"column":31}},"7":{"start":{"line":18,"column":6},"end":{"line":24,"column":19}},"8":{"start":{"line":27,"column":6},"end":{"line":29,"column":19}},"9":{"start":{"line":32,"column":6},"end":{"line":35,"column":19}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":3,"column":17},"end":{"line":3,"column":18}},"loc":{"start":{"line":3,"column":32},"end":{"line":38,"column":1}},"line":3},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":4},"end":{"line":6,"column":5}},"loc":{"start":{"line":6,"column":31},"end":{"line":10,"column":5}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":11,"column":4},"end":{"line":11,"column":5}},"loc":{"start":{"line":11,"column":31},"end":{"line":25,"column":5}},"line":11},"3":{"name":"(anonymous_3)","decl":{"start":{"line":26,"column":4},"end":{"line":26,"column":5}},"loc":{"start":{"line":26,"column":32},"end":{"line":30,"column":5}},"line":26},"4":{"name":"(anonymous_4)","decl":{"start":{"line":31,"column":4},"end":{"line":31,"column":5}},"loc":{"start":{"line":31,"column":40},"end":{"line":36,"column":5}},"line":31}},"branchMap":{"0":{"loc":{"start":{"line":11,"column":8},"end":{"line":11,"column":19}},"type":"default-arg","locations":[{"start":{"line":11,"column":17},"end":{"line":11,"column":19}}],"line":11},"1":{"loc":{"start":{"line":16,"column":14},"end":{"line":16,"column":33}},"type":"binary-expr","locations":[{"start":{"line":16,"column":14},"end":{"line":16,"column":27}},{"start":{"line":16,"column":31},"end":{"line":16,"column":33}}],"line":16},"2":{"loc":{"start":{"line":17,"column":13},"end":{"line":17,"column":30}},"type":"binary-expr","locations":[{"start":{"line":17,"column":13},"end":{"line":17,"column":25}},{"start":{"line":17,"column":29},"end":{"line":17,"column":30}}],"line":17}},"s":{"0":1,"1":3,"2":3,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1},"f":{"0":3,"1":1,"2":1,"3":1,"4":1},"b":{"0":[0],"1":[1,0],"2":[1,1]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"8534104d507a2c634050d15be00229a7f8271616","contentHash":"43093cba224e23278ecea9d2d04c5cf34f1451e52e5c6e574dd03c1957c4195b"},"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/predefined-tests.js":{"path":"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/predefined-tests.js","statementMap":{"0":{"start":{"line":3,"column":15},"end":{"line":3,"column":43}},"1":{"start":{"line":4,"column":10},"end":{"line":4,"column":31}},"2":{"start":{"line":5,"column":9},"end":{"line":5,"column":24}},"3":{"start":{"line":8,"column":6},"end":{"line":8,"column":10}},"4":{"start":{"line":12,"column":6},"end":{"line":12,"column":48}},"5":{"start":{"line":13,"column":29},"end":{"line":41,"column":1}},"6":{"start":{"line":19,"column":6},"end":{"line":19,"column":12}},"7":{"start":{"line":20,"column":2},"end":{"line":25,"column":5}},"8":{"start":{"line":21,"column":4},"end":{"line":21,"column":30}},"9":{"start":{"line":22,"column":4},"end":{"line":24,"column":7}},"10":{"start":{"line":23,"column":6},"end":{"line":23,"column":13}},"11":{"start":{"line":26,"column":2},"end":{"line":35,"column":5}},"12":{"start":{"line":27,"column":4},"end":{"line":30,"column":7}},"13":{"start":{"line":31,"column":4},"end":{"line":34,"column":7}},"14":{"start":{"line":32,"column":6},"end":{"line":32,"column":59}},"15":{"start":{"line":33,"column":6},"end":{"line":33,"column":13}},"16":{"start":{"line":36,"column":2},"end":{"line":40,"column":5}},"17":{"start":{"line":37,"column":4},"end":{"line":37,"column":30}},"18":{"start":{"line":38,"column":19},"end":{"line":38,"column":52}},"19":{"start":{"line":39,"column":4},"end":{"line":39,"column":129}},"20":{"start":{"line":42,"column":24},"end":{"line":62,"column":1}},"21":{"start":{"line":49,"column":6},"end":{"line":49,"column":12}},"22":{"start":{"line":50,"column":2},"end":{"line":61,"column":5}},"23":{"start":{"line":51,"column":4},"end":{"line":51,"column":30}},"24":{"start":{"line":52,"column":4},"end":{"line":60,"column":7}},"25":{"start":{"line":53,"column":23},"end":{"line":53,"column":46}},"26":{"start":{"line":54,"column":6},"end":{"line":59,"column":7}},"27":{"start":{"line":55,"column":8},"end":{"line":55,"column":39}},"28":{"start":{"line":56,"column":8},"end":{"line":56,"column":15}},"29":{"start":{"line":58,"column":8},"end":{"line":58,"column":70}},"30":{"start":{"line":63,"column":27},"end":{"line":89,"column":1}},"31":{"start":{"line":71,"column":6},"end":{"line":71,"column":12}},"32":{"start":{"line":72,"column":2},"end":{"line":72,"column":54}},"33":{"start":{"line":73,"column":2},"end":{"line":88,"column":5}},"34":{"start":{"line":74,"column":4},"end":{"line":74,"column":30}},"35":{"start":{"line":75,"column":4},"end":{"line":87,"column":7}},"36":{"start":{"line":76,"column":23},"end":{"line":76,"column":46}},"37":{"start":{"line":77,"column":21},"end":{"line":77,"column":95}},"38":{"start":{"line":78,"column":6},"end":{"line":82,"column":7}},"39":{"start":{"line":79,"column":8},"end":{"line":79,"column":42}},"40":{"start":{"line":81,"column":8},"end":{"line":81,"column":75}},"41":{"start":{"line":84,"column":6},"end":{"line":84,"column":38}},"42":{"start":{"line":86,"column":6},"end":{"line":86,"column":16}},"43":{"start":{"line":90,"column":23},"end":{"line":110,"column":1}},"44":{"start":{"line":98,"column":6},"end":{"line":98,"column":12}},"45":{"start":{"line":99,"column":2},"end":{"line":101,"column":5}},"46":{"start":{"line":102,"column":2},"end":{"line":106,"column":3}},"47":{"start":{"line":103,"column":4},"end":{"line":105,"column":7}},"48":{"start":{"line":107,"column":2},"end":{"line":109,"column":5}},"49":{"start":{"line":111,"column":0},"end":{"line":116,"column":2}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":13,"column":29},"end":{"line":13,"column":30}},"loc":{"start":{"line":13,"column":39},"end":{"line":41,"column":1}},"line":13},"1":{"name":"(anonymous_1)","decl":{"start":{"line":20,"column":54},"end":{"line":20,"column":55}},"loc":{"start":{"line":20,"column":62},"end":{"line":25,"column":3}},"line":20},"2":{"name":"(anonymous_2)","decl":{"start":{"line":22,"column":38},"end":{"line":22,"column":39}},"loc":{"start":{"line":22,"column":45},"end":{"line":24,"column":5}},"line":22},"3":{"name":"(anonymous_3)","decl":{"start":{"line":26,"column":30},"end":{"line":26,"column":31}},"loc":{"start":{"line":26,"column":38},"end":{"line":35,"column":3}},"line":26},"4":{"name":"(anonymous_4)","decl":{"start":{"line":31,"column":38},"end":{"line":31,"column":39}},"loc":{"start":{"line":31,"column":45},"end":{"line":34,"column":5}},"line":31},"5":{"name":"(anonymous_5)","decl":{"start":{"line":36,"column":49},"end":{"line":36,"column":50}},"loc":{"start":{"line":36,"column":57},"end":{"line":40,"column":3}},"line":36},"6":{"name":"(anonymous_6)","decl":{"start":{"line":42,"column":24},"end":{"line":42,"column":25}},"loc":{"start":{"line":42,"column":34},"end":{"line":62,"column":1}},"line":42},"7":{"name":"(anonymous_7)","decl":{"start":{"line":50,"column":46},"end":{"line":50,"column":47}},"loc":{"start":{"line":50,"column":54},"end":{"line":61,"column":3}},"line":50},"8":{"name":"(anonymous_8)","decl":{"start":{"line":52,"column":38},"end":{"line":52,"column":39}},"loc":{"start":{"line":52,"column":53},"end":{"line":60,"column":5}},"line":52},"9":{"name":"(anonymous_9)","decl":{"start":{"line":63,"column":27},"end":{"line":63,"column":28}},"loc":{"start":{"line":63,"column":37},"end":{"line":89,"column":1}},"line":63},"10":{"name":"(anonymous_10)","decl":{"start":{"line":73,"column":16},"end":{"line":73,"column":17}},"loc":{"start":{"line":73,"column":24},"end":{"line":88,"column":3}},"line":73},"11":{"name":"(anonymous_11)","decl":{"start":{"line":75,"column":43},"end":{"line":75,"column":44}},"loc":{"start":{"line":75,"column":51},"end":{"line":83,"column":5}},"line":75},"12":{"name":"(anonymous_12)","decl":{"start":{"line":83,"column":7},"end":{"line":83,"column":8}},"loc":{"start":{"line":83,"column":14},"end":{"line":85,"column":5}},"line":83},"13":{"name":"(anonymous_13)","decl":{"start":{"line":85,"column":12},"end":{"line":85,"column":13}},"loc":{"start":{"line":85,"column":19},"end":{"line":87,"column":5}},"line":85},"14":{"name":"(anonymous_14)","decl":{"start":{"line":90,"column":23},"end":{"line":90,"column":24}},"loc":{"start":{"line":90,"column":33},"end":{"line":110,"column":1}},"line":90}},"branchMap":{"0":{"loc":{"start":{"line":39,"column":4},"end":{"line":39,"column":128}},"type":"cond-expr","locations":[{"start":{"line":39,"column":50},"end":{"line":39,"column":56}},{"start":{"line":39,"column":59},"end":{"line":39,"column":128}}],"line":39},"1":{"loc":{"start":{"line":39,"column":4},"end":{"line":39,"column":47}},"type":"binary-expr","locations":[{"start":{"line":39,"column":4},"end":{"line":39,"column":10}},{"start":{"line":39,"column":14},"end":{"line":39,"column":47}}],"line":39},"2":{"loc":{"start":{"line":54,"column":6},"end":{"line":59,"column":7}},"type":"if","locations":[{"start":{"line":54,"column":6},"end":{"line":59,"column":7}},{"start":{"line":57,"column":13},"end":{"line":59,"column":7}}],"line":54},"3":{"loc":{"start":{"line":72,"column":14},"end":{"line":72,"column":53}},"type":"binary-expr","locations":[{"start":{"line":72,"column":14},"end":{"line":72,"column":23}},{"start":{"line":72,"column":27},"end":{"line":72,"column":53}}],"line":72},"4":{"loc":{"start":{"line":77,"column":30},"end":{"line":77,"column":94}},"type":"cond-expr","locations":[{"start":{"line":77,"column":58},"end":{"line":77,"column":78}},{"start":{"line":77,"column":81},"end":{"line":77,"column":94}}],"line":77},"5":{"loc":{"start":{"line":78,"column":6},"end":{"line":82,"column":7}},"type":"if","locations":[{"start":{"line":78,"column":6},"end":{"line":82,"column":7}},{"start":{"line":80,"column":13},"end":{"line":82,"column":7}}],"line":78},"6":{"loc":{"start":{"line":102,"column":2},"end":{"line":106,"column":3}},"type":"if","locations":[{"start":{"line":102,"column":2},"end":{"line":106,"column":3}},{"start":{},"end":{}}],"line":102}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":53,"7":53,"8":53,"9":53,"10":53,"11":53,"12":53,"13":53,"14":53,"15":53,"16":53,"17":53,"18":53,"19":53,"20":1,"21":34,"22":34,"23":34,"24":34,"25":34,"26":34,"27":34,"28":34,"29":0,"30":1,"31":41,"32":41,"33":41,"34":41,"35":41,"36":41,"37":41,"38":41,"39":41,"40":0,"41":0,"42":41,"43":1,"44":33,"45":33,"46":33,"47":5,"48":33,"49":1},"f":{"0":53,"1":53,"2":53,"3":53,"4":53,"5":53,"6":34,"7":34,"8":34,"9":41,"10":41,"11":41,"12":0,"13":41,"14":33},"b":{"0":[53,0],"1":[53,53],"2":[34,0],"3":[41,5],"4":[29,12],"5":[41,0],"6":[5,28]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"9f74298f0424686864ef29b39bb3828dbb7c9aed","contentHash":"ea29b5c209b9d699e2eca445bc269d9cdc9e9351110ce0aaf23224804242bd7e"}} \ No newline at end of file diff --git a/.nyc_output/processinfo/9ce2e733-f71c-43b9-be5f-7e3689e5be27.json b/.nyc_output/processinfo/9ce2e733-f71c-43b9-be5f-7e3689e5be27.json new file mode 100644 index 00000000..d6881704 --- /dev/null +++ b/.nyc_output/processinfo/9ce2e733-f71c-43b9-be5f-7e3689e5be27.json @@ -0,0 +1 @@ +{"parent":null,"pid":82234,"argv":["/Users/vaibhav.chopra/.nvm/versions/node/v22.22.0/bin/node","/Users/vaibhav.chopra/code/test_node_sdk/node_modules/.bin/mocha"],"execArgv":[],"cwd":"/Users/vaibhav.chopra/code/test_node_sdk","time":1778157983273,"ppid":82233,"coverageFilename":"/Users/vaibhav.chopra/code/test_node_sdk/.nyc_output/9ce2e733-f71c-43b9-be5f-7e3689e5be27.json","externalId":"","uuid":"9ce2e733-f71c-43b9-be5f-7e3689e5be27","files":["/Users/vaibhav.chopra/code/test_node_sdk/lib/oAuthTokenClient.js","/Users/vaibhav.chopra/code/test_node_sdk/lib/api.js","/Users/vaibhav.chopra/code/test_node_sdk/lib/utils/nodeify.js","/Users/vaibhav.chopra/code/test_node_sdk/lib/utils/razorpay-utils.js","/Users/vaibhav.chopra/code/test_node_sdk/lib/resources/oAuthTokenValidator.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/razorpay.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/api.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/nodeify.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/razorpay-utils.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/accounts.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/stakeholders.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/payments.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/refunds.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/orders.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/customers.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/transfers.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/tokens.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/virtualAccounts.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/invoices.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/iins.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/paymentLink.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/plans.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/products.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/subscriptions.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/addons.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/settlements.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/qrCode.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/fundAccount.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/items.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/cards.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/webhooks.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/documents.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/disputes.js","/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/predefined-tests.js"]} \ No newline at end of file diff --git a/.nyc_output/processinfo/index.json b/.nyc_output/processinfo/index.json new file mode 100644 index 00000000..e38f2c43 --- /dev/null +++ b/.nyc_output/processinfo/index.json @@ -0,0 +1 @@ +{"processes":{"9ce2e733-f71c-43b9-be5f-7e3689e5be27":{"parent":null,"children":[]}},"files":{"/Users/vaibhav.chopra/code/test_node_sdk/lib/oAuthTokenClient.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/lib/api.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/lib/utils/nodeify.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/lib/utils/razorpay-utils.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/lib/resources/oAuthTokenValidator.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/razorpay.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/api.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/nodeify.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/razorpay-utils.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/accounts.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/stakeholders.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/payments.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/refunds.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/orders.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/customers.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/transfers.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/tokens.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/virtualAccounts.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/invoices.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/iins.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/paymentLink.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/plans.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/products.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/subscriptions.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/addons.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/settlements.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/qrCode.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/fundAccount.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/items.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/cards.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/webhooks.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/documents.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/resources/disputes.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"],"/Users/vaibhav.chopra/code/test_node_sdk/dist/utils/predefined-tests.js":["9ce2e733-f71c-43b9-be5f-7e3689e5be27"]},"externalIds":{}} \ No newline at end of file diff --git a/dist/api.js b/dist/api.js index c3f6944c..a9e16571 100644 --- a/dist/api.js +++ b/dist/api.js @@ -1,120 +1,86 @@ 'use strict'; -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var request = require('request-promise'); -var nodeify = require('./utils/nodeify'); - -var _require = require('./utils/razorpay-utils'), - isNonNullObject = _require.isNonNullObject; - -var allowedHeaders = { +const axios = require('axios').default; +const nodeify = require('./utils/nodeify'); +const { + isNonNullObject +} = require('./utils/razorpay-utils'); +const allowedHeaders = { "X-Razorpay-Account": "", "Content-Type": "application/json" }; - function getValidHeaders(headers) { - - var result = {}; - + const result = {}; if (!isNonNullObject(headers)) { - return result; } - return Object.keys(headers).reduce(function (result, headerName) { - if (allowedHeaders.hasOwnProperty(headerName)) { - result[headerName] = headers[headerName]; } - return result; }, result); } - function normalizeError(err) { throw { - statusCode: err.statusCode, - error: err.error.error + statusCode: err.response.status, + error: err.response.data.error }; } - -var API = function () { - function API(options) { - _classCallCheck(this, API); - - this.rq = request.defaults({ - baseUrl: options.hostUrl, - json: true, - auth: { - user: options.key_id, - pass: options.key_secret - }, - headers: Object.assign({ 'User-Agent': options.ua }, getValidHeaders(options.headers)) - }); +class API { + constructor(options) { + this.rq = axios.create(this._createConfig(options)); } - - _createClass(API, [{ - key: 'get', - value: function get(params, cb) { - return nodeify(this.rq.get({ - url: params.url, - qs: params.data - }).catch(normalizeError), cb); - } - }, { - key: 'post', - value: function post(params, cb) { - var isNotForm = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; - - var request = { - url: params.url, - form: params.data + _createConfig(options) { + const config = { + baseURL: options.hostUrl, + headers: Object.assign({ + 'User-Agent': options.ua + }, getValidHeaders(options.headers)) + }; + if (options.key_id && options.key_secret) { + config.auth = { + username: options.key_id, + password: options.key_secret }; - - if (isNotForm) { - delete request['form']; - request.body = params.data; - } - - return nodeify(this.rq.post(request).catch(normalizeError), cb); } - }, { - key: 'put', - value: function put(params, cb) { - return nodeify(this.rq.put({ - url: params.url, - form: params.data - }).catch(normalizeError), cb); - } - }, { - key: 'patch', - value: function patch(params, cb) { - var request = { - url: params.url, - form: params.data + if (options.oauthToken) { + config.headers = { + 'Authorization': `Bearer ${options.oauthToken}`, + ...config.headers }; - - if (params.data.hasOwnProperty("isbody")) { - delete request['form']; - delete params.data.isbody; - request.body = params.data; - } - return nodeify(this.rq.patch(request).catch(normalizeError), cb); - } - }, { - key: 'delete', - value: function _delete(params, cb) { - return nodeify(this.rq.delete({ - url: params.url - }).catch(normalizeError), cb); } - }]); - - return API; -}(); + return config; + } + version = 'v1'; + getEntityUrl(params) { + return params.hasOwnProperty('version') ? `/${params.version}${params.url}` : `/${this.version}${params.url}`; + } + get(params, cb) { + return nodeify(this.rq.get(this.getEntityUrl(params), { + params: params.data + }).catch(normalizeError), cb); + } + post(params, cb) { + return nodeify(this.rq.post(this.getEntityUrl(params), params.data).catch(normalizeError), cb); + } + // postFormData method for file uploads. + postFormData(params, cb) { + return nodeify(this.rq.post(this.getEntityUrl(params), params.formData, { + 'headers': { + 'Content-Type': 'multipart/form-data' + } + }).catch(normalizeError), cb); + } + put(params, cb) { + return nodeify(this.rq.put(this.getEntityUrl(params), params.data).catch(normalizeError), cb); + } + patch(params, cb) { + return nodeify(this.rq.patch(this.getEntityUrl(params), params.data).catch(normalizeError), cb); + } + delete(params, cb) { + return nodeify(this.rq.delete(this.getEntityUrl(params)).catch(normalizeError), cb); + } +} module.exports = API; \ No newline at end of file diff --git a/dist/oAuthTokenClient.d.ts b/dist/oAuthTokenClient.d.ts new file mode 100644 index 00000000..b4ee31c3 --- /dev/null +++ b/dist/oAuthTokenClient.d.ts @@ -0,0 +1,132 @@ +import API, { INormalizeError } from "./types/api" + +declare namespace OAuthTokenClient { + + interface OAuthTokenBaseRequestBody { + /** + * Unique client identifier. + */ + client_id: string; + /** + * Client secret string. + */ + client_secret: string; + } + + interface InitiateAuthorisationRequest extends Pick{ + /** + * Specifies that the application is requesting an + * authorisation code grant. possible value is `code`. + */ + response_type: string; + /** + * Callback URL used by Razorpay to redirect after the user approves or denies the authorisation request. + * The client should whitelist the `redirect_uri`. + */ + redirect_uri: string; + /** + * Defines what access your application is requesting from the user. You can request multiple scopes + * by separating with a space. + * possible values is `read_only` or `read_write`. + */ + scope: string | string[]; + /** + * Check [doc](https://razorpay.com/docs/partners/technology-partners/onboard-businesses/integrate-oauth/integration-steps/#query-parameters) for required params + */ + state: string; + onboarding_signature?: string; + } + + interface OAuthTokenRequest extends OAuthTokenBaseRequestBody { + /** + * Defines the grant type for the request. possible value is `authorization_code` or `refresh_token` + */ + grant_type?: "authorization_code" | "refresh_token"; + /** + * Specifies the same `redirect_uri` used in the authorisation request. + */ + redirect_uri?: string; + /** + * Decoded authorisation code received in the last step. + */ + code?: string; + /** + * The type of mode. possible values is `test` or `live`. + */ + mode?: "test" | "live"; + /** + * Used to refresh the access token when it expires. + */ + refresh_token?: string; + /** + * The type of token for the request. possible value is `access_token` or `refresh_token`. + */ + token_type_hint?: "access_token" | "refresh_token"; + /** + * The token whose access should be revoked. + */ + token?: string; + } + + interface OAuthTokenTokenResponse { + /** + * A public key is used only for public routes such as Checkout or Payments. + */ + public_token: string; + /** + * Defines the type of access token. possible value is `Bearer` + */ + token_type: string; + /** + * Integer representing the TTL of the access token in seconds. + */ + expires_in: number; + /** + * A private key used to access sub-merchant resources on Razorpay. + * used for server-to-server calls only. + */ + access_token: string; + /** + * Used to refresh the access token when it expires. + */ + refresh_token:string; + /** + * Identifies the sub-merchant ID who granted the authorisation. + */ + razorpay_account_id: string; + } +} + +declare class OAuthTokenClient extends API{ + constructor() + + getEntityUrl(): string; + /** + * Initiate Authorisation Using URL + * @param param - Check [doc](https://razorpay.com/docs/partners/technology-partners/onboard-businesses/integrate-oauth/integration-steps/#query-parameters) for required params + */ + generateAuthUrl(param: OAuthTokenClient.InitiateAuthorisationRequest): string; + + /** + * Get access token + * @param param - Check [doc](https://razorpay.com/docs/partners/technology-partners/onboard-businesses/integrate-oauth/integration-steps/#request-parameters) for required params + */ + getAccessToken(param: OAuthTokenClient.OAuthTokenRequest): Promise; + getAccessToken(param: OAuthTokenClient.OAuthTokenRequest, callback: (err: INormalizeError | null, data: OAuthTokenClient.OAuthTokenTokenResponse) => void): void + + /** + * Get refresh token + * @param param - Check [doc](https://razorpay.com/docs/partners/technology-partners/onboard-businesses/integrate-oauth/integration-steps/#refresh-token-api) for required params + */ + refreshToken(param: OAuthTokenClient.OAuthTokenRequest): Promise; + refreshToken(param: OAuthTokenClient.OAuthTokenRequest, callback: (err: INormalizeError | null, data: OAuthTokenClient.OAuthTokenTokenResponse) => void): void + + /** + * Revoke token + * @param param - Check [doc](https://razorpay.com/docs/partners/technology-partners/onboard-businesses/integrate-oauth/integration-steps/#revoke-token-api) for required params + */ + revokeToken(param: OAuthTokenClient.OAuthTokenRequest): Promise<{ message: string;}>; + revokeToken(param: OAuthTokenClient.OAuthTokenRequest, callback: (err: INormalizeError | null, data: { message: string;}) => void): void +} + +export = OAuthTokenClient diff --git a/dist/oAuthTokenClient.js b/dist/oAuthTokenClient.js new file mode 100644 index 00000000..6b1f3e79 --- /dev/null +++ b/dist/oAuthTokenClient.js @@ -0,0 +1,51 @@ +"use strict"; + +const API = require('./api'); +const pkg = require('../package.json'); +const { + validateInput, + SCHEMAS +} = require('./resources/oAuthTokenValidator'); +class OAuthTokenClient extends API { + constructor() { + super({ + hostUrl: 'https://auth.razorpay.com', + ua: `razorpay-node@${pkg.version}` + }); + } + getEntityUrl(params) { + return params.url; + } + generateAuthUrl(params) { + const errors = validateInput(params, SCHEMAS.generateAuthUrl); + if (Object.keys(errors).length > 0) return errors; + const baseUrl = `${this.rq.defaults.baseURL}/authorize`; + const queryString = Object.entries(params).flatMap(([key, value]) => Array.isArray(value) ? value.map(item => `${key}[]=${encodeURIComponent(item)}`) : key === "redirect_uri" ? `${key}=${value}` : `${key}=${encodeURIComponent(value)}`).join("&"); + return `${baseUrl}?${queryString}`; + } + getAccessToken(params = {}, callback) { + const errors = validateInput(params, SCHEMAS.getAccessToken); + if (Object.keys(errors).length > 0) return Promise.reject(errors); + return this.post({ + url: '/token', + data: params + }, callback); + } + refreshToken(params = {}, callback) { + const errors = validateInput(params, SCHEMAS.refreshToken); + if (Object.keys(errors).length > 0) return Promise.reject(errors); + return this.post({ + url: '/token', + data: params + }, callback); + } + revokeToken(params = {}, callback) { + const errors = validateInput(params, SCHEMAS.revokeToken); + if (Object.keys(errors).length > 0) return Promise.reject(errors); + return this.post({ + url: '/revoke', + data: params + }, callback); + } +} +module.exports = OAuthTokenClient; \ No newline at end of file diff --git a/dist/razorpay.d.ts b/dist/razorpay.d.ts index dbca385c..3d65e6c6 100644 --- a/dist/razorpay.d.ts +++ b/dist/razorpay.d.ts @@ -1 +1,162 @@ -declare module "razorpay"; +import API, { RazorpayHeaders } from './types/api' +import addons from "./types/addons" +import plans from "./types/plans" +import items from "./types/items" +import fundAccount from "./types/fundAccount" +import invoices from "./types/invoices" +import transfers from "./types/transfers" +import settlements from './types/settlements' +import orders from './types/orders' +import refunds from './types/refunds' +import qrCode from './types/qrCode' +import virtualAccounts from './types/virtualAccounts' +import payments from './types/payments' +import subscriptions from './types/subscriptions' +import paymentLink from './types/paymentLink' +import cards from './types/cards' +import { validateWebhookSignature } from "./utils/razorpay-utils" +import customers from './types/customers' +import accounts from './types/accounts' +import stakeholders from './types/stakeholders' +import webhooks from './types/webhooks' +import products from './types/products' +import tokens from './types/tokens' +import iins from './types/iins' +import documents from './types/documents' +import disputes from './types/disputes' + +interface IRazorpayConfig { + key_id?: string; + key_secret?: string; + headers?: RazorpayHeaders; + oauthToken?: string; +} + +declare class Razorpay { + static VERSION: string + static validateWebhookSignature: typeof validateWebhookSignature + + constructor(config: IRazorpayConfig) + api: API + /** + * Accounts Entity + * @see https://razorpay.com/docs/api/partners/account-onboarding/ + */ + accounts: ReturnType + /** + * Customers Entity + * @see https://razorpay.com/docs/api/customers/ + */ + customers: ReturnType + /** + * Addons Entity + * @see https://razorpay.com/docs/api/payments/subscriptions/#add-on + */ + addons: ReturnType + /** + * Plans Entity + * @see https://razorpay.com/docs/api/payments/subscriptions/#plans + */ + plans: ReturnType + /** + * Orders Entity + * @see https://razorpay.com/docs/api/orders + */ + orders: ReturnType + /** + * Payments Entity + * @see https://razorpay.com/docs/api/payments + */ + payments: ReturnType + /** + * Transfers Entity + * @see https://razorpay.com/docs/api/payments/route/transfers + */ + transfers: ReturnType + /** + * Refunds Entity + * @see https://razorpay.com/docs/api/refunds + */ + refunds: ReturnType + /** + * Cards Entity + */ + cards: ReturnType + /** + * FundaAccount Entity + * @see https://razorpay.com/docs/api/x/fund-accounts/ + */ + fundAccount: ReturnType + /** + * Items Entity + * @see https://razorpay.com/docs/payments/invoices/items/api/ + */ + items: ReturnType + /** + * PaymentLinks Entity + * @see https://razorpay.com/docs/payments/payment-links/apis + */ + paymentLink: ReturnType + /** + * Products Entity + * @see https://razorpay.com/docs/payments/payment-links/apis + */ + products: ReturnType + /** + * Invoices Entity + * @see https://razorpay.com/docs/payments/invoices/apis/ + */ + invoices: ReturnType + /** + * QrCode Entity + * @see https://razorpay.com/docs/payments/qr-codes/apis/ + */ + qrCode: ReturnType + /** + * Subscrptions Entity + * @see https://razorpay.com/docs/api/payments/subscriptions/#subscriptions + */ + subscriptions: ReturnType + /** + * Stakeholders Entity + * @see https://razorpay.com/docs/api/partners/stakeholder#stakeholders-entity + */ + stakeholders: ReturnType + /** + * Settlements Entity + * @see https://razorpay.com/docs/api/settlements + */ + settlements: ReturnType + /** + * VirtualAccounts Entity + * @see https://razorpay.com/docs/api/payments/smart-collect/ + */ + virtualAccounts: ReturnType + /** + * Webhook Entity + * @see https://razorpay.com/docs/api/partners/webhooks/#webhook-entity + */ + webhooks: ReturnType + /** + * Tokens Entity + * @see https://razorpay.com/docs/payments/payment-methods/cards/token-hq/merchant-requestor-with-network-tokens/apis/#1-tokenise-cards + */ + tokens: ReturnType + /** + * Iins Entity + * @see https://razorpay.com/docs/api/payments/cards/iin-api/#iin-entity + */ + iins: ReturnType + /** + * Documents Entity + * @see https://razorpay.com/docs/api/documents + */ + documents: ReturnType + /** + * Dispute Entity + * @see https://razorpay.com/docs/api/disputes + */ + disputes: ReturnType +} + +export = Razorpay diff --git a/dist/razorpay.js b/dist/razorpay.js index b3f38074..28b9115a 100644 --- a/dist/razorpay.js +++ b/dist/razorpay.js @@ -1,79 +1,65 @@ 'use strict'; -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var API = require('./api'); -var pkg = require('../package.json'); - -var _require = require('./utils/razorpay-utils'), - _validateWebhookSignature = _require.validateWebhookSignature; - -var Razorpay = function () { - _createClass(Razorpay, null, [{ - key: 'validateWebhookSignature', - value: function validateWebhookSignature() { - - return _validateWebhookSignature.apply(undefined, arguments); - } - }]); - - function Razorpay() { - var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - - _classCallCheck(this, Razorpay); - - var key_id = options.key_id, - key_secret = options.key_secret, - headers = options.headers; - - - if (!key_id) { - throw new Error('`key_id` is mandatory'); +const API = require('./api'); +const pkg = require('../package.json'); +const { + validateWebhookSignature +} = require('./utils/razorpay-utils'); +class Razorpay { + static VERSION = pkg.version; + static validateWebhookSignature(...args) { + return validateWebhookSignature(...args); + } + constructor(options = {}) { + let { + key_id, + key_secret, + oauthToken, + headers + } = options; + if (!key_id && !oauthToken) { + throw new Error('`key_id` or `oauthToken` is mandatory'); } - this.key_id = key_id; this.key_secret = key_secret; - + this.oauthToken = oauthToken; this.api = new API({ - hostUrl: 'https://api.razorpay.com/v1/', - ua: 'razorpay-node@' + Razorpay.VERSION, - key_id: key_id, - key_secret: key_secret, - headers: headers + hostUrl: 'https://api.razorpay.com', + ua: `razorpay-node@${Razorpay.VERSION}`, + key_id, + key_secret, + headers, + oauthToken }); this.addResources(); } - - _createClass(Razorpay, [{ - key: 'addResources', - value: function addResources() { - Object.assign(this, { - payments: require('./resources/payments')(this.api), - refunds: require('./resources/refunds')(this.api), - orders: require('./resources/orders')(this.api), - customers: require('./resources/customers')(this.api), - transfers: require('./resources/transfers')(this.api), - virtualAccounts: require('./resources/virtualAccounts')(this.api), - invoices: require('./resources/invoices')(this.api), - paymentLink: require('./resources/paymentLink')(this.api), - plans: require('./resources/plans')(this.api), - subscriptions: require('./resources/subscriptions')(this.api), - addons: require('./resources/addons')(this.api), - settlements: require('./resources/settlements')(this.api), - qrCode: require('./resources/qrCode')(this.api), - fundAccount: require('./resources/fundAccount')(this.api), - items: require('./resources/items')(this.api), - cards: require('./resources/cards')(this.api) - }); - } - }]); - - return Razorpay; -}(); - -Razorpay.VERSION = pkg.version; - - + addResources() { + Object.assign(this, { + accounts: require('./resources/accounts')(this.api), + stakeholders: require('./resources/stakeholders')(this.api), + payments: require('./resources/payments')(this.api), + refunds: require('./resources/refunds')(this.api), + orders: require('./resources/orders')(this.api), + customers: require('./resources/customers')(this.api), + transfers: require('./resources/transfers')(this.api), + tokens: require('./resources/tokens')(this.api), + virtualAccounts: require('./resources/virtualAccounts')(this.api), + invoices: require('./resources/invoices')(this.api), + iins: require('./resources/iins')(this.api), + paymentLink: require('./resources/paymentLink')(this.api), + plans: require('./resources/plans')(this.api), + products: require('./resources/products')(this.api), + subscriptions: require('./resources/subscriptions')(this.api), + addons: require('./resources/addons')(this.api), + settlements: require('./resources/settlements')(this.api), + qrCode: require('./resources/qrCode')(this.api), + fundAccount: require('./resources/fundAccount')(this.api), + items: require('./resources/items')(this.api), + cards: require('./resources/cards')(this.api), + webhooks: require('./resources/webhooks')(this.api), + documents: require('./resources/documents')(this.api), + disputes: require('./resources/disputes')(this.api) + }); + } +} module.exports = Razorpay; \ No newline at end of file diff --git a/dist/resources/accounts.js b/dist/resources/accounts.js new file mode 100644 index 00000000..14eb9710 --- /dev/null +++ b/dist/resources/accounts.js @@ -0,0 +1,53 @@ +'use strict'; + +module.exports = function (api) { + const BASE_URL = "/accounts"; + return { + create(params, callback) { + return api.post({ + version: 'v2', + url: `${BASE_URL}`, + data: params + }, callback); + }, + edit(accountId, params, callback) { + return api.patch({ + version: 'v2', + url: `${BASE_URL}/${accountId}`, + data: params + }, callback); + }, + fetch(accountId, callback) { + return api.get({ + version: 'v2', + url: `${BASE_URL}/${accountId}` + }, callback); + }, + delete(accountId, callback) { + return api.delete({ + version: 'v2', + url: `${BASE_URL}/${accountId}` + }, callback); + }, + uploadAccountDoc(accountId, params, callback) { + let { + file, + ...rest + } = params; + return api.postFormData({ + version: 'v2', + url: `${BASE_URL}/${accountId}/documents`, + formData: { + file: file.value, + ...rest + } + }, callback); + }, + fetchAccountDoc(accountId, callback) { + return api.get({ + version: 'v2', + url: `${BASE_URL}/${accountId}/documents` + }, callback); + } + }; +}; \ No newline at end of file diff --git a/dist/resources/addons.js b/dist/resources/addons.js index 4f0bacc8..d92918d7 100644 --- a/dist/resources/addons.js +++ b/dist/resources/addons.js @@ -3,22 +3,14 @@ /* * DOCS: https://razorpay.com/docs/subscriptions/api/ */ - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -var Promise = require("promise"), - _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate; - - +const { + normalizeDate +} = require('../utils/razorpay-utils'); module.exports = function (api) { - - var BASE_URL = "/addons", - MISSING_ID_ERROR = "Addon ID is mandatory"; - + const BASE_URL = "/addons", + MISSING_ID_ERROR = "Addon ID is mandatory"; return { - fetch: function fetch(addonId, callback) { - + fetch(addonId, callback) { /* * Fetches addon given addon id * @param {String} addonId @@ -28,18 +20,14 @@ module.exports = function (api) { */ if (!addonId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + addonId; - + const url = `${BASE_URL}/${addonId}`; return api.get({ - url: url + url }, callback); }, - delete: function _delete(addonId, callback) { - + delete(addonId, callback) { /* * Deletes addon given addon id * @param {String} addonId @@ -49,17 +37,14 @@ module.exports = function (api) { */ if (!addonId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + addonId; - + const url = `${BASE_URL}/${addonId}`; return api.delete({ - url: url + url }, callback); }, - all: function all() { + all() { var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var callback = arguments[1]; @@ -72,32 +57,30 @@ module.exports = function (api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL; - - + let { + from, + to, + count, + skip + } = params, + url = BASE_URL; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + data: { + ...params, + from, + to, + count, + skip + } }, callback); } }; diff --git a/dist/resources/cards.js b/dist/resources/cards.js index 2a2dab37..cc2113f6 100644 --- a/dist/resources/cards.js +++ b/dist/resources/cards.js @@ -2,13 +2,18 @@ module.exports = function (api) { return { - fetch: function fetch(itemId, callback) { + fetch(itemId, callback) { if (!itemId) { throw new Error('`card_id` is mandatory'); } - return api.get({ - url: '/cards/' + itemId + url: `/cards/${itemId}` + }, callback); + }, + requestCardReference(params, callback) { + return api.post({ + url: `/cards/fingerprints`, + data: params }, callback); } }; diff --git a/dist/resources/customers.js b/dist/resources/customers.js index d9ee389f..ec99a623 100644 --- a/dist/resources/customers.js +++ b/dist/resources/customers.js @@ -1,71 +1,74 @@ 'use strict'; -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var _require = require('../utils/razorpay-utils'), - normalizeNotes = _require.normalizeNotes, - normalizeBoolean = _require.normalizeBoolean; - module.exports = function (api) { return { - create: function create(params, callback) { - var notes = params.notes, - rest = _objectWithoutProperties(params, ['notes']); - - var data = Object.assign(rest, normalizeNotes(notes)); - + create(params, callback) { return api.post({ url: '/customers', - data: data + data: params }, callback); }, - edit: function edit(customerId, params, callback) { - var notes = params.notes, - rest = _objectWithoutProperties(params, ['notes']); - - var data = Object.assign(rest, normalizeNotes(notes)); - + edit(customerId, params, callback) { return api.put({ - url: '/customers/' + customerId, - data: data + url: `/customers/${customerId}`, + data: params }, callback); }, - fetch: function fetch(customerId, callback) { + fetch(customerId, callback) { return api.get({ - url: '/customers/' + customerId + url: `/customers/${customerId}` }, callback); }, - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - var count = params.count, - skip = params.skip; - - + all(params = {}, callback) { + let { + count, + skip + } = params; count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ url: '/customers', data: { - count: count, - skip: skip + count, + skip } }, callback); }, - fetchTokens: function fetchTokens(customerId, callback) { + fetchTokens(customerId, callback) { return api.get({ - url: '/customers/' + customerId + '/tokens' + url: `/customers/${customerId}/tokens` }, callback); }, - fetchToken: function fetchToken(customerId, tokenId, callback) { + fetchToken(customerId, tokenId, callback) { return api.get({ - url: '/customers/' + customerId + '/tokens/' + tokenId + url: `/customers/${customerId}/tokens/${tokenId}` }, callback); }, - deleteToken: function deleteToken(customerId, tokenId, callback) { + deleteToken(customerId, tokenId, callback) { return api.delete({ - url: '/customers/' + customerId + '/tokens/' + tokenId + url: `/customers/${customerId}/tokens/${tokenId}` + }, callback); + }, + addBankAccount(customerId, params, callback) { + return api.post({ + url: `/customers/${customerId}/bank_account`, + data: params + }, callback); + }, + deleteBankAccount(customerId, bankId, callback) { + return api.delete({ + url: `/customers/${customerId}/bank_account/${bankId}` + }, callback); + }, + requestEligibilityCheck(params, callback) { + return api.post({ + url: `/customers/eligibility`, + data: params + }, callback); + }, + fetchEligibility(eligibilityId, callback) { + return api.get({ + url: `/customers/eligibility/${eligibilityId}` }, callback); } }; diff --git a/dist/resources/disputes.js b/dist/resources/disputes.js new file mode 100644 index 00000000..52fe73d8 --- /dev/null +++ b/dist/resources/disputes.js @@ -0,0 +1,38 @@ +'use strict'; + +module.exports = function (api) { + const BASE_URL = "/disputes"; + return { + fetch(disputeId, callback) { + return api.get({ + url: `${BASE_URL}/${disputeId}` + }, callback); + }, + all(params = {}, callback) { + let { + count, + skip + } = params; + count = Number(count) || 10; + skip = Number(skip) || 0; + return api.get({ + url: `${BASE_URL}`, + data: { + count, + skip + } + }, callback); + }, + accept(disputeId, callback) { + return api.post({ + url: `${BASE_URL}/${disputeId}/accept` + }, callback); + }, + contest(disputeId, param, callback) { + return api.patch({ + url: `${BASE_URL}/${disputeId}/contest`, + data: param + }, callback); + } + }; +}; \ No newline at end of file diff --git a/dist/resources/documents.js b/dist/resources/documents.js new file mode 100644 index 00000000..ce42d8e1 --- /dev/null +++ b/dist/resources/documents.js @@ -0,0 +1,25 @@ +'use strict'; + +module.exports = function (api) { + const BASE_URL = "/documents"; + return { + create(params, callback) { + let { + file, + ...rest + } = params; + return api.postFormData({ + url: `${BASE_URL}`, + formData: { + file: file.value, + ...rest + } + }, callback); + }, + fetch(documentId, callback) { + return api.get({ + url: `${BASE_URL}/${documentId}` + }, callback); + } + }; +}; \ No newline at end of file diff --git a/dist/resources/fundAccount.js b/dist/resources/fundAccount.js index e52e0e24..b070cd30 100644 --- a/dist/resources/fundAccount.js +++ b/dist/resources/fundAccount.js @@ -1,14 +1,8 @@ 'use strict'; -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -var _require = require('../utils/razorpay-utils'), - normalizeNotes = _require.normalizeNotes; - module.exports = function (api) { return { - create: function create(params, callback) { - + create(params, callback) { /* * Create a Fund Account * @@ -21,18 +15,17 @@ module.exports = function (api) { return api.post({ url: '/fund_accounts', - data: _extends({}, params) + data: { + ...params + } }, callback); }, - fetch: function fetch(customerId, callback) { - + fetch(customerId, callback) { if (!customerId) { - return Promise.reject("Customer Id is mandatroy"); } - return api.get({ - url: '/fund_accounts?customer_id=' + customerId + url: `/fund_accounts?customer_id=${customerId}` }, callback); } }; diff --git a/dist/resources/iins.js b/dist/resources/iins.js new file mode 100644 index 00000000..7b3c3173 --- /dev/null +++ b/dist/resources/iins.js @@ -0,0 +1,18 @@ +'use strict'; + +module.exports = function (api) { + const BASE_URL = "/iins"; + return { + fetch(tokenIin, callback) { + return api.get({ + url: `${BASE_URL}/${tokenIin}` + }, callback); + }, + all(params = {}, callback) { + return api.get({ + url: `${BASE_URL}/list`, + data: params + }, callback); + } + }; +}; \ No newline at end of file diff --git a/dist/resources/invoices.js b/dist/resources/invoices.js index 2a2a7283..d6d83c2b 100644 --- a/dist/resources/invoices.js +++ b/dist/resources/invoices.js @@ -3,22 +3,12 @@ /* * DOCS: https://razorpay.com/docs/invoices/ */ - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var Promise = require("promise"), - _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeNotes = _require.normalizeNotes, - normalizeBoolean = _require.normalizeBoolean; - - +const { + normalizeDate +} = require('../utils/razorpay-utils'); module.exports = function invoicesApi(api) { - - var BASE_URL = "/invoices", - MISSING_ID_ERROR = "Invoice ID is mandatory"; + const BASE_URL = "/invoices", + MISSING_ID_ERROR = "Invoice ID is mandatory"; /** * Invoice entity gets used for both Payment Links and Invoices system. @@ -28,11 +18,7 @@ module.exports = function invoicesApi(api) { */ return { - create: function create() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + create(params = {}, callback) { /* * Creates invoice of any type(invoice|link|ecod). * @@ -42,25 +28,13 @@ module.exports = function invoicesApi(api) { * @return {Promise} */ - var url = BASE_URL, - notes = params.notes, - partial_payment = params.partial_payment, - rest = _objectWithoutProperties(params, ["notes", "partial_payment"]); - - - var data = Object.assign(_extends({ - partial_payment: normalizeBoolean(partial_payment) - }, rest), normalizeNotes(notes)); + let url = BASE_URL; return api.post({ - url: url, - data: data + url, + data: params }, callback); }, - edit: function edit(invoiceId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + edit(invoiceId, params = {}, callback) { /* * Patches given invoice with new attributes * @@ -71,24 +45,16 @@ module.exports = function invoicesApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + invoiceId, - notes = params.notes, - rest = _objectWithoutProperties(params, ["notes"]), - data = Object.assign(rest, normalizeNotes(notes)); - - + let url = `${BASE_URL}/${invoiceId}`; if (!invoiceId) { - return Promise.reject("Invoice ID is mandatory"); } - return api.patch({ - url: url, - data: data + url, + data: params }, callback); }, - issue: function issue(invoiceId, callback) { - + issue(invoiceId, callback) { /* * Issues drafted invoice * @@ -99,18 +65,14 @@ module.exports = function invoicesApi(api) { */ if (!invoiceId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + invoiceId + "/issue"; - + let url = `${BASE_URL}/${invoiceId}/issue`; return api.post({ - url: url + url }, callback); }, - delete: function _delete(invoiceId, callback) { - + delete(invoiceId, callback) { /* * Deletes drafted invoice * @@ -121,18 +83,14 @@ module.exports = function invoicesApi(api) { */ if (!invoiceId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + invoiceId; - + let url = `${BASE_URL}/${invoiceId}`; return api.delete({ - url: url + url }, callback); }, - cancel: function cancel(invoiceId, callback) { - + cancel(invoiceId, callback) { /* * Cancels issued invoice * @@ -143,18 +101,14 @@ module.exports = function invoicesApi(api) { */ if (!invoiceId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + invoiceId + "/cancel"; - + let url = `${BASE_URL}/${invoiceId}/cancel`; return api.post({ - url: url + url }, callback); }, - fetch: function fetch(invoiceId, callback) { - + fetch(invoiceId, callback) { /* * Fetches invoice entity with given id * @@ -165,21 +119,14 @@ module.exports = function invoicesApi(api) { */ if (!invoiceId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + invoiceId; - + let url = `${BASE_URL}/${invoiceId}`; return api.get({ - url: url + url }, callback); }, - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + all(params = {}, callback) { /* * Fetches multiple invoices with given query options * @@ -189,36 +136,33 @@ module.exports = function invoicesApi(api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL; - - + let { + from, + to, + count, + skip + } = params, + url = BASE_URL; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + url, + data: { + ...params, + from, + to, + count, + skip + } }, callback); }, - notifyBy: function notifyBy(invoiceId, medium, callback) { - + notifyBy(invoiceId, medium, callback) { /* * Send/re-send notification for invoice by given medium * @@ -230,19 +174,14 @@ module.exports = function invoicesApi(api) { */ if (!invoiceId) { - return Promise.reject(MISSING_ID_ERROR); } - if (!medium) { - return Promise.reject("`medium` is required"); } - - var url = BASE_URL + "/" + invoiceId + "/notify_by/" + medium; - + let url = `${BASE_URL}/${invoiceId}/notify_by/${medium}`; return api.post({ - url: url + url }, callback); } }; diff --git a/dist/resources/items.js b/dist/resources/items.js index a821e305..0bebccd4 100644 --- a/dist/resources/items.js +++ b/dist/resources/items.js @@ -1,117 +1,81 @@ 'use strict'; -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeBoolean = _require.normalizeBoolean; - +const { + normalizeDate +} = require('../utils/razorpay-utils'); module.exports = function (api) { return { - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - authorized = params.authorized, - receipt = params.receipt; - - + all(params = {}, callback) { + let { + from, + to, + count, + skip, + authorized, + receipt + } = params; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - authorized = normalizeBoolean(authorized); - return api.get({ url: '/items', data: { - from: from, - to: to, - count: count, - skip: skip, - authorized: authorized, - receipt: receipt + from, + to, + count, + skip, + authorized, + receipt } }, callback); }, - fetch: function fetch(itemId, callback) { + fetch(itemId, callback) { if (!itemId) { throw new Error('`item_id` is mandatory'); } - return api.get({ - url: '/items/' + itemId + url: `/items/${itemId}` }, callback); }, - create: function create() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - var name = params.name; - var amount = params.amount; - var currency = params.currency; - var description = params.description; - + create(params = {}, callback) { + let { + amount, + currency, + ...rest + } = params; currency = currency || 'INR'; - if (!amount) { throw new Error('`amount` is mandatory'); } - - var data = Object.assign({ - name: name, - amount: amount, - currency: currency, - description: description + let data = Object.assign({ + currency, + amount, + ...rest }); - return api.post({ url: '/items', - data: data + data }, callback); }, - edit: function edit(itemId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + edit(itemId, params = {}, callback) { if (!itemId) { throw new Error('`item_id` is mandatory'); } - - var url = '/items/' + itemId, - active = params.active, - rest = _objectWithoutProperties(params, ['active']); - - - var data = Object.assign(_extends({ - active: normalizeBoolean(active) - }, rest)); - + let url = `/items/${itemId}`; return api.patch({ - url: url, - data: data + url, + data: params }, callback); }, - - delete: function _delete(itemId, callback) { - if (!itemId) { throw new Error('`item_id` is mandatory'); } - return api.delete({ url: '/items/' + itemId }, callback); diff --git a/dist/resources/oAuthTokenValidator.js b/dist/resources/oAuthTokenValidator.js new file mode 100644 index 00000000..ddeeb835 --- /dev/null +++ b/dist/resources/oAuthTokenValidator.js @@ -0,0 +1,52 @@ +"use strict"; + +const { + isValidUrl +} = require("../utils/razorpay-utils"); +const SCHEMAS = { + generateAuthUrl: { + client_id: "client_id is empty", + response_type: "response_type is empty", + redirect_uri: "redirect_uri is empty", + scope: "scope is empty", + state: "state is empty" + }, + getAccessToken: { + client_id: "client_id is empty", + client_secret: "client_secret is empty", + grant_type: "grant_type is empty", + redirect_uri: "redirect_uri is empty", + code: "code is empty" + }, + refreshToken: { + client_id: "client_id is empty", + client_secret: "client_secret is empty", + grant_type: "grant_type is empty", + refresh_token: "refresh_token is empty" + }, + revokeToken: { + client_id: "client_id is empty", + client_secret: "client_secret is empty", + token_type_hint: "token_type_hint is empty", + token: "token is empty" + } +}; +function validateInput(inputData, schema) { + let errors = {}; + for (let field in schema) { + if (!(field in inputData) || typeof inputData[field] === "string" && inputData[field].trim() === "") { + errors[field] = schema[field]; + } else if (field === "redirect_uri" && !isValidUrl(inputData[field])) { + errors[field] = "redirect_uri is not a valid URL"; + } else if (field === "client_id" && !/^[A-Za-z0-9]{1,14}$/.test(inputData[field])) { + errors[field] = "client_id is not a valid ID"; + } else if (field === "grant_type" && inputData[field] !== "refresh_token" && inputData[field] !== "authorization_code") { + errors[field] = "grant_type is not a valid"; + } + } + return errors; +} +module.exports = { + SCHEMAS, + validateInput +}; \ No newline at end of file diff --git a/dist/resources/orders.js b/dist/resources/orders.js index 4ee2d38e..eb57acea 100644 --- a/dist/resources/orders.js +++ b/dist/resources/orders.js @@ -1,133 +1,105 @@ 'use strict'; -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeBoolean = _require.normalizeBoolean, - normalizeNotes = _require.normalizeNotes; - +const { + normalizeDate +} = require('../utils/razorpay-utils'); module.exports = function (api) { return { - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - authorized = params.authorized, - receipt = params.receipt; - - var expand = void 0; - + all(params = {}, callback) { + let { + from, + to, + count, + skip, + authorized, + receipt + } = params; + let expand; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - if (params.hasOwnProperty("expand[]")) { - expand = { "expand[]": params["expand[]"] }; + expand = { + "expand[]": params["expand[]"] + }; } - count = Number(count) || 10; skip = Number(skip) || 0; - authorized = normalizeBoolean(authorized); - + authorized = authorized; return api.get({ url: '/orders', data: { - from: from, - to: to, - count: count, - skip: skip, - authorized: authorized, - receipt: receipt, - expand: expand + from, + to, + count, + skip, + authorized, + receipt, + expand } }, callback); }, - fetch: function fetch(orderId, callback) { + fetch(orderId, callback) { if (!orderId) { throw new Error('`order_id` is mandatory'); } - return api.get({ - url: '/orders/' + orderId + url: `/orders/${orderId}` }, callback); }, - create: function create() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - var isNotForm = false; - - var amount = params.amount, - currency = params.currency, - receipt = params.receipt, - payment_capture = params.payment_capture, - notes = params.notes, - method = params.method, - otherParams = _objectWithoutProperties(params, ['amount', 'currency', 'receipt', 'payment_capture', 'notes', 'method']); - + create(params = {}, callback) { + let { + currency, + ...otherParams + } = params; currency = currency || 'INR'; - - if (params.hasOwnProperty("first_payment_min_amount")) { - isNotForm = true; - } - - var data = Object.assign(_extends({ - amount: amount, - currency: currency, - receipt: receipt, - method: method, - payment_capture: normalizeBoolean(payment_capture) - }, otherParams), normalizeNotes(notes)); - + let data = Object.assign({ + currency, + ...otherParams + }); return api.post({ url: '/orders', - data: data - }, callback, isNotForm); + data + }, callback); }, - edit: function edit(orderId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - var notes = params.notes; - - + edit(orderId, params = {}, callback) { if (!orderId) { throw new Error('`order_id` is mandatory'); } - - var data = Object.assign(normalizeNotes(notes)); - return api.patch({ - url: '/orders/' + orderId, - data: data + url: `/orders/${orderId}`, + data: params }, callback); }, - fetchPayments: function fetchPayments(orderId, callback) { + fetchPayments(orderId, callback) { if (!orderId) { throw new Error('`order_id` is mandatory'); } - return api.get({ - url: '/orders/' + orderId + '/payments' + url: `/orders/${orderId}/payments` }, callback); }, - fetchTransferOrder: function fetchTransferOrder(orderId, callback) { + fetchTransferOrder(orderId, callback) { if (!orderId) { throw new Error('`order_id` is mandatory'); } - return api.get({ - url: '/orders/' + orderId + '/?expand[]=transfers&status' + url: `/orders/${orderId}/?expand[]=transfers&status` }, callback); + }, + viewRtoReview(orderId, callback) { + return api.post({ + url: `/orders/${orderId}/rto_review` + }, callback); + }, + editFulfillment(orderId, param = {}, callback) { + return api.post({ + url: `/orders/${orderId}/fulfillment`, + data: param + }); } }; }; \ No newline at end of file diff --git a/dist/resources/paymentLink.js b/dist/resources/paymentLink.js index c1e70db3..ed2d8204 100644 --- a/dist/resources/paymentLink.js +++ b/dist/resources/paymentLink.js @@ -3,28 +3,14 @@ /* * DOCS: https://razorpay.com/docs/payment-links/ */ - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var Promise = require("promise"), - _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeNotes = _require.normalizeNotes; - - +const { + normalizeDate +} = require('../utils/razorpay-utils'); module.exports = function paymentLinkApi(api) { - - var BASE_URL = "/payment_links", - MISSING_ID_ERROR = "Payment Link ID is mandatory"; - + const BASE_URL = "/payment_links", + MISSING_ID_ERROR = "Payment Link ID is mandatory"; return { - create: function create() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + create(params, callback) { /* * Creates Payment Link. * @@ -34,19 +20,13 @@ module.exports = function paymentLinkApi(api) { * @return {Promise} */ - var url = BASE_URL, - notes = params.notes, - rest = _objectWithoutProperties(params, ["notes"]), - data = Object.assign(params); - - + let url = BASE_URL; return api.post({ - url: url, - data: data - }, callback, true); + url, + data: params + }, callback); }, - cancel: function cancel(paymentLinkId, callback) { - + cancel(paymentLinkId, callback) { /* * Cancels issued paymentLink * @@ -57,18 +37,14 @@ module.exports = function paymentLinkApi(api) { */ if (!paymentLinkId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + paymentLinkId + "/cancel"; - + let url = `${BASE_URL}/${paymentLinkId}/cancel`; return api.post({ - url: url + url }, callback); }, - fetch: function fetch(paymentLinkId, callback) { - + fetch(paymentLinkId, callback) { /* * Fetches paymentLink entity with given id * @@ -79,21 +55,14 @@ module.exports = function paymentLinkApi(api) { */ if (!paymentLinkId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + paymentLinkId; - + let url = `${BASE_URL}/${paymentLinkId}`; return api.get({ - url: url + url }, callback); }, - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + all(params = {}, callback) { /* * Fetches multiple paymentLink with given query options * @@ -103,47 +72,39 @@ module.exports = function paymentLinkApi(api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL; - - + let { + from, + to, + count, + skip + } = params, + url = BASE_URL; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + url, + data: { + ...params, + from, + to, + count, + skip + } }, callback); }, - edit: function edit(paymentLinkId, params, callback) { - var rest = params; - var isbody = true; - - var data = _extends({ isbody: isbody }, rest); - + edit(paymentLinkId, params, callback) { return api.patch({ - url: BASE_URL + "/" + paymentLinkId, - data: data + url: `${BASE_URL}/${paymentLinkId}`, + data: params }, callback); }, - notifyBy: function notifyBy(paymentLinkId, medium, callback) { - + notifyBy(paymentLinkId, medium, callback) { /* * Send/re-send notification for invoice by given medium * @@ -155,19 +116,14 @@ module.exports = function paymentLinkApi(api) { */ if (!paymentLinkId) { - return Promise.reject(MISSING_ID_ERROR); } - if (!medium) { - return Promise.reject("`medium` is required"); } - - var url = BASE_URL + "/" + paymentLinkId + "/notify_by/" + medium; - + let url = `${BASE_URL}/${paymentLinkId}/notify_by/${medium}`; return api.post({ - url: url + url }, callback); } }; diff --git a/dist/resources/payments.js b/dist/resources/payments.js index 1707c134..a729679f 100644 --- a/dist/resources/payments.js +++ b/dist/resources/payments.js @@ -1,88 +1,70 @@ 'use strict'; -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var Promise = require("promise"); - -var _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeBoolean = _require.normalizeBoolean, - normalizeNotes = _require.normalizeNotes; - -var ID_REQUIRED_MSG = '`payment_id` is mandatory'; - +const { + normalizeDate +} = require('../utils/razorpay-utils'); +const ID_REQUIRED_MSG = '`payment_id` is mandatory', + BASE_URL = '/payments'; module.exports = function (api) { return { - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip; - - var expand = void 0; - + all(params = {}, callback) { + let { + from, + to, + count, + skip + } = params; + let expand; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - if (params.hasOwnProperty("expand[]")) { - expand = { "expand[]": params["expand[]"] }; + expand = { + "expand[]": params["expand[]"] + }; } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ - url: '/payments', + url: `${BASE_URL}`, data: { - from: from, - to: to, - count: count, - skip: skip, - expand: expand + from, + to, + count, + skip, + expand } }, callback); }, - fetch: function fetch(paymentId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - var expand = void 0; - + fetch(paymentId, params = {}, callback) { + let expand; if (!paymentId) { throw new Error('`payment_id` is mandatory'); } - if (params.hasOwnProperty("expand[]")) { - expand = { "expand[]": params["expand[]"] }; + expand = { + "expand[]": params["expand[]"] + }; } - return api.get({ - url: '/payments/' + paymentId, + url: `${BASE_URL}/${paymentId}`, data: { - expand: expand + expand } }, callback); }, - capture: function capture(paymentId, amount, currency, callback) { + capture(paymentId, amount, currency, callback) { if (!paymentId) { throw new Error('`payment_id` is mandatory'); } - if (!amount) { throw new Error('`amount` is mandatory'); } - - var payload = { - amount: amount + const payload = { + amount }; /** @@ -97,72 +79,47 @@ module.exports = function (api) { } else if (typeof currency === 'string') { payload.currency = currency; } - return api.post({ - url: '/payments/' + paymentId + '/capture', + url: `${BASE_URL}/${paymentId}/capture`, data: payload }, callback); }, - createPaymentJson: function createPaymentJson(params, callback) { - var url = 'payments/create/json', - rest = _objectWithoutProperties(params, []), - data = Object.assign(rest); - + createPaymentJson(params, callback) { + let url = `${BASE_URL}/create/json`, + { + ...rest + } = params, + data = Object.assign(rest); return api.post({ - url: url, - data: data + url, + data }, callback); }, - createRecurringPayment: function createRecurringPayment(params, callback) { - var notes = params.notes, - rest = _objectWithoutProperties(params, ['notes']); - - var data = Object.assign(rest, normalizeNotes(notes)); - + createRecurringPayment(params, callback) { return api.post({ - url: '/payments/create/recurring', - data: data + url: `${BASE_URL}/create/recurring`, + data: params }, callback); }, - edit: function edit(paymentId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - var notes = params.notes; - - + edit(paymentId, params = {}, callback) { if (!paymentId) { throw new Error('`payment_id` is mandatory'); } - - var data = Object.assign(normalizeNotes(notes)); - return api.patch({ - url: '/payments/' + paymentId, - data: data + url: `${BASE_URL}/${paymentId}`, + data: params }, callback); }, - refund: function refund(paymentId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - var notes = params.notes, - otherParams = _objectWithoutProperties(params, ['notes']); - + refund(paymentId, params = {}, callback) { if (!paymentId) { throw new Error('`payment_id` is mandatory'); } - - var data = Object.assign(otherParams, normalizeNotes(notes)); return api.post({ - url: '/payments/' + paymentId + '/refund', - data: data + url: `${BASE_URL}/${paymentId}/refund`, + data: params }, callback); }, - fetchMultipleRefund: function fetchMultipleRefund(paymentId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + fetchMultipleRefund(paymentId, params = {}, callback) { /* * Fetch multiple refunds for a payment * @@ -173,39 +130,36 @@ module.exports = function (api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = '/payments/' + paymentId + '/refunds'; - - + let { + from, + to, + count, + skip + } = params, + url = `${BASE_URL}/${paymentId}/refunds`; return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + url, + data: { + ...params, + from, + to, + count, + skip + } }, callback); }, - fetchRefund: function fetchRefund(paymentId, refundId, callback) { - + fetchRefund(paymentId, refundId, callback) { if (!paymentId) { throw new Error('payment Id` is mandatory'); } - if (!refundId) { throw new Error('refund Id` is mandatory'); } - return api.get({ - url: '/payments/' + paymentId + '/refunds/' + refundId + url: `${BASE_URL}/${paymentId}/refunds/${refundId}` }, callback); }, - fetchTransfer: function fetchTransfer(paymentId, callback) { - + fetchTransfer(paymentId, callback) { /* * Fetch transfers for a payment * @@ -218,65 +172,41 @@ module.exports = function (api) { if (!paymentId) { throw new Error('payment Id` is mandatory'); } - return api.get({ - url: '/payments/' + paymentId + '/transfers' + url: `${BASE_URL}/${paymentId}/transfers` }, callback); }, - transfer: function transfer(paymentId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - + transfer(paymentId, params = {}, callback) { if (!paymentId) { throw new Error('`payment_id` is mandatory'); } - - var notes = params.notes, - otherParams = _objectWithoutProperties(params, ['notes']); - - var data = Object.assign(otherParams, normalizeNotes(notes)); - - if (data.transfers) { - var transfers = data.transfers; - transfers.forEach(function (transfer) { - transfer.on_hold = normalizeBoolean(!!transfer.on_hold); - }); - } return api.post({ - url: '/payments/' + paymentId + '/transfers', - data: data + url: `${BASE_URL}/${paymentId}/transfers`, + data: params }, callback); }, - bankTransfer: function bankTransfer(paymentId, callback) { - + bankTransfer(paymentId, callback) { if (!paymentId) { - return Promise.reject(ID_REQUIRED_MSG); } - return api.get({ - url: '/payments/' + paymentId + '/bank_transfer' + url: `${BASE_URL}/${paymentId}/bank_transfer` }, callback); }, - fetchCardDetails: function fetchCardDetails(paymentId, callback) { - + fetchCardDetails(paymentId, callback) { if (!paymentId) { - return Promise.reject(ID_REQUIRED_MSG); } - return api.get({ - url: '/payments/' + paymentId + '/card' + url: `${BASE_URL}/${paymentId}/card` }, callback); }, - fetchPaymentDowntime: function fetchPaymentDowntime(callback) { - + fetchPaymentDowntime(callback) { return api.get({ - url: '/payments/downtimes' + url: `${BASE_URL}/downtimes` }, callback); }, - fetchPaymentDowntimeById: function fetchPaymentDowntimeById(downtimeId, callback) { - + fetchPaymentDowntimeById(downtimeId, callback) { /* * Fetch Payment Downtime * @@ -287,16 +217,13 @@ module.exports = function (api) { */ if (!downtimeId) { - return Promise.reject("Downtime Id is mandatory"); } - return api.get({ - url: '/payments/downtimes/' + downtimeId + url: `${BASE_URL}/downtimes/${downtimeId}` }, callback); }, - otpGenerate: function otpGenerate(paymentId, callback) { - + otpGenerate(paymentId, callback) { /* * OTP Generate * @@ -307,19 +234,13 @@ module.exports = function (api) { */ if (!paymentId) { - return Promise.reject("payment Id is mandatory"); } - return api.post({ - url: '/payments/' + paymentId + '/otp_generate' + url: `${BASE_URL}/${paymentId}/otp_generate` }, callback); }, - otpSubmit: function otpSubmit(paymentId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + otpSubmit(paymentId, params = {}, callback) { /* * OTP Submit * @@ -331,17 +252,14 @@ module.exports = function (api) { */ if (!paymentId) { - return Promise.reject("payment Id is mandatory"); } - return api.post({ - url: '/payments/' + paymentId + '/otp/submit', + url: `${BASE_URL}/${paymentId}/otp/submit`, data: params }, callback); }, - otpResend: function otpResend(paymentId, callback) { - + otpResend(paymentId, callback) { /* * OTP Resend * @@ -352,19 +270,13 @@ module.exports = function (api) { */ if (!paymentId) { - return Promise.reject("payment Id is mandatory"); } - return api.post({ - url: '/payments/' + paymentId + '/otp/resend' + url: `${BASE_URL}/${paymentId}/otp/resend` }, callback); }, - createUpi: function createUpi() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + createUpi(params = {}, callback) { /* * Initiate a payment * @@ -374,20 +286,17 @@ module.exports = function (api) { * @return {Promise} */ - var url = 'payments/create/upi', - rest = _objectWithoutProperties(params, []), - data = Object.assign(rest); - + let url = `${BASE_URL}/create/upi`, + { + ...rest + } = params, + data = Object.assign(rest); return api.post({ - url: url, - data: data + url, + data }, callback); }, - validateVpa: function validateVpa() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + validateVpa(params = {}, callback) { /* * Validate the VPA * @@ -397,16 +306,17 @@ module.exports = function (api) { * @return {Promise} */ - var url = 'payments/validate/vpa', - rest = _objectWithoutProperties(params, []), - data = Object.assign(rest); - + let url = `${BASE_URL}/validate/vpa`, + { + ...rest + } = params, + data = Object.assign(rest); return api.post({ - url: url, - data: data + url, + data }, callback); }, - fetchPaymentMethods: function fetchPaymentMethods(callback) { + fetchPaymentMethods(callback) { /* * Validate the VPA * @@ -416,9 +326,9 @@ module.exports = function (api) { * @return {Promise} */ - var url = 'methods'; + let url = `/methods`; return api.get({ - url: url + url }, callback); } }; diff --git a/dist/resources/plans.js b/dist/resources/plans.js index 3d84eefc..77368218 100644 --- a/dist/resources/plans.js +++ b/dist/resources/plans.js @@ -3,28 +3,14 @@ /* * DOCS: https://razorpay.com/docs/subscriptions/api/ */ - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var Promise = require("promise"), - _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeNotes = _require.normalizeNotes; - - +const { + normalizeDate +} = require('../utils/razorpay-utils'); module.exports = function plansApi(api) { - - var BASE_URL = "/plans", - MISSING_ID_ERROR = "Plan ID is mandatory"; - + const BASE_URL = "/plans", + MISSING_ID_ERROR = "Plan ID is mandatory"; return { - create: function create() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + create(params = {}, callback) { /* * Creates a plan * @@ -34,19 +20,13 @@ module.exports = function plansApi(api) { * @return {Promise} */ - var url = BASE_URL, - notes = params.notes, - rest = _objectWithoutProperties(params, ["notes"]), - data = Object.assign(rest, normalizeNotes(notes)); - - + let url = BASE_URL; return api.post({ - url: url, - data: data + url, + data: params }, callback); }, - fetch: function fetch(planId, callback) { - + fetch(planId, callback) { /* * Fetches a plan given Plan ID * @@ -57,19 +37,14 @@ module.exports = function plansApi(api) { */ if (!planId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + planId; - - return api.get({ url: url }, callback); + let url = `${BASE_URL}/${planId}`; + return api.get({ + url + }, callback); }, - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + all(params = {}, callback) { /* * Get all Plans * @@ -79,32 +54,30 @@ module.exports = function plansApi(api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL; - - + let { + from, + to, + count, + skip + } = params, + url = BASE_URL; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + url, + data: { + ...params, + from, + to, + count, + skip + } }, callback); } }; diff --git a/dist/resources/products.js b/dist/resources/products.js new file mode 100644 index 00000000..df68bc4b --- /dev/null +++ b/dist/resources/products.js @@ -0,0 +1,33 @@ +'use strict'; + +module.exports = function (api) { + const BASE_URL = "/accounts"; + return { + requestProductConfiguration(accountId, params, callback) { + return api.post({ + version: 'v2', + url: `${BASE_URL}/${accountId}/products`, + data: params + }, callback); + }, + edit(accountId, productId, params, callback) { + return api.patch({ + version: 'v2', + url: `${BASE_URL}/${accountId}/products/${productId}`, + data: params + }, callback); + }, + fetch(accountId, productId, callback) { + return api.get({ + version: 'v2', + url: `${BASE_URL}/${accountId}/products/${productId}` + }, callback); + }, + fetchTnc(productName, callback) { + return api.get({ + version: 'v2', + url: `/products/${productName}/tnc` + }, callback); + } + }; +}; \ No newline at end of file diff --git a/dist/resources/qrCode.js b/dist/resources/qrCode.js index ec6312e3..1c9ef719 100644 --- a/dist/resources/qrCode.js +++ b/dist/resources/qrCode.js @@ -1,25 +1,9 @@ 'use strict'; -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var _require = require('../../dist/utils/razorpay-utils'), - normalizeBoolean = _require.normalizeBoolean; - -var _require2 = require('../utils/razorpay-utils'), - normalizeNotes = _require2.normalizeNotes; - module.exports = function (api) { - - var BASE_URL = "/payments/qr_codes"; - + const BASE_URL = "/payments/qr_codes"; return { - create: function create() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + create(params = {}, callback) { /* * Creates a QrCode * @@ -29,26 +13,13 @@ module.exports = function (api) { * @return {Promise} */ - var url = BASE_URL, - notes = params.notes, - fixed_amount = params.fixed_amount, - rest = _objectWithoutProperties(params, ['notes', 'fixed_amount']); - - - var data = Object.assign(_extends({ - fixed_amount: normalizeBoolean(fixed_amount) - }, rest), normalizeNotes(notes)); - + let url = BASE_URL; return api.post({ - url: url, - data: data + url, + data: params }, callback); }, - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + all(params = {}, callback) { /* * Fetch all fund accounts * @@ -58,28 +29,25 @@ module.exports = function (api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL; - - + let { + from, + to, + count, + skip + } = params, + url = BASE_URL; return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + url, + data: { + ...params, + from, + to, + count, + skip + } }, callback); }, - fetchAllPayments: function fetchAllPayments(qrCodeId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + fetchAllPayments(qrCodeId, params = {}, callback) { /* * Fetch all payment for a qrCode * @@ -89,45 +57,39 @@ module.exports = function (api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL + '/' + qrCodeId + '/payments'; - - + let { + from, + to, + count, + skip + } = params, + url = `${BASE_URL}/${qrCodeId}/payments`; return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + url, + data: { + ...params, + from, + to, + count, + skip + } }, callback); }, - fetch: function fetch(qrCodeId, callback) { - + fetch(qrCodeId, callback) { if (!qrCodeId) { - return Promise.reject("qrCode Id is mandatroy"); } - return api.get({ - url: BASE_URL + '/' + qrCodeId + url: `${BASE_URL}/${qrCodeId}` }, callback); }, - close: function close(qrCodeId, callback) { - + close(qrCodeId, callback) { if (!qrCodeId) { - return Promise.reject("qrCode Id is mandatroy"); } - - var url = BASE_URL + '/' + qrCodeId + '/close'; - + let url = `${BASE_URL}/${qrCodeId}/close`; return api.post({ - url: url + url }, callback); } }; diff --git a/dist/resources/refunds.js b/dist/resources/refunds.js index 9080a50a..81b472e0 100644 --- a/dist/resources/refunds.js +++ b/dist/resources/refunds.js @@ -1,79 +1,63 @@ 'use strict'; -var _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeNotes = _require.normalizeNotes; - +const { + normalizeDate, + normalizeNotes +} = require('../utils/razorpay-utils'); module.exports = function (api) { return { - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - payment_id = params.payment_id; - - var url = '/refunds'; - + all(params = {}, callback) { + let { + from, + to, + count, + skip, + payment_id + } = params; + let url = '/refunds'; if (payment_id) { - url = '/payments/' + payment_id + '/refunds'; + url = `/payments/${payment_id}/refunds`; } - if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ - url: url, + url, data: { - from: from, - to: to, - count: count, - skip: skip + from, + to, + count, + skip } }, callback); }, - edit: function edit(refundId, params, callback) { - var notes = params.notes; - - + edit(refundId, params, callback) { if (!refundId) { throw new Error('refund Id is mandatory'); } - - var data = Object.assign(normalizeNotes(notes)); - return api.patch({ - url: '/refunds/' + refundId, - data: data + url: `/refunds/${refundId}`, + data: params }, callback); }, - fetch: function fetch(refundId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - var payment_id = params.payment_id; - + fetch(refundId, params = {}, callback) { + let { + payment_id + } = params; if (!refundId) { throw new Error('`refund_id` is mandatory'); } - - var url = '/refunds/' + refundId; - + let url = `/refunds/${refundId}`; if (payment_id) { - url = '/payments/' + payment_id + url; + url = `/payments/${payment_id}${url}`; } - return api.get({ - url: url + url }, callback); } }; diff --git a/dist/resources/settlements.js b/dist/resources/settlements.js index f23fcee9..5a85e757 100644 --- a/dist/resources/settlements.js +++ b/dist/resources/settlements.js @@ -1,25 +1,9 @@ 'use strict'; -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var _require = require('../../dist/utils/razorpay-utils'), - normalizeBoolean = _require.normalizeBoolean; - -var _require2 = require('../utils/razorpay-utils'), - normalizeNotes = _require2.normalizeNotes; - module.exports = function (api) { - - var BASE_URL = "/settlements"; - + const BASE_URL = "/settlements"; return { - createOndemandSettlement: function createOndemandSettlement() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + createOndemandSettlement(params = {}, callback) { /* * Create on-demand settlement * @@ -29,26 +13,13 @@ module.exports = function (api) { * @return {Promise} */ - var url = BASE_URL + '/ondemand', - notes = params.notes, - settle_full_balance = params.settle_full_balance, - rest = _objectWithoutProperties(params, ['notes', 'settle_full_balance']); - - - var data = Object.assign(_extends({ - settle_full_balance: normalizeBoolean(settle_full_balance) - }, rest), normalizeNotes(notes)); - + let url = `${BASE_URL}/ondemand`; return api.post({ - url: url, - data: data + url, + data: params }, callback); }, - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + all(params = {}, callback) { /* * Fetch all settlements * @@ -58,25 +29,25 @@ module.exports = function (api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL; - - + let { + from, + to, + count, + skip + } = params, + url = BASE_URL; return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + url, + data: { + ...params, + from, + to, + count, + skip + } }, callback); }, - fetch: function fetch(settlementId, callback) { - + fetch(settlementId, callback) { /* * Fetch a settlement * @@ -87,20 +58,14 @@ module.exports = function (api) { */ if (!settlementId) { - return Promise.reject("settlement Id is mandatroy"); } - return api.get({ - url: BASE_URL + '/' + settlementId + url: `${BASE_URL}/${settlementId}` }, callback); }, - - fetchOndemandSettlementById: function fetchOndemandSettlementById(settlementId) { - var param = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - var expand = void 0; + fetchOndemandSettlementById: function fetchOndemandSettlementById(settlementId, param = {}, callback) { + let expand; /* * Fetch On-demand Settlements by ID * @@ -111,26 +76,21 @@ module.exports = function (api) { */ if (!settlementId) { - return Promise.reject("settlment Id is mandatroy"); } - if (param.hasOwnProperty("expand[]")) { - expand = { "expand[]": param["expand[]"] }; + expand = { + "expand[]": param["expand[]"] + }; } - return api.get({ - url: BASE_URL + '/ondemand/' + settlementId, + url: `${BASE_URL}/ondemand/${settlementId}`, data: { - expand: expand + expand } }, callback); }, - fetchAllOndemandSettlement: function fetchAllOndemandSettlement() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + fetchAllOndemandSettlement(params = {}, callback) { /* * Fetch all demand settlements * @@ -140,34 +100,32 @@ module.exports = function (api) { * @return {Promise} */ - var expand = void 0; - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL + '/ondemand'; - - + let expand; + let { + from, + to, + count, + skip + } = params, + url = `${BASE_URL}/ondemand`; if (params.hasOwnProperty("expand[]")) { - expand = { "expand[]": params["expand[]"] }; + expand = { + "expand[]": params["expand[]"] + }; } - return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip, - expand: expand - }) + url, + data: { + ...params, + from, + to, + count, + skip, + expand + } }, callback); }, - reports: function reports() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + reports(params = {}, callback) { /* * Settlement report for a month * @@ -177,19 +135,20 @@ module.exports = function (api) { * @return {Promise} */ - var day = params.day, - count = params.count, - skip = params.skip, - url = BASE_URL + '/recon/combined'; - - + let { + day, + count, + skip + } = params, + url = `${BASE_URL}/recon/combined`; return api.get({ - url: url, - data: _extends({}, params, { - day: day, - count: count, - skip: skip - }) + url, + data: { + ...params, + day, + count, + skip + } }, callback); } }; diff --git a/dist/resources/stakeholders.js b/dist/resources/stakeholders.js new file mode 100644 index 00000000..79fe2c1d --- /dev/null +++ b/dist/resources/stakeholders.js @@ -0,0 +1,53 @@ +'use strict'; + +module.exports = function (api) { + const BASE_URL = "/accounts"; + return { + create(accountId, params, callback) { + return api.post({ + version: 'v2', + url: `${BASE_URL}/${accountId}/stakeholders`, + data: params + }, callback); + }, + edit(accountId, stakeholderId, params, callback) { + return api.patch({ + version: 'v2', + url: `${BASE_URL}/${accountId}/stakeholders/${stakeholderId}`, + data: params + }, callback); + }, + fetch(accountId, stakeholderId, callback) { + return api.get({ + version: 'v2', + url: `${BASE_URL}/${accountId}/stakeholders/${stakeholderId}` + }, callback); + }, + all(accountId, callback) { + return api.get({ + version: 'v2', + url: `${BASE_URL}/${accountId}/stakeholders` + }, callback); + }, + uploadStakeholderDoc(accountId, stakeholderId, params, callback) { + let { + file, + ...rest + } = params; + return api.postFormData({ + version: 'v2', + url: `${BASE_URL}/${accountId}/stakeholders/${stakeholderId}/documents`, + formData: { + file: file.value, + ...rest + } + }, callback); + }, + fetchStakeholderDoc(accountId, stakeholderId, callback) { + return api.get({ + version: 'v2', + url: `${BASE_URL}/${accountId}/stakeholders/${stakeholderId}/documents` + }, callback); + } + }; +}; \ No newline at end of file diff --git a/dist/resources/subscriptions.js b/dist/resources/subscriptions.js index ebe799f9..e6199216 100644 --- a/dist/resources/subscriptions.js +++ b/dist/resources/subscriptions.js @@ -3,29 +3,14 @@ /* * DOCS: https://razorpay.com/docs/subscriptions/api/ */ - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var Promise = require("promise"), - _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeNotes = _require.normalizeNotes, - normalizeBoolean = _require.normalizeBoolean; - - +const { + normalizeDate +} = require('../utils/razorpay-utils'); module.exports = function subscriptionsApi(api) { - - var BASE_URL = "/subscriptions", - MISSING_ID_ERROR = "Subscription ID is mandatory"; - + const BASE_URL = "/subscriptions", + MISSING_ID_ERROR = "Subscription ID is mandatory"; return { - create: function create() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + create(params = {}, callback) { /* * Creates a Subscription * @@ -35,19 +20,13 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL, - notes = params.notes, - rest = _objectWithoutProperties(params, ["notes"]), - data = Object.assign(rest, normalizeNotes(notes)); - - + let url = BASE_URL; return api.post({ - url: url, - data: data + url, + data: params }, callback); }, - fetch: function fetch(subscriptionId, callback) { - + fetch(subscriptionId, callback) { /* * Fetch a Subscription given Subcription ID * @@ -58,16 +37,14 @@ module.exports = function subscriptionsApi(api) { */ if (!subscriptionId) { - return Promise.reject(MISSING_ID_ERROR); } - - var url = BASE_URL + "/" + subscriptionId; - - return api.get({ url: url }, callback); + let url = `${BASE_URL}/${subscriptionId}`; + return api.get({ + url + }, callback); }, - update: function update(subscriptionId, params, callback) { - + update(subscriptionId, params, callback) { /* * Update Subscription * @@ -77,20 +54,16 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + subscriptionId; - + let url = `${BASE_URL}/${subscriptionId}`; if (!subscriptionId) { - return Promise.reject(MISSING_ID_ERROR); } - return api.patch({ url: url, data: params }, callback); }, - pendingUpdate: function pendingUpdate(subscriptionId, callback) { - + pendingUpdate(subscriptionId, callback) { /* * Update a Subscription * @@ -100,17 +73,15 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + subscriptionId + "/retrieve_scheduled_changes"; - + var url = `${BASE_URL}/${subscriptionId}/retrieve_scheduled_changes`; if (!subscriptionId) { - return Promise.reject(MISSING_ID_ERROR); } - - return api.get({ url: url }, callback); + return api.get({ + url + }, callback); }, - cancelScheduledChanges: function cancelScheduledChanges(subscriptionId, callback) { - + cancelScheduledChanges(subscriptionId, callback) { /* * Cancel Schedule * @@ -121,22 +92,15 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + subscriptionId + "/cancel_scheduled_changes"; - + var url = `${BASE_URL}/${subscriptionId}/cancel_scheduled_changes`; if (!subscriptionId) { - return Promise.reject("Subscription Id is mandatory"); } - return api.post({ url: url }, callback); }, - pause: function pause(subscriptionId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + pause(subscriptionId, params = {}, callback) { /* * Pause a subscription * @@ -147,23 +111,16 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + subscriptionId + "/pause"; - + var url = `${BASE_URL}/${subscriptionId}/pause`; if (!subscriptionId) { - return Promise.reject("Subscription Id is mandatory"); } - return api.post({ url: url, data: params }, callback); }, - resume: function resume(subscriptionId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + resume(subscriptionId, params = {}, callback) { /* * resume a subscription * @@ -174,20 +131,16 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + subscriptionId + "/resume"; - + var url = `${BASE_URL}/${subscriptionId}/resume`; if (!subscriptionId) { - return Promise.reject("Subscription Id is mandatory"); } - return api.post({ url: url, data: params }, callback); }, - deleteOffer: function deleteOffer(subscriptionId, offerId, callback) { - + deleteOffer(subscriptionId, offerId, callback) { /* * Delete an Offer Linked to a Subscription * @@ -198,22 +151,15 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + subscriptionId + "/" + offerId; - + var url = `${BASE_URL}/${subscriptionId}/${offerId}`; if (!subscriptionId) { - return Promise.reject("Subscription Id is mandatory"); } - return api.delete({ - url: url + url }, callback); }, - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - + all(params = {}, callback) { /* * Get all Subscriptions * @@ -223,39 +169,33 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - url = BASE_URL; - - + let { + from, + to, + count, + skip + } = params, + url = BASE_URL; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ - url: url, - data: _extends({}, params, { - from: from, - to: to, - count: count, - skip: skip - }) + url, + data: { + ...params, + from, + to, + count, + skip + } }, callback); }, - cancel: function cancel(subscriptionId) { - var cancelAtCycleEnd = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - var callback = arguments[2]; - - + cancel(subscriptionId, cancelAtCycleEnd = false, callback) { /* * Cancel a subscription given id and optional cancelAtCycleEnd * @@ -266,24 +206,20 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + subscriptionId + "/cancel"; - + const url = `${BASE_URL}/${subscriptionId}/cancel`; if (!subscriptionId) { - return Promise.reject(MISSING_ID_ERROR); } - - if (typeof cancelAtCycleEnd !== "boolean") { - - return Promise.reject("The second parameter, Cancel at the end of cycle" + " should be a Boolean"); - } - - return api.post(_extends({ - url: url - }, cancelAtCycleEnd && { data: { cancel_at_cycle_end: 1 } }), callback); + return api.post({ + url, + ...(cancelAtCycleEnd && { + data: { + cancel_at_cycle_end: 1 + } + }) + }, callback); }, - createAddon: function createAddon(subscriptionId, params, callback) { - + createAddon(subscriptionId, params, callback) { /* * Creates addOn for a given subscription * @@ -294,29 +230,18 @@ module.exports = function subscriptionsApi(api) { * @return {Promise} */ - var url = BASE_URL + "/" + subscriptionId + "/addons"; - + const url = `${BASE_URL}/${subscriptionId}/addons`; if (!subscriptionId) { - return Promise.reject(MISSING_ID_ERROR); } - return api.post({ - url: url, - data: _extends({}, params) + url, + data: { + ...params + } }, callback); }, - - createRegistrationLink: function createRegistrationLink() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - var email_notify = params.email_notify, - sms_notify = params.sms_notify, - receipt = params.receipt, - notes = params.notes, - otherParams = _objectWithoutProperties(params, ["email_notify", "sms_notify", "receipt", "notes"]); - + createRegistrationLink: function createRegistrationLink(params = {}, callback) { /* * Creates a Registration Link * @@ -325,16 +250,9 @@ module.exports = function subscriptionsApi(api) { * * @return {Promise} */ - - var data = Object.assign(_extends({ - email_notify: normalizeBoolean(email_notify), - sms_notify: normalizeBoolean(sms_notify), - receipt: receipt - }, otherParams), normalizeNotes(notes)); - return api.post({ - url: 'subscription_registration/auth_links', - data: data + url: '/subscription_registration/auth_links', + data: params }, callback); } }; diff --git a/dist/resources/tokens.js b/dist/resources/tokens.js new file mode 100644 index 00000000..37666e9f --- /dev/null +++ b/dist/resources/tokens.js @@ -0,0 +1,34 @@ +'use strict'; + +const { + normalizeNotes +} = require('../utils/razorpay-utils'); +module.exports = function (api) { + const BASE_URL = "/tokens"; + return { + create(params, callback) { + return api.post({ + url: `${BASE_URL}`, + data: params + }, callback); + }, + fetch(params, callback) { + return api.post({ + url: `${BASE_URL}/fetch`, + data: params + }, callback); + }, + delete(params, callback) { + return api.post({ + url: `${BASE_URL}/delete`, + data: params + }, callback); + }, + processPaymentOnAlternatePAorPG(params, callback) { + return api.post({ + url: `${BASE_URL}/service_provider_tokens/token_transactional_data`, + data: params + }, callback); + } + }; +}; \ No newline at end of file diff --git a/dist/resources/transfers.js b/dist/resources/transfers.js index 6ffe79bb..66c501c2 100644 --- a/dist/resources/transfers.js +++ b/dist/resources/transfers.js @@ -1,116 +1,79 @@ "use strict"; -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeBoolean = _require.normalizeBoolean, - normalizeNotes = _require.normalizeNotes; - +const { + normalizeDate +} = require('../utils/razorpay-utils'); module.exports = function (api) { return { - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - payment_id = params.payment_id, - recipient_settlement_id = params.recipient_settlement_id; - - var url = '/transfers'; - + all(params = {}, callback) { + let { + from, + to, + count, + skip, + payment_id, + recipient_settlement_id + } = params; + let url = '/transfers'; if (payment_id) { - url = '/payments/' + payment_id + '/transfers'; + url = `/payments/${payment_id}/transfers`; } - if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ - url: url, + url, data: { - from: from, - to: to, - count: count, - skip: skip, - recipient_settlement_id: recipient_settlement_id + from, + to, + count, + skip, + recipient_settlement_id } }, callback); }, - fetch: function fetch(transferId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - var payment_id = params.payment_id; - + fetch(transferId, params = {}, callback) { + let { + payment_id + } = params; if (!transferId) { throw new Error('`transfer_id` is mandatory'); } - - var url = '/transfers/' + transferId; - + let url = `/transfers/${transferId}`; return api.get({ - url: url + url }, callback); }, - create: function create(params, callback) { - var notes = params.notes, - rest = _objectWithoutProperties(params, ['notes']); - - var data = Object.assign(rest, normalizeNotes(notes)); - - if (data.on_hold) { - data.on_hold = normalizeBoolean(data.on_hold); - } - + create(params, callback) { return api.post({ url: '/transfers', - data: data + data: params }, callback); }, - edit: function edit(transferId, params, callback) { - var notes = params.notes, - rest = _objectWithoutProperties(params, ['notes']); - - var data = Object.assign(rest, normalizeNotes(notes)); - - if (typeof data.on_hold !== "undefined") { - data.on_hold = normalizeBoolean(data.on_hold); - } - + edit(transferId, params, callback) { return api.patch({ - url: '/transfers/' + transferId, - data: data + url: `/transfers/${transferId}`, + data: params }, callback); }, - reverse: function reverse(transferId, params, callback) { + reverse(transferId, params, callback) { if (!transferId) { throw new Error('`transfer_id` is mandatory'); } - - var notes = params.notes, - rest = _objectWithoutProperties(params, ['notes']); - - var data = Object.assign(rest, normalizeNotes(notes)); - var url = '/transfers/' + transferId + '/reversals'; - + let url = `/transfers/${transferId}/reversals`; return api.post({ - url: url, - data: data + url, + data: params }, callback); }, - fetchSettlements: function fetchSettlements(callback) { + fetchSettlements(callback) { return api.get({ - url: 'transfers?expand[]=recipient_settlement' + url: `/transfers?expand[]=recipient_settlement` }, callback); } }; diff --git a/dist/resources/virtualAccounts.js b/dist/resources/virtualAccounts.js index cc14ca0c..d8cfeb68 100644 --- a/dist/resources/virtualAccounts.js +++ b/dist/resources/virtualAccounts.js @@ -1,114 +1,74 @@ "use strict"; -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } - -var Promise = require("promise"); - -var _require = require('../utils/razorpay-utils'), - normalizeDate = _require.normalizeDate, - normalizeNotes = _require.normalizeNotes; - -var BASE_URL = '/virtual_accounts', - ID_REQUIRED_MSG = "`virtual_account_id` is mandatory"; - +const { + normalizeDate, + normalizeNotes +} = require('../utils/razorpay-utils'); +const BASE_URL = '/virtual_accounts', + ID_REQUIRED_MSG = "`virtual_account_id` is mandatory"; module.exports = function (api) { return { - all: function all() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - var from = params.from, - to = params.to, - count = params.count, - skip = params.skip, - otherParams = _objectWithoutProperties(params, ["from", "to", "count", "skip"]); - - var url = BASE_URL; - + all(params = {}, callback) { + let { + from, + to, + count, + skip, + ...otherParams + } = params; + let url = BASE_URL; if (from) { from = normalizeDate(from); } - if (to) { to = normalizeDate(to); } - count = Number(count) || 10; skip = Number(skip) || 0; - return api.get({ - url: url, - data: _extends({ - from: from, - to: to, - count: count, - skip: skip - }, otherParams) + url, + data: { + from, + to, + count, + skip, + ...otherParams + } }, callback); }, - fetch: function fetch(virtualAccountId, callback) { - + fetch(virtualAccountId, callback) { if (!virtualAccountId) { - return Promise.reject(ID_REQUIRED_MSG); } - - var url = BASE_URL + "/" + virtualAccountId; - + let url = `${BASE_URL}/${virtualAccountId}`; return api.get({ - url: url + url }, callback); }, - create: function create() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var callback = arguments[1]; - - var notes = params.notes, - rest = _objectWithoutProperties(params, ["notes"]); - - var data = Object.assign(rest, normalizeNotes(notes)); - + create(params = {}, callback) { return api.post({ url: BASE_URL, - data: data + data: params }, callback); }, - close: function close(virtualAccountId, callback) { - + close(virtualAccountId, callback) { if (!virtualAccountId) { - return Promise.reject(ID_REQUIRED_MSG); } - - var data = { - status: 'closed' - }; - - return api.patch({ - url: BASE_URL + "/" + virtualAccountId, - data: data + return api.post({ + url: `${BASE_URL}/${virtualAccountId}/close` }, callback); }, - fetchPayments: function fetchPayments(virtualAccountId, callback) { - + fetchPayments(virtualAccountId, callback) { if (!virtualAccountId) { - return Promise.reject(ID_REQUIRED_MSG); } - - var url = BASE_URL + "/" + virtualAccountId + "/payments"; - + let url = `${BASE_URL}/${virtualAccountId}/payments`; return api.get({ - url: url + url }, callback); }, - addReceiver: function addReceiver(virtualAccountId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + addReceiver(virtualAccountId, params = {}, callback) { /* * Add Receiver to an Existing Virtual Account * @@ -119,20 +79,14 @@ module.exports = function (api) { */ if (!virtualAccountId) { - return Promise.reject(ID_REQUIRED_MSG); } - return api.post({ - url: BASE_URL + "/" + virtualAccountId + "/receivers", + url: `${BASE_URL}/${virtualAccountId}/receivers`, data: params }, callback); }, - allowedPayer: function allowedPayer(virtualAccountId) { - var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var callback = arguments[2]; - - + allowedPayer(virtualAccountId, params = {}, callback) { /* * Add an Allowed Payer Account * @param {Object} params @@ -142,17 +96,14 @@ module.exports = function (api) { */ if (!virtualAccountId) { - return Promise.reject(ID_REQUIRED_MSG); } - return api.post({ - url: BASE_URL + "/" + virtualAccountId + "/allowed_payers", + url: `${BASE_URL}/${virtualAccountId}/allowed_payers`, data: params }, callback); }, - deleteAllowedPayer: function deleteAllowedPayer(virtualAccountId, allowedPayerId, callback) { - + deleteAllowedPayer(virtualAccountId, allowedPayerId, callback) { /* * Delete an Allowed Payer Account * @param {String} virtualAccountId @@ -163,17 +114,13 @@ module.exports = function (api) { */ if (!virtualAccountId) { - return Promise.reject(ID_REQUIRED_MSG); } - if (!allowedPayerId) { - return Promise.reject("allowed payer id is mandatory"); } - return api.delete({ - url: BASE_URL + "/" + virtualAccountId + "/allowed_payers/" + allowedPayerId + url: `${BASE_URL}/${virtualAccountId}/allowed_payers/${allowedPayerId}` }, callback); } }; diff --git a/dist/resources/webhooks.js b/dist/resources/webhooks.js new file mode 100644 index 00000000..9b4c390a --- /dev/null +++ b/dist/resources/webhooks.js @@ -0,0 +1,83 @@ +'use strict'; + +const { + normalizeDate +} = require('../utils/razorpay-utils'); +module.exports = function (api) { + const BASE_URL = "/accounts"; + return { + create(params, accountId, callback) { + let payload = { + url: '/webhooks', + data: params + }; + if (accountId) { + payload = { + version: 'v2', + url: `${BASE_URL}/${accountId}/webhooks`, + data: params + }; + } + return api.post(payload, callback); + }, + edit(params, webhookId, accountId, callback) { + if (accountId && webhookId) { + return api.patch({ + version: 'v2', + url: `${BASE_URL}/${accountId}/webhooks/${webhookId}`, + data: params + }, callback); + } + return api.put({ + url: `/webhooks/${webhookId}`, + data: params + }, callback); + }, + all(params = {}, accountId, callback) { + let { + from, + to, + count, + skip + } = params; + if (from) { + from = normalizeDate(from); + } + if (to) { + to = normalizeDate(to); + } + count = Number(count) || 10; + skip = Number(skip) || 0; + let data = { + ...params, + from, + to, + count, + skip + }; + if (accountId) { + return api.get({ + version: 'v2', + url: `${BASE_URL}/${accountId}/webhooks/`, + data: data + }, callback); + } + return api.get({ + url: `/webhooks`, + data: data + }, callback); + }, + fetch(webhookId, accountId, callback) { + return api.get({ + version: 'v2', + url: `${BASE_URL}/${accountId}/webhooks/${webhookId}` + }, callback); + }, + delete(webhookId, accountId, callback) { + return api.delete({ + version: 'v2', + url: `${BASE_URL}/${accountId}/webhooks/${webhookId}` + }, callback); + } + }; +}; \ No newline at end of file diff --git a/dist/types/accounts.d.ts b/dist/types/accounts.d.ts new file mode 100644 index 00000000..2d7a0063 --- /dev/null +++ b/dist/types/accounts.d.ts @@ -0,0 +1,295 @@ +import { IMap, INormalizeError, PartialOptional, RazorpayPaginationOptions } from "./api"; +import * as fs from 'fs'; + +export declare namespace Accounts { + interface RazorpayAccountBaseRequestBody { + /** + * The sub-merchant's business email address. + */ + email: string; + /** + * The business details of the sub-merchant's account + */ + profile: Profile; + /** + * The sub-merchant's business phone number. The minimum length is 8 characters and the maximum length is 15. + */ + phone: string | number; + /** + * The account type. Possible value is standard + */ + type?: string; + /** + * The type of business operated by the sub-merchant. + */ + business_type: string; + /** + * Partner's external account reference id. The minimum length is 1 character and the maximum length is 512. + */ + reference_id?: string; + /** + * The name of the sub-merchant's business. For example, Acme Corp. The minimum length is 4 characters and the maximum length is 200. + */ + legal_business_name: string; + /** + * The sub-merchant billing label as it appears on the Razorpay Dashboard. The minimum length is 1 character and the maximum length is 255. + */ + customer_facing_business_name?: string; + /** + * The legal details about the sub-merchant's business. + */ + legal_info?: { + /** + * Valid PAN number details of the sub-merchant's business. + */ + pan?: string; + /** + * Valid GSTIN number details of the sub-merchant. + */ + gst?: string; + /** + * CIN is for Private Limited and Public Limited, whereas LLPIN is for LLP business type. + */ + cin?: string; + } + /** + * The website/app details of the sub-merchant's business. + */ + apps?: { + /** + * The websites for the sub-merchant's business. A minimum of 1 website is required. + */ + websites: string[]; + /** + * Android app details + */ + android: AppDetails[]; + /** + * iOS app details + */ + ios: AppDetails[]; + } + /** + * The branding details of the sub-merchant's business. + */ + brand?: { + /** + * The color code of sub-merchant's business brand. This is a 6-character hex code (Regex: [a-fA-F0-9]{6}). + */ + color?: string; + } + /** + * The name of the contact. The minimum length is 4 and the maximum length is 255 characters. + */ + contact_name: string; + /** + * Options available for contact support + */ + contact_info?: ContactInfoSupport; + /** + * Contains user-defined fields stored by the partner for reference purposes. + */ + notes?: IMap; + } + + type AppDetails = { + url: string; + name: string; + } + + interface Profile { + /** + * The business category of the sub-merchant. + */ + category?: string; + /** + * The business sub-category of the sub-merchant. + */ + subcategory?: string; + /** + * This parameter has been deprecated. Pass the description using the `business_model` parameter. + */ + description?: string; + /** + * Details of sub-merchant's address. + */ + addresses?: { + /** + * Details of the sub-merchant's registered address. + */ + registered?: ProfileAddresses; + /** + * Details of the sub-merchant's operational address. + */ + operation?: ProfileAddresses; + } + /** + * The business description. The character limit between 1-255 characters. + */ + business_model?: string; + } + + interface ProfileAddresses { + /** + * Address, line 1. The maximum length is 100 characters. + */ + street1: string; + /** + * Address, line 2. The maximum length is 100 characters. + */ + street2: string; + /** + * The city. The maximum length is 100 characters. + */ + city: string; + /** + * The state. The minimum length is 2 and the maximum length is 32. + */ + state: string; + /** + * The postal code. This should be exactly 6 characters. + */ + postal_code: number | string; + /** + * he country. The minimum length is 2 and the maximum length is 64. This can either be a country + * code in capital letters or the full name of the country in lower case letters. + */ + country: string; + } + + interface ContactInfoSupport { + /** + * The type of contact support. + */ + chargeback?: SupportType; + /** + * The type of contact support. + */ + refund?: SupportType; + /** + * The type of contact support. + */ + support?: SupportType; + } + + type SupportType = { + /** + * The email id of chargeback POC. + */ + email?: string; + /** + * The phone number of chargeback POC + */ + phone?: string; + /** + * The URL of chargeback policy. + */ + policy_url?: string; + } + + interface RazorpayAccountCreateRequestBody extends RazorpayAccountBaseRequestBody { } + + interface RazorpayAccountUpdateRequestBody extends Partial> { } + + interface RazorpayAccount extends RazorpayAccountBaseRequestBody { + /** + * The unique identifier of the account. + */ + id: string; + /** + * Unix timestamp that indicates when the merchant account was activated. This parameter has null value till the account is activated. + */ + activated_at: number; + /** + * Indicates the payments acceptance status of the merchant account. + */ + live: boolean; + /** + * Indicates the settlements status of the merchant account. + */ + hold_funds: boolean; + /** + * The status of the account. + */ + status: string; + /** + * Unix timestamp, when the account was created. + */ + created_at: number; + } + + interface FileCreateParams { + file: { + value: fs.ReadStream; + options: { + filename: string; + contentType: string | null; + }; + }; + document_type: string; + } + + interface RazorpayAccountDocuments { + business_proof_of_identification: [ + { + type: string; + url: string; + } + ] + } +} + +declare function accounts(api: any): { + /** + * Creates a account + * + * @param params - Check [doc](https://razorpay.com/docs/api/partners/account-onboarding#create-an-account) for required params + * + */ + create(params: Accounts.RazorpayAccountCreateRequestBody): Promise + create(params: Accounts.RazorpayAccountCreateRequestBody, callback: (err: INormalizeError | null, data: Accounts.RazorpayAccount) => void): void; + /** + * Fetches a account given Account ID + * + * @param accountId - The unique identifier of the account. + * + */ + fetch(accountId: string): Promise + fetch(accountId: string, callback: (err: INormalizeError | null, data: Accounts.RazorpayAccount) => void): void; + /** + * Update an account + * + * @param accountId - The unique identifier of the account. + * @param params - Check [doc](https://razorpay.com/docs/api/partners/account-onboarding#update-an-account) for required params + * + */ + edit(accountId: string, params: Accounts.RazorpayAccountUpdateRequestBody): Promise + edit(accountId: string, params: Accounts.RazorpayAccountUpdateRequestBody, callback: (err: INormalizeError | null, data: Accounts.RazorpayAccount) => void): void; + /** + * Delete an account + * + * @param accountId - The unique identifier of the account. + * + */ + delete(accountId: string): Promise + delete(accountId: string, callback: (err: INormalizeError | null, data: Promise) => void): void; + /** + * Upload account documents + * + * @param accountId - The unique identifier of the account. + * @param params - Check [doc](https://razorpay.com/docs/api/partners/upload-document#request-parameters) for required params + * + */ + uploadAccountDoc(accountId: string, params: Accounts.FileCreateParams): Promise + uploadAccountDoc(accountId: string, params: Accounts.FileCreateParams, callback: (err: INormalizeError | null, data: Accounts.RazorpayAccountDocuments) => void): void; + /** + * Fetches account documents + * + * @param accountId - The unique identifier of the account. + * + */ + fetchAccountDoc(accountId: string): Promise + fetchAccountDoc(accountId: string, callback: (err: INormalizeError | null, data: Accounts.RazorpayAccountDocuments) => void): void; +} + +export default accounts \ No newline at end of file diff --git a/dist/types/addons.d.ts b/dist/types/addons.d.ts new file mode 100644 index 00000000..8df072f0 --- /dev/null +++ b/dist/types/addons.d.ts @@ -0,0 +1,72 @@ +import API, { INormalizeError, RazorpayPaginationOptions } from './api' +import { Items } from './items'; + +export declare namespace Addons { + interface RazorpayAddon { + /** + * The unique identifier of the created add-on. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * Details of the created add-on. + */ + item: Items.RazorpayItem; + /** + * This specifies the number of units of the add-on to be charged to the customer. For example, `2`. The total amount is calculated as `amount` * `quantity`. + */ + quantity: number; + /** + * The Unix timestamp, indicates when the add-on was created. For example, `1581597318`. + */ + created_at: number; + /** + * The unique identifier of the Subscription to which the add-on is being added. + */ + subscription_id: string; + /** + * The add-on is added to the next invoice that is generated after it is created. This field is populated only after the invoice is generated. Until then, it is `null`. Once the add-on is linked to an invoice, it cannot be deleted. + */ + invoice_id: string; + } +} + + +declare function addons(api: API): { + /** + * Fetches an addon given Addon ID + * + * @param addonId - addon id to be fetched + * + */ + fetch(addonId: string): Promise + fetch(addonId: string, callback: (err: INormalizeError | null, data: Addons.RazorpayAddon) => void): void; + /** + * Delete a addon given Addon ID + * + * @param addonId - addon id to be fetched + * + */ + delete(addonId: string): Promise<[]> + delete(addonId: string, callback: (err: INormalizeError | null, data: []) => void): void; + /** + * Get all addons + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#fetch-all-add-ons) for required params + * + */ + all(params?: RazorpayPaginationOptions): Promise<{ + entity: string, + count: number, + items: Array + }>; + all(params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void +}; +export default addons; diff --git a/dist/types/api.d.ts b/dist/types/api.d.ts new file mode 100644 index 00000000..813ebb4e --- /dev/null +++ b/dist/types/api.d.ts @@ -0,0 +1,93 @@ +import nodeify from '../utils/nodeify' + + +interface IOption { + key_id?: string; + key_secret?: string; + headers?: RazorpayHeaders; + oauthToken?: string; + hostUrl: string; + ua: string; +} + +interface IPayload { + url: string; + data?: T; + formData?: T; + qs?: T; + form?: T; + body?: T; +} + +export type INotify = 'email' | 'sms' + +export interface RazorpayHeaders { + 'X-Razorpay-Account'?: string; + 'Content-Type'?: string; +} + +/** + * Key-value pairs + */ +export interface IMap { + [key: string]: T | null; +} + +export type PartialOptional = Omit & Partial> + +export interface RazorpayPaginationOptions { + /** + * The Unix timestamp from when data are to be fetched + */ + from?: number; + /** + * The Unix timestamp till when data are to be fetched. + */ + to?: number; + /** + * The number of data to be fetched. Default value is `10`. Maximum value is `100`. + * This can be used for pagination, in combination with skip. + */ + count?: number; + /** + * The number of data to be skipped. Default value is `0`. + * This can be used for pagination, in combination with count. + */ + skip?: number; +} + +export interface INormalizeError { + statusCode: string | number; + error: { + code: string; + description: string; + field?: any; + source?: string; + step?: string; + reason?: string; + metadata?: { [key: string]: string }; + } +} + +declare class API { + constructor(options: IOption) + get(params: IPayload): Promise + get(params: IPayload, callback: (err: INormalizeError, data: V) => void): void + + post(params: IPayload): Promise + post(params: IPayload, callback: (err: INormalizeError, data: V) => void): void + + put(params: IPayload): Promise + put(params: IPayload, callback: (err: INormalizeError, data: V) => void): void + + patch(params: IPayload): Promise + patch(params: IPayload, callback: (err: INormalizeError, data: V) => void): void + + postFormData(params: IPayload): Promise + postFormData(params: IPayload, callback: (err: INormalizeError, data: V) => void): void + + delete(params: IPayload): Promise + delete(params: IPayload, callback: (err: INormalizeError, data: V) => void): void +} + +export default API \ No newline at end of file diff --git a/dist/types/cards.d.ts b/dist/types/cards.d.ts new file mode 100644 index 00000000..f49cfa1d --- /dev/null +++ b/dist/types/cards.d.ts @@ -0,0 +1,60 @@ +import { Payments } from "./payments"; +import { INormalizeError } from "./api"; + +export declare namespace Cards { + interface RazorpayCardReferenceNumberBaseRequest { + /** + * The tokenised card number whose PAR or network reference id should be retrieved. + */ + number: string; + /** + * Determines if the card is saved as a token. possible value is `true` or `false` + */ + tokenised?: boolean; + } + + interface RazorpayCardReferenceTokenBaseRequest { + /** + * The token whose PAR or network reference id should be retrieved. + */ + token: string; + } + + interface RazorpayCardReference { + /** + * The card network. + */ + network?: Network; + payment_account_reference: string | null; + network_reference_id: string | null; + card_reference_number?: string | null; + provider: string; + } + + type Network = + | 'Mastercard' + | 'RuPay' + | 'Visa' +} + +declare function cards(api: any): { + /** + * Fetch a card given a Card ID + * + * @param cardId - The unique identifier of the card + * + */ + fetch(cardId: string): Promise + fetch(cardId: string, callback: (err: INormalizeError | null, data: Payments.RazorpayCard) => void): void + /** + * Retrieve the card reference number for a specific card: + * + * @param params - The card/token number whose PAR or network reference id should be retrieved. + * + */ + requestCardReference(params: Cards.RazorpayCardReferenceNumberBaseRequest | Cards.RazorpayCardReferenceTokenBaseRequest): Promise + requestCardReference(params: Cards.RazorpayCardReferenceNumberBaseRequest | Cards.RazorpayCardReferenceTokenBaseRequest, callback: (err: INormalizeError | null, data: Cards.RazorpayCardReference) => void): void + +} + +export default cards \ No newline at end of file diff --git a/dist/types/customers.d.ts b/dist/types/customers.d.ts new file mode 100644 index 00000000..c18d5c68 --- /dev/null +++ b/dist/types/customers.d.ts @@ -0,0 +1,248 @@ +import { IMap, INormalizeError, RazorpayPaginationOptions } from "./api"; +import { Invoices } from "./invoices"; +import { Tokens } from "./tokens"; +import { VirtualAccounts } from "./virtualAccounts" + +export declare namespace Customers { + interface RazorpayCustomerBaseRequestBody { + /** + * Customer's name. Alphanumeric value with period (.), apostrophe (') + * and parentheses are allowed. The name must be between 3-50 characters + * in length. For example, `Gaurav Kumar`. + */ + name?: string; + /** + * The customer's email address. A maximum length of 64 characters. + * For example, `gaurav.kumar@example.com`. + */ + email?: string; + /** + * The customer's phone number. A maximum length of 15 characters including country code + */ + contact?: string | number; + /** + * `0`: If a customer with the same details already exists, fetches details of the existing customer. + * + * `1` (default): If a customer with the same details already exists, throws an error. + */ + fail_existing?: boolean | 0 | 1; + /** + * Customer's GST number, if available + */ + gstin?: string | null; + /** + * This is a key-value pair that can be used to store additional information about the entity + */ + notes?: IMap; + } + + interface RazorpayCustomerCreateRequestBody extends RazorpayCustomerBaseRequestBody { } + + interface RazorpayCustomerUpdateRequestBody extends Partial> { } + + interface RazorpayCustomer extends RazorpayCustomerBaseRequestBody { + /** + * The unique identifier of the customer. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * Unix timestamp, when the customer was created. + */ + created_at: number; + /** + * Details of the customer's shipping address. + */ + shipping_address?: Invoices.RazorpayInvoiceAddress[]; + } + + interface RazorpayCustomerBankAccountRequestBody { + /** + * The IFSC code of the bank branch associated with the account. + */ + ifsc_code: string; + /** + * Customer's bank account number. + */ + account_number: string; + /** + * The name of the beneficiary associated with the bank account. + */ + beneficiary_name?: string; + /** + * The virtual payment address. + */ + beneficiary_address1?: string; + beneficiary_address2?: string; + beneficiary_address3?: string; + beneficiary_address4?: string; + /** + * Email address of the beneficiary. For example, `gaurav.kumar@example.com`. + */ + beneficiary_email?: string; + /** + * Mobile number of the beneficiary. + */ + beneficiary_mobile?: string; + /** + * The name of the city of the beneficiary. + */ + beneficiary_city?: string; + /** + * The state of the beneficiary. + */ + beneficiary_state?: string; + /** + * The country of the beneficiary. + */ + beneficiary_country?: string; + /** + * The pin code of the beneficiary's address. + */ + beneficiary_pin?: string; + } + + interface RazorpayCustomerBankAccount extends Partial{ + success?: string; + } + + interface CustomersEligibility { + id: string; + contact: string; + ip: string; + referrer: string; + user_agent: string; + } + + interface RazorpayCustomerEligibilityRequestBody { + inquiry?: string; + amount: number | string; + currency: string; + customer: Partial; + } + + interface Instruments { + method: string; + issuer: string; + type: string; + provider: string; + eligibility_req_id: string; + eligibility: { + status: string; + error: Omit + } + } + + interface RazorpayCustomerEligibility extends RazorpayCustomerEligibilityRequestBody { + instruments? : Array + } +} + +declare function customers(api: any): { + /** + * Creates a customer + * + * @param params - Check [doc](https://razorpay.com/docs/api/customers/#create-a-customer) for required params + * + */ + create(params: Customers.RazorpayCustomerCreateRequestBody): Promise + create(params: Customers.RazorpayCustomerCreateRequestBody, callback: (err: INormalizeError | null, data: Customers.RazorpayCustomer) => void): void; + /** + * Get all customers + * + * @param params - Check [doc](https://razorpay.com/docs/api/customers/#fetch-all-customers) for required params + * + */ + all(params?: RazorpayPaginationOptions): Promise<{ + entity: string, + count: number, + items: Array + }> + all(params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void; + /** + * Fetches a customer given Customer ID + * + * @param customerId - The unique identifier of the customer. + * + */ + fetch(customerId: string): Promise + fetch(customerId: string, callback: (err: INormalizeError | null, data: Customers.RazorpayCustomer) => void): void; + /** + * Edit a customer given Customer ID + * + * @param customerId - The unique identifier of the customer. + * @param params - Check [doc](https://razorpay.com/docs/api/customers/#edit-customer-details) for required params + * + */ + edit(customerId: string, params: Customers.RazorpayCustomerUpdateRequestBody): Promise + edit(customerId: string, params: Customers.RazorpayCustomerUpdateRequestBody, callback: (err: INormalizeError | null, data: Customers.RazorpayCustomer) => void): void; + /** + * Fetch tokens by customerId + * + * @param customerId - The unique identifier of the customer. + * + */ + fetchTokens(customerId: string): Promise<{ + entity: string, + count: number; + items: Array + }> + fetchTokens(customerId: string, callback: (err: INormalizeError | null, data: { + entity: string, + count: number; + items: Array + }) => void): void; + /** + * Fetch particular token + * + * @param customerId - The unique identifier of the customer. + * @param tokenId - The unique identifier of the token. + * + */ + fetchToken(customerId: string, tokenId: string): Promise + fetchToken(customerId: string, tokenId: string, callback: (err: INormalizeError | null, data: Tokens.RazorpayToken) => void): void; + /** + * Delete a token + * + * @param customerId - The unique identifier of the customer. + * @param tokenId - The unique identifier of the token. + * + */ + deleteToken(customerId: string, tokenId: string): Promise<{ deleted: boolean }> + deleteToken(customerId: string, tokenId: string, callback: (err: INormalizeError | null, data: { deleted: boolean }) => void): void; + /** + * Add Bank Account of Customer + * + * @param customerId - The unique identifier of the customer. + * @param param - Check [doc](https://razorpay.com/docs/api/customers/bank-accounts/#1-add-bank-account-of-customer) for required params + */ + addBankAccount(customerId: string, params: Customers.RazorpayCustomerBankAccountRequestBody): Promise + /** + * Delete Bank Account of Customer + * + * @param customerId - The unique identifier of the customer. + * @param bankAccountId - The bank_id that needs to be deleted. + */ + deleteBankAccount(customerId: string, bankAccountId: string): Promise + /** + * Eligibility Check API + * + * @param param - Check [doc](https://razorpay.com/docs/payments/payment-gateway/affordability/eligibility-check/#eligibility-check-api) for required params + */ + requestEligibilityCheck(param: Customers.RazorpayCustomerEligibilityRequestBody): Promise> + /** + * Fetch Eligibility by id + * + * @param eligibilityId - The unique identifier of the eligibility request to be retrieved. + */ + fetchEligibility(eligibilityId: string): Promise> +} + +export default customers \ No newline at end of file diff --git a/dist/types/disputes.d.ts b/dist/types/disputes.d.ts new file mode 100644 index 00000000..28b92cb7 --- /dev/null +++ b/dist/types/disputes.d.ts @@ -0,0 +1,185 @@ +import { IMap, INormalizeError, PartialOptional, RazorpayPaginationOptions } from "./api"; + +export declare namespace Disputes { + interface RazorpayDisputesBaseRequestBody { + + } + + interface RazorpayDisputesContestBaseRequestBody { + /** + * The contested amount in currency subunits + */ + amount: number; + /** + * The explanation provided by you for contesting the dispute. max length 1000 char + */ + summary: string; + /** + * List of document ids which serves as proof that the product was shipped to the + * customer at their provided address. + */ + shipping_proof: string[]; + /** + * List of document ids which serves as proof of order confirmation, such as a receipt. + */ + billing_proof: string[]; + /** + * List of document ids that serves as proof that this product/service was cancelled. + */ + cancellation_proof: string[]; + /** + * List of document ids listing any written/email communication from the customer + * confirming that the customer received the product/service or is satisfied with the + * product/service. + */ + customer_communication: string[]; + /*** + * List of document ids showing proof of service provided to the customer. + */ + proof_of_service: string[]; + explanation_letter: string[]; + /** + * List of document ids showing proof that the refund had been provided to the customer. + */ + refund_confirmation: string[]; + /** + * List of document ids of any server or activity logs which prove that the customer accessed + * or downloaded the purchased digital product. + */ + access_activity_log: string[]; + /** + * List of document ids listing your refund and/or cancellation policy, as shown to the customer. + */ + refund_cancellation_policy: string[]; + /** + * List of document ids listing your sales terms and conditions, as shown to the customer. + */ + term_and_conditions: string[]; + /** + * Specifies the evidence documents to be uploaded as a part of contesting a dispute. + */ + others: { + /** + * Describes the custom type of evidence document(s) provided. + */ + type: string + /** + * List of document ids corresponding to the customer evidence type. + */ + document_ids: string[] + }[] + /** + * The action to be taken for this contest. Possible value is `draft` or `submit`. + */ + action: string; + /** + * Unix timestamp when the dispute was last submitted by you to Razorpay. The default value is `null`. + */ + submitted_at: any; + } + + interface RazorpayDisputesContest { + + } + + interface RazorpayDisputeEvidence extends RazorpayDisputesContestBaseRequestBody{} + + interface RazorpayDispute { + /** + * The unique identifier of the dispute generated by Razorpay + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * The unique identifier of the payment against which the dispute was created. + */ + payment_id: string; + /** + * Amount, in currency subunits, for which the dispute was created. + */ + amount: number; + /** + * 3-letter ISO currency code associated with the amount. + */ + currency: string; + /** + * The amount, in currency subunits, deducted from your Razorpay current + * balance when the dispute is `lost`. + */ + amount_deducted: number; + /** + * Code associated with the reason for the dispute. + */ + reason_code: string; + /** + * Unix timestamp by which a response should be sent to the customer. + */ + respond_by: number; + /** + * The status of the dispute. + */ + status: string; + /** + * Phase associated with the dispute + */ + phase: string; + /** + * Unix timestamp when the dispute was created. + */ + created_at: number; + /** + * Provides details of the evidence submitted/saved for contesting a + * dispute. + */ + evidence: RazorpayDisputeEvidence; + } +} + +declare function disputes(api: any): { + /** + * Fetches a dispute given Dispute ID + * + * @param disputeId - The unique identifier of the dispute. + * + */ + fetch(disputeId: string): Promise + fetch(disputeId: string, callback: (err: INormalizeError | null, data: Disputes.RazorpayDispute) => void): void; + /** + * Get all disputes + * + * @param params - Check [doc](https://razorpay.com/docs/api/disputes/fetch-all) for required params + * + */ + all(params?: RazorpayPaginationOptions): Promise<{ + entity: string, + count: number, + items: Array + }> + all(params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void; + /** + * Update an account + * + * @param disputeId - The unique identifier of the dispute. + * + */ + accept(disputeId: string): Promise + accept(disputeId: string, callback: (err: INormalizeError | null, data: Disputes.RazorpayDispute) => void): void; + /** + * Contest a dispute + * + * @param disputeId - The unique identifier of the dispute. + * @param params - Check [doc](https://razorpay.com/docs/api/disputes/contest) for required params + * + */ + contest(accountId: string, param: Partial): Promise + contest(accountId: string, param: Partial, callback: (err: INormalizeError | null, data: Promise) => void): void; +} + +export default disputes \ No newline at end of file diff --git a/dist/types/documents.d.ts b/dist/types/documents.d.ts new file mode 100644 index 00000000..83d6a50a --- /dev/null +++ b/dist/types/documents.d.ts @@ -0,0 +1,67 @@ +import { INormalizeError } from "./api"; +import * as fs from "fs" + +export declare namespace Documents { + + interface FileCreateParams { + file: { + value: fs.ReadStream; + options?: { + filename?: string; + contentType?: string | null; + }; + }; + purpose: string; + } + + interface RazorpayDocument { + /** + * The unique identifier of the document. + */ + id: string + /** + * Indicates the type of entity. + */ + entity: string + /** + * The reason you are uploading this document. possible value is `dispute_evidence`. + */ + purpose: string + name: string + /** + * Indicates the nature and format in which the document is uploaded. + * possible value is `image/jpg`, `image/jpeg`, `image/png`, `application/pdf` + * + */ + mime_type: string + /** + * Indicates the size of the document in bytes. + */ + size: number + /** + * Unix timestamp at which the document was uploaded. + */ + created_at: number + } + +} + +declare function documents(api: any): { + /** + * Create a Document + * + * @param params - Check [doc](https://razorpay.com/docs/api/documents/create/) for required params + * + */ + create(params: Documents.FileCreateParams): Promise + create(params: Documents.FileCreateParams, callback: (err: INormalizeError | null, data: Documents.RazorpayDocument) => void): void; + /** + * Fetch document by id + * + * @param documentId - The unique identifier of the document + * + */ + fetch(documentId: string): Promise +} + +export default documents \ No newline at end of file diff --git a/dist/types/fundAccount.d.ts b/dist/types/fundAccount.d.ts new file mode 100644 index 00000000..3b6db312 --- /dev/null +++ b/dist/types/fundAccount.d.ts @@ -0,0 +1,108 @@ +import { IMap, INormalizeError } from "./api"; + +export declare namespace FundAccounts { + interface RazorpayFundAccountBaseRequestBody { + /** + * This is the unique ID linked to a customer. + * For example, `cust_Aa000000000001`. + */ + customer_id: string; + /** + * Data type `string`. The type of account to be linked to the customer ID. + * In this case it will be `bank_account`. + */ + account_type: string; + /** + * Customer bank account details. + */ + bank_account: RazorpayBankAccountBaseRequestBody; + } + + interface RazorpayFundAccountCreateRequestBody extends RazorpayFundAccountBaseRequestBody { } + + interface RazorpayBankAccountBaseRequestBody { + /** + * Data type string. Name of account holder as per bank records. + * For example, `Gaurav Kumar`. + */ + name: string; + /** + * Data type string. Beneficiary account number. + * For example, `11214311215411`. + */ + account_number: string | number; + /** + * Data type string. Customer's bank IFSC. + * For example, `HDFC0000053`. + */ + ifsc: string; + } + + interface RazorpayBankAccount extends RazorpayBankAccountBaseRequestBody { + /** + * Customer's bank name + */ + bank_name: string; + /** + * Key-value pair that can be used to store additional information about the entity. + * Maximum 15 key-value pairs, 256 characters (maximum) each. + */ + notes: IMap | []; + } + + interface RazorpayFundAccount extends Omit { + /** + * The unique ID linked to the fund account. + */ + id: string, + /** + * Indicates the type of entity. + */ + entity: string, + batch_id: string | null, + /** + * Customer bank account details. + */ + bank_account: RazorpayBankAccount; + /** + * Data type string. Status of the fund account + */ + active: boolean, + /** + * The time at which the account was created at Razorpay. + * The output for this parameter is date and time in the Unix format + */ + created_at: number + } +} + + +declare function fundAccount(api: any): { + /** + * Create a Fund Account + * + * @param params - Check [doc](https://razorpay.com/docs/payments/customers/customer-fund-account-api/#create-a-fund-account) for required params + * + */ + create(params: FundAccounts.RazorpayFundAccountCreateRequestBody): Promise + create(params: FundAccounts.RazorpayFundAccountCreateRequestBody, callback: (err: INormalizeError | null, data: FundAccounts.RazorpayFundAccount) => void): void; + /** + * Fetch all Fund Accounts + * + * @param customerId - The unique identifier of the customer + * + */ + fetch(customerId: string): Promise<{ + entity: string; + count: number; + items: Array; + }> + fetch(customerId: string, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array; + }) => void): void + +} + +export default fundAccount \ No newline at end of file diff --git a/dist/types/iins.d.ts b/dist/types/iins.d.ts new file mode 100644 index 00000000..0c8f970c --- /dev/null +++ b/dist/types/iins.d.ts @@ -0,0 +1,123 @@ +import { INormalizeError } from "./api"; + +export declare namespace Iins { + interface RazorpayIin { + /** + * The Issuer Identification Number (IIN). The starting 6 digits of credit or debit card number. + */ + iin: string; + /** + * The name of the entity + */ + entity: string; + /** + * The card network + */ + network: Network | null; + /** + * The card type for the given IIN. The card payment pricing may differ based on the card type. + */ + type: CardType | null; + /** + * The card sub-type for the given IIN. The card payment pricing may differ based on the card sub-type. + */ + sub_type: subType | null; + /** + * The 4-character issuer code unique to each issuing bank in India. For example, `SBIN`. + */ + issuer_code: string; + /** + * The name of the issuing bank. Available for cards issued in India only. For example, `State Bank of India`. + */ + issuer_name: string; + /** + * Determines whether the card is international (issued outside India) or domestic. + * + * `true`: Card issued outside India. + * + * `false`: Card issued within India. + */ + international: boolean; + is_tokenized: boolean; + card_iin: string | null; + /** + * A JSON object which provides information about the applicability of EMI on the IIN. + */ + emi: { + /** + * Determines whether the card is eligible for EMI payments or not. Possible values `true` or `false` + */ + available: boolean; + } + /** + * A JSON object which provides information about the applicability of recurring payments on the IIN. + */ + recurring: { + /** + * Determines whether the card is eligible for recurring payments or not. Possible values `true` or `false` + */ + available: boolean; + } + /** + * Array which lists the possible authentication types for which the IIN is eligible + * + * `type: 3ds`: Indicates that the card IIN supports normal 3ds payments. + * + * `type: otp`: Indicates that the card IIN supports native OTP payments. Native OTP gives you flexibility to + * accept the OTP entered by the cardholder on your screen. + */ + authentication_types: { + type: string; + }[] + } + + type Network = + | 'Visa' + | 'RuPay' + | 'MasterCard' + | 'American Express' + | 'Diners Club' + | 'Bajaj Finserv' + | 'Maestro' + | 'JCB' + | 'Union Pay' + | 'Unknown' + + type CardType = + | 'credit' + | 'debit' + | 'prepaid' + | 'unknown' + + type subType = + | 'consumer' + | 'business' + | 'unknown' + + type ListType = {flow: string;} | {sub_type: string;} + + interface RazorpayIinList { + count: number; + iins : string[]; + } +} + +declare function iins(api: any): { + /** + * Fetch the properties of the card using token IIN + * + * @param accountId - The token IIN. + * + */ + fetch(tokenIin: string): Promise + fetch(tokenIin: string, callback: (err: INormalizeError | null, data: Iins.RazorpayIin) => void): void; + /** + * Fetch all IINs supporting `native otp` or `business sub-type` + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/cards/iin-api/#fetch-all-iins-supporting-native-otp) for required params + */ + all(params: Iins.ListType): Promise + all(params: Iins.ListType, callback: (err: INormalizeError | null, data: Iins.RazorpayIinList) => void): void; +} + +export default iins \ No newline at end of file diff --git a/dist/types/invoices.d.ts b/dist/types/invoices.d.ts new file mode 100644 index 00000000..ed94d94b --- /dev/null +++ b/dist/types/invoices.d.ts @@ -0,0 +1,404 @@ +import { IMap, INormalizeError, INotify, RazorpayPaginationOptions } from './api' +import { Items } from './items'; +import { Tokens } from './tokens'; + +export declare namespace Invoices { + + interface RazorpayInvoiceBaseRequestBody { + /** + * Indicates the type of entity. Here, it is `invoice`. + */ + type: 'invoice' | 'link'; + /** + * A brief description of the invoice. + */ + description?: string | null; + /** + * Invoice is created in `draft` state when value is set to `1`. + */ + draft?: string; + date?: number | null; + /** + * You can pass the customer_id in this field, if you are using the + * [Customers API](https://razorpay.com/docs/api/customers/). + * If not, you can pass the customer object described in the below fields. + */ + customer_id?: string; + /** + * The currency associated with the invoice. + */ + currency?: string; + /** + * Customer details. + */ + customer?: RazorpayCustomerDetailsBaseRequestBody; + /** + * The unique identifier of the order associated with the invoice. + */ + order_id?: string; + /** + * Details of the line item that is billed in the invoice. + * Maximum of 50 line items. + */ + line_items: RazorpayLineItemsBaseRequestBody[]; + /** + * Timestamp, in Unix format, at which the invoice will expire. + */ + expire_by?: number | null; + /** + * Defines who handles the SMS notification. `1` (default) + */ + sms_notify?: boolean | 0 | 1; + /** + * Defines who handles the email notification. `1` (default) + */ + email_notify?: boolean | 0 | 1; + /** + * Indicates whether the customer can make a partial payment on the invoice. `false` (default) + */ + partial_payment?: boolean | 0 | 1; + /** + * Any custom notes added to the invoice. Maximum of 2048 characters. + */ + notes?: IMap; + /** + * The unique receipt number that you entered for internal purposes. + */ + receipt?: string | null; + /** + * Amount to be paid using the invoice + */ + amount?: number | string; + } + + interface RazorpayInvoiceAddressBaseRequestBody { + /** + * The first line of the customer's address. + */ + line1: string; + /** + * The second line of the customer's address. + */ + line2?: string; + /** + * The zipcode + */ + zipcode: string | number; + /** + * The city + */ + city: string; + /** + * The state + */ + state?: string; + /** + * The country + */ + country: string; + } + + interface RazorpayInvoiceAddress extends RazorpayInvoiceAddressBaseRequestBody { + id: string; + type: string; + primary: boolean; + contact: string | null; + name: string | null; + tag: string | null; + landmark: string | null; + } + + interface RazorpayCustomerDetailsBaseRequestBody { + /** + * Customer's name. Alphanumeric, with period (.),apostrophe (') and + * parentheses allowed. The name must be between 3-50 characters in + * length. For example, Gaurav Kumar. + */ + name?: string | null; + /** + * The customer's email address. A maximum length of 64 characters. + * For example, `gaurav.kumar@example.com`. + */ + email?: string | null; + /** + * The customer's phone number. A maximum length of + * 15 characters including country code. + */ + contact?: string | number | null; + /** + * Details of the customer's billing address. + */ + billing_address?: RazorpayInvoiceAddressBaseRequestBody; + /** + * Details of the customer's shipping address. + */ + shipping_address?: RazorpayInvoiceAddressBaseRequestBody; + } + + interface RazorpayCustomerDetails extends Omit { + /** + * Unique identifier of the customer + */ + id?: string; + /** + * GST number linked to the customer. + */ + gstin?: string | null; + /** + * The customer's name. + */ + customer_name?: string | null; + /** + * The customer's email address. + */ + customer_email?: string | null; + /** + * The customer's contact number. + */ + customer_contact?: string | null; + /** + * Details of the customer's billing address. + */ + billing_address?: RazorpayInvoiceAddress; + /** + * Details of the customer's shipping address. + */ + shipping_address?: RazorpayInvoiceAddress; + } + + interface RazorpayInvoiceCreateRequestBody extends RazorpayInvoiceBaseRequestBody { } + + interface RazorpayInvoiceUpdateRequestBody extends Partial { } + + interface RazorpayLineItemsBaseRequestBody extends Partial { + /** + * Unique identifier that is generated if a new item has been created while creating the invoice. + */ + id?: string; + /** + * Unique identifier of the item generated using Items API that has been billed in the invoice. + */ + item_id?: string; + /** + * The quantity of the item billed in the invoice. Defaults to `1`. + */ + quantity?: number; + } + + interface RazorpayLineItems extends Items.RazorpayItem { + item_id?: string; + ref_id: string | null; + ref_type: string | null; + gross_amount: number | null; + tax_amount: number | null; + taxable_amount: number | null; + net_amount: number | null; + taxes: any[]; + quantity: number; + } + + interface RazorpayInvoice extends RazorpayInvoiceBaseRequestBody { + /** + * The unique identifier of the invoice. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * Unique number you added for internal reference. + * The minimum character length is 1 and maximum is 40. + */ + invoice_number: string; + /** + * Details of the customer. + */ + customer_details: RazorpayCustomerDetails; + /** + * Details of the line item that is billed in the invoice. + * Maximum of 50 line items. + */ + line_items: RazorpayLineItems[]; + /** + * Unique identifier of a payment made against this invoice. + */ + payment_id?: string | null; + /** + * Timestamp, in Unix format, at which the invoice was issued to the customer. + */ + issued_at?: number | null; + /** + * Timestamp, in Unix format, at which the payment was made. + */ + paid_at?: number | null; + /** + * Timestamp, in Unix format, at which the invoice was cancelled. + */ + cancelled_at?: number | null; + /** + * Timestamp, in Unix format, at which the invoice expired. + */ + expired_at?: number | null; + /** + * The delivery status of the SMS notification for the invoice + * sent to the customer. + */ + sms_status?: 'pending' | 'sent' | null; + /** + * The delivery status of the email notification for the invoice + * sent to the customer. + */ + email_status?: 'pending' | 'sent' | null; + gross_amount?: number; + tax_amount?: number; + taxable_amount?: number; + /** + * The status of the invoice. Know more about + * [Invoice States](https://razorpay.com/docs/payments/invoices/states) +. + */ + status?: + | 'draft' + | 'issued' + | 'partially_paid' + | 'paid' + | 'cancelled' + | 'cancelled' + | 'expired' + | 'deleted'; + /** + * Amount paid by the customer against the invoice. + */ + amount_paid?: number; + /** + * The remaining amount to be paid by the customer for the issued invoice. + */ + amount_due?: number; + /** + * The short URL that is generated. Share this link with customers to accept payments. + */ + short_url?: string | null; + currency_symbol?: string | null; + billing_start?: number | null; + billing_end?: number | null; + group_taxes_discounts?: boolean; + terms?: number | null; + comment?: number | null; + /** + * Timestamp, in Unix format, at which the invoice was cancelled. + */ + created_at: number; + view_less?: boolean; + idempotency_key?: any + ref_num?: any; + /** + * Details related to the authorization transaction such as max amount and bank + * account information. Pass a value in the `first_payment_amount` parameter + * if you want to auto-charge the customer the first payment immediately + * after authorization. + */ + token?: Tokens.RazorpayAuthorizationToken; + } + + interface RazorpayInvoiceQuery extends RazorpayPaginationOptions { + type?: string; + /** + * The unique identifier of the payment made by the customer against the invoice. + */ + payment_id?: string; + /** + * The unique receipt number that you entered for internal purposes. + */ + receipt?: string; + /** + * The unique identifier of the customer. When used, + * fetches all invoices generated for a customer. + */ + customer_id?: string; + /** + * The unique identifier linked to the Subscription. + */ + subscription_id?: string; + } +} + +declare function invoices(api: any): { + /** + * Creates a invoice + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/invoices/#create-an-invoice) for required params + * + */ + create(params: Invoices.RazorpayInvoiceCreateRequestBody): Promise + create(params: Invoices.RazorpayInvoiceCreateRequestBody, callback: (err: INormalizeError | null, data: Invoices.RazorpayInvoice) => void): void; + /** + * Get all invoices + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/invoices/#fetch-multiple-invoices) for required params + * + */ + all(params?: Invoices.RazorpayInvoiceQuery): Promise<{ + entity: string; + count: number; + items: Array; + }> + all(params: Invoices.RazorpayInvoiceQuery, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Fetches a invoice given Invoice ID + * + * @param invoiceId - The unique identifier of the invoice + * + */ + fetch(invoiceId: string): Promise + fetch(invoiceId: string, callback: (err: INormalizeError | null, data: Invoices.RazorpayInvoice) => void): void; + /** + * Edit a invoice given Invoice ID + * + * @param invoiceId - The unique identifier of the invoice + * @param params - Check [doc](https://razorpay.com/docs/api/payments/invoices/#update-an-invoice) for required params + * + */ + edit(invoiceId: string, params: Invoices.RazorpayInvoiceUpdateRequestBody): Promise + edit(invoiceId: string, params: Invoices.RazorpayInvoiceUpdateRequestBody, callback: (err: INormalizeError | null, data: Invoices.RazorpayInvoice) => void): void; + + /** + * Issue an invoice + * + * @param invoiceId - The unique identifier of the invoice + * + */ + issue(invoiceId: string): Promise + issue(invoiceId: string, callback: (err: INormalizeError | null, data: Invoices.RazorpayInvoice) => void): void; + /** + * Delete an invoice + * + * @param invoiceId - The unique identifier of the invoice + * + */ + delete(invoiceId: string): Promise<[]> + delete(invoiceId: string, callback: (err: INormalizeError | null, data: []) => void): void; + /** + * Cancel an invoice + * + * @param invoiceId - The unique identifier of the invoice + * + */ + cancel(invoiceId: string): Promise + cancel(invoiceId: string, callback: (err: INormalizeError | null, data: Invoices.RazorpayInvoice) => void): void; + /** + * Send notification + * + * @param invoiceId - The unique identifier of the invoice + * @param medium - Possible values: `sms`, `email` + * + */ + notifyBy(invoiceId: string, medium: INotify): Promise<{ success: boolean }> + notifyBy(invoiceId: string, medium: INotify, callback: (err: INormalizeError | null, data: { success: boolean }) => void): void; +} + +export default invoices \ No newline at end of file diff --git a/dist/types/items.d.ts b/dist/types/items.d.ts new file mode 100644 index 00000000..9597fbde --- /dev/null +++ b/dist/types/items.d.ts @@ -0,0 +1,155 @@ +import { RazorpayPaginationOptions, INormalizeError } from "./api"; + +export declare namespace Items { + interface RazorpayItemBaseRequestBody { + /** + * A name for the item. For example, `Extra appala (papadum)`. + */ + name: string; + /** + * The amount you want to charge the customer for the item, in the currency subunit. For example, `30000`. + */ + amount: number | string; + /** + * The currency in which the customer should be charged for the item. For example, `INR`. + */ + currency: string; + /** + * Description for the item. For example, `1 extra oil fried appala with meals` + */ + description?: string; + } + + interface RazorpayItemCreateRequestBody extends RazorpayItemBaseRequestBody { } + + interface RazorpayItemUpdateRequestBody extends Partial { + /** + * Indicates the status of the item. Possible values : + * `true` - Item is in `active` state + * `false` - Item is in `inactive` state. By + * default, the item is in `active` state. + */ + active?: boolean; + } + + interface RazorpayItem extends RazorpayItemBaseRequestBody { + /** + * The unique identifier of the item. + */ + id: string; + /** + * The per unit billing amount for each individual unit. + */ + unit_amount: number; + /** + * Here, it must be `invoice` + */ + type: string; + /** + * The number of units of the item billed in the invoice. + */ + unit: number | null; + /** + * Indicates whether the base amount includes tax. + * + * `true`: The base amount includes tax. + * + * `false`: The base amount does not include tax. By default, the value is set to `false`. + */ + tax_inclusive: boolean; + /** + * The 8-digit code used to classify the product as per the Harmonised System of Nomenclature. + */ + hsn_code: number | null; + /** + * The 6-digit code used to classify the service as per the Services Accounting Code. + */ + sac_code: number | null; + /** + * The percentage at which an individual or a corporation is taxed. + */ + tax_rate: number | null; + /** + * The identification number that gets displayed on invoices issued to the customer. + */ + tax_id: string | null; + /** + * The identification number for the tax group. A tax group is a collection of taxes + * that can be applied as a single set of rules. + */ + tax_group_id: string | null; + /** + * Unix timestamp, at which the item was created. For example, `1649843796`. + */ + created_at: number; + /** + * Unix timestamp, at which the item was updated. + */ + updated_at: number; + /** + * Indicates the status of the item. Possible values : + * `true` - Item is in `active` state + * `false` - Item is in `inactive` state. By + * default, the item is in `active` state. + */ + active: boolean; + } + + interface RazorpayItemQuery extends RazorpayPaginationOptions { + active?: number; + } +} + +declare function items(api: any): { + /** + * Create an Item + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/items#create-an-item) for required params + * + */ + create(params: Items.RazorpayItemCreateRequestBody): Promise + create(params: Items.RazorpayItemCreateRequestBody, callback: (err: INormalizeError | null, data: Items.RazorpayItem) => void): void; + /** + * Get all Items + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/items#fetch-multiple-items) for required params + * + */ + all(params?: Items.RazorpayItemQuery): Promise<{ + entity: string, + count: number, + items: Array + }>; + all(params: Items.RazorpayItemQuery, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Fetch a item given Item ID + * + * @param itemId - The unique identifier of the item. + * + */ + fetch(itemId: string): Promise + fetch(itemId: string, callback: (err: INormalizeError | null, data: Items.RazorpayItem) => void): void; + /** + * Edit a items given Item ID + * + * @param itemId - The unique identifier of the item. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/items#update-an-item) for required params + * + */ + edit(itemId: string, params: Items.RazorpayItemUpdateRequestBody): Promise + edit(itemId: string, params: Items.RazorpayItemUpdateRequestBody, callback: (err: INormalizeError | null, data: Items.RazorpayItem) => void): void; + /** + * Delete a item given Item ID + * + * @param itemId - The unique identifier of the item. + * + */ + delete(itemId: string): Promise<[]> + delete(itemId: string, callback: (err: INormalizeError | null, data: []) => void): void; +} + +export default items \ No newline at end of file diff --git a/dist/types/orders.d.ts b/dist/types/orders.d.ts new file mode 100644 index 00000000..21b6c2ee --- /dev/null +++ b/dist/types/orders.d.ts @@ -0,0 +1,510 @@ +import { Invoices } from './invoices' +import { IMap, RazorpayPaginationOptions, INormalizeError } from './api' +import { FundAccounts } from './fundAccount' +import { Payments } from './payments' +import { Tokens } from './tokens' +import { Transfers } from './transfers' + +export declare namespace Orders { + + interface RazorpayOrderBankDetailsBaseRequestBody { + /** + * The bank account number from which the customer should make the payment. + * For example, `765432123456789` + */ + account_number: string | number; + /** + * The bank IFSC. For example, `HDFC0000053` + */ + ifsc: string; + } + + interface RazorpayOrderBankDetailsCreateRequestBody extends RazorpayOrderBankDetailsBaseRequestBody { + /** + * The name linked to the bank account. For example, Gaurav Kumar. + */ + name: string; + } + + + interface RazorpayOrderBaseRequestBody { + /** + * The amount for which the order was created, in currency subunits. + * For example, for an amount of ₹295, enter 29500 + */ + amount: number | string; + /** + * ISO code for the currency in which you want to accept the payment. + */ + currency: string; + /** + * Receipt number that corresponds to this order, set for your internal reference. + * Can have a maximum length of 40 characters and has to be unique. + */ + receipt?: string; + /** + * The unique identifier of the offer that is linked to the Subscription. + * You can obtain this from the Dashboard. + * For example, `offer_JHD834hjbxzhd38d` + */ + offer_id?: string | null; + /** + * The payment method used to make the payment. If this parameter is not passed, + * customers will be able to make payments using both netbanking and UPI payment methods + */ + method?: 'netbanking' | 'upi' | 'card' | 'emandate' | 'nach'; + /** + * Details of the bank account that the customer has provided at the time of registration. + */ + bank_account?: RazorpayOrderBankDetailsCreateRequestBody; + /** + * Key-value pair that can be used to store additional information about the entity. + * Maximum 15 key-value pairs, 256 characters (maximum) each. + */ + notes?: IMap; + /** + * Indicates whether the customer can make a partial payment. Possible values: + * `true` The customer can make partial payments. + * `false` (default) : The customer cannot make partial payments. + */ + partial_payment?: boolean; + /** + * Minimum amount that must be paid by the customer as the first partial payment. + * For example, if an amount of ₹7,000 is to be received from the customer in + * two installments of #1 - ₹5,000, #2 - ₹2,000, then you can set this value as 500000. + * This parameter should be passed only if partial_payment is true. + */ + first_payment_min_amount?: number; + /** + * Payment capture settings for the payment. The options sent here override the account + * level [auto-capture settings]( https://razorpay.com/docs/payments/payments/capture-settings) configured using the Dashboard. + */ + payment?: RazorpayCapturePayment; + /** + * Identifier to mark the order eligible for RTO risk prediction. + */ + rto_review?: boolean; + /** + * This will have the details about the specific items added to the cart. + */ + line_items?: LineItems[]; + /** + * Sum of `offer_price` for all line items added in the cart in paise. + */ + line_items_total?: number | string; + shipping_fee?: number; + cod_fee?: number; + /** + * Details of the customer. + */ + customer_details?: CustomerDetails; + /** + * Details of the customer's billing address. + */ + promotions?: Promotion[]; + /** + * Details of the customer. + */ + device_details?: DeviceDetails; + phonepe_switch_context? :string; + } + + interface RazorpayOrderCreateRequestBody extends RazorpayOrderBaseRequestBody { } + + interface RazorpayTransferCreateRequestBody extends Pick { + /** + * Details regarding the transfer. + */ + transfers: Transfers.RazorpayOrderCreateRequestBody[]; + } + + interface RazorpayAuthorizationCreateRequestBody extends Omit { + /** + * Determines whether tha payment status should be changed to captured automatically or not. + * `true`: Payments are captured automatically. + * `false`: Payments are not captured automatically. + */ + payment_capture?: boolean; + /** + * The unique identifier of the customer. + */ + customer_id: string; + /** + * Details related to the authorization such as max amount, + * frequency and expiry information. + */ + token: Tokens.RazorpayTokenCard | Tokens.RazorpayTokenEmandate | Tokens.RazorpayTokenNach; + } + + interface RazorpayOrderUpdateRequestBody extends Pick { } + + interface RazorpayOrder extends Omit { + /** + * The unique identifier of the order + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * The amount paid against the order. + */ + amount_paid: number; + /** + * The amount pending against the order. + */ + amount_due: number, + /** + * The status of the order. + */ + status: 'created' | 'attempted' | 'paid'; + /** + * The number of payment attempts, successful and failed, + * that have been made against this order. + */ + attempts: number; + /** + * Indicates the Unix timestamp when this order was created. + */ + created_at: number; + /** + * A description that appears on the hosted page. + * For example, `12:30 p.m. Thali meals (Gaurav Kumar)`. + */ + description: string; + /** + * Details related to the authorization such as max amount, + * frequency and expiry information. + */ + token: Tokens.RazorpayAuthorizationToken; + payments?: { [key:string] : string }; + offers?: { [key:string] : string }; + transfers?: {entity: string; count: string; items: Transfers.RazorpayTransfer[] } | Transfers.RazorpayTransfer[]; + } + + interface RazorpayOrderQuery extends RazorpayPaginationOptions { + /** + * Possible values: + * `1` : Retrieves Orders for which payments have been authorized. Payment and order states differ. + * `0` : Retrieves orders for which payments have not been authorized. + */ + authorized?: boolean | 1 | 0; + /** + * Retrieves the orders that contain the provided value for receipt. + */ + receipt?: string; + /** + * Used to retrieve additional information about the payment. + * Using this parameter will cause a sub-entity to be added to the response. + */ + 'expand[]'?: 'payments' | 'payments.card' | 'transfers' | 'virtual_account'; + } + + interface RazorpayBankAccountBaseRequestBody { + /** + * Name of the beneficiary. + */ + beneficiary_name: string; + beneficiary_mobile?: string; + /** + * Customer's bank account number. + */ + account_number: string | number; + /** + * Customer's bank account type. `savings`(default) + */ + account_type: 'savings' | 'current'; + /** + * Customer's bank IFSC. For example `UTIB0000001`. + */ + ifsc_code: string; + } + + interface RazorpayBankAccount extends Omit { + beneficiary_email: string; + } + + interface RazorpayCapturePayment { + /** + * Option to automatically capture payment + */ + capture: 'automatic' | 'manual'; + capture_options?: { + /** + * Time in minutes till when payments in the `authorized` + * state should be auto-captured. Minimum value `12` minutes. + * This parameter is mandatory only if the value of `capture` + * parameter is `automatic`. + */ + automatic_expiry_period: number; + /** + * Time in minutes till when you can manually + * capture payments in the `authorized` state. + */ + manual_expiry_period: number; + /** + * Refund speed for payments that were not + * captured (automatically or manually). + */ + refund_speed: 'optimum' | 'normal'; + } + } + + interface LineItems { + /** + * Defines the category type. Possible values is `mutual_funds` or `e-commerce` + */ + type: string; + /** + * Unique product id defined by you. + */ + sku: string; + /** + * Unique variant_id defined by you. + */ + variant_id: string; + /** + * Price of the product in paise. + */ + price: string; + /** + * Price charged to the customer in paise. + */ + offer_price: string; + /** + * The tax levied on the product. + */ + tax_amount: number; + /** + * Number of units added in the cart. + */ + quantity: number; + /** + * Name of the product. + */ + name: string; + /** + * Description of the product. + */ + description: string; + /** + * Weight of the product in grams. + */ + weight: string; + /** + * The dimensions of the product. + */ + dimensions: Dimensions; + /** + * URL of the product image. + */ + image_url: string; + /** + * URL of the product's listing page. + */ + product_url: string; + notes?: IMap; + } + + interface Dimensions { + length: string; + width: string; + height: string; + } + + interface Reason { + /** + * Id of the Offer. + */ + reason: string; + /** + * unique identifier for the RTO reason + */ + description: string; + /** + * Categorises the reason into a specific group. + */ + bucket: string; + } + + interface CustomerDetails { + /** + * Customer's name. + */ + name: string; + /** + * The customer's phone number. + */ + contact: string; + /** + * The customer's email address. + */ + email: string; + /** + * Details of the customer's shipping address. + */ + shipping_address: Partial; + /** + * Details of the customer's billing address. + */ + billing_address: Partial; + } + + interface Promotion { + /** + * Id of the Offer. + */ + reference_id: string; + /** + * Coupon code used to avail discount. + */ + code: string; + /** + * Type of Offer. Possible value is `coupon` or `offer` + */ + type: string; + /** + * The offer value that needs to be applied. + */ + value: number; + /** + * The type of value. Possible value is `fixed_amount` or `percentage` + */ + value_type: string; + /** + * Description of the promotion applied. + */ + description?: string; + } + + interface DeviceDetails { + /** + * Public IP Address of the device used to place the order. + */ + ip: string; + /** + * The user-agent header of the customer's browser. + */ + user_agent: string; + } + + interface RazorpayRtoReview { + /** + * Determines how risky the order is. Possible is `high`, `medium` or `low` + */ + risk_tier: string; + rto_reasons: Reason[]; + } + + interface RazorpayShipping { + waybill: string; + status?: string; + provider?: string; + } + + interface RazorpayFulFillmentBaseRequestBody { + /** + * Payment Method opted by the customer to complete the payment. + */ + payment_method?: string; + /** + * Contains the shipping data. + */ + shipping?: RazorpayShipping; + } + + interface RazorpayFulFillment extends RazorpayFulFillmentBaseRequestBody { + entity: string; + order_id: string; + } +} + +declare function orders(api: any): { + /** + * Creates a order + * + * @param params - Check [doc](https://razorpay.com/docs/api/orders/#create-an-order) for required params + * @see https://razorpay.com/docs/api/payments/recurring-payments/ + */ + create(params: Orders.RazorpayOrderCreateRequestBody | Orders.RazorpayTransferCreateRequestBody | Orders.RazorpayAuthorizationCreateRequestBody): Promise + create(params: Orders.RazorpayOrderCreateRequestBody | Orders.RazorpayTransferCreateRequestBody | Orders.RazorpayAuthorizationCreateRequestBody, callback: (err: INormalizeError | null, data: Orders.RazorpayOrder) => void): void; + /** + * Get all orders + * + * @param params + * + */ + all(params?: Orders.RazorpayOrderQuery): Promise<{ + entity: string; + count: number; + items: Array; + }> + all(params: Orders.RazorpayOrderQuery, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Fetches a order given Order ID + * + * @param orderId - The unique identifier of the order + * + */ + fetch(orderId: string): Promise + fetch(orderId: string, callback: (err: INormalizeError | null, data: Orders.RazorpayOrder) => void): void + /** + * Edit a order given Order ID + * + * @param orderId - The unique identifier of the order + * @param params - Check [doc](https://razorpay.com/docs/api/orders/#update-order) for required params + * + */ + edit(orderId: string, params: Orders.RazorpayOrderUpdateRequestBody): Promise + edit(orderId: string, params: Orders.RazorpayOrderUpdateRequestBody, callback: (err: INormalizeError | null, data: Orders.RazorpayOrder) => void): void + /** + * Fetch payments for an order + * + * @param orderId - The unique identifier of the order + * + */ + fetchPayments(orderId: string, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + fetchPayments(orderId: string): Promise<{ + entity: string, + count: number, + items: Array + }> + /** + * Fetch transfers for an order + * + * @param orderId - The unique identifier of the order + * + */ + fetchTransferOrder(orderId: string): Promise + fetchTransferOrder(orderId: string, callback: (err: INormalizeError | null, data: Orders.RazorpayOrder) => void): void + + /** + * View RTO/Risk Reasons + * + * @param orderId - The unique identifier of the order + * + */ + viewRtoReview(orderId: string): Promise + viewRtoReview(orderId: string, callback: (err: INormalizeError | null, data: Orders.RazorpayRtoReview) => void): void + + /** + * Update the Fulfillment Details + * + * @param orderId - The unique identifier of the order + * @param params - Check [doc](https://razorpay.com/docs/payments/magic-checkout/rto-intelligence/#step-3-update-the-fulfillment-details) for required params + * + */ + editFulfillment(orderId: string, param: Orders.RazorpayFulFillmentBaseRequestBody): Promise + editFulfillment(orderId: string, param: Orders.RazorpayFulFillmentBaseRequestBody, callback: (err: INormalizeError | null, data: any) => void): void +} + +export default orders \ No newline at end of file diff --git a/dist/types/paymentLink.d.ts b/dist/types/paymentLink.d.ts new file mode 100644 index 00000000..5a4cf2bd --- /dev/null +++ b/dist/types/paymentLink.d.ts @@ -0,0 +1,468 @@ +import { IMap, INormalizeError, INotify, RazorpayPaginationOptions, PartialOptional } from "./api"; +import { Customers } from "./customers"; +import { Transfers } from "./transfers"; + +export declare namespace PaymentLinks { + + interface RazorpayPaymentLinkBaseRequestBody { + /** + * Must be set to `true` for creating UPI Payment Link. + */ + upi_link?: boolean; + /** + * Amount to be paid using the Payment Link. Must be in the smallest unit of the currency. + * For example, if you want to receive a payment of ₹299.95, you must enter the value 29995. + */ + amount: number | string; + /** + * A three-letter ISO code for the currency in which you want to accept the payment. + * For example, `INR`. + */ + currency?: string; + /** + * Indicates whether customers can make partial payments using the Payment Link. + * + * `true`: Customer can make partial payments. + * + * `false` (default): Customer cannot make partial payments. + */ + accept_partial?: boolean; + expire_by?: number; + reference_id?: string; + /** + * Minimum amount, in currency subunits, that must be paid by the customer as the first partial payment. + * Default value is `100`. Default currency is `INR`. For example, if an amount of ₹7,000 is to be received + * from the customer in two installments of #1 - ₹5,000, #2 - ₹2,000, then you can set this value as `500000`. + * Must be passed along with accept_partial parameter. + */ + first_min_partial_amount?: number; + /** + * A brief description of the Payment Link. The maximum character limit supported is 2048. + */ + description?: string; + /** + * Customer details + */ + customer: Pick; + /** + * Defines who handles Payment Link notification. + */ + notify?: { + /** + * Defines who handles the email notification. + */ + email?: boolean; + /** + * Defines who handles the SMS notification. + */ + sms?: boolean; + whatsapp?: boolean; + }, + /** + * Used to send remindersfor the Payment Link. + */ + reminder_enable?: boolean; + /** + * Key-value pair that can be used to store additional information about the entity. + */ + notes?: IMap; + /** + * If specified, adds a redirect URL to the Payment Link. Once customers completes the payment, + * they are redirected to the specified URL. + */ + callback_url?: string; + /** + * If callback_url parameter is passed, callback_method must be passed with the value `get`. + */ + callback_method?: string; + } + + interface RazorpayPaymentLinkCreateRequestBody extends RazorpayPaymentLinkBaseRequestBody { } + + interface RazorpayPaymentLinkUpdateRequestBody extends Pick { } + + interface RazorpayPaymentLink extends RazorpayPaymentLinkBaseRequestBody { + /** + * Amount paid by the customer. + */ + amount_paid: number; + /** + * Timestamp, in Unix, at which the Payment Link was cancelled by you. + */ + cancelled_at: number; + /** + * Timestamp, in Unix, at which the Payment Link expired. + */ + expired_at: number; + /** + * The unique identifier of the Payment Link + */ + id: string; + /** + * Payment details such as amount, payment ID, Payment Link ID and more. + * This array gets populated only after the customer makes a payment. + * Until then, the value is `null`. + */ + payments: RazorpayPaymentBaseRequestBody | null; + reminders: { + status: string; + }; + /** + * The unique short URL generated for the Payment Link. + */ + short_url: string; + + source?: string; + source_id?: string; + /** + * Displays the current state of the Payment Link + */ + status: 'created' | 'partially_paid' | 'expired' | 'cancelled' | 'paid'; + /** + * Timestamp, in Unix, indicating when the Payment Link was updated. + */ + updated_at: number; + /** + * A unique identifier for the user role through which the Payment Link was created. + * For example, `HD1JAKCCPGDfRx`. + */ + user_id: string; + created_at: string; + } + + interface RazorpayPaymentBaseRequestBody { + /** + * The amount paid by the customer using the Payment Link. + */ + amount: string; + /** + * Timestamp, in Unix, indicating when the payment was made. + */ + created_at: string; + /** + * The payment method used to make the payment. + */ + method: 'card' | 'netbanking' | 'wallet' | 'emi' | 'upi' | 'bank_transfer'; + /** + * Unique identifier of the payment made against the Payment Link. + */ + payment_id: string; + /** + * Unique identifier of the Payment Link. For example, `plink_ERgihyaAAC0VNW` + */ + plink_id: string; + /** + * The payment state. + */ + status: 'captured' | 'failed'; + /** + * Timestamp, in Unix, indicating when the payment was updated. + */ + updated_at: number; + } + + interface RazorpayPaymentLinkAdvanceOption extends RazorpayPaymentLinkBaseRequestBody { + options: + | RazorpayTransferPayment + | RazorpayOffer + | RazorpayCustomizeCheckout + | RazorpayBankAccount + | RazorpayNetBankingPayment + } + + interface RazorpayBankAccount { + method?: string; + bank_account: { + account_number: string; + name: string; + ifsc: string; + } + /** + * Details of the products. + * Check [doc](https://razorpay.com/docs/api/orders/products/create-pl-with-details/) + */ + products: Products; + } + + interface Products { + type: string; + plan: string; + folio: string; + amount: string; + option: string; + scheme: string; + receipt: string; + mf_member_id: string; + mf_user_id: string; + mf_partner: string; + mf_investment_type: string; + mf_amc_code: string; + } + + interface RazorpayNetBankingPayment { + order: RazorpayBankAccount + } + + interface RazorpayTransferPayment { + /** + * Options to configure the transfer in the Payment Link. + * Parent parameter under which the order child parameter must be passed. + */ + order: { + /** + * Pass transfer details such as amount, account, linked account information and more + */ + transfers?: PartialOptional[]; + } + } + + interface RazorpayOffer { + /** + * Options to associate the offer_id with the Payment Link. + * Parent parameter under which the `order` child parameter must be passed. + */ + order: { + /** + * Unique identifier of the offer + */ + offers: string[]; + } + } + + interface RazorpayCustomizeCheckout { + checkout: + | RazorpayCheckoutDisplayPayment + | RazorpayCheckoutRenameLabels + | RazorpayCheckoutChangeBusinessName + | RazorpayCheckoutPrefillCard + | RazorpayCheckoutPrefillNetBanking + | RazorpayCheckoutPrefillWallet + | RazorpayCheckoutPrefillVpa + | RazorpayCheckoutPaymentMethod + | RazorpayCheckoutReadonly + | RazorpayCheckoutThematicChange + } + + interface RazorpayCheckoutDisplayPayment { + config: { + display: { + blocks: { + banks: { + name: string; + instruments: [ + { + method: string, + banks: string[] + } + ]; + }; + }; + sequence: string[]; + preferences: { + show_default_blocks: boolean; + }; + }; + }; + } + + interface RazorpayCheckoutRenameLabels { + /** + * Options to rename the labels for partial payment fields in the checkout form. + * Parent parameter under which the `checkout` and `partial_payment` child parameters + * must be passed. + */ + partial_payment: { + /** + * Changes the label for the `Minimum first amount` field. + */ + min_amount_label: string; + /** + * Changes the label for the `Make payment in parts` field. + */ + partial_amount_label: string; + /** + * Changes the label for the `Pay some now and the remaining later` field. + */ + partial_amount_description: string; + /** + * Changes the label for the `Pay in full` field. + */ + full_amount_label: string; + } + } + + interface RazorpayCheckoutChangeBusinessName { + /** + * Used to change the business name that appears on the Checkout section + * of the Payment Link's payment request page. + */ + name?: string; + description?: string; + } + + interface RazorpayCheckoutPrefillCard { + /** + * Prefills the payment method and related details on Checkout. + */ + prefill: { + /** + * Pre-selection of the payment method for the customer. + * Will only work if contact and email are also pre-filled + */ + method?: 'card' | 'netbanking' | 'wallet' | 'upi'; + /** + * The name of the owner, who owns the card. + * This is usually found printed in front of the card. + */ + 'card[name]': string; + /** + * Unformatted card number. This should be 16 digits in total. + */ + 'card[number]': string; + /** + * Expiry month and year for card. This should be in MM/YY format. + */ + 'card[expiry]': string; + 'card[cvv]': string; + } + } + + interface RazorpayCheckoutPrefillNetBanking { + /** + * Prefills the payment method and related details on Checkout. + */ + prefill: { + /** + * Pre-selection of the payment method for the customer. + * Will only work if contact and email are also pre-filled + */ + method?: 'card' | 'netbanking' | 'wallet' | 'upi'; + /** + * Prefills the customer's bank code. The value must be entered in upper case. + * For example, for HDFC bank, it should be "HDFC". + */ + bank: string; + } + } + + interface RazorpayCheckoutPrefillWallet { + /** + * Prefills the payment method and related details on Checkout. + */ + prefill: { + /** + * Pre-selection of the payment method for the customer. + * Will only work if contact and email are also pre-filled + */ + method?: 'card' | 'netbanking' | 'wallet' | 'upi'; + /** + * Wallet code used to authorize the payment requested. + */ + wallet: string; + } + } + + interface RazorpayCheckoutPrefillVpa { + /** + * Prefills the payment method and related details on Checkout. + */ + prefill: { + /** + * Pre-selection of the payment method for the customer. + * Will only work if contact and email are also pre-filled + */ + method?: 'card' | 'netbanking' | 'wallet' | 'upi'; + /** + * UPI ID for making the payment on the UPI app. + */ + vpa: string; + } + } + + interface RazorpayCheckoutPaymentMethod { + /** + * Options to display or hide payment methods on the Checkout section. + * Parent parameter under which the checkout and method child parameters must be passed. + */ + method: { + netbanking: boolean | 1 | 0 | string; + card: boolean | 1 | 0 | string; + upi: boolean | 1 | 0 | string; + wallet: boolean | 1 | 0 | string; + } + } + + interface RazorpayCheckoutReadonly { + readonly: { + email?: boolean | 1 | 0; + contact?: boolean | 1 | 0; + } + } + + interface RazorpayCheckoutThematicChange { + theme: { + hide_topbar: boolean; + } + } +} + +declare function paymentLink(api: any): { + /** + * Create payment link + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/payment-links#create-payment-link) for required params. + * + * @link https://razorpay.com/docs/api/payments/payment-links + * @link https://razorpay.com/docs/api/payments/payment-links/customise + * @link https://razorpay.com/docs/api/payments/payment-links/advanced-options + */ + create(params: PaymentLinks.RazorpayPaymentLinkCreateRequestBody | PaymentLinks.RazorpayPaymentLinkAdvanceOption): Promise + create(params: PaymentLinks.RazorpayPaymentLinkCreateRequestBody | PaymentLinks.RazorpayPaymentLinkAdvanceOption, callback: (err: INormalizeError | null, data: PaymentLinks.RazorpayPaymentLink) => void): void + /** + * Get all paymentLinks + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/payment-links#fetch-all-payment-links) for required params. + * + */ + all(params?: RazorpayPaginationOptions): Promise<{ + payment_links: Array; + }> + all(params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + payment_links: Array; + }) => void): void + /** + * Fetch a paymentLink given paymentLink ID + * + * @param paymentLinkId - The unique identifier of the paymentlink. + * + */ + fetch(paymentLinkId: string): Promise + fetch(paymentLinkId: string, callback: (err: INormalizeError | null, data: PaymentLinks.RazorpayPaymentLink) => void): void + /** + * Edit a paymentLink given paymentLink ID + * + * @param paymentLinkId - The unique identifier of the paymentlink. + * @param param - Check [doc](https://razorpay.com/docs/api/payments/payment-links#update-payment-link) for required params. + */ + edit(paymentLinkId: string, params: PaymentLinks.RazorpayPaymentLinkUpdateRequestBody): Promise + edit(paymentLinkId: string, params: PaymentLinks.RazorpayPaymentLinkUpdateRequestBody, callback: (err: INormalizeError | null, data: PaymentLinks.RazorpayPaymentLink) => void): void + /** + * Cancel a payment link + * + * @param paymentLinkId - The unique identifier of the paymentlink. + * + */ + cancel(paymentLinkId: string): Promise + cancel(paymentLinkId: string, callback: (err: INormalizeError | null, data: PaymentLinks.RazorpayPaymentLink) => void): void + /** + * Send notification + * + * @param paymentLinkId - The unique identifier of the paymentlink. + * @param medium - Possible values: `sms`, `email` + * + */ + notifyBy(paymentLinkId: string, medium: INotify): Promise<{ success: boolean }> + notifyBy(paymentLinkId: string, medium: INotify, callback: (err: INormalizeError | null, data: { success: boolean }) => void): void +} + +export default paymentLink \ No newline at end of file diff --git a/dist/types/payments.d.ts b/dist/types/payments.d.ts new file mode 100644 index 00000000..f27e6a0a --- /dev/null +++ b/dist/types/payments.d.ts @@ -0,0 +1,848 @@ +import { IMap, INormalizeError, RazorpayPaginationOptions, PartialOptional } from "./api"; +import { Orders } from "./orders"; +import { Refunds } from "./refunds" +import { Tokens } from "./tokens"; +import { Transfers } from "./transfers" +import { VirtualAccounts } from "./virtualAccounts" + +export declare namespace Payments { + interface RazorpayPaymentBaseRequestBody { + /** + * The payment amount represented in smallest unit of the currency passed. + * For example, amount = 100 translates to 100 paise, that is ₹1 (default currency is INR). + */ + amount: number | string; + /** + * The currency in which the customer should be charged for the item. For example, `INR`. + */ + currency: string; + /** + * The unique identifier of the order + */ + order_id: string; + /** + * Customer email address used for the payment. + */ + email: string; + /** + * Customer contact number used for the payment. + */ + contact: string | number; + /** + * Key-value pair you can use to store additional information about the entity. + * Maximum of 15 key-value pairs, 256 characters each. + */ + notes: { [key: string]: string } + /** + * A user-entered description for the payment. + * For example, `Creating recurring payment for Gaurav Kumar`. + */ + description?: string; + /** + * The unique identifier of the customer you want to charge. + */ + customer_id: string; + /** + * The unique identifier of the subscription. + */ + subscription_id?: string; + /** + * The authentication channel for the payment. Possible value is `browser` or `app` + */ + authentication?: { + authentication_channel: string; + }; + } + + interface RazorpayPaymentCreateRequestBody extends RazorpayPaymentBaseRequestBody { } + + interface RazorpayPaymentUpdateRequestBody extends Pick { } + + interface RazorpayRefundPaymentLinkAccountCreateRequestBody extends Pick { + /** + * Reverses transfer made to a linked account.Possible values. + * `1` - Reverses transfer made to a linked account. + * `0` - Does not reverse transfer made to a linked account. + */ + reverse_all?: boolean | 0 | 1; + } + + interface RazorpayPayment extends RazorpayPaymentCreateRequestBody { + /** + * Unique identifier of the payment. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: 'payment'; + /** + * The status of the payment + */ + status: 'created' | 'authorized' | 'captured' | 'refunded' | 'failed'; + /** + * Unique identifier of the invoice. + */ + invoice_id: string | null; + /** + * Indicates whether the payment is done via an international card or a domestic one. + */ + international: boolean; + /** + * The refund status of the payment. + */ + refund_status: 'null' | 'partial' | 'full'; + /** + * The amount refunded in smallest unit of the currency passed. + * For example, if `amount_refunded` = 100, here 100 stands for 100 paise, + * which is equal to ₹1. INR is the default currency. + */ + amount_refunded?: number; + /** + * Indicates if the payment is captured. + */ + captured: boolean; + /** + * The 4-character bank code which the customer's account is associated with. + * For example, UTIB for Axis Bank. + */ + bank: string; + /** + * The unique identifier of the card used by the customer to make the payment. + */ + card_id: string | null; + /** + * The name of the wallet used by the customer to make the payment. + * For example, `payzapp`. + */ + wallet: string | null; + /** + * The customer's VPA (Virtual Payment Address) or UPI id used to make the payment. + * For example, `gauravkumar@exampleupi`. + */ + vpa: string | null; + /** + * GST charged for the payment. + */ + tax: number; + /** + * Unique identifier of the token. + */ + token_id: string | null; + /** + * Fee (including GST) charged by Razorpay. + */ + fee: number; + /** + * Error that occurred during payment. For example, `BAD_REQUEST_ERROR`. + */ + error_code: string | null; + /** + * The point of failure. For example, `customer` + */ + error_source: string | null; + /** + * Description of the error that occurred during payment. For example, + * Payment processing failed because of incorrect OTP. + */ + error_description: string | null; + /** + * The stage where the transaction failure occurred. + * The stages can vary depending on the payment method used to complete the transaction. + * For example, `payment_authentication`. + */ + error_step: string | null; + /** + * The exact error reason. For example, `incorrect_otp`. + */ + error_reason: string | null; + /** + * A dynamic array consisting of a unique reference numbers. + */ + acquirer_data: { + /** + * A unique bank reference number provided by the banking partner when a refund is processed. + * This reference number can be used by the customer to track the status of the refund with + * the bank. + */ + rrn?: string; + /** + * A unique reference number generated for RuPay card payments. + */ + authentication_reference_number?: string; + /** + * A unique reference number provided by the banking partner in case of netbanking payments. + */ + bank_transaction_id?: string; + auth_code?: string; + upi_transaction_id?: string; + } + emi?: { + issuer: string; + type: string; + rate: string; + duration: string; + }; + /** + * Timestamp, in UNIX format, on which the payment was created. + */ + created_at: number; + /** + * The payment method used to make the payment. + * If this parameter is not passed, customers will be able to make + * payments using both netbanking and UPI payment methods + */ + method: string; + token?: Tokens.RazorpayToken; + offers: { + entity: string; + count: number; + items: { id: string }[] + + } + card?: RazorpayCard; + } + + interface RazorpayCardBaseRequestBody { + /** + * Unformatted card number. + */ + number: string; + /** + * Name of the cardholder. + */ + name: string; + /** + * Expiry month for card in MM format. + */ + expiry_month: string | number; + /** + * Expiry year for card in YY format. + */ + expiry_year: string | number; + /** + * CVV printed on the back of card. + */ + cvv: string | number; + /** + * The cryptogram value for the token. + */ + cryptogram_value?: string; + /** + * Indicates if the payment is made using tokenised card or actual card. Possible values are `true` or `false` + */ + tokenised?: boolean; + /** + * The name of the aggregator that provided the token + */ + token_provider?: string; + /** + * The last 4 digits of the tokenised card. + */ + last4?: string; + /** + * The name of the aggregator that provided the token. Possible values are `Visa`, `Mastercard`, `Amex` or `HDFC for Diners` + */ + provider_type?: string; + } + + interface RazorpayCardCreateRequest extends RazorpayCardBaseRequestBody { } + + interface RazorpayCard extends RazorpayCardCreateRequest { + /** + * The unique identifier of the card used by the customer to make the payment. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * The last 4 digits of the card number. + */ + last4: string; + /** + * The card network. + */ + network: + | "American Express" + | "Diners Club" + | "Maestro" + | "MasterCard" + | "RuPay" + | "Unknown" + | "Visa"; + /** + * The card type. + */ + type: "credit" | "debit" | "prepaid" | "unknown"; + /** + * The card issuer. The 4-character code denotes the issuing bank. + */ + issuer: string; + /** + * This attribute is set to `true` if the card can be used for EMI payment method. + */ + emi: boolean; + /** + * The sub-type of the customer's card. + */ + sub_type: 'customer' | 'business'; + token_iin: string | null; + /** + * The transaction flow details. + */ + flows: { + otp?: boolean; + recurring: boolean; + } + international: boolean; + cobranding_partner?: string | null + } + + interface RazorpayPaymentDowntime { + /** + * Unique identifier of the downtime's occurrence. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * The payment method that is experiencing the downtime. Possible values include: + * `card`, `netbanking`, `wallet`, `upi` + */ + method: string; + /** + * Timestamp (in Unix) that indicates the start of the downtime. + * Applicable for both scheduled and unscheduled downtimes. + */ + begin: number | null; + /** + * Timestamp (in Unix) that indicates the end of the downtime. + * Available only for scheduled downtimes, where the end-time is known. + * Set to null when the end-time in unknown, possibly during unscheduled downtimes. + */ + end: number | null; + /** + * Status of the downtime. + */ + status: 'scheduled' | 'started' | 'resolved' | 'cancelled'; + /** + * `true` - This is a scheduled downtime by the issuer, + * network, or the bank, which was informed to Razorpay. + * `false` - This is an unscheduled downtime. + */ + scheduled: boolean; + /** + * Severity of the downtime. + */ + severity: 'high' | 'medium' | 'low'; + /** + * Payment method that is under performing. + */ + instrument: RazorpayPaymentDowntimeInstrument + /** + * Timestamp (in Unix) that indicates the time at which the + * downtime was recorded in Razorpay servers. + */ + created_at: number; + /** + * Timestamp (in Unix) that indicates the time at which the + * downtime record was updated in Razorpay servers. + */ + updated_at: number; + } + + interface RazorpayPaymentDowntimeInstrument { + /** + * Bank code of the affected bank. + */ + bank?: string; + /** + * Code of the affected Payment Service Provider (PSP). + * This is populated only when VPA handles associated with the PSP are down. + * If a PSP is associated with multiple VPA handles, + * it is marked down only when all the handles associated with it are down. + * For example, `google_pay` is marked down only when all Google Pay handles + * `oksbi`, `okhdfcbank`, `okicici` and `okaxis` are down. + */ + psp?: 'google_pay' | 'phonepe' | 'paytm' | 'bhim'; + /** + * Affected VPA handle. For example, `@oksbi`. To learn about the possible values, + * refer to the [list of handles supported by NPCI](https://www.npci.org.in/what-we-do/upi/3rd-party-apps). + * If the entire UPI system is experiencing a downtime, the value `ALL` is displayed. + */ + vpa_handle?: string; + /** + * Affected wallet code. + */ + wallet?: string; + } + + interface RazorpayRecurringPaymentCreateRequestBody extends Payments.RazorpayPaymentBaseRequestBody { + /** + * he `token_id` generated when the customer successfully completes the authorization payment. + * Different payment instruments for the same customer have different `token_id`. + */ + token: string; + /** + * Determines whether recurring payment is enabled or not. + */ + recurring: boolean | 1 | 0 | string; + } + + interface RazorpayPaymentThirdPartyCreateRequestBody extends Omit { + /** + * The customer's bank code. For example, `HDFC`. + */ + bank?: string; + /** + * The payment method that is experiencing the downtime. Possible values include: + * `card`, `netbanking`, `wallet`, `upi` + */ + method: string; + } + + interface RazorpayPaymentUpiCreateRequestBody extends PartialOptional { + method: string; + /** + * Specifies if the VPA should be stored as tokens. + * `1` Saves the VPA details. + * `0`(default) - Does not save the VPA details. + */ + save?: boolean | 1 | 0; + /** + * The customer's IP address. + */ + ip: string; + /** + * URL where Razorpay will submit the final payment status. + */ + callback_url?: string; + /** + * Value of referer header passed by the client's browser. + * For example,`https://example.com/` + */ + referer: string; + /** + * Value of `user_agent` header passed by the client's browser. + * For example, + * Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) + * Chrome/79.0.3945.130 Safari/537.36 + */ + user_agent: string; + /** + * Details of the expiry of the UPI link + */ + upi?: { + /** + * Specify the type of the UPI payment flow. + * Possible values: `collect` (default), `intent` + */ + flow: string; + vpa?: string; + /** + * Period of time (in minutes) after which the link will expire. + * The default value is 5. + */ + expiry_time?: number; + } + /** + * Token of the saved VPA. + */ + token?: string; + } + + interface RazorpayPaymentQuery extends RazorpayPaginationOptions { + 'expand[]'?: string; + } + + interface RazorpayCardS2SMethod extends RazorpayCardBaseRequestBody { + /** + * Details of the authentication channel. + */ + authentication?: { + /** + * The authentication channel for the payment. + */ + authentication_channel: 'browser' | 'app' + } + } + + interface BrowserInfo { + /** + * Indicates whether the customer's browser supports Java. + * Obtained from the `navigator` HTML DOM object. + */ + java_enabled: boolean; + /** + * Indicates whether the customer's browser is able to execute JavaScript. + * Obtained from the `navigator` HTML DOM object. + */ + javascript_enabled: boolean; + /** + * Time difference between UTC time and the cardholder browser local time. + * Obtained from the `getTimezoneOffset()` method applied to Date object. + */ + timezone_offset: number | string; + /** + * Total width of the payer's screen in pixels. + * Obtained from the `screen.width` HTML DOM property. + */ + screen_width: number | string; + /** + * Obtained from the `navigator` HTML DOM object. + */ + screen_height: number | string; + /** + * Obtained from payer's browser using + * the `screen.colorDepth` HTML DOM property. + */ + color_depth: number | string; + /** + * Obtained from payer's browser using the navigator. + * language HTML DOM property. Maximum limit of 8 characters. + */ + language: string; + } + + interface RazorpayPaymentS2SCreateRequestBody extends RazorpayPaymentBaseRequestBody { + save: boolean | number; + /** + * Pass the unique token id created when the customer made the first payment. + */ + token?: string; + /** + * Pass the sub-merchant's unique identifier. + */ + account_id?: string; + card: Partial; + /** + * The customer's IP address. + */ + ip: string; + /** + * Referrer header passed by the client's browser. + */ + referer?: string; + /** + * The User-Agent header of the user's browser. + * Default value will be passed by Razorpay if not provided by merchant. + */ + user_agent: string | null; + provider_name?: string; + /** + * Information regarding the customer's browser. + * This parameter need not be passed when `authentication_channel=app`. + */ + browser?: Partial + } + + interface RazorpayPaymentS2SJson { + /** + * Unique identifier of the payment. Present for all responses. + */ + razorpay_payment_id: string; + /** + * A list of action objects available to you to continue the payment process. + * Present when the payment requires further processing. + */ + next: [ + { + [key: string]: string + } + ]; + metadata?: { + [key: string]: string + } + } + + interface RazorpayPaymentDetails { + id: string; + entity: string; + payment_id: string; + mode: string; + bank_reference: string; + amount: number | string; + payer_bank_account: RazorpayBankAccount; + virtual_account_id: string; + virtual_account: VirtualAccounts.RazorpayVirtualAccount; + } + + interface RazorpayBankAccount extends Orders.RazorpayBankAccount { + id: string; + entity: string; + } + + interface ExpandDetails { + 'expand[]': 'card' | 'emi' | 'offers' | 'upi' + } + +} + +declare function payments(api: any): { + /** + * Get all payments + * + * @param params + * + */ + all(params?: Payments.RazorpayPaymentQuery): Promise<{ + entity: string; + count: number; + items: Array; + }> + all(params: Payments.RazorpayPaymentQuery, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Fetch a payment + * + * @param paymentId - The unique identifier of the payment. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/#fetch-a-payment) for required params + * + */ + fetch(paymentId: string, params?: Payments.ExpandDetails): Promise + fetch(paymentId: string, params: Payments.ExpandDetails, callback: (err: INormalizeError | null, data: Payments.RazorpayPayment) => void): void + /** + * Capture payment + * + * @param paymentId - The unique identifier of the payment. + * @param amount - The amount to be captured (should be equal to the authorised amount, + * in the smallest unit of the chosen currency). + * @param currency - ISO code of the currency in which the payment was made. + * + */ + capture(paymentId: string, amount: number | string, currency: string): Promise + capture(paymentId: string, amount: number | string, currency: string, callback: (err: INormalizeError | null, data: Payments.RazorpayPayment) => void): void + /** + * Edit a payment given Payment ID + * + * @param paymentId - The unique identifier of the payment. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/#update-the-payment) for required params + * + */ + edit(paymentId: string, params: { notes: IMap }): Promise + edit(paymentId: string, params: { notes: IMap }, callback: (err: INormalizeError | null, data: Payments.RazorpayPayment) => void): void + /** + * Create payment json + * + * @param params - Check [doc](https://razorpay.com/docs/payments/payment-gateway/s2s-integration/json/v2/build-integration/cards/#12-create-a-payment) for required params + * + */ + createPaymentJson(params: Payments.RazorpayPaymentS2SCreateRequestBody | Payments.RazorpayPaymentThirdPartyCreateRequestBody): Promise + createPaymentJson(params: Payments.RazorpayPaymentS2SCreateRequestBody | Payments.RazorpayPaymentThirdPartyCreateRequestBody, callback: (err: INormalizeError | null, data: Payments.RazorpayPaymentS2SJson) => void): void + /** + * Create a recurring payment + * + * @param params + * @link https://razorpay.com/docs/api/payments/recurring-payments/emandate/create-subsequent-payments#32-create-a-recurring-payment + * @link https://razorpay.com/docs/api/payments/recurring-payments/cards/create-subsequent-payments#32-create-a-recurring-payment + * @link https://razorpay.com/docs/api/payments/recurring-payments/paper-nach/create-subsequent-payments#32-create-a-recurring-payment + * @link https://razorpay.com/docs/api/payments/recurring-payments/upi/create-subsequent-payments#32-create-a-recurring-payment + * + */ + createRecurringPayment(params: Payments.RazorpayRecurringPaymentCreateRequestBody): Promise<{ + razorpay_payment_id?: string; + razorpay_order_id?: string; + razorpay_signature?: string; + }> + createRecurringPayment(params: Payments.RazorpayRecurringPaymentCreateRequestBody, callback: (err: INormalizeError | null, data: { + razorpay_payment_id?: string; + razorpay_order_id?: string; + razorpay_signature?: string; + }) => void): void + /** + * Generate otp + * + * @param paymentId - The unique identifier of the payment. + * + */ + otpGenerate(paymentId: string): Promise + otpGenerate(paymentId: string, callback: (err: INormalizeError | null, data: Payments.RazorpayPaymentS2SJson) => void): void + /** + * Otp submit + * + * @param paymentId - The unique identifier of the payment. + * @param params - Check [doc](https://razorpay.com/docs/payments/payment-gateway/s2s-integration/json/v2/build-integration/cards/#response-on-submitting-otp) for required params + * + */ + otpSubmit(paymentId: string, params: { otp: string }): Promise<{ + razorpay_payment_id: string; + razorpay_order_id: string; + razorpay_signature: string; + }> + otpGenerate(paymentId: string, params: { otp: string }, callback: (err: INormalizeError | null, data: { + razorpay_payment_id: string; + razorpay_order_id: string; + razorpay_signature: string; + }) => void): void + /** + * OTP Resend + * + * @param paymentId - The unique identifier of the payment. + * + */ + otpResend(paymentId: string): Promise<{ + "next": string[]; + "razorpay_payment_id": string; + }> + otpResend(paymentId: string, callback: (err: INormalizeError | null, data: { + "next": string[]; + "razorpay_payment_id": string; + }) => void): void + /** + * Create Payment UPI s2s / VPA token (Third party validation) + * + * @param params + * @link https://razorpay.com/docs/payments/third-party-validation/s2s-integration/upi/collect#step-14-initiate-a-payment + * @link https://razorpay.com/docs/payments/third-party-validation/s2s-integration/upi/intent/#step-2-initiate-a-payment + * + */ + createUpi(params: Payments.RazorpayPaymentUpiCreateRequestBody): Promise<{ razorpay_payment_id: string; link?: string; }> + createUpi(params: Payments.RazorpayPaymentUpiCreateRequestBody, callback: (err: INormalizeError | null, data: { + razorpay_payment_id: string; + link?: string + }) => void): void + /** + * Validate vpa + * + * @param params - Check [doc](https://razorpay.com/docs/payments/third-party-validation/s2s-integration/upi/collect#step-13-validate-the-vpa) for required params + * + */ + validateVpa(params: { vpa: string }): Promise<{ + vpa: string; + success: boolean; + customer_name: string; + }> + validateVpa(params: { vpa: string }, callback: (err: INormalizeError | null, data: { + vpa: string; + success: boolean; + customer_name: string; + }) => void): void + /** + * Fetch payment methods + * + * @link https://razorpay.com/docs/payments/third-party-validation/s2s-integration/methods-api/#fetch-payment-methods + * + */ + fetchPaymentMethods(): Promise<{ [key: string]: string }> + fetchPaymentMethods(callback: (err: INormalizeError | null, data: { + [key: string]: string; + }) => void): void + /** + * Create a normal/instant instant refund. + * + * Refund payments and reverse transfer from a linked account + * + * @param paymentId - The unique identifier of the payment. + * @param params - Check [doc](https://razorpay.com/docs/api/refunds/#create-a-normal-refund) for required params + * @param params - Check [doc](https://razorpay.com/docs/api/payments/route/transfers#refund-payments-and-reverse-transfer-from-a-linked) for required params + */ + refund(paymentId: string, params: Payments.RazorpayRefundPaymentLinkAccountCreateRequestBody | Refunds.RazorpayRefundCreateRequestBody): Promise + refund(paymentId: string, params: Payments.RazorpayRefundPaymentLinkAccountCreateRequestBody | Refunds.RazorpayRefundCreateRequestBody, callback: (err: INormalizeError | null, data: Refunds.RazorpayRefund) => void): void + /** + * Fetch multiple refunds for a payment + * + * @param paymentId - The unique identifier of the payment. + * @param params - Check [doc](https://razorpay.com/docs/api/refunds/#fetch-multiple-refunds-for-a-payment) for required params + * + */ + fetchMultipleRefund(paymentId: string, params?: RazorpayPaginationOptions): Promise<{ + entity: string; + count: number; + items: Array; + }> + fetchMultipleRefund(paymentId: string, params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Array; + }) => void): void + + /** + * Fetch a specific refund for a payment + * + * @param paymentId - The unique identifier of the payment. + * @param refundId - The unique identifier of the refund. + * + */ + fetchRefund(paymentId: string, refundId: string): Promise + fetchRefund(paymentId: string, refundId: string, callback: (err: INormalizeError | null, data: Refunds.RazorpayRefund) => void): void + /** + * Fetch transfers for a payment + * + * @param paymentId - The unique identifier of the payment. + * + */ + fetchTransfer(paymentId: string): Promise<{ + entity: string; + count: number; + items: Array; + }> + fetchTransfer(paymentId: string, callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Array; + }) => void): void + + /** + * Create transfers from payment + * + * @param paymentId - The unique identifier of the payment. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/route/transfers/#create-transfers-from-payments) for required params + * + */ + transfer(paymentId: string, params: { transfers: Transfers.RazorpayPaymentCreateRequestBody[] }): Promise<{ + entity: string; + count: number; + items: Array; + }> + transfer(paymentId: string, params: { transfers: Transfers.RazorpayPaymentCreateRequestBody[] }, callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Array; + }) => void): void + /** + * Fetch payment details using id and transfer method + * + * @param paymentId - The unique identifier of the payment. + * + */ + bankTransfer(paymentId: string): Promise + bankTransfer(paymentId: string, callback: (err: INormalizeError | null, data: Payments.RazorpayPaymentDetails) => void): void + /** + * Fetch card details with paymentId + * + * @param paymentId - The unique identifier of the payment. + * + */ + fetchCardDetails(paymentId: string): Promise + fetchCardDetails(paymentId: string, callback: (err: INormalizeError | null, data: Payments.RazorpayCard) => void): void + /** + * Fetch Payment Downtime Details + */ + fetchPaymentDowntime(): Promise<{ + entity: string; + count: number; + items: Array + }> + fetchPaymentDowntime(callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Array + }) => void): void + /** + * Fetch Payment Downtime + * + * @param downtimeId - The unique identifier of the payment. + * + */ + fetchPaymentDowntimeById(downtimeId: string): Promise + fetchPaymentDowntimeById(downtimeId: string, callback: (err: INormalizeError | null, data: Payments.RazorpayPaymentDowntime) => void): void +} + +export default payments diff --git a/dist/types/plans.d.ts b/dist/types/plans.d.ts new file mode 100644 index 00000000..dbc13dc6 --- /dev/null +++ b/dist/types/plans.d.ts @@ -0,0 +1,87 @@ +import { IMap, RazorpayPaginationOptions, INormalizeError } from "./api"; +import { Items } from "./items"; + +export declare namespace Plans { + interface RazorpayPlanBaseRequestBody { + /** + * Details of the plan. + */ + item: Items.RazorpayItemBaseRequestBody; + /** + * This, combined with interval, defines the frequency. Possible values: + * `daily`, `weekly`, `monthly`, `yearly` + * + * If the billing cycle is 2 months, the value should be monthly. + */ + period: "daily" | "weekly" | "monthly" | "yearly"; + /** + * This, combined with `period`, defines the frequency. + * If the billing cycle is 2 months, the value should be `2`. + */ + interval: number; + /** + * Notes you can enter for the contact for future reference. + * This is a key-value pair. You can enter a maximum of 15 key-value pairs. + * For example, `note_key`: `Beam me up Scotty` + */ + notes?: IMap; + } + + interface RazorpayPlanCreateRequestBody extends RazorpayPlanBaseRequestBody { } + + interface RazorPayPlans extends RazorpayPlanBaseRequestBody { + /** + * The unique identifier linked to a plan + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * The Unix timestamp at which the plan was created. + */ + created_at: number; + /** + * Details of the plan. + */ + item: Items.RazorpayItem; + } +} + +declare function plans(api: any): { + /** + * Creates a plan + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#create-a-plan) for required params + * + */ + create(params: Plans.RazorpayPlanCreateRequestBody): Promise + create(params: Plans.RazorpayPlanCreateRequestBody, callback: (err: INormalizeError | null, data: Plans.RazorPayPlans) => void): void; + /** + * Get all plans + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#fetch-all-plans) for required params + * + */ + all(params?: RazorpayPaginationOptions): Promise<{ + entity: string; + count: string; + items: Array + }> + all(params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Fetch a plans given Plan ID + * + * @param planId - The unique identifier of the plan + * + */ + fetch(planId: string): Promise + fetch(planId: string, callback: (err: INormalizeError | null, data: Plans.RazorPayPlans) => void): void; +} + +export default plans \ No newline at end of file diff --git a/dist/types/products.d.ts b/dist/types/products.d.ts new file mode 100644 index 00000000..a37d6826 --- /dev/null +++ b/dist/types/products.d.ts @@ -0,0 +1,268 @@ +import { Orders } from "../../dist/types/orders"; +import { IMap, INormalizeError, PartialOptional, RazorpayPaginationOptions } from "./api"; + +export declare namespace Products { + interface RazorpayProductBaseRequestBody { + /** + * The product(s) to be configured. Possible values: `payment_gateway` or `payment_links` + */ + product_name: string; + /** + * Pass this parameter to accept terms and conditions. Send this parameter along with the ip parameter when the tnc is accepted. + */ + tnc_accepted?: boolean; + /** + * he IP address of the merchant while accepting the terms and conditions. Send this parameter along with the `tnc_accepted` parameter when the `tnc` is accepted. + */ + ip?: string; + } + + interface RazorpayProductCreateRequestBody extends RazorpayProductBaseRequestBody { } + + interface RazorpayProductUpdateRequestBody extends PartialOptional, 'tnc_accepted' | 'ip'> { + /** + * This denotes the notifications settings + */ + notifications?: Notifications; + /** + * The checkout form of the payment capture + */ + checkout?: Checkout; + /** + * This denotes the payment refund settings + */ + refund?: { + /** + * Speed at which the refund is to be processed + */ + default_refund_speed: string; + } + /** + * The Settlement settings object. + */ + settlements?: Omit; + /** + * Details of the payment method you want to enable for the product. + */ + payment_methods?: PaymentMethods; + } + + interface PaymentMethods { + /** + * The payment method to be enabled. + */ + netbanking: Netbanking; + cards: Cards; + wallet: Wallet; + paylater: Paylater; + upi: Upi; + emi: Emi; + } + + interface Netbanking { + enabled: boolean; + instrument: Instrument[]; + } + + interface Instrument { + type: string; + bank: string[]; + } + + interface Cards { + enabled: boolean; + instrument: InstrumentCard[]; + } + + interface InstrumentCard { + issuer: string; + type: string[]; + } + + interface Wallet { + enabled: boolean; + instrument: string[]; + } + + interface Paylater { + enabled: boolean; + instrument: string[]; + } + + interface Upi { + enabled: boolean; + instrument: string[]; + } + + interface Emi { + enabled: boolean; + instrument: InstrumentEmi[]; + } + + interface InstrumentEmi { + type: string; + partner: string[]; + } + + interface RazorpayProduct extends RazorpayProductBaseRequestBody { + /** + * The configuration of the product requested by the user that is yet to be set as active. + */ + requested_configuration: { + payment_methods: PaymentMethods[]; + } + /** + * The configuration of the product that has been set as active. + */ + active_configuration: ActiveConfiguration; + /** + * The list of requirements to be enabled for this product or some of the configurations under this product. + */ + requirements: Requirement[] + tnc: Tnc; + id: string; + activation_status: string; + account_id: string; + /** + * The Unix timestamp at which the product configuration is requested. + */ + requested_at: number; + } + + interface ActiveConfiguration { + payment_capture: PaymentCapture; + settlements: Settlements; + checkout: Checkout; + refund: { + default_refund_speed: string; + } + notifications: Notifications; + payment_methods: PaymentMethods; + } + + interface PaymentCapture { + mode: string; + refund_speed: string; + automatic_expiry_period: number; + } + + interface Settlements { + account_number: string; + ifsc_code: string; + beneficiary_name: string; + } + + interface Checkout { + theme_color?: string; + flash_checkout?: boolean; + } + + interface Notifications { + /** + * The WhatsApp notifications you receive regarding payments, settlements, daily payment reports, webhooks, etc. + */ + whatsapp?: boolean; + /** + * The SMS notifications you receive regarding payments, settlements, daily payment reports, webhooks, + */ + sms?: boolean; + /** + * he email addresses that will receive notifications regarding + * payments, settlements, daily payment reports, webhooks, and so on. + */ + email?: string[]; + } + + interface Requirement { + /** + * The field which is in issue or missing. The JSON key path in resolution URL. + */ + field_reference: string; + /** + * The URL to address the requirement. The API endpoint to be used for updating missing fields or documents. + */ + resolution_url: string; + /** + * The status of the requirement. + */ + status: string; + /** + * The reason code for showing in the requirement + */ + reason_code: string; + } + + interface Tnc { + id: string; + accepted: boolean; + accepted_at: number; + } + + interface RazorpayProductTnc { + /** + * The name of the entity. + */ + entity: string; + /** + * Determines what business unit the terms and conditions belong to. + */ + product_name: string; + /** + * Unique identifier of the terms and conditions belonging to a specific business unit. + */ + id: string; + /** + * The terms and conditions content. + */ + tnc: ProductsTnc; + /** + * The timestamp in Unix format, when the terms and conditions were created/last updated. + */ + last_published_at: number; + } + + interface ProductsTnc { + terms: string; + privacy: string; + agreement: string; + } +} + +declare function products(api: any): { + /** + * Request a Product Configuration + * + * @param params - Check [doc](https://razorpay.com/docs/api/partners/product-configuration/#request-parameter) for required params + * @param accountId - The unique identifier of the account. + */ + requestProductConfiguration(accountId: string, params: Products.RazorpayProductCreateRequestBody): Promise + requestProductConfiguration(accountId: string, params: Products.RazorpayProductCreateRequestBody, callback: (err: INormalizeError | null, data: Products.RazorpayProduct) => void): void; + /** + * Fetch a Product Configuration + * + * @param accountId - The unique identifier of the account. + * @param productId - The unique identifier of a product. + * + */ + fetch(accountId: string, productId: string): Promise + fetch(accountId: string, productId: string, callback: (err: INormalizeError | null, data: Products.RazorpayProduct) => void): void; + /** + * Update a Product Configuration + * + * @param accountId - The unique identifier of the account. + * @param productId - The unique identifier of a product. + * @param params - Check [doc](https://razorpay.com/docs/api/partners/product-configuration/#update-a-product-configuration) for required params + */ + edit(accountId: string, productId: string, params: Products.RazorpayProductUpdateRequestBody): Promise + edit(accountId: string, productId: string, params: Products.RazorpayProductUpdateRequestBody, callback: (err: INormalizeError | null, data: Products.RazorpayProduct) => void): void; + /** + * Fetch Terms and Conditions for a Sub-Merchant + * + * @param productName - The product family for which the relevant product to be requested for the sub-merchant. Possible value is `payments`. + * + */ + fetchTnc(productName: string): Promise + fetchTnc(productName: string, callback: (err: INormalizeError | null, data: Products.RazorpayProductTnc) => void): void; +} + +export default products \ No newline at end of file diff --git a/dist/types/qrCode.d.ts b/dist/types/qrCode.d.ts new file mode 100644 index 00000000..abd6a9fb --- /dev/null +++ b/dist/types/qrCode.d.ts @@ -0,0 +1,227 @@ +import { IMap, RazorpayPaginationOptions, INormalizeError } from "./api" +import { Payments } from "./payments" + +export declare namespace QrCode { + + interface RazorpayTaxInvoice { + /** + * This is the invoice number against which the payment is collected. + * If not provided, the transaction will default to non-GST compliant UPI flow. + */ + number?: string; + /** + * Unix Timestamp that indicates the issue date of the invoice. + * If not provided, it will default to the current date. + */ + date?: number; + /** + * Customer name on the invoice. If not provided, the transaction + * will default to non-GST compliant UPI flow. + */ + customer_name?: string; + /** + * The GSTIN mentioned on the invoice. + */ + business_gstin?: string; + /** + * GST amount on the invoice in paise. If not provided, the transaction + * will default to the non-GST compliant UPI flow. + */ + gst_amount?: number; + /** + * CESS Amount on the invoice in paise. If not provided, the transaction + * will default to the non-GST compliant UPI flow. + */ + cess_amount?: number; + /** + * Indicates whether the transaction is interstate or intrastate. Possible values: + * + * `interstate` or `intrastate` If not provided, the transaction will default to the non-GST compliant UPI flow. + */ + supply_type?: 'interstate' | 'intrastate'; + } + + interface RazorpayQrCodeBaseRequestBody { + /** + * The type of the QR Code. Possible values: + * + * `upi_qr`: Create a QR Code that accepts only UPI payments. + * + * `bharat_qr`: Create a QR Code that accepts UPI and card payments. + */ + type: 'upi_qr' | 'bharat_qr'; + /** + * Label entered to identify the QR Code. For example, `Store Front Display`. + */ + name?: string; + /** + * Indicates if the QR Code should be allowed to accept single payment or + * multiple payments. Possible values: + * + * `single_use`: QR Code will accept only one payment and then close automatically. + * + * `multiple_use` (default): QR Code will accept multiple payments. + */ + usage: string; + /** + * Indicates if the QR Code should accept payments of specific amounts or any amount. + * + * `true`: QR Code accepts only a specific amount. + * + * `false` (default): QR code accepts any amount. + */ + fixed_amount?: boolean; + /** + * The amount allowed for a transaction. If this is specified, + * then any transaction of an amount less than or more than this + * value is not allowed. For example, if this amount is set as `500000`, + * the customer cannot pay an amount less than or more than ₹5000. + * `(if fixed_amount=true)` + */ + payment_amount?: number; + /** + * A brief description about the QR Code. + */ + description?: string; + /** + * The unique identifier of the customer the QR Code is linked with. + */ + customer_id?: string; + /** + * Unix timestamp at which the QR Code is scheduled to be automatically closed. + * The time must be at least 15 minutes after the current time. + */ + close_by?: number; + /** + * Key-value pair that can be used to store additional information about the QR Code. + */ + notes?: IMap; + + } + + interface RazorpayQrCodeCreateRequestBody extends RazorpayQrCodeBaseRequestBody { } + + interface RazorpayQrCodeGstCreateRequestBody extends RazorpayQrCodeBaseRequestBody { + /** + * This block contains information about the invoices. + */ + tax_invoice?: RazorpayTaxInvoice; + } + + interface RazorpayQrCode extends RazorpayQrCodeBaseRequestBody, RazorpayQrCodeGstCreateRequestBody { + /** + * The unique identifier of the QR Code. + */ + id: string, + /** + * Indicates the type of entity. + */ + entity: string, + /** + * The unix timestamp at which the QR Code was created. + */ + created_at: number, + /** + * The URL of the QR Code. A sample short URL looks like + * this `http://rzp.io/l6MS`. Click the link to download the code. + */ + image_url: string, + /** + * Indicates the status of the QR Code. + */ + status: 'active' | 'closed', + /** + * The total amount received on the QR Code. All captured payments are considered. + */ + payments_amount_received: number, + /** + * The total number of payments received on the QR Code. All captured + * payments are considered. + */ + payments_count_received: number, + /** + * The unix timestamp at which the QR Code is automatically closed. + */ + closed_at: number, + /** + * The reason for the closure of the QR Code. Possible values: + * + * `on_demand`: When you close the QR Code using the APIs or the Razorpay Dashboard. + * + * `paid`: If the QR Code is created with the usage=single_payment parameter, + * the QR Code closes automatically once the customer makes the payment, + * with the reason marked as paid. + * + * `null`: The QR Code has not been closed yet. + */ + close_reason?: 'on_demand' | 'paid' | null + } + + interface RazorpayQrCodeQuery extends RazorpayPaginationOptions { + customer_id?: string; + payment_id?: string; + } +} + + +declare function qrCode(api: any): { + /** + * Creates a qrcode + * + * @param params - Check [doc](https://razorpay.com/docs/api/qr-codes/gst/#create-a-qr-code) for required params + * + */ + create(params: QrCode.RazorpayQrCodeCreateRequestBody | QrCode.RazorpayQrCodeGstCreateRequestBody): Promise + create(params: QrCode.RazorpayQrCodeCreateRequestBody | QrCode.RazorpayQrCodeGstCreateRequestBody, callback: (err: INormalizeError | null, data: QrCode.RazorpayQrCode) => void): void; + /** + * Get all qrcodes + * + * @param params - Check [doc](https://razorpay.com/docs/api/qr-codes/gst/#fetch-multiple-qr-codes) for required params + * + */ + all(params?: QrCode.RazorpayQrCodeQuery): Promise<{ + entity: string; + count: number; + items: Array; + }> + all(params: QrCode.RazorpayQrCodeQuery, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Fetches a qrode given QrCode ID + * + * @param qrCodeId - The unique identifier of the QR Code. + * + */ + fetch(qrCodeId: string): Promise + fetch(qrCodeId: string, callback: (err: INormalizeError | null, data: QrCode.RazorpayQrCode) => void): void; + /** + * Fetch Payments for a QR Code + * + * @param qrCodeId - The unique identifier of the QR Code. + * @param params - Check [doc](https://razorpay.com/docs/api/qr-codes/gst/#fetch-payments-for-a-qr-code) for required params + * + */ + fetchAllPayments(qrCodeId: string, params?: RazorpayPaginationOptions): Promise<{ + entity: string; + count: number; + items: Array; + }> + fetchAllPayments(qrCodeId: string, params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Close a QR Code + * + * @param qrCodeId - The unique identifier of the QR Code. + * + */ + close(qrCodeId: string): Promise + close(qrCodeId: string, callback: (err: INormalizeError | null, data: QrCode.RazorpayQrCode) => void): void; +} + +export default qrCode \ No newline at end of file diff --git a/dist/types/refunds.d.ts b/dist/types/refunds.d.ts new file mode 100644 index 00000000..6246d739 --- /dev/null +++ b/dist/types/refunds.d.ts @@ -0,0 +1,119 @@ +import { IMap, INormalizeError, RazorpayPaginationOptions } from "./api"; + +export declare namespace Refunds { + interface RazorpayRefundBaseRequestBody { + /** + * The amount to be refunded (in the smallest unit of currency). + */ + amount?: number; + /** + * Speed at which the refund is to be processed. + */ + speed?: 'normal' | 'optimum'; + /** + * Key-value store for storing your reference data. + */ + notes?: IMap; + /** + * A unique identifier provided by you for your internal reference. + */ + receipt?: string | null; + } + + interface RazorpayRefundCreateRequestBody extends RazorpayRefundBaseRequestBody {} + + interface RazorpayRefundUpdateRequestBody extends RazorpayRefundBaseRequestBody { + notes: IMap + } + + interface RazorpayRefund extends Omit { + /** + * The unique identifier of the refund. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * The currency of payment amount for which the refund is initiated. + */ + currency: string; + /** + * The unique identifier of the payment for which a refund is initiated. + * For example, `pay_FgR9UMzgmKDJRi`. + */ + payment_id: string, + /** + * A dynamic array consisting of a unique reference number (either RRN, ARN or UTR) + * that is provided by the banking partner when a refund is processed. + * This reference number can be used by the customer to track the status of the + * refund with the bank. + */ + acquirer_data?: IMap; + /** + * Unix timestamp at which the refund was created. + */ + created_at: number, + /** + * This parameter is populated if the refund was created as part of a batch upload. + * For example, `batch_00000000000001` + */ + batch_id?: string | null, + /** + * Indicates the state of the refund. + */ + status: 'pending' | 'processed' | 'failed', + /** + * This is a parameter in the response which describes the mode used to process a refund. + * This attribute is seen in the refund response only if the speed parameter is set in + * the refund request. + */ + speed_processed: 'instant' | 'normal'; + /** + * The processing mode of the refund seen in the refund response. + * This attribute is seen in the refund response only if the `speed` + * parameter is set in the refund request. + */ + speed_requested: 'normal' | 'optimum'; + } +} + +declare function refunds(api: any): { + /** + * Get all refunds + * + * @param params - Check [doc](https://razorpay.com/docs/api/refunds/#fetch-all-refunds) for required params + * + */ + all(params?: RazorpayPaginationOptions): Promise<{ + entity: string, + count: number, + items: Array + }> + all(params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Fetch a refund given Refund ID + * + * @param refundId - The unique identifier of the refund. + * @param params - The unique identifier of the payment. + * + */ + fetch(refundId: string, params?: { payment_id: string }): Promise + fetch(refundId: string, params: { payment_id?: string }, callback: (err: INormalizeError | null, data: Refunds.RazorpayRefund) => void): void + /** + * Edit a payment given Refund ID + * + * @param paymentId - The unique identifier of the payment. + * @param params - Check [doc](https://razorpay.com/docs/api/refunds/#update-refund) for required params + * + */ + edit(refundId: string, params: Refunds.RazorpayRefundUpdateRequestBody): Promise + edit(refundId: string, params: Refunds.RazorpayRefundUpdateRequestBody, callback: (err: INormalizeError | null, data: Refunds.RazorpayRefund) => void): void +} + +export default refunds \ No newline at end of file diff --git a/dist/types/settlements.d.ts b/dist/types/settlements.d.ts new file mode 100644 index 00000000..5dc79b76 --- /dev/null +++ b/dist/types/settlements.d.ts @@ -0,0 +1,347 @@ +import { IMap, INormalizeError, RazorpayPaginationOptions } from "./api"; + +export declare namespace Settlements { + + interface RazorpayInstantSettlementBaseRequestBody { + /** + * The amount, in paise, you want settled to your account. + */ + amount: number | string; + /** + * `true`: Razorpay will settle the maximum amount possible. + * Values passed in the amount parameter are ignored. + * + * `false` (default value): Razorpay will settle the amount + * requested in the amount parameter. + */ + settle_full_balance?: boolean | 0 | 1; + /** + * This is a custom note you can pass for the instant + * settlement for your reference. + */ + description?: string; + /** + * Key-value pair that can be used to store additional + * information about the entity. + */ + notes?: IMap; + } + + interface RazorpayInstantSettlementCreateRequestBody extends RazorpayInstantSettlementBaseRequestBody {} + + interface RazorpaySettlement extends RazorpayInstantSettlementBaseRequestBody{ + /** + * The unique identifier of the settlement. + */ + id: string; + /** + * Indicates the type of entity + */ + entity: string; + initiated_at?: number | null; + processed_at?: number | null; + reversed_at?: number | null; + /** + * Total amount (minus fees and tax), in paise, settled to the bank account. + */ + amount_settled?: number | null; + /** + * Indicates the state of the instant settlement. + */ + status: + | 'created' + | 'processed' + | 'failed' + | 'initiated' + | 'reversed' + | 'partially_processed'; + /** + * Total amount (fees+tax), in paise, deducted for the instant settlement. + */ + fees: number | null; + /** + * Total tax, in paise, charged for the fee component. + */ + tax: number | null; + /** + * The Unique Transaction Reference (UTR) number available across banks, + * which can be used to track a particular settlement in your bank account. + */ + utr: string | null; + /** + * Unix timestamp at which the instant settlement was created. + */ + created_at: number; + } + + interface RazorpaySettlementReconBaseRequestBody { + /** + * The year the settlement was received in the `YYYY` format. + * For example, `2022`. + */ + year: number; + /** + * The month the settlement was received in the `MM` format. + * For example, `06`. + */ + month?: number; + /** + * The date on which the settlement was received in the `DD` format. + * For example, `11`. + */ + day?: number; + /** + * Specifies the number of available settlements to be fetched. + * Maximum count can be `1000`. + */ + count?: number; + /** + * Specifies the number of available settlements to be skipped when fetching a `count`. + */ + skip?: number; + } + + interface RazorpaySettlementRecon { + /** + * The unique identifier of the transaction that has been settled. + */ + entity_id: string; + /** + * Indicates the type of transaction. + */ + type: string; + /** + * The amount, in paise, that has been debited from your account. + */ + debit: number; + /** + * The amount, in paise, that has been credited to your account. + */ + credit: number; + /** + * The total amount, in paise, debited or credited from your account. + */ + amount: number | string; + /** + * The 3-letter ISO currency code for the transaction. + */ + currency: string; + /** + * The fees, in paise, charged to processing the transaction. + */ + fee: number; + /** + * The tax on the fee, in paise, charged to processing the transaction. + */ + tax: number; + /** + * Indicates whether the account settlement for transfer is on hold. + */ + on_hold: boolean; + /** + * Indicates whether the transaction has been settled or not. + */ + settled: boolean; + /** + * Unix timestamp at which the transaction was created. + */ + created_at: number; + /** + * Unix timestamp when the transaction was settled. + */ + settled_at: number; + /** + * The unique identifier of the settlement transaction. + */ + settlement_id: string; + /** + * + */ + posted_at?: number | null; + credit_type: string; + /** + * Brief description about the transaction. + */ + description: string | null; + /** + * Notes for the transaction. + */ + notes: IMap; + /** + * The unique identifier of the payment linked to `refund` or `transfer` + * that has been settled. + */ + payment_id?: string; + /** + * The unique reference number linked to the settlement. + */ + settlement_utr: string; + /** + * Order ID linked to the payment made by the customer that has been settled. + */ + order_id: string; + /** + * Receipt number entered while [creating the Order](https://razorpay.com/docs/api/orders). + */ + order_receipt?: string | null; + /** + * The payment method used to complete the payment. + */ + method: 'card' | 'netbanking' | 'wallet' | 'emi' | 'upi'; + /** + * The card network used to process the payment. + */ + card_network: + | 'American Express' + | 'Diners Club' + | 'Maestro' + | 'MasterCard' + | 'RuPay' + | 'Visa' + | 'unknown'; + card_issuer: string; + /** + * This is a 4-character code denoting the issuing bank. + */ + card_type: 'credit' | 'debit'; + /** + * The unique identifier of any dispute, if any, for this transaction. + */ + dispute_id?: string | null; + } + + + interface RazorpayInstantSettlement extends RazorpayInstantSettlementBaseRequestBody{ + /** + * The unique identifier of the instant settlement transaction. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * The settlement amount, in paise, requested by you. + */ + amount_requested: number; + /** + * Total amount (minus fees and tax), in paise, + * settled to the bank account. + */ + amount_settled: number; + /** + * Portion of the requested amount, in paise, yet + * to be settled to you. + */ + amount_pending: number; + /** + * Portion of the requested amount, in paise, that was not settled to you. + * This amount is reversed to your PG current balance. + */ + amount_reversed: number; + /** + * Total amount (fees+tax), in paise, deducted for the instant settlement. + */ + fees: number; + /** + * Total tax, in paise, charged for the fee component. + */ + tax: number; + /** + * The 3-letter ISO currency code for the settlement. + */ + currency: string; + /** + * Indicates the state of the instant settlement + */ + status: 'created' | 'processed' | 'failed' | 'initiated' | 'reversed' | 'partially_processed'; + /** + * Unix timestamp at which the instant settlement was created. + */ + created_at: number; + /** + * List of payouts created for the instant settlement. + */ + ondemand_payouts?: { + entity: string; + count: number; + items: Settlements.RazorpaySettlement[]; + } + scheduled: boolean; + } + + interface RazorpayOndemandSettlementQuery extends RazorpayPaginationOptions { + 'expand[]'?: string; + } +} + +declare function settlements(api: any): { + /** + * Create on-demand settlement + * + * @param params - Check [doc](https://razorpay.com/docs/api/settlements/instant#create-an-instant-settlement) for required params + * + */ + createOndemandSettlement(params: Settlements.RazorpayInstantSettlementCreateRequestBody): Promise + createOndemandSettlement(params: Settlements.RazorpayInstantSettlementCreateRequestBody, callback: (err: INormalizeError | null, data: Settlements.RazorpayInstantSettlement) => void): void + /** + * Get all settlements + * + * @param params - Check [doc](https://razorpay.com/docs/api/settlements/instant#fetch-all-instant-settlements) for required params + * + */ + all(params?: RazorpayPaginationOptions): Promise<{ + entity: string; + count: number; + items: Array; + }> + all(params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Array; + }) => void): void + /** + * Fetches a settlement given Settlement ID + * + * @param settlementId - The unique identifier of the settlement. + * + */ + fetch(settlementId: string): Promise + fetch(settlementId: string, callback: (err: INormalizeError | null, data: Settlements.RazorpaySettlement) => void): void + /** + * Fetch all demand settlements + * + * @param settlementId - The unique identifier of the settlement. + * @param params - Check [doc](https://razorpay.com/docs/api/settlements/instant#fetch-all-instant-settlements) for required params + * + */ + fetchAllOndemandSettlement(params: Settlements.RazorpayOndemandSettlementQuery): Promise<{ + entity: string; + count: number; + items: Settlements.RazorpayInstantSettlement[]; + }> + fetchAllOndemandSettlement(params: Settlements.RazorpayOndemandSettlementQuery, callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Settlements.RazorpayInstantSettlement[]; + }) => void): void + /** + * Fetch on-demand settlement by ID + * + * @param settlementId - The unique identifier of the settlement. + * @param params - Check [doc](https://razorpay.com/docs/api/settlements/instant#fetch-instant-settlement-by-id) for required params + * + */ + fetchOndemandSettlementById(settlementId: string, params?: { 'expand[]': 'ondemand_payouts' }): Promise; + fetchOndemandSettlementById(settlementId: string, params: { 'expand[]'?: 'ondemand_payouts' }, callback: (err: INormalizeError | null, data: Settlements.RazorpayInstantSettlement) => void): void + /** + * Settlement report for a month + * + * @param params - Check [doc](https://razorpay.com/docs/api/settlements#settlement-recon) for required params + * + */ + reports(params: Settlements.RazorpaySettlementReconBaseRequestBody): Promise + reports(params: Settlements.RazorpaySettlementReconBaseRequestBody, callback: (err: INormalizeError | null, data: Settlements.RazorpaySettlementRecon) => void): void +} + +export default settlements \ No newline at end of file diff --git a/dist/types/stakeholders.d.ts b/dist/types/stakeholders.d.ts new file mode 100644 index 00000000..73496708 --- /dev/null +++ b/dist/types/stakeholders.d.ts @@ -0,0 +1,174 @@ +import { Accounts } from "./accounts"; +import { IMap, INormalizeError, PartialOptional, RazorpayPaginationOptions } from "./api"; +import * as fs from "fs"; + +export declare namespace Stakeholders { + interface RazorpayStakeholderBaseRequestBody { + /** + * The stakeholder's relationship with the account’s business. + */ + relationship?: RelationShip; + /** + * The stakeholder's phone number. + */ + phone: Phone; + /** + * The type of document required to establish the stakeholder's identity. + */ + kyc: { + /** + * The PAN number of the stakeholder. + */ + pan: string; + } + /** + * The stakeholder's name as per the PAN card. + */ + name: string; + /** + * The stakeholder's email address. + */ + email: string; + /** + * The stakeholder's ownership of the business in percentage. + */ + percentage_ownership?: number; + /** + * Details of stakeholder's address. + */ + addresses?: { + residential: Partial
; + } + /** + * Contains user-defined fields stored by the partner for reference purposes. + */ + notes?: IMap; + } + + + interface RazorpayStakeholderCreateRequestBody extends RazorpayStakeholderBaseRequestBody { } + + interface RazorpayStakeholderUpdateRequestBody extends Partial> { } + + interface RazorpayStakeholder extends RazorpayStakeholderBaseRequestBody { + /** + * The unique identifier of the stakeholder whose details are created. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + } + + interface Address extends Omit { + street: string; + } + + type Phone = { + /** + * The primary contact number of the stakeholder. The minimum length is 8 characters and the maximum length is 11. + */ + primary?: string; + /** + * The secondary contact number of the stakeholder. The minimum length is 8 characters and the maximum length is 11. + */ + secondary?: string; + } + + type RelationShip = { + /** + * This attribute is set to `true` if the stakeholder is a director of the account's legal entity + */ + executive?: boolean; + /** + * This attribute is set to `true` if the stakeholder is an executive of the account's legal entity. + */ + director?: boolean; + } + + interface FileCreateParams { + file: { + value: fs.ReadStream; + options: { + filename: string; + contentType: string | null; + }; + }; + document_type: string; + } + + interface RazorpayStakeholderDocuments { + individual_proof_of_address: [ + { + type: string; + url: string; + } + ] + } +} + +declare function stakeholders(api: any): { + /** + * Creates a stakeholder + * + * @param accountId - The unique identifier of the account. + * @param params - Check [doc](https://razorpay.com/docs/api/partners/stakeholder#create-a-stakeholder) for required params + * + */ + create(accountId: string, params: Stakeholders.RazorpayStakeholderCreateRequestBody): Promise + create(accountId: string, params: Stakeholders.RazorpayStakeholderCreateRequestBody, callback: (err: INormalizeError | null, data: Stakeholders.RazorpayStakeholder) => void): void; + /** + * Fetches a account given Account ID + * + * @param accountId - The unique identifier of the account. + * @param stakeholderId - The unique identifier of the stakeholder id. + * + */ + fetch(accountId: string, stakeholderId: string): Promise + fetch(accountId: string, stakeholderId: string, callback: (err: INormalizeError | null, data: Stakeholders.RazorpayStakeholder) => void): void; + /** + * Update an stakeholder + * + * @param accountId - The unique identifier of the account. + * @param params - Check [doc](https://razorpay.com/docs/api/partners/stakeholder#update-a-stakeholder) for required params + * + */ + edit(accountId: string, stakeholderId: string, params: Stakeholders.RazorpayStakeholderUpdateRequestBody): Promise + edit(accountId: string, stakeholderId: string, params: Stakeholders.RazorpayStakeholderUpdateRequestBody, callback: (err: INormalizeError | null, data: Stakeholders.RazorpayStakeholder) => void): void; + /** + * Fetch all Stakeholders + * + * @param accountId - The unique identifier of the account. + * + */ + all(accountId: string): Promise<{ + entity: string, + items: Array + }> + all(accountId: string, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void; + /** + * Upload stakeholder documents + * + * @param accountId - The unique identifier of the account. + * @param stakeholderId - The unique identifier of the stakeholder id. + * + */ + uploadStakeholderDoc(accountId: string, stakeholderId: string, params: Stakeholders.FileCreateParams): Promise + uploadStakeholderDoc(accountId: string, stakeholderId: string, params: Stakeholders.FileCreateParams, callback: (err: INormalizeError | null, data: Stakeholders.RazorpayStakeholderDocuments) => void): void; + /** + * Fetches stakeholder documents + * + * @param accountId - The unique identifier of the account. + * @param stakeholderId - The unique identifier of the stakeholder id. + * + */ + fetchStakeholderDoc(accountId: string, stakeholderId: string): Promise + fetchStakeholderDoc(accountId: string, stakeholderId: string, callback: (err: INormalizeError | null, data: Stakeholders.RazorpayStakeholderDocuments) => void): void; +} + +export default stakeholders \ No newline at end of file diff --git a/dist/types/subscriptions.d.ts b/dist/types/subscriptions.d.ts new file mode 100644 index 00000000..86236d6c --- /dev/null +++ b/dist/types/subscriptions.d.ts @@ -0,0 +1,397 @@ +import { Addons } from "./addons"; +import { IMap, RazorpayPaginationOptions, PartialOptional, INormalizeError } from "./api"; +import { Invoices } from "./invoices"; +import { Orders } from "./orders"; +import { Items } from "./items"; +import { Tokens } from "./tokens"; +import { FundAccounts } from "./fundAccount"; + +export declare namespace Subscriptions { + + interface RazorpaySubscriptionBaseRequestBody { + /** + * The unique identifier of a plan that should be linked to the Subscription. + * For example, `plan_00000000000001`. + */ + plan_id: string; + /** + * The number of billing cycles for which the customer should be charged. + */ + total_count: number; + /** + * Indicates whether the communication to the customer would be handled by you or us. + * Possible values: + * + * `0`: communication handled by you. + * + * `1` (default): communication handled by Razorpay. + */ + customer_notify?: boolean | 0 | 1; + /** + * The number of times the customer should be charged the plan + * amount per invoice. + */ + quantity?: number; + /** + * The unique identifier of the offer that is linked to the Subscription. + * You can obtain this from the Dashboard. + */ + offer_id?: string; + /** + * Unix timestamp that indicates from when the Subscription should start. + * If not passed, the Subscription starts immediately after the authorisation + * payment. + */ + start_at?: number; + /** + * Unix timestamp that indicates till when the customer can make the + * authorisation payment. + */ + expire_by?: number; + /** + * This can be used to charge the customer a one-time fee before the + * start of the Subscription. This can include something like a one-time + * delivery charge or a security deposit. Know more about + * [Add-ons](https://razorpay.com/docs/payments/subscriptions/create-add-ons). + */ + addons?: Pick[]; + /** + * Notes you can enter for the contact for future reference. This is a + * key-value pair. + */ + notes?: IMap; + /** + * Represents when the Subscription should be updated. Possible values: + * + * `now` (default value): Updates the Subscription immediately. + * + * `cycle_end`: Updates the Subscription at the end of the current billing cycle. + */ + schedule_change_at?: 'now' | 'cycle_end'; + } + + interface RazorpaySubscriptionAddonsBaseRequestBody { + /** + * List of invoices generated for the Subscription. + */ + item: Items.RazorpayItemBaseRequestBody; + /** + * The number of units of the item billed in the invoice. + * For example, `1`. + */ + quantity?: number; + } + + interface RazorpaySubscriptionCreateRequestBody extends RazorpaySubscriptionBaseRequestBody { } + + interface RazorpaySubscriptionUpdateRequestBody extends PartialOptional { + /** + * Indicates the number of billing cycles remaining on the Subscription. + */ + remaining_count?: number; + } + + interface RazorpaySubscriptionLinkCreateRequestBody extends RazorpaySubscriptionBaseRequestBody { + /** + * The customer's email and phone number to which notifications + * are to be sent. + */ + notify_info?: RazorpaySubscriptionNotifyInfo; + } + + interface RazorpaySubscriptionNotifyInfo { + notify_phone?: string | number; + notify_email?: string; + } + + interface RazorpaySubscription extends RazorpaySubscriptionBaseRequestBody { + /** + * The unique identifier linked to a Subscription. + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * Status of the Subscription. + */ + status: + | 'created' + | 'authenticated' + | 'active' + | 'pending' + | 'halted' + | 'cancelled' + | 'completed' + | 'expired'; + /** + * Indicates the start time of the current billing cycle of a Subscription. + */ + current_start?: number | null; + /** + * Indicates the end time of the current billing cycle of a Subscription. + */ + current_end?: number | null; + /** + * The Unix timestamp of when the Subscription has completed its period or + * has been cancelled midway. + */ + ended_at?: number | null; + /** + * The Unix timestamp of when the next charge on the Subscription + * should be made. + */ + charge_at: number; + /** + * The Unix timestamp, indicates from when the Subscription should start. + * If not passed, the Subscription starts immediately after the authorisation + * payment. + */ + start_at: number; + end_at: number; + /** + * The number of times the charge for the current billing cycle has been + * attempted on the card. + */ + auth_attempts: number; + /** + * Indicates the number of billing cycles the customer has already been charged. + */ + paid_count: number; + /** + * The Unix timestamp at which the plan was created. + */ + created_at: number; + /** + * URL that can be used to make the authorisation payment. + * For example, `https://rzp.io/i/PWtAiEo`. + */ + short_url: string; + /** + * Indicates if the Subscription has any scheduled changes. + */ + has_scheduled_changes: boolean; + change_scheduled_at?: number | null; + source: string; + /** + * Indicates the number of billing cycles remaining on + * the Subscription. For example, `2`. + */ + remaining_count: string; + /** + * he unique identifer of the customer who is subscribing to a plan. + * This is populated automatically after the customer completes the + * authorisation transaction. + */ + customer_id: string | null; + payment_method: string | null; + } + + interface RazorpaySubscriptionRegistrationBaseRequestBody { + /** + * The authorization method + */ + method?: 'card' | 'emandate' | 'nach' | 'upi'; + /** + * Use to set the maximum amount (in paise) per debit request. + * The value can range from `500` - `9999900`. The default value is ₹99,000. + */ + max_amount?: number; + /** + * The Unix timestamp till when you can use the token (authorization on the payment method) + * to charge the customer subsequent payments. + */ + expire_at?: number; + } + + interface RazorpaySubscriptionRegistrationUpi extends RazorpaySubscriptionRegistrationBaseRequestBody {} + + interface RazorpaySubscriptionRegistrationUpiTpv extends RazorpaySubscriptionRegistrationBaseRequestBody { + /** + * The frequency at which you can charge your customer. + */ + frequency: string; + bank_account?: Pick; + } + + interface RazorpaySubscriptionRegistrationNach extends RazorpaySubscriptionRegistrationBaseRequestBody { + bank_account?: Orders.RazorpayBankAccountBaseRequestBody; + /** + * Additional information to be printed on the NACH form your customer will sign. + */ + nach?: { + /** + * A user entered reference that appears on the NACH form. + */ + form_reference1?: string; + /** + * A user entered reference that appears on the NACH form. + */ + form_reference2?: string; + /** + * A user entered description that appears on the hosted page. + */ + description?: string; + } + } + + interface RazorpaySubscriptionRegistrationEmandate extends RazorpaySubscriptionRegistrationBaseRequestBody { + first_payment_amount: number; + /** + * The payment method used to make the authorization transaction. + */ + auth_type?: 'netbanking' | 'debitcard' | 'aadhaar' | 'physical'; + /** + * The customer's bank account details. + */ + bank_account?: Orders.RazorpayBankAccountBaseRequestBody; + } + + interface RazorpayRegistrationLinkBaseRequestBody extends Omit { + /** + * Details of the authorization payment. + */ + subscription_registration: + | RazorpaySubscriptionRegistrationUpi + | RazorpaySubscriptionRegistrationNach + | RazorpaySubscriptionRegistrationEmandate + | RazorpaySubscriptionRegistrationUpiTpv + } + + interface RazorpayRegistrationLink extends Invoices.RazorpayInvoice { + auth_link_status: string | null; + token?: Tokens.RazorpayAuthorizationToken; + nach_form_url?: string | null; + } + + interface RazorpaySubscriptionQuery extends RazorpayPaginationOptions { + plan_id?: string + } +} + +declare function subscriptions(api: any): { + /** + * Creates a Subscription + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#create-a-subscription) for required params + * + */ + create(params: Subscriptions.RazorpaySubscriptionCreateRequestBody | Subscriptions.RazorpaySubscriptionLinkCreateRequestBody): Promise + create(params: Subscriptions.RazorpaySubscriptionCreateRequestBody | Subscriptions.RazorpaySubscriptionLinkCreateRequestBody, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Get all Subscriptions + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#fetch-all-subscriptions) for required params + * + */ + all(params?: Subscriptions.RazorpaySubscriptionQuery ): Promise<{ + entity: string; + count: number; + items: Array; + }> + all(params: Subscriptions.RazorpaySubscriptionQuery , callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void + /** + * Fetch a Subscription given Subcription ID + * + * @param subscriptionId - The unique identifier of the Subscription. + * + */ + fetch(subscriptionId: string): Promise + fetch(subscriptionId: string, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Edit a subscription given Subcription ID + * + * @param subscriptionId - The unique identifier of the Subscription. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#update-a-subscription) for required params + * + */ + update(subscriptionId: string, params: Subscriptions.RazorpaySubscriptionUpdateRequestBody): Promise + update(subscriptionId: string, params: Subscriptions.RazorpaySubscriptionUpdateRequestBody, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Fetch details of pending update + * + * @param subscriptionId - The unique identifier of the Subscription. + * + */ + pendingUpdate(subscriptionId: string): Promise + pendingUpdate(subscriptionId: string, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Cancel a update + * + * @param subscriptionId - The unique identifier of the Subscription. + * + */ + cancelScheduledChanges(subscriptionId: string): Promise + cancelScheduledChanges(subscriptionId: string, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Pause a subscription + * + * @param subscriptionId - The unique identifier of the Subscription. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#pause-a-subscription) for required params + * + */ + pause(subscriptionId: string, params?: { 'pause_at': 'now' }): Promise + pause(subscriptionId: string, params: { 'pause_at': 'now' }, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Resume a subscription + * + * @param subscriptionId - The unique identifier of the Subscription. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#resume-a-subscription) for required params + * + */ + resume(subscriptionId: string, params?: { 'resume_at': 'now' }): Promise + resume(subscriptionId: string, params: { 'resume_at': 'now' }, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Cancel a subscription given id and optional cancelAtCycleEnd + * + * @param subscriptionId - The unique identifier of the Subscription. + * @param cancelAtCycleEnd - `false` or `0` (default): Cancel the subscription immediately. + * + */ + cancel(subscriptionId: string, cancelAtCycleEnd?: boolean | number): Promise + cancel(subscriptionId: string, cancelAtCycleEnd: boolean| number, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Delete offer linked to a subscription + * + * @param subscriptionId - The unique identifier of the Subscription. + * @param offerId - The unique identifier of the offer you want remove from the Subscription. + * + */ + deleteOffer(subscriptionId: string, offerId: string): Promise + deleteOffer(subscriptionId: string, offerId: string, callback: (err: INormalizeError | null, data: Subscriptions.RazorpaySubscription) => void): void; + /** + * Creates addon for a given subscription + * + * @param subscriptionId - The unique identifier of the Subscription. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/subscriptions/#create-an-add-on) for required params + * + */ + createAddon(subscriptionId: string, params: Subscriptions.RazorpaySubscriptionAddonsBaseRequestBody): Promise + createAddon(subscriptionId: string, params: Subscriptions.RazorpaySubscriptionAddonsBaseRequestBody, callback: (err: INormalizeError | null, data: Addons.RazorpayAddon) => void): void; + /** + * Creates a Registration Link + * + * @param params + * @link https://razorpay.com/docs/api/payments/recurring-payments/emandate/create-authorization-transaction#121-create-a-registration-link + * @link https://razorpay.com/docs/api/payments/recurring-payments/cards/create-authorization-transaction#121-create-a-registration-link + * @link https://razorpay.com/docs/api/payments/recurring-payments/paper-nach/create-authorization-transaction#121-create-a-registration-link + * @link https://razorpay.com/docs/api/payments/recurring-payments/upi/create-authorization-transaction#121-create-a-registration-link + * @link https://razorpay.com/docs/api/payments/recurring-payments/upi-tpv/create-authorization-transaction#121-create-a-registration-link + * + */ + createRegistrationLink(params: Subscriptions.RazorpayRegistrationLinkBaseRequestBody): Promise + createRegistrationLink(params: Subscriptions.RazorpayRegistrationLinkBaseRequestBody, callback: (err: INormalizeError | null, data: Subscriptions.RazorpayRegistrationLink) => void): void; +} + +export default subscriptions \ No newline at end of file diff --git a/dist/types/tokens.d.ts b/dist/types/tokens.d.ts new file mode 100644 index 00000000..1a8a228a --- /dev/null +++ b/dist/types/tokens.d.ts @@ -0,0 +1,348 @@ +import { IMap, INormalizeError } from "./api"; +import { Customers } from "./customers"; +import { Invoices } from "./invoices"; +import { Orders } from "./orders"; +import { Payments } from "./payments"; + + +export declare namespace Tokens { + + interface RazorpayTokenCard { + /** + * The maximum amount that can be auto-debited in a single charge. + * The minimum value is 100 (₹1 ), and the maximum value is 1500000 (₹15,000). + */ + max_amount: number; + /** + * The Unix timestamp that indicates when the authorization transaction must expire. + * The default value is 10 years. + */ + expire_at: number; + /** + * The frequency at which you can charge your customer. + * Currently supported frequencies are `as_presented` and `monthly`. + */ + frequency: string + } + + interface RazorpayTokenEmandate { + /** + * Emandate type used to make the authorization payment + */ + auth_type?: 'netbanking' | 'debitcard' | 'aadhaar' | 'physical'; + /** + * The maximum amount in paise a customer can be charged in a transaction. + * The value can range from `500` to `100000000`. The default value is `9999900` (₹99,999). + */ + max_amount?: number; + /** + * The Unix timestamp to indicate till when you can use the token (authorization on the payment method) + * to charge the customer subsequent payments. The default value is 10 years for emandate. + */ + expire_at?: number; + /** + * Key-value pair that can be used to store additional information about the entity. + * Maximum 15 key-value pairs, 256 characters (maximum) each. For example + */ + notes?: IMap; + /** + * Customer's bank account details that should be pre-filled on the checkout. + */ + bank_account?: Orders.RazorpayBankAccountBaseRequestBody; + /** + * The amount, in paise, that should be auto-charged in addition to the + * authorization amount. For example, `100000`. + */ + first_payment_amount?: number; + } + + interface RazorpayTokenNach extends RazorpayTokenEmandate { + /** + * Additional information to be printed on the NACH form that your customer will sign. + */ + nach: { + /** + * A user-entered reference that appears on the NACH form. + */ + form_reference1: string; + /** + * A user-entered reference that appears on the NACH form. + */ + form_reference2: string; + /** + * A user-entered description that appears on the hosted page. + * For example, `Form for Gaurav Kumar`. + */ + description: string; + } + } + + interface RazorpayAuthorizationToken extends RazorpayTokenEmandate { + method: string; + currency: string; + bank_account: RazorpayBankAccount; + recurring_status: any; + failure_reason: any; + nach?: { + create_form: boolean; + /** + * A user-entered reference that appears on the NACH form. + */ + form_reference1: string; + /** + * A user-entered reference that appears on the NACH form. + */ + form_reference2: string; + /** + * The link from where you can download the pre-filled NACH form. + */ + prefilled_form: string; + prefilled_form_transient: string; + /** + * The link where the NACH form should be uploaded once it is signed by the customer. + */ + upload_form_url: string; + /** + * A user-entered description that appears on the hosted page. + * For example, `Form for Gaurav Kumar`. + */ + description: string; + } + } + + interface RazorpayBankAccount extends Orders.RazorpayBankAccount, Orders.RazorpayBankAccountBaseRequestBody { } + + interface RazorpayTokenBaseRequestBody { + customer_id?: string + /** + * The type of object that needs to be tokenised. Currently, card is the only supported value. + */ + method: string + /** + * The card details. + */ + card: Payments.RazorpayCardBaseRequestBody + /** + * Token authentication details. + */ + authentication: Authentication + notes?: IMap | []; + } + + interface Authentication { + /** + * The platform through which authentication was processed + */ + provider: Provider + /** + * The unique payment identifier of the payment used to collect AFA on any PA/PG. + */ + provider_reference_id: string + /** + * A unique reference number generated when authentication is initiated. + */ + authentication_reference_number: string + } + + interface RazorpayToken { + /** + * The unique identifier linked to an item + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: string; + /** + * The token is being fetched. + */ + token: string; + /** + * Card issuing bank details. + */ + bank: string | null; + /** + * Provides wallet information. + */ + wallet: string | null; + /** + * The payment method used to make the transaction. + */ + method: string; + /** + * Details related to card used to make the transaction. + */ + card?: Payments.RazorpayCard; + /** + * The VPA details + */ + vpa?: { + /** + * The username of the VPA holder. For example, `gaurav.kumar`. + */ + username: string | null; + /** + * The VPA handle. Here it is `upi`. + */ + handle: string | null; + /** + * The name of the VPA holder. + */ + name: string | null; + }, + bank_details?: Tokens.RazorpayBankAccount; + /** + * This represents whether recurring is enabled for this token or not. + */ + recurring: boolean; + recurring_details: { + status: string; + failure_reason: string | null; + }, + /** + * The authorization type details. + */ + auth_type: string | null; + /** + * The unique identifier issued by the payment gateway during customer registration. + * This can be Gateway Reference Number or Gateway Token. + */ + mrn: string | null; + /** + * The VPA usage timestamp + */ + used_at: number; + start_time: number; + /** + * The token creation timestamp. + */ + created_at: number; + /** + * The token expiry date timestamp. + */ + expired_at: number; + /** + * Indicates whether the option to change currency is enabled or not. + */ + dcc_enabled: boolean; + /** + * The maximum amount that can be auto-debited in a single charge. + * The minimum value is 100 (₹1 ), and the maximum value is 1500000 (₹15,000). + */ + max_amount?: number; + /** + * The overall status for the token. + */ + status?: Status; + error_code?: string; + error_description?: string | null; + internal_error_code?: string | null; + source: string | null; + notes?: IMap; + compliant_with_tokenisation_guidelines?: boolean; + customer_id?: string; + customer: Customers.RazorpayCustomer; + /** + * Details of the customer's billing address. + */ + billing_address: Invoices.RazorpayInvoiceAddress; + } + + interface RazorpyProcessPayment { + token_number: string + /** + * The token cryptogram value. + */ + cryptogram_value: string + /** + * A dynamic 4-digit number printed on the front of the Amex card. This cvv should + * be passed in the CVV field to your PA/PG for processing the payment. + */ + cvv: string + /** + * The token expiry month in `mm` format. + */ + token_expiry_month: number + /** + * The token expiry year in `yyyy` format. + */ + token_expiry_year: number + /** + * The details of the card + */ + card: { + /** + * The card number. + */ + number: string + /** + * The expiry month of the card in `mm` format. + */ + expiry_month: string + /** + * The expiry year of the card in `yyyy` format. + */ + expiry_year: number + } + } + + type Status = + | 'initiated' + | 'active' + | 'suspended' + | 'deactivated' + + type Provider = + | 'amex' + | 'axis_migs' + | 'cashfree' + | 'ccavenue' + | 'cybersource' + | 'first_data' + | 'fss' + | 'hdfc' + | 'mpgs' + | 'paysecure' + | 'paytm' + | 'payu' + | 'zakpay' + | 'razorpay' + +} + +declare function tokens(api: any): { + /** + * Create a token + * + * @param params - Check [doc](https://razorpay.com/docs/payments/payment-methods/cards/token-hq/merchant-requestor/apis/#11-create-a-token) for required params + * + */ + create(params: Tokens.RazorpayTokenBaseRequestBody): Promise + create(params: Tokens.RazorpayTokenBaseRequestBody, callback: (err: INormalizeError | null, data: Tokens.RazorpayToken) => void): void; + /** + * Fetch card properties of an existing token + * + * @param params - Check [doc](https://razorpay.com/docs/payments/payment-methods/cards/token-hq/merchant-requestor/apis/#12-fetch-card-properties-of-an-existing-token) for required params + * + */ + fetch(params: { id: string}): Promise + fetch(params: { id: string}, callback: (err: INormalizeError | null, data: Tokens.RazorpayToken) => void): void; + /** + * Delete a token + * + * @param params - Check [doc](https://razorpay.com/docs/payments/payment-methods/cards/token-hq/merchant-requestor/apis/#13-delete-a-token) for required params + * + */ + delete(params: { id: string}): Promise<[]> + delete(params: { id: string}, callback: (err: INormalizeError | null, data: []) => void): void; + /** + * Process a payment on another PA/PG with token created on razorpay + * + * @param params - Check [doc](https://razorpay.com/docs/payments/payment-methods/cards/token-hq/merchant-requestor-with-network-tokens/apis/#3-process-a-payment-on-another-pa-pg) for required params + * + */ + processPaymentOnAlternatePAorPG(params: { id: string}): Promise + processPaymentOnAlternatePAorPG(params: { id: string}, callback: (err: INormalizeError | null, data: Tokens.RazorpyProcessPayment) => void): void; +} + +export default tokens \ No newline at end of file diff --git a/dist/types/transfers.d.ts b/dist/types/transfers.d.ts new file mode 100644 index 00000000..b21a07a7 --- /dev/null +++ b/dist/types/transfers.d.ts @@ -0,0 +1,222 @@ +import { IMap, INormalizeError, RazorpayPaginationOptions } from "./api"; + +export declare namespace Transfers { + interface RazorpayTransferBaseRequestBody { + /** + * Unique identifier of the linked account to which the transfer must be made. + */ + account: string; + /** + * The amount (in paise) to be transferred to the linked account. + * For example, for an amount of ₹200.35, the value of this field should be 20035. + */ + amount: number | string; + /** + * The currency used in the transaction. We support only INR for Route transactions. + */ + currency: string; + /** + * Set of key-value pairs that can be associated with an entity. + * These pairs can be useful for storing additional information about the entity. + * A maximum of 15 key-value pairs, each of 256 characters (maximum), are supported. + */ + notes?: IMap; + + } + + interface RazorpayTransferCreateRequestBody extends RazorpayTransferBaseRequestBody { } + + interface RazorpayTransferUpdateRequestBody { + /** + * Indicates whether the account settlement for transfer is on hold. + * Possible values: + * `1` - Put the transfer settlement on hold + * `0` - Releases the settlement. + */ + on_hold?: boolean | 0 | 1; + /** + * Timestamp, in Unix, that indicates until when the settlement of the transfer must be put on hold. + * If no value is passed, the settlement is put on hold indefinitely. + */ + on_hold_until?: number; + } + + interface RazorpayOrderCreateRequestBody extends RazorpayTransferBaseRequestBody, RazorpayTransferUpdateRequestBody { + linked_account_notes?: string[]; + } + + interface RazorpayPaymentCreateRequestBody extends RazorpayOrderCreateRequestBody { } + + interface RazorpayTransfer extends Omit, Omit { + /** + * Unique identifier of the transfer. + */ + id: string; + /** + * The name of the entity. + */ + entity: string; + /** + * The status of the transfer. + */ + status: 'created' | 'pending' | 'processed' | 'failed' | 'reversed' | 'partially_reversed'; + /** + * The status of the settlement. + */ + settlement_status?: 'pending' | 'on_hold' | 'settled' | null; + /** + * Unique identifier of the transfer source. The source can be a `payment` or an order. + */ + source: string; + /** + * Unique identifier of the transfer destination, that is, the linked account. + */ + recipient: string; + /** + * Amount reversed from this transfer for refunds. + */ + amount_reversed: number; + /** + * Fee (including GST) charged by Razorpay + */ + fees: number; + /** + * GST charged for the payment. + */ + tax: number | null; + /** + * Unique identifier of the settlement. + */ + recipient_settlement_id: string | null; + recipient_settlement: string | null; + /** + * Timestamp, in Unix, at which the record was created. + */ + created_at: number; + processed_at: number; + error: { + code: string | null; + description: string | null; + reason: string | null; + field: string | null; + step: string | null; + id: string | null; + source: string | null; + metadata: string | null; + } + } + + interface RazorpayReversal { + /** + * The unique identifier of the reversal. + */ + id: string, + /** + * The name of the entity. + */ + entity: string, + /** + * Unique identifier of the transfer that was reversed. + */ + transfer_id: string, + /** + * The amount that was reversed, in paise. + */ + amount: number, + /** + * Fee (including GST) charged by Razorpay + */ + fee: number | null, + /** + * GST charged for the payment. + */ + tax: number | null, + /** + * ISO currency code. We support route reversals only in INR. + */ + currency: string, + /** + * Timestamp in Unix. This indicates when the reversal was created. + */ + notes: IMap, + initiator_id: string | null, + customer_refund_id: string | null, + /** + * Description of the error that occurred during payment. + */ + created_at: number + } + + interface RazorpayTransferQuery extends RazorpayPaginationOptions { + recipient_settlement_id?: string + } +} + +declare function transfers(api: any): { + /** + * Creates a transfer + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/route/transfers/#direct-transfers) for required params + * + */ + create(params: Transfers.RazorpayTransferCreateRequestBody): Promise + create(params: Transfers.RazorpayTransferCreateRequestBody, callback: (err: INormalizeError | null, data: Transfers.RazorpayTransfer) => void): void + /** + * Fetch Transfers for a Settlement + * + * @param params - Unique identifier of a settlement obtained from the `settlement.processed` webhook payload. + * + */ + all(params?: Transfers.RazorpayTransferQuery): Promise<{ + entity: string; + count: number; + items: Array; + }> + all(params: Transfers.RazorpayTransferQuery, callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Array; + }) => void): void + /** + * Fetch a transfer + * + * @param transferId - The unique identifier of the transfer. + * + */ + fetch(transferId: string): Promise + fetch(transferId: string, callback: (err: INormalizeError | null, data: Transfers.RazorpayTransfer) => void): void + /** + * Edit a payment given Transfer ID + * + * @param transferId - The unique identifier of the transfer. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/route/transfers/#modify-settlement-hold-for-transfers) for required params + * + */ + edit(transferId: string, params: Transfers.RazorpayTransferUpdateRequestBody): Promise + edit(transferId: string, params: Transfers.RazorpayTransferUpdateRequestBody, callback: (err: INormalizeError | null, data: Transfers.RazorpayTransfer) => void): void + /** + * Reverse transfers from all linked accounts + * + * @param transferId - The unique identifier of the transfer. + * @param params - Check [doc](https://razorpay.com/docs/api/payments/route/transfers/#reverse-a-transfer) for required params + * + */ + reverse(transferId: string, params?: { amount: number }): Promise + reverse(transferId: string, params: { amount?: number }, callback: (err: INormalizeError | null, data: Transfers.RazorpayReversal) => void): void + /** + * Fetch settlement details + * + */ + fetchSettlements(): Promise<{ + entity: string; + count: string; + items: Array + }> + fetchSettlements(callback: (err: INormalizeError | null, data: { + entity: string; + count: string; + items: Array + }) => void): void +} + +export default transfers \ No newline at end of file diff --git a/dist/types/virtualAccounts.d.ts b/dist/types/virtualAccounts.d.ts new file mode 100644 index 00000000..e197617b --- /dev/null +++ b/dist/types/virtualAccounts.d.ts @@ -0,0 +1,274 @@ +import { IMap, INormalizeError, RazorpayPaginationOptions } from "./api"; +import { Orders } from "./orders"; +import { Payments } from "./payments"; + +export declare namespace VirtualAccounts { + interface RazorpayVirtualAccountBaseRequestBody { + /** + * The `merchant billing label ` as it + * appears on the Razorpay Dashboard. + */ + name?: string; + /** + * A brief description about the Customer Identifier. + */ + description?: string; + amount_expected?: string | number | null; + /** + * he amount paid by the customer into the Customer Identifier. + */ + amount_paid?: string | number; + /** + * Unique identifier of the customer the Customer Identifier + * is linked with. + */ + customer_id?: string; + /** + * Configuration of desired receivers for the Customer Identifier. + */ + receivers: RazorVirtualAccountReceiverBaseRequestBody; + /** + * UNIX timestamp at which the Customer Identifier is scheduled to + * be automatically closed + */ + close_by?: number; + /** + * Any custom notes you might want to add to the Customer Identifier + * can be entered here. + */ + notes?: IMap; + } + + interface RazorpayVirtualAccountCreateRequestBody extends RazorpayVirtualAccountBaseRequestBody { } + + interface RazorpayVirtualAccountTPVCreateRequestBody extends RazorpayVirtualAccountBaseRequestBody { + /** + * Details of customer bank accounts which will be allowed to make + * payments to your Customer Identifier. + */ + allowed_payers: RazorpayAllowedPayerBaseRequestBody[]; + } + + interface RazorpayVirtualAccount extends Omit { + /** + * The unique identifier linked to an virtual account + */ + id: string; + /** + * Indicates the type of entity. + */ + entity: 'virtual_account'; + /** + * Indicates whether the Customer Identifier is in active or closed state. + */ + status: 'active' | 'closed'; + /** + * UNIX timestamp at which the Customer Identifier is scheduled to be + * automatically closed. + */ + closed_at?: number; + /** + * UNIX timestamp at which the Customer Identifier was created. + */ + created_at?: number; + /** + * Configuration of desired receivers for the Customer Identifier. + */ + receivers: RazorpayVirtualAccountReceiver[]; + /** + * Details of customer bank accounts which will be allowed to make + * payments to your Customer Identifier. + */ + allowed_payers: RazorpayAllowedPayer[]; + } + + interface RazorpayAllowedPayerBaseRequestBody { + /** + * The type of account. Possible value is `bank_account`. + */ + type: 'bank_account'; + /** + * Indicates the bank account details such as + * `ifsc` and `account_number`. + */ + bank_account: Orders.RazorpayOrderBankDetailsBaseRequestBody; + } + + interface RazorpayAllowedPayer extends RazorpayAllowedPayerBaseRequestBody { + /** + * The unique identifier of the virtual bank account or virtual UPI ID. + * Sample IDs for: + * + * virtual bank account: `ba_Di5gbQsGn0QSz3` + * + * virtual UPI ID: `vpa_CkTmLXqVYPkbxx` + */ + id: string, + /** + * Name of the entity. Possible values are: `bank_account`, `vpa` + */ + entity: string, + } + + interface RazorVirtualAccountReceiverBaseRequestBody { + /** + * The receiver type to be added to the Customer Identifier. + */ + types?: ['bank_account' | 'vpa' | 'qr_code']; + /** + * Descriptor details for the virtual UPI ID. This is to be passed + * only when `vpa` is passed as the receiver `types`. + */ + vpa?: { + descriptor: string + }; + } + + interface RazorpayVirtualAccountReceiver { + id: string; + entity: string; + /** + * The IFSC for the virtual bank account created. + */ + ifsc: string; + /** + * The bank associated with the virtual bank account. + */ + bank_name: string; + /** + * The unique account number provided by the bank + */ + account_number: string; + /** + * The `merchant billing label ` as it + * appears on the Razorpay Dashboard. + */ + name: string; + /** + * Any custom notes you might want to add to the virtual bank account + * or virtual UPI ID can be entered here. + */ + notes: IMap; + /** + * The UPI ID consists of the username and the bank handle. + */ + username?: string; + /** + * The bank name that forms the second half of the virtual + * UPI ID. For example, icici + */ + handle?: string; + /** + * The UPI ID that combines the `username` and the `handle` with the `@` symbol. + */ + address?: string; + /** + * The URL of the QR code. + */ + short_url?: string; + /** + * A 14-digit reference number or a receipt for the payment. + * It will be the same as the value of id without the prefix `qr_`. + * A sample `reference` value will look like this: `4lsdkfldlteskf`. + */ + reference?: string | null; + updated_at:number; + /** + * The status of the payment. It can have two values, + * `active` and `closed`. + */ + status?: string; + } +} + +declare function virtualAccounts(api: any): { + /** + * Create a virtual account + * + * @param params + * @link https://razorpay.com/docs/api/payments/smart-collect/#create-a-customer-identifier + * @link https://razorpay.com/docs/api/payments/smart-collect-tpv#create-a-customer-identifier + * @link https://razorpay.com/docs/payments/payment-methods/bharatqr/api/#create + * + */ + create(params: VirtualAccounts.RazorpayVirtualAccountCreateRequestBody | VirtualAccounts.RazorpayVirtualAccountTPVCreateRequestBody): Promise + create(params: VirtualAccounts.RazorpayVirtualAccountCreateRequestBody | VirtualAccounts.RazorpayVirtualAccountTPVCreateRequestBody, callback: (err: INormalizeError | null, data: VirtualAccounts.RazorpayVirtualAccount) => void): void + /** + * Fetch all virtual account + * + * @param params - Check [doc](https://razorpay.com/docs/api/payments/smart-collect#fetch-all-customer-identifiers) for required params + * + */ + all(params?: RazorpayPaginationOptions): Promise<{ + entity: string; + count: number; + items: Array; + }> + all(params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Array; + }) => void): void + /** + * Fetch virtual account by id + * + * @param virtualId - The unique identifier of the virtual account + * + */ + fetch(virtualId: string): Promise + fetch(virtualId: string, callback: (err: INormalizeError | null, data: VirtualAccounts.RazorpayVirtualAccount) => void): void + /** + * Close virtual account + * + * @param virtualId - The unique identifier of the virtual account + * + */ + close(virtualId: string): Promise + close(virtualId: string, callback: (err: INormalizeError | null, data: any) => void): void + /** + * Fetch payments for a virtual account + * + * @param virtualId - The unique identifier of the virtual account + * @param params - Check [doc](https://razorpay.com/docs/api/payments/smart-collect-tpv#fetch-payments-for-a-customer-identifier) for required params + * + */ + fetchPayments(virtualId: string, params?: RazorpayPaginationOptions): Promise<{ + entity: string; + count: number; + items: Array; + }> + fetchPayments(virtualId: string, params: RazorpayPaginationOptions, callback: (err: INormalizeError | null, data: { + entity: string; + count: number; + items: Array; + }) => void): void + /** + * Add receiver to an existing virtual account + * + * @param virtualId - The unique identifier of the virtual account + * @param params - Check [doc](https://razorpay.com/docs/api/payments/smart-collect-tpv#add-receiver-to-an-existing-customer-identifier) for required params + * + */ + addReceiver(virtualId: string, params: VirtualAccounts.RazorVirtualAccountReceiverBaseRequestBody): Promise + addReceiver(virtualId: string, params: VirtualAccounts.RazorVirtualAccountReceiverBaseRequestBody, callback: (err: INormalizeError | null, data: VirtualAccounts.RazorpayVirtualAccount) => void): void + /** + * Add an Allowed Payer Account + * + * @param virtualId - The unique identifier of the virtual account + * @param params - Check [doc](https://razorpay.com/docs/api/payments/smart-collect-tpv#add-an-allowed-payer-account) for required params + * + */ + allowedPayer(virtualId: string, params: VirtualAccounts.RazorpayAllowedPayerBaseRequestBody): Promise + allowedPayer(virtualId: string, params: VirtualAccounts.RazorpayAllowedPayerBaseRequestBody, callback: (err: INormalizeError | null, data: VirtualAccounts.RazorpayVirtualAccount) => void): void + /** + * Delete an Allowed Payer Account + * + * @param virtualId - The unique identifier of the virtual account + * @param allowedPayerId + * + */ + deleteAllowedPayer(virtualId: string, allowedPayerId: string): Promise + deleteAllowedPayer(virtualId: string, allowedPayerId: string, callback: (err: INormalizeError | null, data: null) => void): void +} + +export default virtualAccounts \ No newline at end of file diff --git a/dist/types/webhooks.d.ts b/dist/types/webhooks.d.ts new file mode 100644 index 00000000..8fef4f3d --- /dev/null +++ b/dist/types/webhooks.d.ts @@ -0,0 +1,113 @@ +import { IMap, INormalizeError, PartialOptional, RazorpayPaginationOptions } from "./api"; + +export declare namespace Webhooks { + interface RazorpayWebhookBaseRequestBody { + /** + * The URL where you receive the webhook payload when an event is triggered. + */ + url: string; + /** + * This is the email address to which notifications must be sent in case of webhook failure. + */ + alert_email?: string; + /** + * A secret for the webhook endpoint that is used to validate that the webhook is from Razorpay. + */ + secret?: string; + /** + * The required events from the list of Active Events. + */ + events: any; + /** + * Indicates the status of webhook. + */ + active?: string; + } + + interface RazorpayWebhookCreateRequestBody extends RazorpayWebhookBaseRequestBody { } + + interface RazorpayWebhookUpdateRequestBody extends RazorpayWebhookBaseRequestBody { } + + interface RazorpayWebhook extends RazorpayWebhookBaseRequestBody { + /** + * The unique identifier of the created webhook. + */ + id: string; + /** + * Indicates the type of entity + */ + entity: string; + /** + * The unique identifier generated by Razorpay for the sub-merchant who will receive the webhooks. For example, in this case, it will be `account_id` passed in the API URL. + */ + owner_id: string; + owner_type: string; + context: string[]; + disabled_at: number; + service: boolean; + /** + * This attribute is set to `true` if a secret password has been set for the webhook endpoint. If no secret is sent in the request, this parameter does not appear in the response code. + */ + secret_exists: boolean; + /** + * Unix timestamp, when the webhook was created. + */ + created_at: number; + updated_at: number; + } +} + +declare function webhooks(api: any): { + /** + * Creates a webhook + * + * @param params - Check [doc](https://razorpay.com/docs/api/partners/webhooks/#create-a-webhook) for required params + * @param accountId - The unique identifier of the account. + */ + create(params: Webhooks.RazorpayWebhookCreateRequestBody, accountId?: string): Promise + create(params: Webhooks.RazorpayWebhookCreateRequestBody, accountId: string | null, callback: (err: INormalizeError | null, data: Webhooks.RazorpayWebhook) => void): void; + /** + * Fetches a webhook + * + * @param webhookId - The unique identifier of the webhook whose details are to be retrieved. + * @param accountId - The unique identifier of the account. + * + */ + fetch(webhookId:string, accountId: string): Promise + fetch(webhookId:string, accountId: string, callback: (err: INormalizeError | null, data: Webhooks.RazorpayWebhook) => void): void; + /** + * Fetch all webhooks + * + * @param accountId - The unique identifier of the account. + * + */ + all(params?: RazorpayPaginationOptions, accountId?: string, ): Promise<{ + entity: string, + items: Array + }> + all(params: RazorpayPaginationOptions, accountId: string | null, callback: (err: INormalizeError | null, data: { + entity: string, + count: number, + items: Array + }) => void): void; + /** + * Update an account + * + * @param params - Check [doc](https://razorpay.com/docs/api/partners/webhooks/#update-a-webhook) for required params + * @param webhookId - The unique identifier of the webhook whose details are to be retrieved. + * @param accountId - The unique identifier of the account. + */ + edit(params: Webhooks.RazorpayWebhookUpdateRequestBody, webhookId: string, accountId?: string, ): Promise + edit(params: Webhooks.RazorpayWebhookUpdateRequestBody, webhookId: string, accountId: string | null, callback: (err: INormalizeError | null, data: Webhooks.RazorpayWebhook) => void): void; + /** + * Delete an webhook + * + * @param webhookId - The unique identifier of the webhook whose details are to be retrieved. + * @param accountId - The unique identifier of the account. + * + */ + delete(webhookId: string, accountId: string): Promise<[]> + delete(webhookId: string, accountId: string, callback: (err: INormalizeError | null, data: []) => void): void; +} + +export default webhooks \ No newline at end of file diff --git a/dist/utils/nodeify.d.ts b/dist/utils/nodeify.d.ts new file mode 100644 index 00000000..3b4ca343 --- /dev/null +++ b/dist/utils/nodeify.d.ts @@ -0,0 +1 @@ +export default function (promise: Promise, callback?: (err: any, data: any) => void): Promise; \ No newline at end of file diff --git a/dist/utils/nodeify.js b/dist/utils/nodeify.js index c9b8568e..58d6151c 100644 --- a/dist/utils/nodeify.js +++ b/dist/utils/nodeify.js @@ -1,15 +1,13 @@ 'use strict'; -var nodeify = function nodeify(promise, cb) { +const nodeify = (promise, cb) => { if (!cb) { - return promise; + return promise.then(response => response.data); } - - return promise.then(function (response) { - cb(null, response); - }).catch(function (error) { + return promise.then(response => { + cb(null, response.data); + }).catch(error => { cb(error, null); }); }; - module.exports = nodeify; \ No newline at end of file diff --git a/dist/utils/predefined-tests.js b/dist/utils/predefined-tests.js index ca5c817e..9c2d4a1c 100644 --- a/dist/utils/predefined-tests.js +++ b/dist/utils/predefined-tests.js @@ -1,142 +1,116 @@ 'use strict'; -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } - -var mocker = require('../../test/mocker'), - equal = require('deep-equal'), - chai = require('chai'), - assert = chai.assert, - _require = require("../../dist/utils/razorpay-utils"), - prettify = _require.prettify, - getTestError = _require.getTestError; - - -var runCallbackCheckTest = function runCallbackCheckTest(params) { - var apiObj = params.apiObj, - methodName = params.methodName, - methodArgs = params.methodArgs, - mockerParams = params.mockerParams; - - - it("Checks if the passed api callback gets called", function (done) { - +const mocker = require('../../test/mocker'), + equal = require('deep-equal'), + chai = require('chai'), + { + assert + } = chai, + { + prettify, + getTestError + } = require("../../dist/utils/razorpay-utils"); +const runCallbackCheckTest = params => { + let { + apiObj, + methodName, + methodArgs, + mockerParams + } = params; + it("Checks if the passed api callback gets called", done => { mocker.mock(mockerParams); - - apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs).concat([function (err) { + apiObj[methodName](...methodArgs, err => { done(); - }])); + }); }); - - it("Checks for error flow", function (done) { - - mocker.mock(_extends({}, mockerParams, { replyWithError: true })); - - apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs).concat([function (err) { - + it("Checks for error flow", done => { + mocker.mock({ + ...mockerParams, + replyWithError: true + }); + apiObj[methodName](...methodArgs, err => { assert.ok(!!err, "Error callback called with error"); done(); - }])); + }); }); - - it("Checks if the api call returns a Promise", function (done) { - + it("Checks if the api call returns a Promise", done => { mocker.mock(mockerParams); - - var retVal = apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs)); - + const retVal = apiObj[methodName](...methodArgs); retVal && typeof retVal.then === "function" ? done() : done(getTestError("Invalid Return Value", String("Promise"), retVal)); }); }; - -var runURLCheckTest = function runURLCheckTest(params) { - var apiObj = params.apiObj, - methodName = params.methodName, - methodArgs = params.methodArgs, - expectedUrl = params.expectedUrl, - mockerParams = params.mockerParams; - - - it("Checks if the URL is formed correctly", function (done) { - +const runURLCheckTest = params => { + let { + apiObj, + methodName, + methodArgs, + expectedUrl, + mockerParams + } = params; + it("Checks if the URL is formed correctly", done => { mocker.mock(mockerParams); - - apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs).concat([function (err, resp) { - - var respData = resp.__JUST_FOR_TESTS__; - + apiObj[methodName](...methodArgs, (err, resp) => { + const respData = resp.__JUST_FOR_TESTS__; if (respData.url === expectedUrl) { - assert.ok(true, "URL Matched"); done(); } else { - done(getTestError("URL Mismatch", expectedUrl, respData.url)); } - }])); + }); }); }; - -var runParamsCheckTest = function runParamsCheckTest(params) { - var apiObj = params.apiObj, - methodName = params.methodName, - methodArgs = params.methodArgs, - expectedParams = params.expectedParams, - mockerParams = params.mockerParams, - testTitle = params.testTitle; - - +const runParamsCheckTest = params => { + let { + apiObj, + methodName, + methodArgs, + expectedParams, + mockerParams, + testTitle + } = params; testTitle = testTitle || "Validates URL and Params"; - - it(testTitle, function (done) { - + it(testTitle, done => { mocker.mock(mockerParams); - - apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs)).then(function (resp) { - - var respData = resp.__JUST_FOR_TESTS__, - respParams = respData[respData.method === "GET" ? "requestQueryParams" : "requestBody"]; - + apiObj[methodName](...methodArgs).then(resp => { + const respData = resp.__JUST_FOR_TESTS__, + respParams = respData[respData.method === "GET" ? "requestQueryParams" : "requestBody"]; if (equal(respParams, expectedParams)) { - assert.ok(true, "Params Matched"); } else { - return getTestError("Params Mismatch", expectedParams, respParams); } - }, function (err) { - + }, err => { return new Error(prettify(err)); - }).then(function (err) { - + }).then(err => { done(err); }); }); }; - -var runCommonTests = function runCommonTests(params) { - var apiObj = params.apiObj, - methodName = params.methodName, - methodArgs = params.methodArgs, - expectedUrl = params.expectedUrl, - expectedParams = params.expectedParams, - mockerParams = params.mockerParams; - - - runURLCheckTest(_extends({}, params)); - +const runCommonTests = params => { + let { + apiObj, + methodName, + methodArgs, + expectedUrl, + expectedParams, + mockerParams + } = params; + runURLCheckTest({ + ...params + }); if (expectedParams) { - - runParamsCheckTest(_extends({}, params)); + runParamsCheckTest({ + ...params + }); } - - runCallbackCheckTest(_extends({}, params)); + runCallbackCheckTest({ + ...params + }); }; - module.exports = { - runCallbackCheckTest: runCallbackCheckTest, - runParamsCheckTest: runParamsCheckTest, - runURLCheckTest: runURLCheckTest, - runCommonTests: runCommonTests + runCallbackCheckTest, + runParamsCheckTest, + runURLCheckTest, + runCommonTests }; \ No newline at end of file diff --git a/dist/utils/razorpay-utils.d.ts b/dist/utils/razorpay-utils.d.ts new file mode 100644 index 00000000..f584875c --- /dev/null +++ b/dist/utils/razorpay-utils.d.ts @@ -0,0 +1,90 @@ +export interface RazorpayWebhook { + /** + * Payment ID of the successful payment. + */ + payment_id: string; +} + +export interface RazorpayVerifyPayment extends RazorpayWebhook { + /** + * The id of the order to be fetched + */ + order_id: string; +} + +export interface RazorpayVerifySubscription extends RazorpayWebhook { + /** + * The id of the subscription to be fetched + */ + subscription_id: string; +} + +export interface RazorpayVerifyPaymentLink extends RazorpayWebhook { + /** + * Payment Link ID generated at the time of link creation. + */ + payment_link_id: string; + /** + * Internal order ID set by you for business reference using the `reference_id` + * parameter at the time of link creation. No value is returned if `reference_id` + * parameter was not used. + */ + payment_link_reference_id: string; + /** + * Current status of the link. + */ + payment_link_status: string; +} + +export function getDateInSecs(date: string): number + +export function normalizeDate(date: number | string): number + +export function isNumber(num: any): boolean + +export function isNonNullObject(input: Object | undefined): boolean + +export function normalizeBoolean(bool: boolean | undefined): 1 | 0 + +export function isDefined(value: any): boolean + +export function normalizeNotes(notes: Object): Object + +export function getTestError(summary: string, expectedVal: string, gotVal: string): Error + +/** +* Verify webhook verification +* +* @param body +* raw webhook request body +* @param signature +* The hash signature is calculated using HMAC with SHA256 algorithm; with your webhook +* secret set as the key and the webhook request body as the message. +* @param secret +* your webhook secret +* +*/ +export function validateWebhookSignature(body: string, signature: string, secret: string): boolean + +/** +* Payment verfication +* +* @param payload +* Check [doc](https://github.com/razorpay/razorpay-node/blob/master/documents/paymentVerfication.md) for required params +* @param signature +* The hash signature is calculated using HMAC with SHA256 algorithm; with your webhook +* secret set as the key and the webhook request body as the message. +* @param secret +* your webhook secret +* +*/ +export function validatePaymentVerification(payload: RazorpayVerifyPayment | RazorpayVerifySubscription | RazorpayVerifyPaymentLink, signature: string, secret: string): boolean + +/** +* given an object , returns prettified string +* +* @param val +*/ +export function prettify(val: Object): string + +export function generateOnboardingSignature(params: any, secret: string): string \ No newline at end of file diff --git a/dist/utils/razorpay-utils.js b/dist/utils/razorpay-utils.js index e776c700..4ac72d4a 100644 --- a/dist/utils/razorpay-utils.js +++ b/dist/utils/razorpay-utils.js @@ -1,48 +1,35 @@ "use strict"; -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - +const crypto = require("crypto"); function getDateInSecs(date) { return +new Date(date) / 1000; } - function normalizeDate(date) { return isNumber(date) ? date : getDateInSecs(date); } - function isNumber(num) { return !isNaN(Number(num)); } - function isNonNullObject(input) { - return !!input && (typeof input === "undefined" ? "undefined" : _typeof(input)) === "object" && !Array.isArray(input); + return !!input && typeof input === "object" && !Array.isArray(input); } - function normalizeBoolean(bool) { if (bool === undefined) { return bool; } - return bool ? 1 : 0; } - function isDefined(value) { - return typeof value !== "undefined"; } - -function normalizeNotes() { - var notes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - - var normalizedNotes = {}; - for (var key in notes) { - normalizedNotes["notes[" + key + "]"] = notes[key]; +function normalizeNotes(notes = {}) { + let normalizedNotes = {}; + for (let key in notes) { + normalizedNotes[`notes[${key}]`] = notes[key]; } return normalizedNotes; } - function prettify(val) { - /* * given an object , returns prettified string * @@ -52,9 +39,7 @@ function prettify(val) { return JSON.stringify(val, null, 2); } - function getTestError(summary, expectedVal, gotVal) { - /* * @param {String} summary * @param {*} expectedVal @@ -63,11 +48,9 @@ function getTestError(summary, expectedVal, gotVal) { * @return {Error} */ - return new Error("\n" + summary + "\n" + ("Expected(" + (typeof expectedVal === "undefined" ? "undefined" : _typeof(expectedVal)) + ")\n" + prettify(expectedVal) + "\n\n") + ("Got(" + (typeof gotVal === "undefined" ? "undefined" : _typeof(gotVal)) + ")\n" + prettify(gotVal))); + return new Error(`\n${summary}\n` + `Expected(${typeof expectedVal})\n${prettify(expectedVal)}\n\n` + `Got(${typeof gotVal})\n${prettify(gotVal)}`); } - function validateWebhookSignature(body, signature, secret) { - /* * Verifies webhook signature * @@ -79,25 +62,28 @@ function validateWebhookSignature(body, signature, secret) { */ var crypto = require("crypto"); - if (!isDefined(body) || !isDefined(signature) || !isDefined(secret)) { - throw Error("Invalid Parameters: Please give request body," + "signature sent in X-Razorpay-Signature header and " + "webhook secret from dashboard as parameters"); } - body = body.toString(); - var expectedSignature = crypto.createHmac('sha256', secret).update(body).digest('hex'); + // Compute HMAC as raw bytes (32 bytes for SHA-256) + var expectedBuffer = crypto.createHmac('sha256', secret).update(body).digest(); - return expectedSignature === signature; -} - -function validatePaymentVerification() { - var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var signature = arguments[1]; - var secret = arguments[2]; + // Decode incoming hex signature to raw bytes + // Note: Buffer.from(hex) returns empty/partial Buffer on invalid hex (no throw), + // which is caught by the length check below + var signatureBuffer = Buffer.from(signature, 'hex'); + // Both should be 32 bytes (SHA-256 output) + if (expectedBuffer.length !== signatureBuffer.length) { + return false; + } + // Constant-time comparison to prevent timing attacks + return crypto.timingSafeEqual(expectedBuffer, signatureBuffer); +} +function validatePaymentVerification(params = {}, signature, secret) { /* * Payment verfication * @@ -107,44 +93,77 @@ function validatePaymentVerification() { * @return {Boolean} */ - var paymentId = params.payment_id; - + let paymentId = params.payment_id; if (!secret) { - throw new Error("secret is mandatory"); } - if (isDefined(params.order_id) === true) { - var orderId = params.order_id; var payload = orderId + '|' + paymentId; } else if (isDefined(params.subscription_id) === true) { - var subscriptionId = params.subscription_id; var payload = paymentId + '|' + subscriptionId; } else if (isDefined(params.payment_link_id) === true) { - var paymentLinkId = params.payment_link_id; var paymentLinkRefId = params.payment_link_reference_id; var paymentLinkStatus = params.payment_link_status; - var payload = paymentLinkId + '|' + paymentLinkRefId + '|' + paymentLinkStatus + '|' + paymentId; } else { throw new Error('Either order_id or subscription_id is mandatory'); } return validateWebhookSignature(payload, signature, secret); -}; - +} +; +function generateOnboardingSignature(params = {}, secret) { + let jsonStr = JSON.stringify(params); + return encrypt(jsonStr, secret); +} +function encrypt(dataToEncrypt, secret) { + try { + // Use first 16 bytes of secret as key + const keyBytes = Buffer.from(secret.slice(0, 16), 'utf8'); + + // Use first 12 bytes of key as IV + const iv = Buffer.alloc(12); + keyBytes.copy(iv, 0, 0, 12); + + // Create cipher with AES-GCM + const cipher = crypto.createCipheriv('aes-128-gcm', keyBytes, iv); + + // Encrypt the data + let encryptedData = cipher.update(dataToEncrypt, 'utf8'); + encryptedData = Buffer.concat([encryptedData, cipher.final()]); + + // Get authentication tag and append to encrypted data + const authTag = cipher.getAuthTag(); + const finalData = Buffer.concat([encryptedData, authTag]); + + // Convert to hex string + return finalData.toString('hex'); + } catch (err) { + throw new Error(`Encryption failed: ${err.message}`); + } +} +function isValidUrl(url) { + try { + new URL(url); + return true; + } catch (error) { + return false; + } +} module.exports = { - normalizeNotes: normalizeNotes, - normalizeDate: normalizeDate, - normalizeBoolean: normalizeBoolean, - isNumber: isNumber, - getDateInSecs: getDateInSecs, - prettify: prettify, - isDefined: isDefined, - isNonNullObject: isNonNullObject, - getTestError: getTestError, - validateWebhookSignature: validateWebhookSignature, - validatePaymentVerification: validatePaymentVerification + normalizeNotes, + normalizeDate, + normalizeBoolean, + isNumber, + getDateInSecs, + prettify, + isDefined, + isNonNullObject, + getTestError, + validateWebhookSignature, + validatePaymentVerification, + isValidUrl, + generateOnboardingSignature }; \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 7daa7895..a8567726 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,81 +1,105 @@ { "name": "razorpay", - "version": "2.9.4", + "version": "2.9.6", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "razorpay", - "version": "2.9.4", + "version": "2.9.6", "license": "MIT", "dependencies": { - "axios": "^1.6.8" + "axios": "^1.7.0" }, "devDependencies": { + "@babel/cli": "^7.27.0", + "@babel/core": "^7.27.0", + "@babel/preset-env": "^7.27.0", + "@babel/register": "^7.27.0", "@types/node": "^20.12.12", - "babel-cli": "^6.26.0", - "babel-preset-env": "^1.7.0", - "babel-preset-stage-0": "^6.24.0", - "babel-register": "^6.26.0", - "chai": "^4.3.4", + "chai": "^5.0", "deep-equal": "^2.0.5", - "mocha": "^9.0.0", - "nock": "^13.1.1", - "nyc": "^15.1.0", + "mocha": "^11.0", + "nock": "^14.0", + "nyc": "^17.0", "typescript": "^4.9.4" + }, + "engines": { + "node": ">=24.0.0" } }, - "node_modules/@ampproject/remapping": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", - "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "node_modules/@babel/cli": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.28.6.tgz", + "integrity": "sha512-6EUNcuBbNkj08Oj4gAZ+BUU8yLCgKzgVX4gaTh09Ya2C8ICM4P+G30g4m3akRxSYAp3A/gnWchrNst7px4/nUQ==", "dev": true, + "license": "MIT", "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" + "@jridgewell/trace-mapping": "^0.3.28", + "commander": "^6.2.0", + "convert-source-map": "^2.0.0", + "fs-readdir-recursive": "^1.1.0", + "glob": "^7.2.0", + "make-dir": "^2.1.0", + "slash": "^2.0.0" + }, + "bin": { + "babel": "bin/babel.js", + "babel-external-helpers": "bin/babel-external-helpers.js" }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "optionalDependencies": { + "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.3", + "chokidar": "^3.6.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.3.tgz", + "integrity": "sha512-LIVqM46zQWZhj17qA8wb4nW/ixr2y1Nw+r1etiAWgRM6U1IqP+LNhL1yg440jYZR72jCWcWbLWzIosH+uP1fqg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", - "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.24.5", - "@babel/helpers": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -90,135 +114,199 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "node_modules/@babel/core/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@babel/generator": { + "version": "7.29.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", "dev": true, + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=6.9.0" } }, - "node_modules/@babel/core/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/@babel/generator": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", - "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.24.5", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" + "@babel/types": "^7.27.3" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/generator/node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/@babel/helper-compilation-targets": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" }, "engines": { - "node": ">=4" + "node": ">=6.9.0" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.29.3.tgz", + "integrity": "sha512-RpLYy2sb51oNLjuu1iD3bwBqCBWUzjO0ocp+iaCP/lJtb2CPLcnC2Fftw+4sAzaMELGeWTgExSKADbdo0GFVzA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-member-expression-to-functions": "^7.28.5", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.28.6", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.29.0", "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.28.5.tgz", + "integrity": "sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "regexpu-core": "^6.3.1", + "semver": "^6.3.1" + }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.8.tgz", + "integrity": "sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "debug": "^4.4.3", + "lodash.debounce": "^4.0.8", + "resolve": "^1.22.11" }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.28.5.tgz", + "integrity": "sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.22.5" + "@babel/traverse": "^7.28.5", + "@babel/types": "^7.28.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.24.0" + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", - "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", + "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz", + "integrity": "sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==", + "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.24.3", - "@babel/helper-simple-access": "^7.24.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/helper-validator-identifier": "^7.24.5" + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-wrap-function": "^7.27.1", + "@babel/traverse": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -227,1603 +315,1887 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", - "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", + "node_modules/@babel/helper-replace-supers": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.28.6.tgz", + "integrity": "sha512-mq8e+laIk94/yFec3DxSjCRD2Z0TAjhVbEJY3UQrlwVo15Lmt7C2wAUbK4bjnTs4APkwsYLTahXRraQXhb1WCg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.24.5" + "@babel/helper-member-expression-to-functions": "^7.28.5", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.28.6" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", - "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.24.5" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", - "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helpers": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", - "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", + "node_modules/@babel/helper-wrap-function": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.28.6.tgz", + "integrity": "sha512-z+PwLziMNBeSQJonizz2AGnndLsP2DeGHIxDAn+wdHOGuo4Fo1x1HBPPXeE9TAOPHNNWQKCSlA2VZyYyyibDnQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5" + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", - "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", + "node_modules/@babel/helpers": { + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.24.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/@babel/parser": { + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.3.tgz", + "integrity": "sha512-b3ctpQwp+PROvU/cttc4OYl4MzfJUWy6FZg+PMXfzmt/+39iHVF0sDfqay8TQM3JA2EUOyKcFZt75jWriQijsA==", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^1.9.0" + "@babel/types": "^7.29.0" + }, + "bin": { + "parser": "bin/babel-parser.js" }, "engines": { - "node": ">=4" + "node": ">=6.0.0" } }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.28.5.tgz", + "integrity": "sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.5" }, "engines": { - "node": ">=4" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/highlight/node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz", + "integrity": "sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==", "dev": true, + "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { - "node": ">=4" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/parser": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", - "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz", + "integrity": "sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==", "dev": true, - "bin": { - "parser": "bin/babel-parser.js" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": { + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/-/plugin-bugfix-safari-rest-destructuring-rhs-array-7.29.3.tgz", + "integrity": "sha512-SRS46DFR4HqzUzCVgi90/xMoL+zeBDBvWdKYXSEzh79kXswNFEglUpMKxR04//dPqwYXWUBJ3mpUd933ru9Kmg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/traverse": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", - "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz", + "integrity": "sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/types": "^7.24.5", - "debug": "^4.3.1", - "globals": "^11.1.0" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" } }, - "node_modules/@babel/traverse/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.28.6.tgz", + "integrity": "sha512-a0aBScVTlNaiUe35UtfxAN7A/tehvvG4/ByO6+46VPKTRSlfnAFsgKy0FUh+qAkQrDTmhDkT+IBOKlOoMUxQ0g==", "dev": true, + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/traverse": "^7.28.6" }, "engines": { - "node": ">=6.0" + "node": ">=6.9.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", "dev": true, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/traverse/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/@babel/types": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", - "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.28.6.tgz", + "integrity": "sha512-pSJUpFHdx9z5nqTSirOCMtYVP2wFgoWhP0p3g8ONK/4IHhLIBd0B9NYqAvIUAhq+OkhO4VM1tENCt0cjlsNShw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.24.1", - "@babel/helper-validator-identifier": "^7.24.5", - "to-fast-properties": "^2.0.0" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/types/node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz", + "integrity": "sha512-jiLC0ma9XkQT3TKJ9uYvlakm66Pamywo+qwL+oL8HJOvc6TWdZXVfhqJr8CCzbSGUAbDOzlGHJC1U+vRfLQDvw==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.28.6" + }, "engines": { - "node": ">=4" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dev": true, + "license": "MIT", "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", + "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", "dev": true, + "license": "MIT", "dependencies": { - "sprintf-js": "~1.0.2" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.0.tgz", + "integrity": "sha512-va0VdWro4zlBr2JsXC+ofCPB2iG12wPtVGTWFx2WLDOM3nYQZZIGP82qku2eW/JR83sD+k2k+CsNtyEbUqhU6w==", "dev": true, + "license": "MIT", "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-remap-async-to-generator": "^7.27.1", + "@babel/traverse": "^7.29.0" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.28.6.tgz", + "integrity": "sha512-ilTRcmbuXjsMmcZ3HASTe4caH5Tpo93PkTxF9oG2VZsSWsahydmcEHhix9Ik122RcTnZnUzPbmux4wh1swfv7g==", "dev": true, + "license": "MIT", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-remap-async-to-generator": "^7.27.1" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz", + "integrity": "sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==", "dev": true, + "license": "MIT", "dependencies": { - "p-locate": "^4.1.0" + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.6.tgz", + "integrity": "sha512-tt/7wOtBmwHPNMPu7ax4pdPz6shjFrmHDghvNC+FG9Qvj7D6mJcoRQIF5dy4njmxR941l6rgtvfSB2zX3VlUIw==", "dev": true, + "license": "MIT", "dependencies": { - "p-try": "^2.0.0" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { - "node": ">=6" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.28.6.tgz", + "integrity": "sha512-dY2wS3I2G7D697VHndN91TJr8/AAfXQNt5ynCTI/MpxMsSzHp+52uNivYT5wCPax3whc47DR8Ba7cmlQMg24bw==", "dev": true, + "license": "MIT", "dependencies": { - "p-limit": "^2.2.0" + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.28.6.tgz", + "integrity": "sha512-rfQ++ghVwTWTqQ7w8qyDxL1XGihjBss4CmTgGRCTAC9RIbhVpyp4fOeZtta0Lbf+dTNIVJer6ych2ibHwkZqsQ==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "node_modules/@babel/plugin-transform-classes": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.6.tgz", + "integrity": "sha512-EF5KONAqC5zAqT783iMGuM2ZtmEBy+mJMOKl2BCvPZ2lVrwvXnB6o+OBWCS+CoeCCpVRF2sA2RBKUxvT8tQT5Q==", "dev": true, + "license": "MIT", "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-globals": "^7.28.0", + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-replace-supers": "^7.28.6", + "@babel/traverse": "^7.28.6" }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.28.6.tgz", + "integrity": "sha512-bcc3k0ijhHbc2lEfpFHgx7eYw9KNXqOerKWfzbxEHUGKnS3sz9C4CNL9OiFN1297bDNfUiSO7DaLzbvHQQQ1BQ==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/template": "^7.28.6" + }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.5.tgz", + "integrity": "sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.5" + }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.28.6.tgz", + "integrity": "sha512-SljjowuNKB7q5Oayv4FoPzeB74g3QgLt8IVJw9ADvWy3QnUb/01aw8I4AVv8wYnPvQz2GDDZ/g3GhcNyDBI4Bg==", "dev": true, + "license": "MIT", "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@types/node": { - "version": "20.12.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", - "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz", + "integrity": "sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==", "dev": true, + "license": "MIT", "dependencies": { - "undici-types": "~5.26.4" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@ungap/promise-all-settled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", - "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", - "dev": true - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.0.tgz", + "integrity": "sha512-zBPcW2lFGxdiD8PUnPwJjag2J9otbcLQzvbiOzDxpYXyCuYX9agOwMPGn1prVH0a4qzhCKu24rlH4c1f7yA8rw==", "dev": true, + "license": "MIT", "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz", + "integrity": "sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, "engines": { - "node": ">=6" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "node_modules/@babel/plugin-transform-explicit-resource-management": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.6.tgz", + "integrity": "sha512-Iao5Konzx2b6g7EPqTy40UZbcdXE126tTxVFr/nAIj+WItNxjKSYTEw3RC+A2/ZetmdJsgueL1KhaMCQHkLPIg==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/plugin-transform-destructuring": "^7.28.5" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.28.6.tgz", + "integrity": "sha512-WitabqiGjV/vJ0aPOLSFfNY1u9U3R7W36B03r5I2KoNix+a3sOhJ3pKFB3R5It9/UiK78NiO0KE9P21cMhlPkw==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.28.6" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz", + "integrity": "sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/append-transform": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", - "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz", + "integrity": "sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==", "dev": true, + "license": "MIT", "dependencies": { - "default-require-extensions": "^3.0.0" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha512-dtXTVMkh6VkEEA7OhXnN1Ecb8aAGFdZ1LFxtOCoqj4qkyOJMt7+qs6Ahdy6p/NQCPYsRSXXivhSB/J5E9jmYKA==", + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz", + "integrity": "sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "arr-flatten": "^1.0.1" + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.28.6.tgz", + "integrity": "sha512-Nr+hEN+0geQkzhbdgQVPoqr47lZbm+5fCUmO70722xJZd0Mvb59+33QLImGj6F+DkK3xgDi1YVysP8whD6FQAw==", "dev": true, - "optional": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.28.6" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "node_modules/@babel/plugin-transform-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz", + "integrity": "sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==", "dev": true, - "optional": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.28.6.tgz", + "integrity": "sha512-+anKKair6gpi8VsM/95kmomGNMD0eLz1NQ8+Pfw5sAwWH9fGYXT50E55ZpV0pHUHWf6IUTWPM+f/7AAff+wr9A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { - "node": ">= 0.4" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha512-G2n5bG5fSUCpnsXz4+8FUkYsGPkNfLn9YvS66U5qbTIXI2Ynnlo4Bi42bWv+omKUCqz+ejzfClwne0alJWJPhg==", + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz", + "integrity": "sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==", "dev": true, - "optional": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz", + "integrity": "sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, "engines": { - "node": "*" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.28.6.tgz", + "integrity": "sha512-jppVbf8IV9iWWwWTQIxJMAJCWBuuKx71475wHwYytrRGQ2CWiDvYlADQno3tcYpS/T2UUWFQp3nVtYfK/YBQrA==", "dev": true, - "optional": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/async-each": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz", - "integrity": "sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "optional": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.29.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.4.tgz", + "integrity": "sha512-N7QmZ0xRZfjHOfZeQLJjwgX2zS9pdGHSVl/cjSGlo4dXMqvurfxXDMKY4RqEKzPozV78VMcd0lxyG13mlbKc4w==", "dev": true, - "optional": true, - "bin": { - "atob": "bin/atob.js" + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.29.0" }, "engines": { - "node": ">= 4.5.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz", + "integrity": "sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==", "dev": true, + "license": "MIT", "dependencies": { - "possible-typed-array-names": "^1.0.0" + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { - "node": ">= 0.4" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/axios": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", - "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", - "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/babel-cli": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz", - "integrity": "sha512-wau+BDtQfuSBGQ9PzzFL3REvR9Sxnd4LKwtcHAiPjhugA7K/80vpHXafj+O5bAqJOuSefjOx5ZJnNSR2J1Qw6Q==", - "dev": true, - "dependencies": { - "babel-core": "^6.26.0", - "babel-polyfill": "^6.26.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "commander": "^2.11.0", - "convert-source-map": "^1.5.0", - "fs-readdir-recursive": "^1.0.0", - "glob": "^7.1.2", - "lodash": "^4.17.4", - "output-file-sync": "^1.1.2", - "path-is-absolute": "^1.0.1", - "slash": "^1.0.0", - "source-map": "^0.5.6", - "v8flags": "^2.1.1" + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.0.tgz", + "integrity": "sha512-1CZQA5KNAD6ZYQLPw7oi5ewtDNxH/2vuCh+6SmvgDfhumForvs8a1o9n0UrEoBD8HU4djO2yWngTQlXl1NDVEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" }, - "bin": { - "babel": "bin/babel.js", - "babel-doctor": "bin/babel-doctor.js", - "babel-external-helpers": "bin/babel-external-helpers.js", - "babel-node": "bin/babel-node.js" + "engines": { + "node": ">=6.9.0" }, - "optionalDependencies": { - "chokidar": "^1.6.1" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g==", + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz", + "integrity": "sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==", "dev": true, + "license": "MIT", "dependencies": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.28.6.tgz", + "integrity": "sha512-3wKbRgmzYbw24mDJXT7N+ADXw8BC/imU9yo9c9X9NKaLF1fW+e5H1U5QjMUBe4Qo4Ox/o++IyUkl1sVCLgevKg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^2.2.3", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.28.6.tgz", + "integrity": "sha512-SJR8hPynj8outz+SlStQSwvziMN4+Bq99it4tMIf5/Caq+3iOc0JtKyse8puvyXkk3eFRIA5ID/XfunGgO5i6w==", "dev": true, + "license": "MIT", "dependencies": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-bindify-decorators": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", - "integrity": "sha512-TYX2QQATKA6Wssp6j7jqlw4QLmABDN1olRdEHndYvBXdaXM5dcx6j5rN0+nd+aVL+Th40fAEYvvw/Xxd/LETuQ==", + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.6.tgz", + "integrity": "sha512-5rh+JR4JBC4pGkXLAcYdLHZjXudVxWMXbB6u6+E9lRL5TrGVbHt1TjxGbZ8CkmYw9zjkB7jutzOROArsqtncEA==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/plugin-transform-destructuring": "^7.28.5", + "@babel/plugin-transform-parameters": "^7.27.7", + "@babel/traverse": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha512-gCtfYORSG1fUMX4kKraymq607FWgMWg+j42IFPc18kFQEsmtaibP4UrqsXt8FlEJle25HUd4tsoDR7H2wDhe9Q==", + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz", + "integrity": "sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha512-RL8n2NiEj+kKztlrVJM9JT1cXzzAdvWFh76xh/H1I4nKwunzE4INBXn8ieCZ+wh4zWszZk7NBS1s/8HR5jDkzQ==", + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.28.6.tgz", + "integrity": "sha512-R8ja/Pyrv0OGAvAXQhSTmWyPJPml+0TMqXlO5w+AsMEiwb2fg3WkOvob7UxFSL3OIttFSGSRFKQsOhJ/X6HQdQ==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-define-map": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", - "integrity": "sha512-bHkmjcC9lM1kmZcVpA5t2om2nzT/xiZpo6TJq7UlZ3wqKfzia4veeXbIhKvJXAMzhhEBd3cR1IElL5AenWEUpA==", + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.28.6.tgz", + "integrity": "sha512-A4zobikRGJTsX9uqVFdafzGkqD30t26ck2LmOzAuLL8b2x6k3TIqRiT2xVvA9fNmFeTX484VpsdgmKNA0bS23w==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha512-qe5csbhbvq6ccry9G7tkXbzNtcDiH4r51rrPUbwwoTzZ18AqxWYRZT6AOmxrpxKnQBW0pYlBI/8vh73Z//78nQ==", + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz", + "integrity": "sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-explode-class": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", - "integrity": "sha512-SFbWewr0/0U4AiRzsHqwsbOQeLXVa9T1ELdqEa2efcQB5KopTnunAqoj07TuHlN2lfTQNPGO/rJR4FMln5fVcA==", + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.28.6.tgz", + "integrity": "sha512-piiuapX9CRv7+0st8lmuUlRSmX6mBcVeNQ1b4AYzJxfCMuBfB0vBXDiGSmm03pKJw1v6cZ8KSeM+oUnM6yAExg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-bindify-decorators": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha512-Oo6+e2iX+o9eVvJ9Y5eKL5iryeRdsIkwRYheCuhYdVHsdEQysbc2z2QkqCLIYnNxkT5Ss3ggrHdXiDI7Dhrn4Q==", + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.28.6.tgz", + "integrity": "sha512-b97jvNSOb5+ehyQmBpmhOCiUC5oVK4PMnpRvO7+ymFBoqYjeDHIU9jnrNUuwHOiL9RpGDoKBpSViarV+BU+eVA==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-create-class-features-plugin": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha512-WfgKFX6swFB1jS2vo+DwivRN4NB8XUdM3ij0Y1gnC21y1tdBoe6xjVnd7NSI6alv+gZXCtJqvrTeMW3fR/c0ng==", + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz", + "integrity": "sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha512-zAYl3tqerLItvG5cKYw7f1SpvIxS9zi7ohyGHaI9cgDUjAT6YcY9jIEH5CstetP5wHIVSceXwNS7Z5BpJg+rOw==", + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.0.tgz", + "integrity": "sha512-FijqlqMA7DmRdg/aINBSs04y8XNTYw/lr1gJ2WsmBnnaNw1iS43EPkJW+zK7z65auG3AWRFXWj+NcTQwYptUog==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-optimise-call-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", - "integrity": "sha512-Op9IhEaxhbRT8MDXx2iNuMgciu2V8lDvYCNQbDGjdBNCjaMvyLf4wl4A3b8IgndCyQF8TwfgsQ8T3VD8aX1/pA==", + "node_modules/@babel/plugin-transform-regexp-modifiers": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.28.6.tgz", + "integrity": "sha512-QGWAepm9qxpaIs7UM9FvUSnCGlb8Ua1RhyM4/veAxLwt3gMat/LSGrZixyuj4I6+Kn9iwvqCyPTtbdxanYoWYg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha512-VlPiWmqmGJp0x0oK27Out1D+71nVVCTSdlbhIVoaBAj2lUgrNjBCRR9+llO4lTSb2O4r7PJg+RobRkhBrf6ofg==", + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz", + "integrity": "sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha512-RYqaPD0mQyQIFRu7Ho5wE2yvA/5jxqCIj/Lv4BXNq23mHYu/vxikOy2JueLiBxQknwapwrJeNCesvY0ZcfnlHg==", + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz", + "integrity": "sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helper-replace-supers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", - "integrity": "sha512-sLI+u7sXJh6+ToqDr57Bv973kCepItDhMou0xCP2YPVmR1jkHSCY+p1no8xErbV1Siz5QE8qKT1WIwybSWlqjw==", + "node_modules/@babel/plugin-transform-spread": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.28.6.tgz", + "integrity": "sha512-9U4QObUC0FtJl05AsUcodau/RWDytrU6uKgkxu09mLR9HLDAtUMoPuuskm5huQsoktmsYpI+bGmq+iapDcriKA==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ==", + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz", + "integrity": "sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w==", + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz", + "integrity": "sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha512-B1M5KBP29248dViEo1owyY32lk1ZSH2DaNNrXLGt8lyjjHm7pBqAdQ7VKUPR6EEDO323+OvT3MQXbCin8ooWdA==", + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz", + "integrity": "sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha512-4Zp4unmHgw30A1eWI5EpACji2qMocisdXhAftfhXoSV9j0Tvj6nRFE3tOmRY912E0FMRm/L5xWE7MGVT2FoLnw==", - "dev": true - }, - "node_modules/babel-plugin-syntax-async-generators": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", - "integrity": "sha512-EbciFN5Jb9iqU9bqaLmmFLx2G8pAUsvpWJ6OzOWBNrSY9qTohXj+7YfZx6Ug1Qqh7tCb1EA7Jvn9bMC1HBiucg==", - "dev": true - }, - "node_modules/babel-plugin-syntax-class-constructor-call": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz", - "integrity": "sha512-EEuBcXz/wZ81Jaac0LnMHtD4Mfz9XWn2oH2Xj+CHwz2SZWUqqdtR2BgWPSdTGMmxN/5KLSh4PImt9+9ZedDarA==", - "dev": true - }, - "node_modules/babel-plugin-syntax-class-properties": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", - "integrity": "sha512-chI3Rt9T1AbrQD1s+vxw3KcwC9yHtF621/MacuItITfZX344uhQoANjpoSJZleAmW2tjlolqB/f+h7jIqXa7pA==", - "dev": true - }, - "node_modules/babel-plugin-syntax-decorators": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", - "integrity": "sha512-AWj19x2aDm8qFQ5O2JcD6pwJDW1YdcnO+1b81t7gxrGjz5VHiUqeYWAR4h7zueWMalRelrQDXprv2FrY1dbpbw==", - "dev": true - }, - "node_modules/babel-plugin-syntax-do-expressions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz", - "integrity": "sha512-HD/5qJB9oSXzl0caxM+aRD7ENICXqcc3Up/8toDQk7zNIDE7TzsqtxC5f4t9Rwhu2Ya8l9l4j6b3vOsy+a6qxg==", - "dev": true - }, - "node_modules/babel-plugin-syntax-dynamic-import": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", - "integrity": "sha512-MioUE+LfjCEz65Wf7Z/Rm4XCP5k2c+TbMd2Z2JKc7U9uwjBhAfNPE48KC4GTGKhppMeYVepwDBNO/nGY6NYHBA==", - "dev": true - }, - "node_modules/babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha512-Z/flU+T9ta0aIEKl1tGEmN/pZiI1uXmCiGFRegKacQfEJzp7iNsKloZmyJlQr+75FCJtiFfGIK03SiCvCt9cPQ==", - "dev": true - }, - "node_modules/babel-plugin-syntax-export-extensions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz", - "integrity": "sha512-Eo0rcRaIDMld/W6mVhePiudIuLW+Cr/8eveW3mBREfZORScZgx4rh6BAPyvzdEc/JZvQ+LkC80t0VGFs6FX+lg==", - "dev": true - }, - "node_modules/babel-plugin-syntax-function-bind": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz", - "integrity": "sha512-m8yMoh9LIiNyeLdQs5I9G+3YXo4nqVsKQkk7YplrG4qAFbNi9hkZlow8HDHxhH9QOVFPHmy8+03NzRCdyChIKw==", - "dev": true - }, - "node_modules/babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha512-C4Aq+GaAj83pRQ0EFgTvw5YO6T3Qz2KGrNRwIj9mSoNHVvdZY4KO2uA6HNtNXCw993iSZnckY1aLW8nOi8i4+w==", - "dev": true - }, - "node_modules/babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha512-Gx9CH3Q/3GKbhs07Bszw5fPTlU+ygrOGfAhEt7W2JICwufpC4SuO0mG0+4NykPBSYPMJhqvVlDBU17qB1D+hMQ==", - "dev": true - }, - "node_modules/babel-plugin-transform-async-generator-functions": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", - "integrity": "sha512-uT7eovUxtXe8Q2ufcjRuJIOL0hg6VAUJhiWJBLxH/evYAw+aqoJLcYTR8hqx13iOx/FfbCMHgBmXWZjukbkyPg==", + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz", + "integrity": "sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-generators": "^6.5.0", - "babel-runtime": "^6.22.0" + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha512-7BgYJujNCg0Ti3x0c/DL3tStvnKS6ktIYOmo9wginv/dfZOrbSZ+qG4IRRHMBOzZ5Awb1skTiAsQXg/+IWkZYw==", + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.28.6.tgz", + "integrity": "sha512-4Wlbdl/sIZjzi/8St0evF0gEZrgOswVO6aOzqxh1kDZOl9WmLrHq2HtGhnOJZmHZYKP8WZ1MDLCt5DAWwRo57A==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-transform-class-constructor-call": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz", - "integrity": "sha512-RvYukT1Nh7njz8P8326ztpQUGCKwmjgu6aRIx1lkvylWITYcskg29vy1Kp8WXIq7FvhXsz0Crf2kS94bjB690A==", + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz", + "integrity": "sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-syntax-class-constructor-call": "^6.18.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-transform-class-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", - "integrity": "sha512-n4jtBA3OYBdvG5PRMKsMXJXHfLYw/ZOmtxCLOOwz6Ro5XlrColkStLnz1AS1L2yfPA9BKJ1ZNlmVCLjAL9DSIg==", + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.28.6.tgz", + "integrity": "sha512-/wHc/paTUmsDYN7SZkpWxogTOBNnlx7nBQYfy6JJlCT7G3mVhltk3e++N7zV0XfgGsrqBxd4rJQt9H16I21Y1Q==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-function-name": "^6.24.1", - "babel-plugin-syntax-class-properties": "^6.8.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "@babel/helper-create-regexp-features-plugin": "^7.28.5", + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/babel-plugin-transform-decorators": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", - "integrity": "sha512-skQ2CImwDkCHu0mkWvCOlBCpBIHW4/49IZWVwV4A/EnWjL9bB6UBvLyMNe3Td5XDStSZNhe69j4bfEW8dvUbew==", + "node_modules/@babel/preset-env": { + "version": "7.29.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.5.tgz", + "integrity": "sha512-/69t2aEzGKHD76DyLbHysF/QH2LJOB8iFnYO37unDTKBTubzcMRv0f3H5EiN1Q6ajOd/eB7dAInF0qdFVS06kA==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-explode-class": "^6.24.1", - "babel-plugin-syntax-decorators": "^6.13.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/compat-data": "^7.29.3", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.28.5", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1", + "@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": "^7.29.3", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.28.6", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-import-assertions": "^7.28.6", + "@babel/plugin-syntax-import-attributes": "^7.28.6", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.27.1", + "@babel/plugin-transform-async-generator-functions": "^7.29.0", + "@babel/plugin-transform-async-to-generator": "^7.28.6", + "@babel/plugin-transform-block-scoped-functions": "^7.27.1", + "@babel/plugin-transform-block-scoping": "^7.28.6", + "@babel/plugin-transform-class-properties": "^7.28.6", + "@babel/plugin-transform-class-static-block": "^7.28.6", + "@babel/plugin-transform-classes": "^7.28.6", + "@babel/plugin-transform-computed-properties": "^7.28.6", + "@babel/plugin-transform-destructuring": "^7.28.5", + "@babel/plugin-transform-dotall-regex": "^7.28.6", + "@babel/plugin-transform-duplicate-keys": "^7.27.1", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.29.0", + "@babel/plugin-transform-dynamic-import": "^7.27.1", + "@babel/plugin-transform-explicit-resource-management": "^7.28.6", + "@babel/plugin-transform-exponentiation-operator": "^7.28.6", + "@babel/plugin-transform-export-namespace-from": "^7.27.1", + "@babel/plugin-transform-for-of": "^7.27.1", + "@babel/plugin-transform-function-name": "^7.27.1", + "@babel/plugin-transform-json-strings": "^7.28.6", + "@babel/plugin-transform-literals": "^7.27.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.28.6", + "@babel/plugin-transform-member-expression-literals": "^7.27.1", + "@babel/plugin-transform-modules-amd": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.28.6", + "@babel/plugin-transform-modules-systemjs": "^7.29.4", + "@babel/plugin-transform-modules-umd": "^7.27.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.29.0", + "@babel/plugin-transform-new-target": "^7.27.1", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.28.6", + "@babel/plugin-transform-numeric-separator": "^7.28.6", + "@babel/plugin-transform-object-rest-spread": "^7.28.6", + "@babel/plugin-transform-object-super": "^7.27.1", + "@babel/plugin-transform-optional-catch-binding": "^7.28.6", + "@babel/plugin-transform-optional-chaining": "^7.28.6", + "@babel/plugin-transform-parameters": "^7.27.7", + "@babel/plugin-transform-private-methods": "^7.28.6", + "@babel/plugin-transform-private-property-in-object": "^7.28.6", + "@babel/plugin-transform-property-literals": "^7.27.1", + "@babel/plugin-transform-regenerator": "^7.29.0", + "@babel/plugin-transform-regexp-modifiers": "^7.28.6", + "@babel/plugin-transform-reserved-words": "^7.27.1", + "@babel/plugin-transform-shorthand-properties": "^7.27.1", + "@babel/plugin-transform-spread": "^7.28.6", + "@babel/plugin-transform-sticky-regex": "^7.27.1", + "@babel/plugin-transform-template-literals": "^7.27.1", + "@babel/plugin-transform-typeof-symbol": "^7.27.1", + "@babel/plugin-transform-unicode-escapes": "^7.27.1", + "@babel/plugin-transform-unicode-property-regex": "^7.28.6", + "@babel/plugin-transform-unicode-regex": "^7.27.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.28.6", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.15", + "babel-plugin-polyfill-corejs3": "^0.14.0", + "babel-plugin-polyfill-regenerator": "^0.6.6", + "core-js-compat": "^3.48.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-transform-do-expressions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz", - "integrity": "sha512-yQwYqYg+Tnj1InA8W1rsItsZVhkv1Euc4KVua9ledtPz5PDWYz7LVyy6rDBpVYUWFZj5k6GUm3YZpCbIm8Tqew==", + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-syntax-do-expressions": "^6.8.0", - "babel-runtime": "^6.22.0" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/babel-plugin-transform-es2015-arrow-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", - "integrity": "sha512-PCqwwzODXW7JMrzu+yZIaYbPQSKjDTAsNNlK2l5Gg9g4rz2VzLnZsStvp/3c46GfXpwkyufb3NCyG9+50FF1Vg==", + "node_modules/@babel/register": { + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.29.3.tgz", + "integrity": "sha512-F6C1KpIdoImKQfsD6HSxZ+mS4YY/2Q+JsqrmTC5ApVkTR2rG+nnbpjhWwzA5bDNu8mJjB3AryqDaWFLd4gCbJQ==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0" + "clone-deep": "^4.0.1", + "find-cache-dir": "^2.0.0", + "make-dir": "^2.1.0", + "pirates": "^4.0.6", + "source-map-support": "^0.5.16" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-transform-es2015-block-scoped-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", - "integrity": "sha512-2+ujAT2UMBzYFm7tidUsYh+ZoIutxJ3pN9IYrF1/H6dCKtECfhmB8UkHVpyxDwkj0CYbQG35ykoz925TUnBc3A==", + "node_modules/@babel/template": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0" + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/babel-plugin-transform-es2015-block-scoping": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", - "integrity": "sha512-YiN6sFAQ5lML8JjCmr7uerS5Yc/EMbgg9G8ZNmk2E3nYX4ckHR01wrkeeMijEf5WHNK5TW0Sl0Uu3pv3EdOJWw==", + "node_modules/@babel/traverse": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/babel-plugin-transform-es2015-classes": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", - "integrity": "sha512-5Dy7ZbRinGrNtmWpquZKZ3EGY8sDgIVB4CU8Om8q8tnMLrD/m94cKglVcHps0BCTdZ0TJeeAWOq2TK9MIY6cag==", + "node_modules/@babel/types": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-define-map": "^6.24.1", - "babel-helper-function-name": "^6.24.1", - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-helper-replace-supers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/babel-plugin-transform-es2015-computed-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", - "integrity": "sha512-C/uAv4ktFP/Hmh01gMTvYvICrKze0XVX9f2PdIXuriCSvUmV9j+u+BB9f5fJK3+878yMK6dkdcq+Ymr9mrcLzw==", + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", "dev": true, + "license": "ISC", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" } }, - "node_modules/babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha512-aNv/GDAW0j/f4Uy1OEPZn1mqD+Nfy9viFGBfQ5bZyT35YqOiqx7/tXdyfZkJ1sC21NyEsBdfDY6PYmLHF4r5iA==", + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/babel-plugin-transform-es2015-duplicate-keys": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", - "integrity": "sha512-ossocTuPOssfxO2h+Z3/Ea1Vo1wWx31Uqy9vIiJusOP4TbF7tPs9U0sJ9pX9OJPf4lXRGj5+6Gkl/HHKiAP5ug==", + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/babel-plugin-transform-es2015-for-of": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", - "integrity": "sha512-DLuRwoygCoXx+YfxHLkVx5/NpeSbVwfoTeBykpJK7JhYWlL/O8hgAK/reforUnZDlxasOrVPPJVI/guE3dCwkw==", + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } + "license": "MIT" }, - "node_modules/babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha512-iFp5KIcorf11iBqu/y/a7DK3MN5di3pNCzto61FqCNnUX4qeBwcV1SLqe10oXNnCaxBUImX3SckX2/o1nsrTcg==", + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-plugin-transform-es2015-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", - "integrity": "sha512-tjFl0cwMPpDYyoqYA9li1/7mGFit39XiNX5DKC/uCNjBctMxyL1/PT/l4rSlbvBG1pOKI88STRdUsWXB3/Q9hQ==", + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0" + "ansi-regex": "^6.2.2" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/babel-plugin-transform-es2015-modules-amd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", - "integrity": "sha512-LnIIdGWIKdw7zwckqx+eGjcS8/cl8D74A3BpJbGjKTFFNJSMrjN4bIh22HY1AlkUbeLG6X6OZj56BDvWD+OeFA==", + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", "dev": true, + "license": "ISC", "dependencies": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/babel-plugin-transform-es2015-modules-systemjs": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", - "integrity": "sha512-ONFIPsq8y4bls5PPsAWYXH/21Hqv64TBxdje0FvU3MhIV6QM2j5YS7KvAzg/nTIVLot2D2fmFQrFWCbgHlFEjg==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "sprintf-js": "~1.0.2" } }, - "node_modules/babel-plugin-transform-es2015-modules-umd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", - "integrity": "sha512-LpVbiT9CLsuAIp3IG0tfbVo81QIhn6pE8xBJ7XSeCtFlMltuar5VuBV6y6Q45tpui9QWcy5i0vLQfCfrnF7Kiw==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-transform-es2015-modules-amd": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/babel-plugin-transform-es2015-object-super": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", - "integrity": "sha512-8G5hpZMecb53vpD3mjs64NhI1au24TAmokQ4B+TBFBjN9cVoGoOvotdrMMRmHvVZUEvqGUPWL514woru1ChZMA==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", + "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-replace-supers": "^6.24.1", - "babel-runtime": "^6.22.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha512-8HxlW+BB5HqniD+nLkQ4xSAVq3bR/pcYW9IigY+2y0dI+Y7INFeTbfAQr+63T3E4UDsZGjyb+l9txUnABWxlOQ==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "license": "MIT", "dependencies": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/babel-plugin-transform-es2015-shorthand-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", - "integrity": "sha512-mDdocSfUVm1/7Jw/FIRNw9vPrBQNePy6wZJlR8HAUBLybNp1w/6lr6zZ2pjMShee65t/ybR5pT8ulkLzD1xwiw==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha512-3Ghhi26r4l3d0Js933E5+IhHwk0A1yiutj9gwvzmFbVV0sPMYk2lekhOufHBswX7NCoSeF4Xrl3sCIuSIa+zOg==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0" + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha512-CYP359ADryTo3pCsH0oxRo/0yn6UsEZLqYohHmvLQdfS9xkf+MbCzE3/Kolw9OYIY4ZMilH25z/5CbQbwDD+lQ==", + "node_modules/@istanbuljs/schema": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.6.tgz", + "integrity": "sha512-+Sg6GCR/wy1oSmQDFq4LQDAhm3ETKnorxN+y5nbLULOR3P0c14f2Wurzj3/xqPXtasLFfHd5iRFQ7AJt4KH2cw==", "dev": true, - "dependencies": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "node_modules/babel-plugin-transform-es2015-template-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", - "integrity": "sha512-x8b9W0ngnKzDMHimVtTfn5ryimars1ByTqsfBDwAqLibmuuQY6pgBQi5z1ErIsUOWBdw1bW9FSz5RZUojM4apg==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } }, - "node_modules/babel-plugin-transform-es2015-typeof-symbol": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", - "integrity": "sha512-fz6J2Sf4gYN6gWgRZaoFXmq93X+Li/8vf+fb0sGDVtdeWvxC9y5/bTD7bvfWMEq6zetGEHpWjtzRGSugt5kNqw==", + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" } }, - "node_modules/babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha512-v61Dbbihf5XxnYjtBN04B/JBvsScY37R1cZT5r9permN1cp+b70DY3Ib3fIkgn1DI9U3tGgBJZVD8p/mE/4JbQ==", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, - "dependencies": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=6.0.0" } }, - "node_modules/babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha512-LzXDmbMkklvNhprr20//RStKVcT8Cu+SQtX18eMHLhjHf2yFzwtQ0S2f0jQ+89rokoNdmwoSqYzAhq86FxlLSQ==", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", "dev": true, - "dependencies": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } + "license": "MIT" }, - "node_modules/babel-plugin-transform-export-extensions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz", - "integrity": "sha512-mtzELzINaYqdVglyZrDDVwkcFRuE7s6QUFWXxwffKAHB/NkfbJ2NJSytugB43ytIC8UVt30Ereyx+7gNyTkDLg==", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-syntax-export-extensions": "^6.8.0", - "babel-runtime": "^6.22.0" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/babel-plugin-transform-function-bind": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz", - "integrity": "sha512-9Ec4KYf1GurT39mlUjDSlN7HWSlB3u3mWRMogQbb+Y88lO0ZM3rJ0ADhPnQwWK9TbO6e/4E+Et1rrfGY9mFimA==", + "node_modules/@mswjs/interceptors": { + "version": "0.41.8", + "resolved": "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.41.8.tgz", + "integrity": "sha512-pRLMNKTSGRoLq+KnEB/7OY5vijw1XmcheAAOiv6pj7W1FG32kAGqj1C/RK/cqxRGr1Fh+zBi8sDur8kj3EQv6A==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-syntax-function-bind": "^6.8.0", - "babel-runtime": "^6.22.0" + "@open-draft/deferred-promise": "^2.2.0", + "@open-draft/logger": "^0.3.0", + "@open-draft/until": "^2.0.0", + "is-node-process": "^1.2.0", + "outvariant": "^1.4.3", + "strict-event-emitter": "^0.5.1" + }, + "engines": { + "node": ">=18" } }, - "node_modules/babel-plugin-transform-object-rest-spread": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", - "integrity": "sha512-ocgA9VJvyxwt+qJB0ncxV8kb/CjfTcECUY4tQ5VT7nP6Aohzobm8CDFaQ5FHdvZQzLmf0sgDxB8iRXZXxwZcyA==", + "node_modules/@nicolo-ribaudo/chokidar-2": { + "version": "2.1.8-no-fsevents.3", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz", + "integrity": "sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==", "dev": true, - "dependencies": { - "babel-plugin-syntax-object-rest-spread": "^6.8.0", - "babel-runtime": "^6.26.0" - } + "license": "MIT", + "optional": true }, - "node_modules/babel-plugin-transform-regenerator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", - "integrity": "sha512-LS+dBkUGlNR15/5WHKe/8Neawx663qttS6AGqoOUhICc9d1KciBvtrQSuc0PI+CxQ2Q/S1aKuJ+u64GtLdcEZg==", + "node_modules/@open-draft/deferred-promise": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@open-draft/deferred-promise/-/deferred-promise-2.2.0.tgz", + "integrity": "sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==", "dev": true, - "dependencies": { - "regenerator-transform": "^0.10.0" - } + "license": "MIT" }, - "node_modules/babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw==", + "node_modules/@open-draft/logger": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@open-draft/logger/-/logger-0.3.0.tgz", + "integrity": "sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "is-node-process": "^1.2.0", + "outvariant": "^1.4.0" } }, - "node_modules/babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha512-F2rZGQnAdaHWQ8YAoeRbukc7HS9QgdgeyJ0rQDd485v9opwuPvjpPFcOOT/WmkKTdgy9ESgSPXDcTNpzrGr6iQ==", + "node_modules/@open-draft/until": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@open-draft/until/-/until-2.1.0.tgz", + "integrity": "sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==", "dev": true, - "dependencies": { - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "regenerator-runtime": "^0.10.5" + "license": "MIT" + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" } }, - "node_modules/babel-preset-env": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz", - "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==", + "node_modules/@types/node": { + "version": "20.19.39", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.39.tgz", + "integrity": "sha512-orrrD74MBUyK8jOAD/r0+lfa1I2MO6I+vAkmAWzMYbCcgrN4lCrmK52gRFQq/JRxfYPfonkr4b0jcY7Olqdqbw==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-check-es2015-constants": "^6.22.0", - "babel-plugin-syntax-trailing-function-commas": "^6.22.0", - "babel-plugin-transform-async-to-generator": "^6.22.0", - "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", - "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", - "babel-plugin-transform-es2015-block-scoping": "^6.23.0", - "babel-plugin-transform-es2015-classes": "^6.23.0", - "babel-plugin-transform-es2015-computed-properties": "^6.22.0", - "babel-plugin-transform-es2015-destructuring": "^6.23.0", - "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0", - "babel-plugin-transform-es2015-for-of": "^6.23.0", - "babel-plugin-transform-es2015-function-name": "^6.22.0", - "babel-plugin-transform-es2015-literals": "^6.22.0", - "babel-plugin-transform-es2015-modules-amd": "^6.22.0", - "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0", - "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0", - "babel-plugin-transform-es2015-modules-umd": "^6.23.0", - "babel-plugin-transform-es2015-object-super": "^6.22.0", - "babel-plugin-transform-es2015-parameters": "^6.23.0", - "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0", - "babel-plugin-transform-es2015-spread": "^6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.22.0", - "babel-plugin-transform-es2015-template-literals": "^6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.22.0", - "babel-plugin-transform-exponentiation-operator": "^6.22.0", - "babel-plugin-transform-regenerator": "^6.22.0", - "browserslist": "^3.2.6", - "invariant": "^2.2.2", - "semver": "^5.3.0" + "undici-types": "~6.21.0" } }, - "node_modules/babel-preset-env/node_modules/browserslist": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", - "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dev": true, + "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30000844", - "electron-to-chromium": "^1.3.47" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" }, - "bin": { - "browserslist": "cli.js" + "engines": { + "node": ">=8" } }, - "node_modules/babel-preset-env/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, - "bin": { - "semver": "bin/semver" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "node_modules/babel-preset-stage-0": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz", - "integrity": "sha512-MJD+xBbpsApbKlzAX0sOBF+VeFaUmv5s8FSOO7SSZpes1QgphCjq/UIGRFWSmQ/0i5bqQjLGCTXGGXqcLQ9JDA==", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-transform-do-expressions": "^6.22.0", - "babel-plugin-transform-function-bind": "^6.22.0", - "babel-preset-stage-1": "^6.24.1" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/babel-preset-stage-1": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz", - "integrity": "sha512-rn+UOcd7BHDniq1SVxv2/AVVSVI1NK+hfS0I/iR6m6KbOi/aeBRcqBilqO73pd9VUpRXF2HFtlDuC9F2BEQqmg==", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, + "license": "ISC", + "optional": true, "dependencies": { - "babel-plugin-transform-class-constructor-call": "^6.24.1", - "babel-plugin-transform-export-extensions": "^6.22.0", - "babel-preset-stage-2": "^6.24.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/babel-preset-stage-2": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", - "integrity": "sha512-9F+nquz+37PrlTSBdpeQBKnQfAMNBnryXw+m4qBh35FNbJPfzZz+sjN2G5Uf1CRedU9PH7fJkTbYijxmkLX8Og==", + "node_modules/append-transform": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", + "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", "dev": true, + "license": "MIT", "dependencies": { - "babel-plugin-syntax-dynamic-import": "^6.18.0", - "babel-plugin-transform-class-properties": "^6.24.1", - "babel-plugin-transform-decorators": "^6.24.1", - "babel-preset-stage-3": "^6.24.1" + "default-require-extensions": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/babel-preset-stage-3": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", - "integrity": "sha512-eCbEOF8uN0KypFXJmZXn2sTk7bPV9uM5xov7G/7BM08TbQEObsVs0cEWfy6NQySlfk7JBi/t+XJP1JkruYfthA==", + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "dev": true, + "license": "MIT" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true, - "dependencies": { - "babel-plugin-syntax-trailing-function-commas": "^6.22.0", - "babel-plugin-transform-async-generator-functions": "^6.24.1", - "babel-plugin-transform-async-to-generator": "^6.24.1", - "babel-plugin-transform-exponentiation-operator": "^6.24.1", - "babel-plugin-transform-object-rest-spread": "^6.22.0" - } + "license": "Python-2.0" }, - "node_modules/babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A==", + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", "dev": true, + "license": "MIT", "dependencies": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", + "node_modules/assertion-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", "dev": true, - "dependencies": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" + "license": "MIT", + "engines": { + "node": ">=12" } }, - "node_modules/babel-runtime/node_modules/regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" }, - "node_modules/babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg==", + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axios": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.16.0.tgz", + "integrity": "sha512-6hp5CwvTPlN2A31g5dxnwAX0orzM7pmCRDLnZSX772mv8WDqICwFjowHuPs04Mc8deIld1+ejhtaMn5vp6b+1w==", + "license": "MIT", "dependencies": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" + "follow-redirects": "^1.16.0", + "form-data": "^4.0.5", + "proxy-from-env": "^2.1.0" } }, - "node_modules/babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA==", + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.17", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.17.tgz", + "integrity": "sha512-aTyf30K/rqAsNwN76zYrdtx8obu0E4KoUME29B1xj+B3WxgvWkp943vYQ+z8Mv3lw9xHXMHpvSPOBxzAkIa94w==", "dev": true, + "license": "MIT", "dependencies": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" + "@babel/compat-data": "^7.28.6", + "@babel/helper-define-polyfill-provider": "^0.6.8", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==", + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.14.2.tgz", + "integrity": "sha512-coWpDLJ410R781Npmn/SIBZEsAetR4xVi0SxLMXPaMO4lSf1MwnkGYMtkFxew0Dn8B3/CpbpYxN0JCgg8mn67g==", "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" + "@babel/helper-define-polyfill-provider": "^0.6.8", + "core-js-compat": "^3.48.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.8.tgz", + "integrity": "sha512-M762rNHfSF1EV3SLtnCJXFoQbbIIz0OyRwnCmV0KPC7qosSfCO0QLTSuJX3ayAebubhE6oYBAYPrBA5ljowaZg==", "dev": true, - "bin": { - "babylon": "bin/babylon.js" + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.8" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, - "optional": true, - "dependencies": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, - "node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "node_modules/baseline-browser-mapping": { + "version": "2.10.27", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.27.tgz", + "integrity": "sha512-zEs/ufmZoUd7WftKpKyXaT6RFxpQ5Qm9xytKRHvJfxFV9DFJkZph9RvJ1LcOUi0Z1ZVijMte65JbILeV+8QQEA==", "dev": true, - "optional": true, - "dependencies": { - "is-descriptor": "^1.0.0" + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" + "node": ">=6.0.0" } }, "node_modules/binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, + "license": "MIT", "optional": true, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "optional": true, - "dependencies": { - "file-uri-to-path": "1.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "node_modules/braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha512-xU7bpz2ytJl1bH9cgIurjpg/n8Gohy9GTw81heDYLJQ4RU60dlyJsa+atVF2pI0yMMvKxI9HkKwjePCj5XI1hw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" + "fill-range": "^7.1.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/browser-stdout": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", "dev": true, "funding": [ { @@ -1839,11 +2211,13 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" }, "bin": { "browserslist": "cli.js" @@ -1852,42 +2226,19 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "optional": true, - "dependencies": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cache-base/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, "node_modules/caching-transform": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", "dev": true, + "license": "MIT", "dependencies": { "hasha": "^5.0.0", "make-dir": "^3.0.0", @@ -1898,17 +2249,33 @@ "node": ">=8" } }, + "node_modules/caching-transform/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz", + "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==", "dev": true, + "license": "MIT", "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "get-intrinsic": "^1.3.0", + "set-function-length": "^1.2.2" }, "engines": { "node": ">= 0.4" @@ -1917,21 +2284,52 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001617", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz", - "integrity": "sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==", + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "dev": true, - "funding": [ + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001792", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001792.tgz", + "integrity": "sha512-hVLMUZFgR4JJ6ACt1uEESvQN1/dBVqPAKY0hgrV70eN3391K6juAfTjKZLKvOMsx8PxA7gsY1/tLMMTcfFLLpw==", + "dev": true, + "funding": [ { "type": "opencollective", "url": "https://opencollective.com/browserslist" @@ -1944,126 +2342,90 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ] + ], + "license": "CC-BY-4.0" }, "node_modules/chai": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", - "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", + "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==", "dev": true, + "license": "MIT", "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.0.8" + "assertion-error": "^2.0.1", + "check-error": "^2.1.1", + "deep-eql": "^5.0.1", + "loupe": "^3.1.0", + "pathval": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=18" } }, "node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, + "license": "MIT", "dependencies": { - "get-func-name": "^2.0.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "*" - } - }, - "node_modules/chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha512-mk8fAWcRUOxY7btlLtitj3A45jOwSAxH4tOFOoEGbVsl6cL6pPMWUy7dwZ/canfj3QEdP6FHSnf/l1c6/WkzVg==", - "deprecated": "Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.", - "dev": true, - "optional": true, - "dependencies": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" + "node": ">=10" }, - "optionalDependencies": { - "fsevents": "^1.0.0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "node_modules/check-error": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", + "integrity": "sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==", "dev": true, - "optional": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 16" } }, - "node_modules/class-utils/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">= 0.4" - } - }, - "node_modules/class-utils/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, "node_modules/clean-stack": { @@ -2071,75 +2433,66 @@ "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, + "license": "ISC", "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" - } - }, - "node_modules/cliui/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { - "color-name": "1.1.3" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", "dependencies": { "delayed-stream": "~1.0.0" }, @@ -2148,69 +2501,56 @@ } }, "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } }, "node_modules/commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", - "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", "dev": true, - "optional": true, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "license": "MIT" }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, - "node_modules/core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", - "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true, - "hasInstallScript": true + "license": "MIT" }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "node_modules/core-js-compat": { + "version": "3.49.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.49.0.tgz", + "integrity": "sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==", "dev": true, - "optional": true + "license": "MIT", + "dependencies": { + "browserslist": "^4.28.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -2221,12 +2561,21 @@ } }, "node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "dev": true, + "license": "MIT", "dependencies": { - "ms": "2.0.0" + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, "node_modules/decamelize": { @@ -2234,28 +2583,17 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10" - } - }, "node_modules/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", + "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", "dev": true, - "dependencies": { - "type-detect": "^4.0.0" - }, + "license": "MIT", "engines": { "node": ">=6" } @@ -2265,6 +2603,7 @@ "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", "dev": true, + "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.0", "call-bind": "^1.0.5", @@ -2297,6 +2636,7 @@ "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz", "integrity": "sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==", "dev": true, + "license": "MIT", "dependencies": { "strip-bom": "^4.0.0" }, @@ -2312,6 +2652,7 @@ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -2329,6 +2670,7 @@ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.0.1", "has-property-descriptors": "^1.0.0", @@ -2341,79 +2683,65 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "optional": true, - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-property/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", "engines": { "node": ">=0.4.0" } }, - "node_modules/detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A==", + "node_modules/diff": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-7.0.0.tgz", + "integrity": "sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==", "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", "dependencies": { - "repeating": "^2.0.0" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", "dev": true, - "engines": { - "node": ">=0.3.1" - } + "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.4.761", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.761.tgz", - "integrity": "sha512-PIbxpiJGx6Bb8dQaonNc6CGTRlVntdLg/2nMa1YhnrwYOORY9a3ZgGN0UQYE6lAcj/lkyduJN7BPt/JiY+jAQQ==", - "dev": true + "version": "1.5.352", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.352.tgz", + "integrity": "sha512-9wHk8x6dyuimoe18EdiDPWKExNdxYqo4fn4FwOVVper6RxT3cmpBwBkWWfSOCYJjQdIco/nPhJhNLmn4Ufg1Yg==", + "dev": true, + "license": "ISC" }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.4" - }, + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -2422,7 +2750,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -2432,6 +2760,7 @@ "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.3", @@ -2447,167 +2776,114 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "dev": true, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" } }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha512-hxx03P2dJxss6ceIeri9cmYOT4SRs3Zk3afZwWpOsRqLqprhTR8u++SlC+sFGsQr7WGFPdMF7Gjc1njDLDK6UA==", - "dev": true, - "optional": true, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "license": "MIT", "dependencies": { - "is-posix-bracket": "^0.1.0" + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA==", + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", "dev": true, - "optional": true, - "dependencies": { - "fill-range": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, - "node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, - "optional": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/extend-shallow/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, - "optional": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha512-1FOj1LOwn42TMrruOHGt18HemVnbwAmAak7krWk+wa93KXxGbK+2jpezm+ytJYDaBX0/SPLZFHKM7m+tKobWGg==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "optional": true, - "dependencies": { - "is-extglob": "^1.0.0" + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true, - "optional": true - }, - "node_modules/filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha512-BTCqyBaWBTsauvnHiE8i562+EdJj+oUpkqWp2R1iCoR8f6oo8STRu3of7WJJ0TqWtxN50a5YFpzYK4Jj9esYfQ==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, - "optional": true, + "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" } }, "node_modules/fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", "dev": true, + "license": "MIT", "dependencies": { "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + "node": ">=6" } }, "node_modules/find-up": { @@ -2615,6 +2891,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -2631,20 +2908,22 @@ "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", "dev": true, + "license": "BSD-3-Clause", "bin": { "flat": "cli.js" } }, "node_modules/follow-redirects": { - "version": "1.15.6", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", - "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", + "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", "funding": [ { "type": "individual", "url": "https://github.com/sponsors/RubenVerborgh" } ], + "license": "MIT", "engines": { "node": ">=4.0" }, @@ -2655,76 +2934,67 @@ } }, "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dev": true, + "license": "MIT", "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", - "dev": true, - "optional": true, + "is-callable": "^1.2.7" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw==", + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", "dev": true, - "optional": true, + "license": "ISC", "dependencies": { - "for-in": "^1.0.1" + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - }, + "license": "ISC", "engines": { - "node": ">=8.0.0" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", + "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", + "license": "MIT", "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", "mime-types": "^2.1.12" }, "engines": { "node": ">= 6" } }, - "node_modules/fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", - "dev": true, - "optional": true, - "dependencies": { - "map-cache": "^0.2.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/fromentries": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", @@ -2743,44 +3013,43 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/fs-readdir-recursive": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "deprecated": "The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, + "license": "MIT", "optional": true, "os": [ "darwin" ], - "dependencies": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - }, "engines": { - "node": ">= 4.0" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -2790,6 +3059,7 @@ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -2799,6 +3069,7 @@ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -2808,30 +3079,27 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, + "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "dev": true, + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -2845,25 +3113,31 @@ "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8.0.0" } }, - "node_modules/get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", - "dev": true, - "optional": true, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -2879,46 +3153,27 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha512-ab1S1g1EbO7YzauaJLkgLp7DZVAqj9M/dvKlTt8DkXA2tiOIcSMrlVI2J1RZyB5iJVccEscjGn+kpOG9788MHA==", - "dev": true, - "optional": true, - "dependencies": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha512-JDYOvfxio/t42HKdxkAYaCiBN7oYiuxykOxKxdaUW5Qn0zaYN3gRQWolrwdnf0shM9/EP0ebuuTmyoXNr1cC5w==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "license": "ISC", "optional": true, "dependencies": { - "is-glob": "^2.0.0" - } - }, - "node_modules/globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true, + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -2928,45 +3183,30 @@ "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", "dev": true, - "engines": { - "node": ">=4.x" - } - }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } + "license": "ISC" }, "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/has-property-descriptors": { @@ -2974,6 +3214,7 @@ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" }, @@ -2981,23 +3222,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3009,7 +3238,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" }, @@ -3020,92 +3249,15 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", + "node_modules/hasha": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", + "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-value/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", - "dev": true, - "optional": true, - "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "optional": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "optional": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", - "dev": true, - "optional": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hasha": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", - "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", - "dev": true, - "dependencies": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" + "is-stream": "^2.0.0", + "type-fest": "^0.8.0" }, "engines": { "node": ">=8" @@ -3115,10 +3267,10 @@ } }, "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz", + "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==", + "license": "MIT", "dependencies": { "function-bind": "^1.1.2" }, @@ -3131,34 +3283,24 @@ "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", "dev": true, + "license": "MIT", "bin": { "he": "bin/he" } }, - "node_modules/home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg==", - "dev": true, - "dependencies": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.19" } @@ -3168,6 +3310,7 @@ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -3176,7 +3319,9 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, + "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -3186,52 +3331,33 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, + "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "hasown": "^2.0.2", + "side-channel": "^1.1.0" }, "engines": { "node": ">= 0.4" } }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/is-accessor-descriptor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz", - "integrity": "sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==", - "dev": true, - "optional": true, - "dependencies": { - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz", + "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3241,13 +3367,15 @@ } }, "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -3257,38 +3385,44 @@ } }, "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, + "license": "MIT", "dependencies": { - "has-bigints": "^1.0.1" + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { - "binary-extensions": "^1.0.0" + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3297,18 +3431,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true, - "optional": true - }, "node_modules/is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3316,26 +3444,14 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-data-descriptor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz", - "integrity": "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==", - "dev": true, - "optional": true, - "dependencies": { - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/is-core-module": { + "version": "2.16.2", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.2.tgz", + "integrity": "sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "hasown": "^2.0.3" }, "engines": { "node": ">= 0.4" @@ -3344,92 +3460,53 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-descriptor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" - } - }, - "node_modules/is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha512-9YclgOGtN/f8zx0Pr4FQYMdibBiTaH3sn52vjYip4ZSf6C4/6RfTEZ+MR4GvKhCxdPh21Bg42/WL55f6KSnKpg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha512-0EygVC5qPvIyb+gSz7zdD5/AAoS6Qrx1e//6N4yv4oNm30kqvdmG66oZFWVlQHUWe5OjP08FuTw2IdT0EOTcYA==", - "dev": true, - "optional": true, - "dependencies": { - "is-primitive": "^2.0.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, + "license": "MIT", "optional": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { - "is-extglob": "^1.0.0" + "is-extglob": "^2.1.1" }, "engines": { "node": ">=0.10.0" @@ -3440,6 +3517,7 @@ "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3447,26 +3525,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-node-process": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-node-process/-/is-node-process-1.2.0.tgz", + "integrity": "sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==", + "dev": true, + "license": "MIT" + }, "node_modules/is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, + "license": "MIT", "optional": true, - "dependencies": { - "kind-of": "^3.0.2" - }, "engines": { - "node": ">=0.10.0" + "node": ">=0.12.0" } }, "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3475,11 +3560,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/is-plain-obj": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -3489,7 +3585,7 @@ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { "isobject": "^3.0.1" }, @@ -3497,44 +3593,17 @@ "node": ">=0.10.0" } }, - "node_modules/is-plain-object/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha512-Yu68oeXJ7LeWNmZ3Zov/xg/oDBnBK2RNxwYY1ilNJX+tKKZqgPK+qOn/Gs9jEu66KDY9Netf5XLKNGzas/vPfQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha512-N3w1tFaRfk3UrPfqeRyD+GYDASU3W5VinKhlORy8EWVf/sIdDL9GAcew85XmktCfH+ngG7SRXEVDoO18WMdB/Q==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -3548,6 +3617,7 @@ "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3556,12 +3626,13 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7" + "call-bound": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -3575,6 +3646,7 @@ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -3583,12 +3655,14 @@ } }, "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3598,12 +3672,15 @@ } }, "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "dev": true, + "license": "MIT", "dependencies": { - "has-symbols": "^1.0.2" + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -3616,13 +3693,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/is-unicode-supported": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -3635,6 +3714,7 @@ "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3643,13 +3723,14 @@ } }, "node_modules/is-weakset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", - "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4" + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -3663,6 +3744,7 @@ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3671,39 +3753,32 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true, - "optional": true, - "dependencies": { - "isarray": "1.0.0" - }, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/isobject/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "optional": true - }, "node_modules/istanbul-lib-coverage": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=8" } @@ -3713,6 +3788,7 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "append-transform": "^2.0.0" }, @@ -3721,18 +3797,33 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" }, "engines": { - "node": ">=8" + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/istanbul-lib-processinfo": { @@ -3740,6 +3831,7 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", "dev": true, + "license": "ISC", "dependencies": { "archy": "^1.0.0", "cross-spawn": "^7.0.3", @@ -3757,6 +3849,7 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "istanbul-lib-coverage": "^3.0.0", "make-dir": "^4.0.0", @@ -3766,20 +3859,12 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/istanbul-lib-report/node_modules/make-dir": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, + "license": "MIT", "dependencies": { "semver": "^7.5.3" }, @@ -3791,10 +3876,11 @@ } }, "node_modules/istanbul-lib-report/node_modules/semver": { - "version": "7.6.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.1.tgz", - "integrity": "sha512-f/vbBsu+fOiYt+lmwZV0rVwJScl46HppnOA1ZvIuBWKOTlllpyJ3bfVax76/OrhCH38dyxoDIA8K7uB963IYgA==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -3807,6 +3893,7 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -3819,6 +3906,7 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "debug": "^4.1.1", "istanbul-lib-coverage": "^3.0.0", @@ -3828,62 +3916,49 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-source-maps/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/istanbul-reports": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", + "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/istanbul-reports": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", - "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "@isaacs/cliui": "^8.0.2" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, "node_modules/js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" }, "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -3892,25 +3967,31 @@ } }, "node_modules/jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, + "license": "MIT", "bin": { "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" } }, "node_modules/json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, + "license": "MIT", "bin": { "json5": "lib/cli.js" }, @@ -3919,14 +4000,11 @@ } }, "node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, - "optional": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3936,6 +4014,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^5.0.0" }, @@ -3946,23 +4025,26 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true, + "license": "MIT" }, "node_modules/lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, + "license": "MIT", "dependencies": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" @@ -3974,180 +4056,61 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz", + "integrity": "sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==", "dev": true, - "dependencies": { - "get-func-name": "^2.0.1" - } + "license": "MIT" }, "node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^3.0.2" } }, "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", "dev": true, + "license": "MIT", "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" + "pify": "^4.0.1", + "semver": "^5.6.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", - "dev": true, - "optional": true, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, - "optional": true, - "dependencies": { - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "node_modules/math-random": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", - "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", - "dev": true, - "optional": true - }, - "node_modules/micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha512-LnU2XFEk9xxSJ6rfgAry/ty5qwUTyHYOBU0g4R6tIw5ljwgGIBmiKhRWLw5NpMOnrgUNcDJ4WMp8rl3sYVHLNA==", - "dev": true, - "optional": true, - "dependencies": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, "node_modules/mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -4156,6 +4119,7 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", "dependencies": { "mime-db": "1.52.0" }, @@ -4164,10 +4128,11 @@ } }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -4175,1619 +4140,853 @@ "node": "*" } }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "node_modules/minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=16 || 14 >=14.17" } }, - "node_modules/mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "node_modules/mocha": { + "version": "11.7.5", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-11.7.5.tgz", + "integrity": "sha512-mTT6RgopEYABzXWFx+GcJ+ZQ32kp4fMf0xvpZIIfSq9Z8lC/++MtcCnQ9t5FP2veYEP95FIYSvW+U9fV4xrlig==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "browser-stdout": "^1.3.1", + "chokidar": "^4.0.1", + "debug": "^4.3.5", + "diff": "^7.0.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^10.4.5", + "he": "^1.2.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^9.0.5", + "ms": "^2.1.3", + "picocolors": "^1.1.1", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^9.2.0", + "yargs": "^17.7.2", + "yargs-parser": "^21.1.1", + "yargs-unparser": "^2.0.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" }, "engines": { - "node": ">=0.10.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/mixin-deep/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "node_modules/mocha/node_modules/brace-expansion": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz", + "integrity": "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" + "balanced-match": "^1.0.0" } }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/mocha/node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "dev": true, + "license": "MIT", "dependencies": { - "minimist": "^1.2.6" + "readdirp": "^4.0.1" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, - "node_modules/mocha": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.2.2.tgz", - "integrity": "sha512-L6XC3EdwT6YrIk0yXpavvLkn8h+EU+Y5UcCHKECyMbdUIxyMuZj4bX4U9e1nvnvUUvQVsV2VHQr5zLdcUkhW/g==", - "dev": true, - "dependencies": { - "@ungap/promise-all-settled": "1.1.2", - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.3", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "4.2.1", - "ms": "2.1.3", - "nanoid": "3.3.1", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "which": "2.0.2", - "workerpool": "6.2.0", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" + "node_modules/mocha/node_modules/glob": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" - }, - "engines": { - "node": ">= 12.0.0" + "glob": "dist/esm/bin.mjs" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mocha/node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/mocha/node_modules/minimatch": { + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", + "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", "dev": true, + "license": "ISC", "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "brace-expansion": "^2.0.2" }, "engines": { - "node": ">= 8" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mocha/node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mocha/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/mocha/node_modules/debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/mocha/node_modules/debug/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/mocha/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mocha/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/mocha/node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/mocha/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/mocha/node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/mocha/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mocha/node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mocha/node_modules/minimatch": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz", - "integrity": "sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mocha/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/mocha/node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mocha/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/mocha/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/nan": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.19.0.tgz", - "integrity": "sha512-nO1xXxfh/RWNxfd/XPfbIfFk5vgLsAxUR9y5O0cHMJu/AW9U95JLXqthYHjEp+8gQ5p96K9jUp8nbVOxCdRbtw==", - "dev": true, - "optional": true - }, - "node_modules/nanoid": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", - "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "optional": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nanomatch/node_modules/arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nanomatch/node_modules/array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nanomatch/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nock": { - "version": "13.5.4", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.5.4.tgz", - "integrity": "sha512-yAyTfdeNJGGBFxWdzSKCBYxs5FxLbCg5X5Q4ets974hcQzG1+qCxvIyOo4j2Ry6MUlhWVMX4OoYDefAIIwupjw==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "propagate": "^2.0.0" - }, - "engines": { - "node": ">= 10.13" - } - }, - "node_modules/nock/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/nock/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/node-preload": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", - "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", - "dev": true, - "dependencies": { - "process-on-spawn": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, - "optional": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nyc": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", - "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", - "dev": true, - "dependencies": { - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "caching-transform": "^4.0.0", - "convert-source-map": "^1.7.0", - "decamelize": "^1.2.0", - "find-cache-dir": "^3.2.0", - "find-up": "^4.1.0", - "foreground-child": "^2.0.0", - "get-package-type": "^0.1.0", - "glob": "^7.1.6", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-processinfo": "^2.0.2", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "make-dir": "^3.0.0", - "node-preload": "^0.2.1", - "p-map": "^3.0.0", - "process-on-spawn": "^1.0.0", - "resolve-from": "^5.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "spawn-wrap": "^2.0.0", - "test-exclude": "^6.0.0", - "yargs": "^15.0.2" - }, - "bin": { - "nyc": "bin/nyc.js" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/nyc/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/nyc/node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/nyc/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/nyc/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/nyc/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/mocha/node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, + "license": "MIT", "engines": { - "node": ">=6" + "node": ">= 14.18.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nyc/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, - "node_modules/nyc/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } + "license": "MIT" }, - "node_modules/nyc/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "node_modules/nock": { + "version": "14.0.14", + "resolved": "https://registry.npmjs.org/nock/-/nock-14.0.14.tgz", + "integrity": "sha512-PKk7tex0O3RRXUZC5XDKJ9yM3rYRPS13myduT85VIIYDBnib42Fpxoe6KxRSzqB4iL2NDxkcJ2yiskZ18hGLEQ==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "@mswjs/interceptors": "^0.41.0", + "json-stringify-safe": "^5.0.1", + "propagate": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=18.20.0 <20 || >=20.12.1" } }, - "node_modules/nyc/node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "node_modules/nyc/node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "node_modules/node-preload": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", + "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", "dev": true, + "license": "MIT", "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "process-on-spawn": "^1.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/nyc/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", + "node_modules/node-releases": { + "version": "2.0.38", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.38.tgz", + "integrity": "sha512-3qT/88Y3FbH/Kx4szpQQ4HzUbVrHPKTLVpVocKiLfoYvw9XSGOX2FmD2d6DrXbVYyAQTF2HeF6My8jmzx7/CRw==", "dev": true, - "optional": true, - "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, - "node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, + "license": "MIT", "optional": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, "engines": { "node": ">=0.10.0" } }, - "node_modules/object-copy/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", - "dev": true, - "optional": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", - "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", + "node_modules/nyc": { + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-17.1.0.tgz", + "integrity": "sha512-U42vQ4czpKa0QdI1hu950XuNhYqgoM+ZF1HT+VuUHL9hPfDPVvNQyltmMqdE9bUHMVa+8yNbc3QKTj8zQhlVxQ==", "dev": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1" + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "caching-transform": "^4.0.0", + "convert-source-map": "^1.7.0", + "decamelize": "^1.2.0", + "find-cache-dir": "^3.2.0", + "find-up": "^4.1.0", + "foreground-child": "^3.3.0", + "get-package-type": "^0.1.0", + "glob": "^7.1.6", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-hook": "^3.0.0", + "istanbul-lib-instrument": "^6.0.2", + "istanbul-lib-processinfo": "^2.0.2", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "make-dir": "^3.0.0", + "node-preload": "^0.2.1", + "p-map": "^3.0.0", + "process-on-spawn": "^1.0.0", + "resolve-from": "^5.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "spawn-wrap": "^2.0.0", + "test-exclude": "^6.0.0", + "yargs": "^15.0.2" }, - "engines": { - "node": ">= 0.4" + "bin": { + "nyc": "bin/nyc.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=18" } }, - "node_modules/object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", + "node_modules/nyc/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "dev": true, - "optional": true, + "license": "ISC", "dependencies": { - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" } }, - "node_modules/object-visit/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "node_modules/nyc/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, - "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "node_modules/nyc/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha512-UiAM5mhmIuKLsOvrL+B0U2d1hXHF3bFYWIuH1LMpuV2EJEHG1Ntz06PgLEHjm6VFd87NpH8rastvPoyv6UW2fA==", - "dev": true, - "optional": true, - "dependencies": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", - "dev": true, - "optional": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.pick/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "node_modules/nyc/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/output-file-sync": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", - "integrity": "sha512-uQLlclru4xpCi+tfs80l3QF24KL81X57ELNMy7W/dox+JTtxUf1bLyQ8968fFCmSqqbokjW0kn+WBIlO+rSkNg==", + "node_modules/nyc/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "license": "MIT", "dependencies": { - "graceful-fs": "^4.1.4", - "mkdirp": "^0.5.1", - "object-assign": "^4.1.0" + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/p-limit": { + "node_modules/nyc/node_modules/make-dir": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, + "license": "MIT", "dependencies": { - "yocto-queue": "^0.1.0" + "semver": "^6.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "node_modules/nyc/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { - "p-limit": "^3.0.2" + "p-try": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "node_modules/nyc/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, + "license": "MIT", "dependencies": { - "aggregate-error": "^3.0.0" + "p-limit": "^2.2.0" }, "engines": { "node": ">=8" } }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/package-hash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", - "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", + "node_modules/nyc/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, + "license": "MIT", "dependencies": { - "graceful-fs": "^4.1.15", - "hasha": "^5.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" + "find-up": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha512-FC5TeK0AwXzq3tUBFtH74naWkPQCEWs4K+xMxWZBlKDWu0bVHXGZa+KKqxKidd7xwhdZ19ZNuF2uO1M/r196HA==", + "node_modules/nyc/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, "engines": { "node": ">=8" } }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "node_modules/nyc/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true, - "engines": { - "node": ">=0.10.0" - } + "license": "ISC" }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "node_modules/nyc/node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, "engines": { "node": ">=8" } }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "node_modules/nyc/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, "engines": { - "node": "*" + "node": ">=6" } }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", "dev": true, + "license": "MIT", "engines": { - "node": ">=8.6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", "dev": true, + "license": "MIT", "dependencies": { - "find-up": "^4.0.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" }, "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "node": ">= 0.4" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, + "license": "MIT", "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "dev": true, + "license": "MIT", "dependencies": { - "p-try": "^2.0.0" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, + "license": "ISC", "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" + "wrappy": "1" } }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "node_modules/outvariant": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.3.tgz", + "integrity": "sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==", "dev": true, - "engines": { - "node": ">= 0.4" - } + "license": "MIT" }, - "node_modules/preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha512-s/46sYeylUfHNjI+sA/78FAHlmIuKqI9wNnzEOGehAlUUYeObv5C2mOinXBjyUyWmJ2SfcS2/ydApH4hTF4WXQ==", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, - "optional": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, "engines": { - "node": ">= 0.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "optional": true - }, - "node_modules/process-on-spawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", - "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", + "node_modules/p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", "dev": true, + "license": "MIT", "dependencies": { - "fromentries": "^1.2.0" + "aggregate-error": "^3.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/propagate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", - "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, + "license": "MIT", "engines": { - "node": ">= 8" + "node": ">=6" } }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" - }, - "node_modules/randomatic": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", - "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "node_modules/package-hash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", + "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", "dev": true, - "optional": true, + "license": "ISC", "dependencies": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" + "graceful-fs": "^4.1.15", + "hasha": "^5.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" }, "engines": { - "node": ">= 0.10.0" + "node": ">=8" } }, - "node_modules/randomatic/node_modules/is-number": { + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "node_modules/path-exists": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, - "optional": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/randomatic/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, - "optional": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, - "optional": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "node_modules/readable-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true, - "optional": true + "license": "MIT" }, - "node_modules/readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, - "optional": true, + "license": "BlueOak-1.0.0", "dependencies": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=0.10" + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/readdirp/node_modules/arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } + "license": "ISC" }, - "node_modules/readdirp/node_modules/array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", + "node_modules/pathval": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.1.tgz", + "integrity": "sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==", "dev": true, - "optional": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 14.16" } }, - "node_modules/readdirp/node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true, - "optional": true, - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } + "license": "ISC" }, - "node_modules/readdirp/node_modules/braces/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", "dev": true, + "license": "MIT", "optional": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp/node_modules/expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", - "dev": true, - "optional": true, - "dependencies": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "node": ">=8.6" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/readdirp/node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, - "optional": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/readdirp/node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", "dev": true, - "optional": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/readdirp/node_modules/expand-brackets/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" + "find-up": "^3.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=6" } }, - "node_modules/readdirp/node_modules/extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "locate-path": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/readdirp/node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-descriptor": "^1.0.0" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/readdirp/node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-extendable": "^0.1.0" + "p-try": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/readdirp/node_modules/fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" + "p-limit": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/readdirp/node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, - "optional": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/readdirp/node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", "dev": true, - "optional": true, - "dependencies": { - "kind-of": "^3.0.2" - }, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/readdirp/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "node_modules/process-on-spawn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.1.0.tgz", + "integrity": "sha512-JOnOPQ/8TZgjs1JIH/m9ni7FfimjNa/PRx7y/Wb5qdItsnhO0jE4AT7fC0HjC28DUQWDr50dwSYZLdRMlqDq3Q==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" + "fromentries": "^1.2.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/readdirp/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "node_modules/propagate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", "dev": true, - "optional": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "node_modules/readdirp/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "optional": true, + "node_modules/proxy-from-env": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz", + "integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==", + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/readdirp/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" + "safe-buffer": "^5.1.0" } }, - "node_modules/readdirp/node_modules/to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "picomatch": "^2.2.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8.10.0" } }, "node_modules/regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerator-runtime": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w==", - "dev": true - }, - "node_modules/regenerator-transform": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", - "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", - "dev": true, - "dependencies": { - "babel-runtime": "^6.18.0", - "babel-types": "^6.19.0", - "private": "^0.1.6" - } - }, - "node_modules/regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "optional": true, - "dependencies": { - "is-equal-shallow": "^0.1.3" - }, - "engines": { - "node": ">=0.10.0" - } + "dev": true, + "license": "MIT" }, - "node_modules/regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "node_modules/regenerate-unicode-properties": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.2.tgz", + "integrity": "sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" + "regenerate": "^1.4.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/regexp.prototype.flags": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", - "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -5797,48 +4996,49 @@ } }, "node_modules/regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha512-tJ9+S4oKjxY8IZ9jmjnp/mtytu1u3iyIQAfmI51IKWH6bFf7XR1ybtaO6j7INhZKXOTYADk7V5qxaqLkmNxiZQ==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.4.0.tgz", + "integrity": "sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==", "dev": true, + "license": "MIT", "dependencies": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.2", + "regjsgen": "^0.8.0", + "regjsparser": "^0.13.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.2.1" + }, + "engines": { + "node": ">=4" } }, "node_modules/regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha512-x+Y3yA24uF68m5GA+tBjbGYo64xXVJpbToBaWCoSNSc1hdk6dfctaRWrNFTVJZIIhL5GxW8zwjoixbnifnK59g==", - "dev": true + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", + "dev": true, + "license": "MIT" }, "node_modules/regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha512-jlQ9gYLfk2p3V5Ag5fYhA7fv7OHzd1KUH0PRP46xc3TgwjwgROIW572AfYg/X9kaNq/LJnu6oJcFRXlIrGoTRw==", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.1.tgz", + "integrity": "sha512-dLsljMd9sqwRkby8zhO1gSg3PnJIBFid8f4CQj/sXx+7cKx+E7u0PKhZ+U4wmhx7EfmtvnA318oVaIkAB1lRJw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "jsesc": "~0.5.0" + "jsesc": "~3.1.0" }, "bin": { "regjsparser": "bin/parser" } }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", "dev": true, + "license": "ISC", "dependencies": { "es6-error": "^4.0.1" }, @@ -5846,50 +5046,12 @@ "node": ">=4" } }, - "node_modules/remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", - "dev": true, - "optional": true - }, - "node_modules/repeat-element": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", - "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==", - "dev": true, - "dependencies": { - "is-finite": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -5898,40 +5060,48 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true + "dev": true, + "license": "ISC" + }, + "node_modules/resolve": { + "version": "1.22.12", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz", + "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", - "deprecated": "https://github.com/lydell/resolve-url#deprecated", - "dev": true, - "optional": true - }, - "node_modules/ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.12" - } - }, "node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "glob": "^7.1.3" }, @@ -5943,19 +5113,42 @@ } }, "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, - "node_modules/safe-regex": { + "node_modules/safe-regex-test": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "ret": "~0.1.10" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/semver": { @@ -5963,15 +5156,17 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "randombytes": "^2.1.0" } @@ -5980,13 +5175,15 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -6004,6 +5201,7 @@ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -6014,33 +5212,17 @@ "node": ">= 0.4" } }, - "node_modules/set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "optional": true, - "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-extendable": "^0.1.0" + "kind-of": "^6.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/shebang-command": { @@ -6048,6 +5230,7 @@ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -6060,20 +5243,23 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -6082,178 +5268,106 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "node_modules/side-channel-list": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "optional": true, - "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" + "node": ">= 0.4" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/snapdragon-node/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-descriptor": "^1.0.0" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "optional": true, - "dependencies": { - "kind-of": "^3.2.0" + "node": ">= 0.4" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "is-descriptor": "^0.1.0" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true, - "optional": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } + "license": "ISC" }, - "node_modules/snapdragon/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", "dev": true, - "optional": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" - }, + "license": "MIT", "engines": { - "node": ">= 0.4" + "node": ">=6" } }, "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } }, - "node_modules/source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dev": true, - "optional": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, "node_modules/source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, + "license": "MIT", "dependencies": { - "source-map": "^0.5.6" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "node_modules/source-map-url": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", - "deprecated": "See https://github.com/lydell/source-map-url#deprecated", - "dev": true, - "optional": true - }, "node_modules/spawn-wrap": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", "dev": true, + "license": "ISC", "dependencies": { "foreground-child": "^2.0.0", "is-windows": "^1.0.2", @@ -6266,93 +5380,70 @@ "node": ">=8" } }, - "node_modules/split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "node_modules/spawn-wrap/node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", "dev": true, - "optional": true, + "license": "ISC", "dependencies": { - "extend-shallow": "^3.0.0" + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=8.0.0" } }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", + "node_modules/spawn-wrap/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" + "semver": "^6.0.0" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "dev": true, - "optional": true, - "dependencies": { - "is-descriptor": "^0.1.0" + "node": ">=8" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/static-extend/node_modules/is-descriptor": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true, - "optional": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.1", - "is-data-descriptor": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } + "license": "BSD-3-Clause" }, "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", "dev": true, + "license": "MIT", "dependencies": { - "internal-slot": "^1.0.4" + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" }, "engines": { "node": ">= 0.4" } }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "node_modules/strict-event-emitter": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.5.1.tgz", + "integrity": "sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==", "dev": true, - "optional": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } + "license": "MIT" }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -6362,20 +5453,28 @@ "node": ">=8" } }, - "node_modules/string-width/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, "engines": { "node": ">=8" } }, - "node_modules/string-width/node_modules/strip-ansi": { + "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -6383,16 +5482,18 @@ "node": ">=8" } }, - "node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/strip-bom": { @@ -6400,6 +5501,7 @@ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -6409,6 +5511,7 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -6417,12 +5520,32 @@ } }, "node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, + "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/test-exclude": { @@ -6430,6 +5553,7 @@ "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, + "license": "ISC", "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", @@ -6439,49 +5563,13 @@ "node": ">=8" } }, - "node_modules/to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", - "dev": true, - "optional": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "optional": true, - "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, + "license": "MIT", + "optional": true, "dependencies": { "is-number": "^7.0.0" }, @@ -6489,38 +5577,12 @@ "node": ">=8.0" } }, - "node_modules/to-regex-range/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/type-fest": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -6530,6 +5592,7 @@ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", "dev": true, + "license": "MIT", "dependencies": { "is-typedarray": "^1.0.0" } @@ -6539,6 +5602,7 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -6548,100 +5612,60 @@ } }, "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "dev": true - }, - "node_modules/union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "optional": true, - "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", "dev": true, - "optional": true, - "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } + "license": "MIT" }, - "node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", "dev": true, - "optional": true, - "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, - "optional": true, + "license": "MIT", "dependencies": { - "isarray": "1.0.0" + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz", + "integrity": "sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==", "dev": true, - "optional": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/unset-value/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "optional": true - }, - "node_modules/unset-value/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz", + "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==", "dev": true, - "optional": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/update-browserslist-db": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz", - "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", "dev": true, "funding": [ { @@ -6657,9 +5681,10 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "escalade": "^3.1.2", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.1" }, "bin": { "update-browserslist-db": "cli.js" @@ -6668,69 +5693,23 @@ "browserslist": ">= 4.21.0" } }, - "node_modules/urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", - "deprecated": "Please see https://github.com/lydell/urix#deprecated", - "dev": true, - "optional": true - }, - "node_modules/use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/user-home": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", - "integrity": "sha512-aggiKfEEubv3UwRNqTzLInZpAOmKzwdHqEBmW/hBA/mt99eg+b4VrX6i+IRLxU8+WJYfa33rGwRseg4eElUgsQ==", - "dev": true, - "bin": { - "user-home": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true, - "optional": true - }, "node_modules/uuid": { "version": "8.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).", "dev": true, + "license": "MIT", "bin": { "uuid": "dist/bin/uuid" } }, - "node_modules/v8flags": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", - "integrity": "sha512-SKfhk/LlaXzvtowJabLZwD4K6SGRYeoxA7KJeISlUMAB/NT4CBkZjMq3WceX2Ckm4llwqYVo8TICgsDYCBU2tA==", - "dev": true, - "dependencies": { - "user-home": "^1.1.1" - }, - "engines": { - "node": ">= 0.10.0" - } - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -6742,16 +5721,20 @@ } }, "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", "dev": true, + "license": "MIT", "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6762,6 +5745,7 @@ "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, + "license": "MIT", "dependencies": { "is-map": "^2.0.3", "is-set": "^2.0.3", @@ -6779,18 +5763,22 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/which-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", - "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "version": "1.1.20", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.20.tgz", + "integrity": "sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==", "dev": true, + "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", "has-tostringtag": "^1.0.2" }, "engines": { @@ -6801,16 +5789,18 @@ } }, "node_modules/workerpool": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.0.tgz", - "integrity": "sha512-Rsk5qQHJ9eowMH28Jwhe8HEbmdYDX4lwoMWshiCXugjtHqMD9ZbiqSDLxcsfdqsETPzVUtX5s1Z5kStiIM6l4A==", - "dev": true + "version": "9.3.4", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-9.3.4.tgz", + "integrity": "sha512-TmPRQYYSAnnDiEB0P/Ytip7bFGvqnSU6I2BcuSw7Hx+JSg/DsUi5ebYfc8GYaSdpuvOcEs6dXxPurOYpe9QFwg==", + "dev": true, + "license": "Apache-2.0" }, "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -6823,71 +5813,38 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/write-file-atomic": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", "dev": true, + "license": "ISC", "dependencies": { "imurmurhash": "^0.1.4", "is-typedarray": "^1.0.0", @@ -6900,6 +5857,7 @@ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, + "license": "ISC", "engines": { "node": ">=10" } @@ -6908,33 +5866,36 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, + "license": "MIT", "dependencies": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, + "license": "ISC", "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/yargs-unparser": { @@ -6942,6 +5903,7 @@ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", "dev": true, + "license": "MIT", "dependencies": { "camelcase": "^6.0.0", "decamelize": "^4.0.0", @@ -6957,6 +5919,7 @@ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -6969,6 +5932,7 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -6981,6 +5945,7 @@ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, diff --git a/package.json b/package.json index 0770d0ca..a1ff8a07 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "build:commonjs": "babel lib -d dist", "build": "npm run clean && npm run build:commonjs && npm run cp-ts", "debug": "npm run build && node-debug examples/index.js", - "test": "npm run build && mocha --recursive --require babel-register test/ && nyc --reporter=text mocha", + "test": "npm run build && mocha --recursive --require @babel/register test/ && nyc --reporter=text mocha", "coverage": "nyc report --reporter=text-lcov > coverage.lcov" }, "repository": { @@ -36,18 +36,21 @@ "license": "MIT", "devDependencies": { "@types/node": "^20.12.12", - "babel-cli": "^6.26.0", - "babel-preset-env": "^1.7.0", - "babel-preset-stage-0": "^6.24.0", - "babel-register": "^6.26.0", - "chai": "^4.3.4", + "chai": "^5.0", "deep-equal": "^2.0.5", - "mocha": "^9.0.0", - "nock": "^13.1.1", - "nyc": "^15.1.0", - "typescript": "^4.9.4" + "mocha": "^11.0", + "nock": "^14.0", + "nyc": "^17.0", + "typescript": "^4.9.4", + "@babel/cli": "^7.27.0", + "@babel/preset-env": "^7.27.0", + "@babel/register": "^7.27.0", + "@babel/core": "^7.27.0" }, "dependencies": { - "axios": "^1.6.8" + "axios": "1.7.0" + }, + "engines": { + "node": ">=24.0.0" } }