diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..0615b00 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +coverage/* linguist-generated=true diff --git a/.gitignore b/.gitignore index 58c118b..1cc7cc1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,2 @@ -/nbproject/private/ -/nbproject -/node_modules/ -.idea/ -node-dominos-pizza-api.iml -*brackets.json +node_modules +S_PIZPX.jpg diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..b46c2dc --- /dev/null +++ b/.npmignore @@ -0,0 +1,7 @@ +example +coverage +test +docs +menu.json +.travis.yml +S_PIZPX.jpg diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..c5db19e --- /dev/null +++ b/.travis.yml @@ -0,0 +1,17 @@ +#OS +os: + - linux + - windows + - osx + +#node versions +language: node_js +node_js: + - 14 + - 15 + +# safelist +branches: + only: + - master + - v3.x diff --git a/README.md b/README.md index 75aad95..0353cd1 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,8 @@ -Domino's Pizza API -==== +# Domino's Pizza API + This is a node.js API for integrating with the Domino's pizza APIs. [See the pretty Domino's Pizza API documentation](http://riaevangelist.github.io/node-dominos-pizza-api/) -Important updates coming -==== -[v3.x](https://github.com/RIAEvangelist/node-dominos-pizza-api/tree/v3.x) is nearly complete and will be released sometime soon. It will have breaking changes, and will be heavy on the latest ES6 features and modules. - -__PAYMENT-SUPPORTED-MODULE__ -This module will pass payment information directly from the customer to Domino's Pizza for Domino's Pizza to process. - npm dominos info : [See npm trends and stats for dominos](http://npm-stat.com/charts.html?package=dominos&author=&from=&to=) [![Package Quality](http://npm.packagequality.com/badge/dominos.png)](http://packagequality.com/#?package=dominos) ![dominos npm version](https://img.shields.io/npm/v/dominos.svg) ![supported node version for dominos api](https://img.shields.io/node/v/dominos.svg) ![total npm downloads for dominos](https://img.shields.io/npm/dt/dominos.svg) ![monthly npm downloads for dominos](https://img.shields.io/npm/dm/dominos.svg) ![npm licence for dominos](https://img.shields.io/npm/l/dominos.svg) @@ -19,518 +12,658 @@ npm dominos info : [See npm trends and stats for dominos](http://npm-stat.com/c GitHub info : [![node-dominos-pizza-api GitHub Release](https://img.shields.io/github/release/RIAEvangelist/node-dominos-pizza-api.svg) ![GitHub license node-dominos-pizza-api license](https://img.shields.io/github/license/RIAEvangelist/node-dominos-pizza-api.svg) ![open issues for node-dominos-pizza-api on GitHub](https://img.shields.io/github/issues/RIAEvangelist/node-dominos-pizza-api.svg)](http://riaevangelist.github.io/node-dominos-pizza-api/) +Build Info : +Mac & Linux & Windows : [![Build Status](https://travis-ci.com/RIAEvangelist/node-dominos-pizza-api.svg?branch=v3.x)](https://travis-ci.com/RIAEvangelist/node-dominos-pizza-api?branch=v3.x) --- -Special thanks to : [@madelinecameron](https://github.com/madelinecameron), a major contributor to this repo. - ---- +This work is licenced via the [MIT Licence](http://www.dbad-license.org/). It is a derivative work from Dominos API. -This work is licenced via the [DBAD Public Licence](http://www.dbad-license.org/). It is a derivative work from Dominos API. +# Install the [Dominos](https://www.npmjs.com/package/dominos) pizza api -Install the [Dominos](https://www.npmjs.com/package/dominos) pizza api -==== -` npm i dominos ` or ` npm i --save dominos ` +` npm i dominos ` +# Contributing -Contributing -==== 1. Pull or Fork code. -2. from the cloned directory run ` npm install ` (this will install required dependancies, depending on your system may require) -3. be awesome! +2. From the cloned directory run ` npm i ` (this will install required dependancies, depending on your system may require) +3. Be awesome! -Examples -==== - -You can run the domino's pizza command line interface from your terminal just by running ` npm start `! See the example in the examples directory. +# Examples See the examples directory for simple apps and demonstrations on using the basic functionality. -Testing -==== +# Testing + +For testing we have started using the extremely light `vanilla-test` testing suite. It is a pretty bare bones testing framework, but it works really well and simply with native ES6 and ESM. [vanilla-test on npm](https://www.npmjs.com/package/vanilla-test) + Simply run ` npm test ` -if you have issues with this you may want to try installing mocha globally like this : ` npm install -g mocha ` --OR for manual testing- +This will setup everything that is needed to run the tests, install the modules required and run the tests for you. -1. Install mocha ` npm install -g mocha ` -1. Run the tests ` mocha ` +***Remember, the Dominos API is rate limited,*** so if you make too many requests, like running tests back to back too many times, you may need to wait a short while before making new requests. --- -For Canada -==== +# Code Coverage -Set the urls.json file to be: -``` -{ - "referer":"https://order.dominos.ca/en/pages/order/", - "sourceUri":"order.dominos.ca", - "store": { - "find": "https://order.dominos.ca/power/store-locator?s=${line1}&c=${line2}&type=${type}", - "info": "https://order.dominos.ca/power/store/${storeID}/profile", - "menu": "https://order.dominos.ca/power/store/${storeID}/menu?lang=${lang}&structured=true" - }, - "order": { - "validate": "https://order.dominos.ca/power/validate-order", - "price": "https://order.dominos.ca/power/price-order", - "place": "https://order.dominos.ca/power/place-order" - }, - "track": "https://trkweb.dominos.ca/orderstorage/GetTrackerData?" -} +For coverage we are using the amazing `c8` coverage suite. It produces awesom instanbul style reports as well as lcov and much mmore. It allows testing of pure ES6 code without transpiling, and does not modify the code at all for coverage. It uses the built in node coverage tools to test the execution directly inside v8 [c8 on npm](https://www.npmjs.com/package/c8) -``` +Simply run ` npm test ` and the coverage files will be added to the `./coverage` directory automatically. You can start a local coverage server to view your results by running `npm run coverage`. This will start a simple [`node-http-server`](https://github.com/RIAEvangelist/node-http-server) for your local coverage directory. -Finding Stores -==== +### [See the public c8 & vanilla-test code coverage](https://cdn-p939v.ondigitalocean.app/node-dominos-pizza-api/index.html) -|argument|type|default|required| -|--------|----|-------|--------| -|address|full or partial address string|null|true| -|type|Delivery, Carryout, all| all | true| -|callback|function to pass the api result to|null|true| +--- -Note: the 'address' parameter is passed to the Address class. This means any formatting that works for Address will work being passed here. This means you can pass JSON, array or string. +# TLDR; Order & Track a Pizza -### By Postal Code -***this yields the least accurate information*** +```js -```javascript +import {Order,Customer,Item,Payment,NearbyStores} from '../index.js'; -var pizzapi = require('dominos'); +//extra cheese thin crust pizza +const pizza=new Item( + { + //16 inch hand tossed crust + code:'16SCREEN', + options:{ + //sauce, whole pizza : normal + X: {'1/1' : '1'}, + //cheese, whole pizza : double + C: {'1/1' : '2'}, + //pepperoni, whole pizza : double + P: {'1/2' : '2'} + } + } +); -pizzapi.Util.findNearbyStores( - '63102', - 'Delivery', - function(storeData){ - console.log(storeData); +const customer = new Customer( + { + //this could be an Address instance if you wanted + address: '2 Portola Plaza, Monterey, Ca, 93940', + firstName: 'Brandon', + lastName: 'Miller', + //where's that 555 number from? + phone: '941-555-2368', + email: 'brandon@diginow.it' } ); -``` +let storeID=0; +let distance=100; +//find the nearest store +const nearbyStores=await new NearbyStores(customer.address); +//inspect nearby stores +//console.log('\n\nNearby Stores\n\n') +//console.dir(nearbyStores,{depth:5}); + + +//get closest delivery store +for(const store of nearbyStores.stores){ + //inspect each store + //console.dir(store,{depth:3}); + + if( + //we check all of these because the API responses seem to say true for some + //and false for others, but it is only reliably ok for delivery if ALL are true + //this may become an additional method on the NearbyStores class. + store.IsOnlineCapable + && store.IsDeliveryStore + && store.IsOpen + && store.ServiceIsOpen.Delivery + && store.MinDistance '; // becomes `:not(a):not(b) > ` + + // Selecter that finds elements on the page to which we can jump + var selector = + fileListingElements.join(', ') + + ', ' + + notSelector + + missingCoverageClasses.join(', ' + notSelector); // becomes `:not(a):not(b) > a, :not(a):not(b) > b` + + // The NodeList of matching elements + var missingCoverageElements = document.querySelectorAll(selector); + + var currentIndex; + + function toggleClass(index) { + missingCoverageElements + .item(currentIndex) + .classList.remove('highlighted'); + missingCoverageElements.item(index).classList.add('highlighted'); + } + + function makeCurrent(index) { + toggleClass(index); + currentIndex = index; + missingCoverageElements.item(index).scrollIntoView({ + behavior: 'smooth', + block: 'center', + inline: 'center' + }); + } + + function goToPrevious() { + var nextIndex = 0; + if (typeof currentIndex !== 'number' || currentIndex === 0) { + nextIndex = missingCoverageElements.length - 1; + } else if (missingCoverageElements.length > 1) { + nextIndex = currentIndex - 1; + } + + makeCurrent(nextIndex); + } + + function goToNext() { + var nextIndex = 0; + + if ( + typeof currentIndex === 'number' && + currentIndex < missingCoverageElements.length - 1 + ) { + nextIndex = currentIndex + 1; + } + + makeCurrent(nextIndex); + } + + return function jump(event) { + switch (event.which) { + case 78: // n + case 74: // j + goToNext(); + break; + case 66: // b + case 75: // k + case 80: // p + goToPrevious(); + break; + } + }; +})(); +window.addEventListener('keydown', jumpToCode); diff --git a/coverage/favicon.png b/coverage/favicon.png new file mode 100644 index 0000000..6691817 Binary files /dev/null and b/coverage/favicon.png differ diff --git a/coverage/index.html b/coverage/index.html new file mode 100644 index 0000000..62182e6 --- /dev/null +++ b/coverage/index.html @@ -0,0 +1,141 @@ + + + + + + Code coverage report for All files + + + + + + + + + +
+
+

All files

+
+ +
+ 94.94% + Statements + 1465/1543 +
+ + +
+ 89.58% + Branches + 172/192 +
+ + +
+ 87.04% + Functions + 94/108 +
+ + +
+ 94.94% + Lines + 1465/1543 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
node-dominos-pizza-api +
+
100%55/55100%1/1100%0/0100%55/55
node-dominos-pizza-api/modules +
+
93.85%1068/113887.42%139/15987.5%70/8093.85%1068/1138
node-dominos-pizza-api/utils +
+
97.71%342/350100%32/3285.71%24/2897.71%342/350
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/base.css b/coverage/lcov-report/base.css new file mode 100644 index 0000000..f418035 --- /dev/null +++ b/coverage/lcov-report/base.css @@ -0,0 +1,224 @@ +body, html { + margin:0; padding: 0; + height: 100%; +} +body { + font-family: Helvetica Neue, Helvetica, Arial; + font-size: 14px; + color:#333; +} +.small { font-size: 12px; } +*, *:after, *:before { + -webkit-box-sizing:border-box; + -moz-box-sizing:border-box; + box-sizing:border-box; + } +h1 { font-size: 20px; margin: 0;} +h2 { font-size: 14px; } +pre { + font: 12px/1.4 Consolas, "Liberation Mono", Menlo, Courier, monospace; + margin: 0; + padding: 0; + -moz-tab-size: 2; + -o-tab-size: 2; + tab-size: 2; +} +a { color:#0074D9; text-decoration:none; } +a:hover { text-decoration:underline; } +.strong { font-weight: bold; } +.space-top1 { padding: 10px 0 0 0; } +.pad2y { padding: 20px 0; } +.pad1y { padding: 10px 0; } +.pad2x { padding: 0 20px; } +.pad2 { padding: 20px; } +.pad1 { padding: 10px; } +.space-left2 { padding-left:55px; } +.space-right2 { padding-right:20px; } +.center { text-align:center; } +.clearfix { display:block; } +.clearfix:after { + content:''; + display:block; + height:0; + clear:both; + visibility:hidden; + } +.fl { float: left; } +@media only screen and (max-width:640px) { + .col3 { width:100%; max-width:100%; } + .hide-mobile { display:none!important; } +} + +.quiet { + color: #7f7f7f; + color: rgba(0,0,0,0.5); +} +.quiet a { opacity: 0.7; } + +.fraction { + font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; + font-size: 10px; + color: #555; + background: #E8E8E8; + padding: 4px 5px; + border-radius: 3px; + vertical-align: middle; +} + +div.path a:link, div.path a:visited { color: #333; } +table.coverage { + border-collapse: collapse; + margin: 10px 0 0 0; + padding: 0; +} + +table.coverage td { + margin: 0; + padding: 0; + vertical-align: top; +} +table.coverage td.line-count { + text-align: right; + padding: 0 5px 0 20px; +} +table.coverage td.line-coverage { + text-align: right; + padding-right: 10px; + min-width:20px; +} + +table.coverage td span.cline-any { + display: inline-block; + padding: 0 5px; + width: 100%; +} +.missing-if-branch { + display: inline-block; + margin-right: 5px; + border-radius: 3px; + position: relative; + padding: 0 4px; + background: #333; + color: yellow; +} + +.skip-if-branch { + display: none; + margin-right: 10px; + position: relative; + padding: 0 4px; + background: #ccc; + color: white; +} +.missing-if-branch .typ, .skip-if-branch .typ { + color: inherit !important; +} +.coverage-summary { + border-collapse: collapse; + width: 100%; +} +.coverage-summary tr { border-bottom: 1px solid #bbb; } +.keyline-all { border: 1px solid #ddd; } +.coverage-summary td, .coverage-summary th { padding: 10px; } +.coverage-summary tbody { border: 1px solid #bbb; } +.coverage-summary td { border-right: 1px solid #bbb; } +.coverage-summary td:last-child { border-right: none; } +.coverage-summary th { + text-align: left; + font-weight: normal; + white-space: nowrap; +} +.coverage-summary th.file { border-right: none !important; } +.coverage-summary th.pct { } +.coverage-summary th.pic, +.coverage-summary th.abs, +.coverage-summary td.pct, +.coverage-summary td.abs { text-align: right; } +.coverage-summary td.file { white-space: nowrap; } +.coverage-summary td.pic { min-width: 120px !important; } +.coverage-summary tfoot td { } + +.coverage-summary .sorter { + height: 10px; + width: 7px; + display: inline-block; + margin-left: 0.5em; + background: url(sort-arrow-sprite.png) no-repeat scroll 0 0 transparent; +} +.coverage-summary .sorted .sorter { + background-position: 0 -20px; +} +.coverage-summary .sorted-desc .sorter { + background-position: 0 -10px; +} +.status-line { height: 10px; } +/* yellow */ +.cbranch-no { background: yellow !important; color: #111; } +/* dark red */ +.red.solid, .status-line.low, .low .cover-fill { background:#C21F39 } +.low .chart { border:1px solid #C21F39 } +.highlighted, +.highlighted .cstat-no, .highlighted .fstat-no, .highlighted .cbranch-no{ + background: #C21F39 !important; +} +/* medium red */ +.cstat-no, .fstat-no, .cbranch-no, .cbranch-no { background:#F6C6CE } +/* light red */ +.low, .cline-no { background:#FCE1E5 } +/* light green */ +.high, .cline-yes { background:rgb(230,245,208) } +/* medium green */ +.cstat-yes { background:rgb(161,215,106) } +/* dark green */ +.status-line.high, .high .cover-fill { background:rgb(77,146,33) } +.high .chart { border:1px solid rgb(77,146,33) } +/* dark yellow (gold) */ +.status-line.medium, .medium .cover-fill { background: #f9cd0b; } +.medium .chart { border:1px solid #f9cd0b; } +/* light yellow */ +.medium { background: #fff4c2; } + +.cstat-skip { background: #ddd; color: #111; } +.fstat-skip { background: #ddd; color: #111 !important; } +.cbranch-skip { background: #ddd !important; color: #111; } + +span.cline-neutral { background: #eaeaea; } + +.coverage-summary td.empty { + opacity: .5; + padding-top: 4px; + padding-bottom: 4px; + line-height: 1; + color: #888; +} + +.cover-fill, .cover-empty { + display:inline-block; + height: 12px; +} +.chart { + line-height: 0; +} +.cover-empty { + background: white; +} +.cover-full { + border-right: none !important; +} +pre.prettyprint { + border: none !important; + padding: 0 !important; + margin: 0 !important; +} +.com { color: #999 !important; } +.ignore-none { color: #999; font-weight: normal; } + +.wrapper { + min-height: 100%; + height: auto !important; + height: 100%; + margin: 0 auto -48px; +} +.footer, .push { + height: 48px; +} diff --git a/coverage/lcov-report/block-navigation.js b/coverage/lcov-report/block-navigation.js new file mode 100644 index 0000000..c7ff5a5 --- /dev/null +++ b/coverage/lcov-report/block-navigation.js @@ -0,0 +1,79 @@ +/* eslint-disable */ +var jumpToCode = (function init() { + // Classes of code we would like to highlight in the file view + var missingCoverageClasses = ['.cbranch-no', '.cstat-no', '.fstat-no']; + + // Elements to highlight in the file listing view + var fileListingElements = ['td.pct.low']; + + // We don't want to select elements that are direct descendants of another match + var notSelector = ':not(' + missingCoverageClasses.join('):not(') + ') > '; // becomes `:not(a):not(b) > ` + + // Selecter that finds elements on the page to which we can jump + var selector = + fileListingElements.join(', ') + + ', ' + + notSelector + + missingCoverageClasses.join(', ' + notSelector); // becomes `:not(a):not(b) > a, :not(a):not(b) > b` + + // The NodeList of matching elements + var missingCoverageElements = document.querySelectorAll(selector); + + var currentIndex; + + function toggleClass(index) { + missingCoverageElements + .item(currentIndex) + .classList.remove('highlighted'); + missingCoverageElements.item(index).classList.add('highlighted'); + } + + function makeCurrent(index) { + toggleClass(index); + currentIndex = index; + missingCoverageElements.item(index).scrollIntoView({ + behavior: 'smooth', + block: 'center', + inline: 'center' + }); + } + + function goToPrevious() { + var nextIndex = 0; + if (typeof currentIndex !== 'number' || currentIndex === 0) { + nextIndex = missingCoverageElements.length - 1; + } else if (missingCoverageElements.length > 1) { + nextIndex = currentIndex - 1; + } + + makeCurrent(nextIndex); + } + + function goToNext() { + var nextIndex = 0; + + if ( + typeof currentIndex === 'number' && + currentIndex < missingCoverageElements.length - 1 + ) { + nextIndex = currentIndex + 1; + } + + makeCurrent(nextIndex); + } + + return function jump(event) { + switch (event.which) { + case 78: // n + case 74: // j + goToNext(); + break; + case 66: // b + case 75: // k + case 80: // p + goToPrevious(); + break; + } + }; +})(); +window.addEventListener('keydown', jumpToCode); diff --git a/coverage/lcov-report/favicon.png b/coverage/lcov-report/favicon.png new file mode 100644 index 0000000..6691817 Binary files /dev/null and b/coverage/lcov-report/favicon.png differ diff --git a/coverage/lcov-report/index.html b/coverage/lcov-report/index.html new file mode 100644 index 0000000..62182e6 --- /dev/null +++ b/coverage/lcov-report/index.html @@ -0,0 +1,141 @@ + + + + + + Code coverage report for All files + + + + + + + + + +
+
+

All files

+
+ +
+ 94.94% + Statements + 1465/1543 +
+ + +
+ 89.58% + Branches + 172/192 +
+ + +
+ 87.04% + Functions + 94/108 +
+ + +
+ 94.94% + Lines + 1465/1543 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
node-dominos-pizza-api +
+
100%55/55100%1/1100%0/0100%55/55
node-dominos-pizza-api/modules +
+
93.85%1068/113887.42%139/15987.5%70/8093.85%1068/1138
node-dominos-pizza-api/utils +
+
97.71%342/350100%32/3285.71%24/2897.71%342/350
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/modules/Coupon.js.html b/coverage/lcov-report/modules/Coupon.js.html new file mode 100644 index 0000000..eeaf3a5 --- /dev/null +++ b/coverage/lcov-report/modules/Coupon.js.html @@ -0,0 +1,236 @@ + + + + + + Code coverage report for modules/Coupon.js + + + + + + + + + +
+
+

All files / modules Coupon.js

+
+ +
+ 30.77% + Statements + 16/52 +
+ + +
+ 50% + Branches + 1/2 +
+ + +
+ 0% + Functions + 0/2 +
+ + +
+ 30.77% + Lines + 16/52 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +531x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x + 
import defaultParameters from './defaultParameters.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Coupon{
+    constructor(parameters){
+        defaultParameters(this,paramaters);  
+    }
+ 
+    
+    isNew=true
+
+    get code(){
+        return this.#dominos.Code;       
+    }
+    set code(value){
+        is.string(value);
+        return this.#dominos.Code=value;
+    }
+
+    get quantity(){
+        return this.#dominos.Qty;        
+    }
+    set quantity(value){
+        is.number(value);
+        return this.#dominos.Qty=value;
+    }
+
+    get ID(){
+        return this.#dominos.ID;       
+    }
+    set ID(value){
+        is.number(value);
+        return this.#dominos.ID=value;
+    }
+
+    get dominos(){
+        return this.#dominos;
+    }
+
+    #dominos={
+        Code:'',
+        Qty:0,
+        ID:1
+    }
+}
+ 
+export { 
+    Coupon as default,
+    Coupon
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/modules/Customer.js.html b/coverage/lcov-report/modules/Customer.js.html new file mode 100644 index 0000000..bd091f4 --- /dev/null +++ b/coverage/lcov-report/modules/Customer.js.html @@ -0,0 +1,308 @@ + + + + + + Code coverage report for modules/Customer.js + + + + + + + + + +
+
+

All files / modules Customer.js

+
+ +
+ 46.05% + Statements + 35/76 +
+ + +
+ 50% + Branches + 1/2 +
+ + +
+ 0% + Functions + 0/15 +
+ + +
+ 46.05% + Lines + 35/76 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +771x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +1x +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x + 
import defaultParameters from './defaultParameters.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Customer{
+    constructor(parameters) {
+        defaultParameters(this,parameters);
+    }
+ 
+    get ID(){
+        return this.#dominos.ID;
+    }
+    set ID(value){
+        is.number(value);
+        return this.#dominos.ID=value;
+    }
+ 
+    get firstName(){
+        return this.#dominos.firstName;
+    }
+    set firstName(value){
+        is.string(value);
+        return this.#dominos.firstName=value;
+    }
+ 
+    get lastName(){
+        return this.#dominos.lastName;
+    }
+    set lastName(value){
+        is.string(value);
+        return this.#dominos.lastName=value;
+    }
+ 
+    get email(){
+        return this.#dominos.email;
+    }
+    set email(value){
+        is.string(value);
+        return this.#dominos.email=value;
+    }
+ 
+    get address(){
+        return this.#dominos.address;
+    }
+    set address(value){
+        is.string(value);
+        return this.#dominos.address=value;
+    }
+ 
+    get phone(){
+        return this.#dominos.phone;
+    }
+    set phone(value){
+        is.string(value);
+        return this.#dominos.phone=value;
+    }
+ 
+    get dominos(){
+        return this.#dominos;
+    }
+ 
+    #dominos={
+        ID:0,
+        firstName:'',
+        lastName:'',
+        email:'',
+        address:'',
+        phone:''
+    }
+};
+ 
+export {
+    Customer as default,
+    Customer
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/modules/Item.js.html b/coverage/lcov-report/modules/Item.js.html new file mode 100644 index 0000000..c063961 --- /dev/null +++ b/coverage/lcov-report/modules/Item.js.html @@ -0,0 +1,275 @@ + + + + + + Code coverage report for modules/Item.js + + + + + + + + + +
+
+

All files / modules Item.js

+
+ +
+ 22.73% + Statements + 15/66 +
+ + +
+ 50% + Branches + 1/2 +
+ + +
+ 0% + Functions + 0/2 +
+ + +
+ 22.73% + Lines + 15/66 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +661x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x
import defaultParameters from './defaultParameters.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Item{
+    constructor(parameters) {
+        defaultParameters(this,parameters);
+    }
+ 
+    AutoRemove=false
+    isNew = true
+    
+    get code(){
+        return this.#dominos.Code;
+    }
+    set code(value){
+        id.string(value);
+        return this.#dominos.Code=value;
+    }
+
+    get quantity(){
+        return this.#dominos.Qty;
+    }
+    set quantity(value){
+        id.number(value);
+        return this.#dominos.Qty=value;
+    }
+
+    get ID(){
+        return this.#dominos.ID;
+    }
+    set ID(value){
+        id.number(value);
+        return this.#dominos.ID=value;
+    }
+
+    //to maintain private structure
+    //options must be rewritten when updated
+    get options(){
+        return this.#dominos.Options;
+    }
+    set options(value){
+        id.object(value);
+        return this.#dominos.Options=value;
+    }
+
+    get dominos(){
+        return this.#dominos;
+    }
+
+    #dominos={
+        Code:'',
+        Qty:1,
+        ID:1,
+        Options:{ 
+            'C': {'1/1': '1'}, 
+            'X': {'1/1': '1'} 
+        }
+    }
+}
+ 
+export {
+    Item as default,
+    Item
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/modules/defaultParameters.js.html b/coverage/lcov-report/modules/defaultParameters.js.html new file mode 100644 index 0000000..60c815e --- /dev/null +++ b/coverage/lcov-report/modules/defaultParameters.js.html @@ -0,0 +1,176 @@ + + + + + + Code coverage report for modules/defaultParameters.js + + + + + + + + + +
+
+

All files / modules defaultParameters.js

+
+ +
+ 18.18% + Statements + 6/33 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 18.18% + Lines + 6/33 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +331x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x
const defaultParameters=function(parameters){
+    
+    if(!parameters){
+        //false because there are no parmas to work with.
+        return false;
+    }
+
+    if (typeof parameters !== 'object') {
+        //true because there are parmas to work with,
+        //but the default Object handler can't use them
+        return true;
+    }
+
+    for(const [key,value] of Object.entries(parameters)){
+        //console.log(key,value)
+        
+        //console.log(`${key} in ${this} = ${key in this}`);
+
+        if(!key in this){
+            continue;
+        }
+
+        this[key]=value;
+    }
+
+    //false because the params have been handled and should need no further work.
+    return false;
+}
+ 
+export {
+    defaultParameters as default,
+    defaultParameters
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/modules/index.html b/coverage/lcov-report/modules/index.html new file mode 100644 index 0000000..ebdba18 --- /dev/null +++ b/coverage/lcov-report/modules/index.html @@ -0,0 +1,156 @@ + + + + + + Code coverage report for modules + + + + + + + + + +
+
+

All files modules

+
+ +
+ 31.72% + Statements + 72/227 +
+ + +
+ 57.14% + Branches + 4/7 +
+ + +
+ 0% + Functions + 0/20 +
+ + +
+ 31.72% + Lines + 72/227 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
Coupon.js +
+
30.77%16/5250%1/20%0/230.77%16/52
Customer.js +
+
46.05%35/7650%1/20%0/1546.05%35/76
Item.js +
+
22.73%15/6650%1/20%0/222.73%15/66
defaultParameters.js +
+
18.18%6/33100%1/10%0/118.18%6/33
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/index.html b/coverage/lcov-report/node-dominos-pizza-api/index.html new file mode 100644 index 0000000..4cd1b6b --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/index.html @@ -0,0 +1,111 @@ + + + + + + Code coverage report for node-dominos-pizza-api + + + + + + + + + +
+
+

All files node-dominos-pizza-api

+
+ +
+ 100% + Statements + 55/55 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 55/55 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
index.js +
+
100%55/55100%1/1100%0/0100%55/55
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/index.js.html b/coverage/lcov-report/node-dominos-pizza-api/index.js.html new file mode 100644 index 0000000..2c21784 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/index.js.html @@ -0,0 +1,245 @@ + + + + + + Code coverage report for node-dominos-pizza-api/index.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api index.js

+
+ +
+ 100% + Statements + 55/55 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 55/55 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +561x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
import './modules/DominosErrors.js';
+ 
+import Address from './modules/Address.js';
+import NearbyStores from './modules/NearbyStores.js';
+import Store from './modules/Store.js';
+import Menu from './modules/Menu.js';
+ 
+import Customer from './modules/Customer.js';
+import Item from './modules/Item.js';
+import Image from './modules/Image.js';
+ 
+import Order from './modules/Order.js';
+import Payment from './modules/Payment.js';
+import Tracking from './modules/Tracking.js';
+ 
+import urls from './utils/urls.js';
+import IsDominos from './utils/DominosTypes.js';
+ 
+ 
+const old={
+    Address,
+    NearbyStores,
+    Store,
+    Menu,
+    
+    Customer,
+    Item,
+    Image,
+    
+    Order,
+    Payment,
+    Tracking,
+    
+    urls,
+    IsDominos
+};
+ 
+export {
+    old as default,
+    Address,
+    NearbyStores,
+    Store,
+    Menu,
+    
+    Customer,
+    Item,
+    Image,
+    
+    Order,
+    Payment,
+    Tracking,
+    
+    urls,
+    IsDominos
+};
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Address.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Address.js.html new file mode 100644 index 0000000..5e2abef --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Address.js.html @@ -0,0 +1,329 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Address.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Address.js

+
+ +
+ 100% + Statements + 83/83 +
+ + +
+ 87.5% + Branches + 14/16 +
+ + +
+ 100% + Functions + 5/5 +
+ + +
+ 100% + Lines + 83/83 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +841x +1x +1x +1x +1x +1x +1x +34x +34x +34x +34x +13x +13x +34x +34x +34x +1x +1x +34x +34x +34x +34x +34x +34x +34x +34x +1x +1x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +1x +1x +13x +1x +1x +1x +1x +13x +13x +13x +31x +31x +13x +13x +13x +13x +13x +13x +4x +4x +13x +4x +4x +4x +4x +13x +2x +2x +2x +13x +13x +1x +1x +1x +1x +1x + 
import Is from 'strong-type';
+import DominosFormat from './DominosFormat.js';
+ 
+const weakIs=new Is(false);
+ 
+class Address extends DominosFormat{
+    constructor(parameters){
+        super();
+        this.init=parameters;
+ 
+        if(weakIs.string(parameters)){
+            this.#parse(parameters);
+        }
+        
+        return this;
+    }
+ 
+    street      =''
+    streetNumber=''
+    streetName  =''
+    unitType    =''
+    unitNumber  =''
+    city        =''
+    region      =''
+    postalCode  =''
+    deliveryInstructions=''
+ 
+    get addressLines() {
+        const line1 = this.street
+            ||`${this.streetNumber} ${this.streetName} ${this.unitType} ${this.unitNumber}`
+            ||'';
+            
+        const line2 = `${
+            (this.city||'')
+        } ${
+            (this.region||'')
+        } ${
+            this.postalCode
+        }`
+ 
+        const lines={
+            line1,
+            line2
+        };
+        
+        return lines;
+    }
+ 
+    #parse(locationString) {
+        return parseAddress.call(this,locationString);
+    }   
+}
+ 
+const parseAddress=function(locationString){
+    const splitAddress = locationString.split(',');
+ 
+    for (var i in splitAddress) {
+        splitAddress[i] = splitAddress[i].trim();
+    }
+ 
+    this.postalCode= splitAddress[splitAddress.length-1]
+ 
+    //works well enough for addresses, could be better though
+    switch (splitAddress.length) {
+        case 2:
+            this.street=splitAddress[0];
+            break;
+        case 3:
+            this.street=splitAddress[0];
+            this.city = splitAddress[1];
+            
+            break;
+        case 4:
+            this.street = splitAddress[0];
+            this.city = splitAddress[1];
+            this.region = splitAddress[2];
+    }
+}
+ 
+export {
+    Address as default,
+    Address
+};
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/AmountsBreakdown.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/AmountsBreakdown.js.html new file mode 100644 index 0000000..a354a85 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/AmountsBreakdown.js.html @@ -0,0 +1,167 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/AmountsBreakdown.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules AmountsBreakdown.js

+
+ +
+ 100% + Statements + 30/30 +
+ + +
+ 75% + Branches + 3/4 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 30/30 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +301x +1x +1x +1x +9x +9x +9x +9x +1x +1x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +1x +1x +1x +1x +1x +1x
import DominosFormat from "./DominosFormat.js"
+ 
+class AmountsBreakdown extends DominosFormat{
+    constructor(params){
+        super();
+        this.init=params;
+        return this;
+    }
+ 
+    foodAndBeverage='0.00'
+    adjustment='0.00'
+    surcharge='0.00'
+    deliveryFee='0.00'
+    tax=0
+    tax1=0
+    tax2=0
+    tax3=0
+    tax4=0
+    tax5=0
+    bottle=0
+    customer=0
+    roundingAdjustment=0
+    cash=0
+    savings='0.00'
+  }
+ 
+  export {
+      AmountsBreakdown as default,
+      AmountsBreakdown
+  }
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Coupon.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Coupon.js.html new file mode 100644 index 0000000..5adc38c --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Coupon.js.html @@ -0,0 +1,236 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Coupon.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Coupon.js

+
+ +
+ 30.77% + Statements + 16/52 +
+ + +
+ 50% + Branches + 1/2 +
+ + +
+ 0% + Functions + 0/2 +
+ + +
+ 30.77% + Lines + 16/52 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +531x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x + 
import defaultParameters from './defaultParameters.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Coupon{
+    constructor(parameters){
+        defaultParameters(this,paramaters);  
+    }
+ 
+    
+    isNew=true
+
+    get code(){
+        return this.#dominos.Code;       
+    }
+    set code(value){
+        is.string(value);
+        return this.#dominos.Code=value;
+    }
+
+    get quantity(){
+        return this.#dominos.Qty;        
+    }
+    set quantity(value){
+        is.number(value);
+        return this.#dominos.Qty=value;
+    }
+
+    get ID(){
+        return this.#dominos.ID;       
+    }
+    set ID(value){
+        is.number(value);
+        return this.#dominos.ID=value;
+    }
+
+    get dominos(){
+        return this.#dominos;
+    }
+
+    #dominos={
+        Code:'',
+        Qty:0,
+        ID:1
+    }
+}
+ 
+export { 
+    Coupon as default,
+    Coupon
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Customer.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Customer.js.html new file mode 100644 index 0000000..0fad4d0 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Customer.js.html @@ -0,0 +1,164 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Customer.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Customer.js

+
+ +
+ 100% + Statements + 28/28 +
+ + +
+ 75% + Branches + 3/4 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 28/28 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +291x +1x +1x +1x +1x +1x +1x +1x +3x +3x +3x +3x +3x +3x +1x +1x +3x +3x +3x +3x +3x +1x +1x +1x +1x +1x +1x +1x + 
import Is from 'strong-type';
+import Address from './Address.js';
+import DominosFormat from './DominosFormat.js';
+ 
+const is=new Is;
+ 
+class Customer extends DominosFormat{
+    constructor(parameters) {
+        super();
+        this.init=parameters;
+        this.address=new Address(parameters.address);
+        this.phone=this.phone.replace(/\-/g,'');
+        return this;
+    }
+ 
+    firstName   =''
+    lastName    =''
+    email       =''
+    address     =new Address
+    phone       =''
+    phonePrefix =''
+    
+};
+ 
+export {
+    Customer as default,
+    Customer
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/DominosErrors.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/DominosErrors.js.html new file mode 100644 index 0000000..f525aa8 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/DominosErrors.js.html @@ -0,0 +1,458 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/DominosErrors.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules DominosErrors.js

+
+ +
+ 74.8% + Statements + 95/127 +
+ + +
+ 70% + Branches + 7/10 +
+ + +
+ 50% + Functions + 4/8 +
+ + +
+ 74.8% + Lines + 95/127 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +1271x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +2x +2x +1x +1x +1x +1x +1x +1x +3x +3x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
//all of these classes will be globally available
+ 
+import Is from "strong-type";
+ 
+const is=new Is;
+ 
+class DominosValidationError extends Error{
+    constructor(response){
+        is.object(response);
+        super();
+
+        //console.log(response)
+
+        this.message='Dominos Order Validation failed with the following information:';
+        
+        return createErrorMessage(this,response);
+    }
+};
+ 
+class DominosPriceError extends Error{
+    constructor(response){
+        is.object(response);
+        super();
+
+        //console.log(response)
+
+        this.message='Dominos Order Pricing failed with the following information:';
+
+        return createErrorMessage(this,response);
+    }
+};
+ 
+class DominosPlaceOrderError extends Error{
+    constructor(response){
+        is.object(response);
+        super();
+ 
+        //console.log(response)
+ 
+        this.message='Dominos Place Order failed with the following information:';
+ 
+        return createErrorMessage(this,response);
+    }
+};
+ 
+class DominosAddressError extends Error{
+    constructor(message){
+        is.string(message);
+        super();
+ 
+        this.message='Dominos Address Error: '+message;
+ 
+        return this;
+    }
+};
+ 
+class DominosDateError extends Error{
+    constructor(message){
+        is.string(message);
+        super();
+
+        this.message='Dominos Date Error: '+message;
+
+        return this;
+    }
+};
+ 
+class DominosStoreError extends Error{
+    constructor(message){
+        is.string(message);
+        super();
+ 
+        this.message='Dominos Store Error: '+message;
+ 
+        return this;
+    }
+};
+ 
+class DominosProductsError extends Error{
+    constructor(message){
+        is.string(message);
+        super();
+
+        this.message='Dominos Products Error: '+message;
+
+        return this;
+    }
+};
+ 
+const createErrorMessage=function(self,response){
+    is.object(self);
+    is.object(response);
+ 
+    //console.dir(response,{depth:2})
+ 
+    if(response.Order.StatusItems){
+        for(const [i,statusItem] 
+            of Object.entries(response.Order.StatusItems)
+        ){
+            self.message+=` ${statusItem.Code}:'${statusItem.Message||''}',`
+        }
+    }
+ 
+    if(response.Order.CorrectiveAction){
+        for(const [key,value] 
+            of Object.entries(response.Order.CorrectiveAction)
+        ){
+            self.message+=` ${key}:'${value}',`
+        }
+    }
+ 
+    for(const [i,statusItem] 
+        of Object.entries(response.StatusItems)
+    ){
+        self.message+=` ${statusItem.Code},`
+    }
+ 
+    return self;
+}
+ 
+global.DominosValidationError=DominosValidationError;
+global.DominosPriceError=DominosPriceError;
+global.DominosPlaceOrderError=DominosPlaceOrderError;
+global.DominosAddressError=DominosAddressError;
+global.DominosDateError=DominosDateError;
+global.DominosStoreError=DominosStoreError;
+global.DominosProductsError=DominosProductsError;
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/DominosFormat.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/DominosFormat.js.html new file mode 100644 index 0000000..a3cf973 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/DominosFormat.js.html @@ -0,0 +1,221 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/DominosFormat.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules DominosFormat.js

+
+ +
+ 87.5% + Statements + 42/48 +
+ + +
+ 100% + Branches + 6/6 +
+ + +
+ 71.43% + Functions + 5/7 +
+ + +
+ 87.5% + Lines + 42/48 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +481x +1x +1x +1x +1x +64x +64x +64x +1x +1x +48x +48x +48x +1x +1x +30x +30x +30x +30x +30x +30x +1x +1x +18x +18x +18x +18x +18x +18x +18x +1x +1x +  +  +1x +1x +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x
import defaultParameters from './defaultParameters.js';
+import {pascalObjectKeys,camelObjectKeys} from '../utils/toCase.js';
+ 
+class DominosFormat{
+    constructor(){
+        
+        return this;
+    }
+ 
+    set init(parameters){
+        //merge params into this object
+        defaultParameters(this,parameters);
+    }
+ 
+    get formatted(){
+        return pascalObjectKeys(
+            JSON.parse(
+                JSON.stringify(this)
+            )
+        );
+    }
+ 
+    set formatted(dominosAddress){
+        Object.assign(
+            this,
+            camelObjectKeys(dominosAddress)
+        );
+ 
+        return this;
+    }
+ 
+    get dominosAPIResponse(){
+        return this.#dominosAPIResponse; 
+    }
+ 
+    set dominosAPIResponse(value){
+        is.object(value);
+
+        return this.#dominosAPIResponse=value;
+    }
+ 
+    #dominosAPIResponse={}
+}
+ 
+export {
+    DominosFormat as default,
+    DominosFormat
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Image.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Image.js.html new file mode 100644 index 0000000..a0fecde --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Image.js.html @@ -0,0 +1,155 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Image.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Image.js

+
+ +
+ 100% + Statements + 26/26 +
+ + +
+ 75% + Branches + 3/4 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 26/26 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +261x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import {Base64File} from 'js-base64-file';
+import urls from '../utils/urls.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Image extends Base64File{
+    constructor(productCode) {
+        is.string(productCode);
+        
+        super();
+        
+        return this.#fetchImage(urls.images.replace('${productCode}',productCode));
+    } 
+ 
+    async #fetchImage(url){
+        this.base64Image=await this.loadRemote(url,'');
+ 
+        return this;
+    }
+}
+ 
+export {
+    Image as default,
+    Image
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Item.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Item.js.html new file mode 100644 index 0000000..d346d3d --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Item.js.html @@ -0,0 +1,188 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Item.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Item.js

+
+ +
+ 100% + Statements + 37/37 +
+ + +
+ 83.33% + Branches + 5/6 +
+ + +
+ 100% + Functions + 4/4 +
+ + +
+ 100% + Lines + 37/37 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +371x +1x +1x +1x +1x +1x +1x +1x +2x +2x +2x +2x +2x +1x +1x +2x +2x +2x +1x +1x +1x +6x +6x +6x +6x +6x +6x +1x +1x +4x +4x +1x +1x +1x +1x +1x +1x
import Is from 'strong-type';
+import DominosFormat from './DominosFormat.js';
+ 
+const is=new Is;
+let id=1;
+ 
+class Item extends DominosFormat{
+    constructor(parameters) {
+        super();
+        this.init=parameters;
+ 
+        return this;
+    }
+ 
+    iD=id++
+    code=''
+    qty=1
+    options={}
+    isNew=true   
+ 
+    get formatted(){
+        const formatted=super.formatted;
+        //console.log(formatted);
+        formatted.isNew=this.isNew;
+        delete formatted.IsNew;
+        return formatted;
+    }
+ 
+    set formatted(value){
+        return super.formatted=value;
+    }
+}
+ 
+export {
+    Item as default,
+    Item
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Menu.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Menu.js.html new file mode 100644 index 0000000..7754d04 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Menu.js.html @@ -0,0 +1,668 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Menu.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Menu.js

+
+ +
+ 100% + Statements + 196/196 +
+ + +
+ 100% + Branches + 26/26 +
+ + +
+ 100% + Functions + 11/11 +
+ + +
+ 100% + Lines + 196/196 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +1971x +1x +1x +1x +1x +1x +1x +1x +1x +1x +5x +5x +1x +1x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +119x +119x +5x +5x +5x +5x +5x +5x +5x +5x +1x +1x +5x +5x +5x +5x +5x +5x +5x +5x +5x +1x +1x +1x +5x +5x +5x +5x +20x +20x +20x +20x +20x +20x +20x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +1x +1x +40x +200x +200x +200x +200x +200x +200x +200x +200x +200x +140x +200x +60x +60x +60x +200x +200x +65x +65x +200x +200x +200x +200x +20x +20x +20x +20x +20x +20x +20x +20x +200x +200x +200x +200x +149x +149x +149x +200x +200x +200x +200x +40x +1x +1x +3628x +19303x +19303x +19303x +3628x +1x +1x +6408x +6408x +46908x +46908x +45650x +46908x +43300x +43300x +43300x +3608x +3608x +3608x +3608x +3608x +6408x +6408x +1x +1x +135x +135x +135x +2790x +2790x +2790x +2790x +135x +135x +1x +1x +20x +20x +20x +20x +20x +90x +90x +90x +90x +20x +20x +20x +1x +1x +1x +1x +1x +1x +1x + 
import Is from 'strong-type';
+import urls from '../utils/urls.js';
+import {toCamel} from '../utils/toCase.js';
+import {get} from '../utils/api-json.js';
+ 
+const is=new Is;
+const weakIs=new Is(false);
+ 
+class Menu{
+    constructor(storeID,lang='en') {
+        return this.#getMenu(storeID,lang);
+    }
+ 
+    menu={
+        categories:{},
+        coupons:{
+            products:{},
+            shortCouponDescriptions:{},
+            couponTiers:{},
+        },
+        flavors:{},
+        products:{},
+        sides:{},
+        sizes:{},
+        toppings:{},
+        variants:{},
+        preconfiguredProducts:{},
+        shortProductDescriptions:{},
+        unsupported:{
+            products:{},
+            options:{}
+        },
+        cooking:{
+            instructions:{},
+            instructionGroups:{}
+        }
+    }
+ 
+    get dominosAPIResponse(){
+        return this.#dominosAPIResponse; 
+    }
+ 
+    set dominosAPIResponse(value){
+        is.object(value);
+ 
+        return this.#dominosAPIResponse=value;
+    }
+ 
+    #dominosAPIResponse={}
+ 
+    async #getMenu(storeID,lang){
+        this.dominosAPIResponse=await get(
+            urls.store.menu
+                .replace('${storeID}', storeID)
+                .replace('${lang}', lang)
+        );
+ 
+        this.#parse(this.dominosAPIResponse);
+ 
+        return this;
+    };
+ 
+    #parse(menu){
+        is.object(menu);
+ 
+        //define categories
+        for(const [categoryKey, dominosCategory] of Object.entries(this.dominosAPIResponse.Categorization)){
+            const category= this.menu.categories[toCamel(categoryKey)]={};
+            
+            this.#defineCategories(
+                dominosCategory.Categories,
+                category
+            );
+        }
+ 
+        this.#allParentAndGrandDescendantsToCamel(this.dominosAPIResponse.Flavors,this.menu.flavors);
+        this.#allParentAndGrandDescendantsToCamel(this.dominosAPIResponse.Sides,this.menu.sides);
+        this.#allParentAndGrandDescendantsToCamel(this.dominosAPIResponse.Sizes,this.menu.sizes);
+        this.#allParentAndGrandDescendantsToCamel(this.dominosAPIResponse.Toppings,this.menu.toppings);
+ 
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.Products,this.menu.products);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.PreconfiguredProducts,this.menu.preconfiguredProducts);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.Coupons,this.menu.coupons.products);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.Variants,this.menu.variants);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.ShortProductDescriptions,this.menu.shortProductDescriptions);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.UnsupportedProducts,this.menu.unsupported.products);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.UnsupportedOptions,this.menu.unsupported.options);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.CookingInstructions,this.menu.cooking.instructions);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.CookingInstructionGroups,this.menu.cooking.instructionGroups);
+ 
+        this.#allDescendantsToCamel(this.dominosAPIResponse.CouponTiers,this.menu.coupons.couponTiers);
+        this.#allDescendantsToCamel(this.dominosAPIResponse.ShortCouponDescriptions,this.menu.coupons.shortCouponDescriptions);
+        
+    }
+ 
+    #defineCategories(categories,menuParent){
+        for(const category of categories){
+            const formattedCategory=menuParent[
+                toCamel(category.Code)
+            ]={};
+ 
+            if(category.Code.length){
+                formattedCategory.code=category.Code;
+            }
+    
+            if(category.Name.length){
+                formattedCategory.name=category.Name;
+            }else{
+                //if the name is missing populate it with the code
+                formattedCategory.name=category.Code;
+            }
+    
+            if(category.Description.length){
+                formattedCategory.description=category.Description;
+            }
+    
+            formattedCategory.hasSubCategories=false;
+    
+            if(category.Categories.length){
+                formattedCategory.hasSubCategories=true;
+                formattedCategory.subCategories={};
+    
+                this.#defineCategories(
+                    category.Categories,
+                    formattedCategory.subCategories
+                );
+            }
+    
+            formattedCategory.hasProducts=false;
+    
+            if(category.Products.length){
+                formattedCategory.hasProducts=true;
+                formattedCategory.products=category.Products;
+            }
+    
+            formattedCategory.hasTags=false;
+ 
+        }
+    }
+    
+    #camelCaseKeys(dominos,menu){
+        for(const [key,value] of Object.entries(dominos)){
+            //console.log(key);
+            menu[toCamel(key)]=dominos[key];
+        }
+    }
+    
+    #allDescendantsToCamel(dominos,menu){
+        if(weakIs.object(dominos)){
+            for(const [key,value] of Object.entries(dominos)){
+                if(
+                    weakIs.array(value)||
+                    !weakIs.object(value)
+                ){
+                    menu[toCamel(key)]=value;
+                    continue;
+                }
+                menu[toCamel(key)]={};
+                const menuChild=menu[toCamel(key)];
+                this.#camelCaseKeys(value,menuChild);
+                this.#allDescendantsToCamel(value,menuChild);
+            }
+        }
+    }
+    
+    #allGrandDescendantsToCamel(dominos,menu){
+        if(weakIs.object(dominos)){
+            //console.log(menu);
+            for(const [key,value] of Object.entries(dominos)){
+                menu[key]={};
+                const menuChild=menu[key];
+                this.#allDescendantsToCamel(value,menuChild);
+            }
+        }
+    }
+    
+    #allParentAndGrandDescendantsToCamel(dominos,menu){
+        if(weakIs.object(dominos)){
+            //console.log(menu);
+            if(weakIs.object(dominos)){
+                this.#camelCaseKeys(dominos,menu);
+                for(const [key,value] of Object.entries(dominos)){
+                    const menuChild=menu[toCamel(key)]={};
+                    
+                    this.#allGrandDescendantsToCamel(value,menuChild);
+                }
+            }
+        }
+    }
+   
+}
+ 
+export {
+    Menu as default,
+    Menu
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/NearbyStores.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/NearbyStores.js.html new file mode 100644 index 0000000..0f9db1c --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/NearbyStores.js.html @@ -0,0 +1,275 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/NearbyStores.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules NearbyStores.js

+
+ +
+ 96.92% + Statements + 63/65 +
+ + +
+ 100% + Branches + 5/5 +
+ + +
+ 80% + Functions + 4/5 +
+ + +
+ 96.92% + Lines + 63/65 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +661x +1x +1x +1x +1x +1x +1x +1x +1x +1x +6x +6x +6x +6x +6x +1x +1x +6x +6x +6x +  +  +6x +6x +6x +6x +6x +6x +6x +6x +1x +1x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +1x +1x +1x +1x +1x +1x + 
import {get} from '../utils/api-json.js';
+import urls from '../utils/urls.js';
+import Is from 'strong-type';
+import Address from '../modules/Address.js';
+ 
+const is=new Is;
+const defaultAddress=new Address('222 2nd St, San Francisco, CA 94105');
+ 
+class NearbyStores{
+    constructor(addressInfo=this.address, pickUpType='Delivery') {
+        
+        this.address = new Address(addressInfo);
+ 
+        return this.#getStores(pickUpType);
+    }
+ 
+    address=defaultAddress
+    stores=[]
+    
+    get dominosAPIResponse(){
+        return this.#dominosAPIResponse; 
+    }
+ 
+    set dominosAPIResponse(value){
+        is.object(value);
+ 
+        return this.#dominosAPIResponse=value;
+    }
+ 
+    #dominosAPIResponse={}
+ 
+    async #getStores(pickUpType){
+        const stores=await get(
+            urls.store.find
+                .replace(
+                    '${line1}',
+                    encodeURI(
+                        this.address.addressLines.line1
+                    )
+                ).replace(
+                    '${line2}',
+                    encodeURI(
+                        this.address.addressLines.line2
+                    )
+                ).replace(
+                    '${pickUpType}',
+                    pickUpType
+                )
+        );
+ 
+        this.dominosAPIResponse=stores;
+ 
+        this.address.formatted=stores.Address;
+        this.stores=stores.Stores;
+ 
+        //console.dir(this,{depth:1})
+        
+        return this;
+    }
+};
+ 
+export {
+    NearbyStores as default,
+    NearbyStores
+};
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Order.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Order.js.html new file mode 100644 index 0000000..f24c503 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Order.js.html @@ -0,0 +1,1019 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Order.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Order.js

+
+ +
+ 91.37% + Statements + 286/313 +
+ + +
+ 78.05% + Branches + 32/41 +
+ + +
+ 90.91% + Functions + 20/22 +
+ + +
+ 91.37% + Lines + 286/313 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +3141x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +9x +9x +9x +9x +1x +1x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +  +  +  +  +  +  +  +  +  +9x +9x +  +  +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +1x +1x +1x +1x +1x +1x +9x +9x +1x +1x +1x +1x +9x +9x +6x +6x +6x +6x +6x +6x +9x +9x +1x +1x +1x +1x +9x +9x +6x +6x +6x +6x +5x +5x +6x +6x +1x +1x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +9x +9x +9x +6x +6x +9x +9x +8x +8x +9x +9x +2x +2x +2x +2x +9x +9x +4x +4x +9x +9x +2x +2x +2x +2x +9x +9x +2x +2x +9x +9x +1x +1x +1x +1x +9x +9x +9x +9x +9x +9x +1x +1x +2x +2x +2x +2x +2x +2x +2x +2x +1x +1x +3x +1x +1x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +3x +  +  +2x +2x +2x +2x +3x +1x +1x +2x +  +  +2x +2x +  +  +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +  +  +2x +2x +2x +2x +2x +1x +1x +2x +  +  +2x +2x +  +  +2x +2x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +2x +1x +1x +  +  +  +  +1x +1x +1x +4x +4x +4x +4x +4x +4x +12x +12x +4x +4x +4x +4x +4x +4x +4x +164x +164x +164x +164x +164x +164x +164x +116x +116x +116x +164x +164x +4x +4x +4x +1x +1x +1x +1x +1x +1x +1x +1x + 
import IsDominos from '../utils/DominosTypes.js';
+import DominosFormat from './DominosFormat.js';
+import {urls} from '../utils/urls.js';
+import Address from '../modules/Address.js';
+import {post} from '../utils/api-json.js';
+import { toCamel } from '../utils/toCase.js';
+import AmountsBreakdown from './AmountsBreakdown.js';
+ 
+const isDominos=new IsDominos;
+const testDominos=new IsDominos(false);
+ 
+class Order extends DominosFormat{
+    constructor(customer) {
+        super();
+ 
+        return this.addCustomer(customer);
+    }
+ 
+    address = new Address
+    amounts = {}
+    amountsBreakdown=new AmountsBreakdown
+    businessDate = ''
+    coupons = []
+    currency = ''
+    customerID = ''
+    
+    estimatedWaitMinutes = ''
+    email = ''
+    extension = ''
+    firstName = ''
+    hotspotsLite= false
+    iP=''
+    lastName = ''
+    languageCode = 'en'
+    market = ''
+    metaData = {calculateNutrition: true, contactless:true}
+    newUser = true
+    noCombine = true
+    orderChannel = 'OLO'
+    orderID = ''
+    orderInfoCollection=[]
+    orderMethod = 'Web'
+    orderTaker = 'node-dominos-pizza-api'
+    partners = {}
+    payments = []
+    phone = ''
+    phonePrefix = ''
+    priceOrderMs=0
+    priceOrderTime = ''
+    products = []
+    promotions={}
+    pulseOrderGuid=''
+    serviceMethod = 'Delivery'
+    sourceOrganizationURI = urls.sourceUri
+    storeID = ''
+    tags = {}
+    userAgent=''
+    version = '1.0'
+    
+    orderInFuture(date){
+        isDominos.date(date);
+        const now=Date.now();
+        if(date<now){
+            throw new DominosDateError('Order dates must be in the future.');
+        }
+        const dateString=date.toISOString().replace('T',' ').replace('.000Z','');
+        
+        this.futureOrderTime=dateString;
+    }
+ 
+    orderNow(){
+        delete this.futureOrderTime;
+    }
+ 
+    addCustomer(customer) { 
+        isDominos.customer(customer);
+        
+        Object.assign(this,customer);
+        
+        return this;
+    }
+ 
+    addCoupon(couponCode) { 
+        isDominos.string(couponCode);
+        
+        this.coupons.push(couponCode);
+        
+        return this;
+    }
+ 
+    removeCoupon(couponCode) { 
+        isDominos.string(couponCode);
+        
+        return this.#remove(couponCode,this.coupons);;
+    }
+ 
+    addItem(item) { 
+        isDominos.item(item);
+ 
+        this.products.push(item);
+        
+        return this;
+    }
+ 
+    removeItem(item) {
+        isDominos.item(item);
+ 
+        return this.#remove(item,this.products);
+    }
+ 
+    get payload(){
+        const formatted=this.formatted;
+        formatted.Address=this.address.formatted;
+        
+        for(const [i,item] of Object.entries(this.products)){
+            formatted.Products[i]=item.formatted;
+        }
+ 
+        for(const [i,payment] of Object.entries(this.payments)){
+            formatted.Payments[i]=payment.formatted;
+        }
+ 
+        //console.log(formatted);
+ 
+        Object.assign(formatted.metaData={},formatted.MetaData);
+ 
+        delete formatted.MetaData
+ 
+        return JSON.stringify(
+            {
+                Order:formatted
+            },
+            // null,
+            // 4
+        )   
+    }
+ 
+    // the setter is very large, so it is near the bottom of the class
+    get formatted(){
+        return super.formatted;
+    }
+ 
+    get validationResponse(){
+        return this.#validationResponse; 
+    }
+ 
+    set validationResponse(value){
+        isDominos.object(value);
+ 
+        return this.#validationResponse=value;
+    }
+ 
+    get priceResponse(){
+        return this.#priceResponse; 
+    }
+ 
+    set priceResponse(value){
+        isDominos.object(value);
+ 
+        return this.#priceResponse=value;
+    }
+ 
+    get placeResponse(){
+        return this.#placeResponse; 
+    }
+ 
+    set placeResponse(value){
+        isDominos.object(value);
+ 
+        return this.#placeResponse=value;
+    }
+ 
+    #priceResponse={}
+ 
+    #validationResponse={}
+ 
+    #placeResponse={}
+    
+    #remove(child,parent){
+ 
+        const index = parent.indexOf(child);
+        if(index != -1) {
+          parent.splice(index, 1);
+        }
+ 
+        return this;
+    }
+ 
+    async validate() {  
+        if(!this.storeID){
+            throw new DominosStoreError('Store ID must be set before validating order');
+        }
+ 
+        this.validationResponse=await post(
+            urls.order.validate,
+            this.payload
+        );
+ 
+        const validation=this.validationResponse.Order;
+        
+        //console.log(this.validationResponse)
+ 
+        if(validation.Status==-1 || this.validationResponse.Status==-1){
+            throw new DominosValidationError(this.validationResponse);
+        }
+ 
+        this.formatted=validation;
+ 
+        return this;
+    }
+ 
+    async price() {
+        if(!this.storeID){
+            throw new DominosStoreError('Store ID must be set before pricing an order. `order.storeID=...`');
+        }
+ 
+        if(!this.products.length>0){
+            throw new DominosProductsError('Order must contain product items before pricing. `order.addItem(...)`');
+        }
+ 
+        this.priceResponse=await post(
+            urls.order.price,
+            this.payload
+        );
+ 
+        //console.dir(JSON.parse(this.payload),{depth:5})
+ 
+        const price=this.priceResponse.Order;
+        
+        //console.dir(this.priceResponse,{depth:5})
+ 
+        if(price.Status==-1 || this.priceResponse.Status==-1){
+            throw new DominosPriceError(this.priceResponse);
+        }
+ 
+        this.formatted=price;
+ 
+        return this;
+    }
+ 
+    async place() {
+        if(!this.storeID){
+            throw new DominosStoreError('Store ID must be set before placing an order. `order.storeID=...`');
+        }
+ 
+        if(!this.products.length>0){
+            throw new DominosProductsError('Order must contain product items before placing. `order.addItem(...)`');
+        }
+        
+        if(!this.address.region){
+            console.log(this.address)
+            throw new DominosAddressError('before you place an order, you must insure `order.address.region` is set');
+        }
+ 
+        this.placeResponse=await post(
+            urls.order.place,
+            this.payload
+        );
+ 
+        // console.dir(JSON.parse(this.payload),{depth:5})
+ 
+        const placeOrder=this.placeResponse.Order;
+        
+        // console.dir(this.placeResponse,{depth:5})
+ 
+        if(placeOrder.Status==-1 || this.priceResponse.Status==-1){
+            throw new DominosPlaceOrderError(this.placeResponse);
+        }
+
+        this.formatted=placeOrder;
+
+        return this;
+    };
+ 
+    set formatted(orderResponse){
+        // instance members
+        this.address.formatted=orderResponse.Address;
+        this.amountsBreakdown.formatted=orderResponse.AmountsBreakdown;
+        
+        //refreneces arrays/objects 
+        for(const [key,promo] of Object.entries(orderResponse.Promotions)){
+            this.promotions[toCamel(key)]=promo;
+        }
+ 
+        for(const [i,product] of Object.entries(orderResponse.Products)){
+            this.products[i].formatted=product;
+        }
+ 
+        //primitives
+        for(const [key,value] of Object.entries(orderResponse)){
+            if(
+                !testDominos.address(value)
+                && !testDominos.address(value)
+                && !testDominos.amountsBreakdown(value)
+                && !testDominos.object(value)
+                && !testDominos.array(value)
+            ){
+                this[toCamel(key)]=value;
+                continue;
+            }
+            //console.log(key,value);
+        }
+ 
+        return this;
+    }
+ 
+}
+ 
+ 
+export {
+    Order as default,
+    Order
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Payment.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Payment.js.html new file mode 100644 index 0000000..74a975b --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Payment.js.html @@ -0,0 +1,317 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Payment.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Payment.js

+
+ +
+ 100% + Statements + 80/80 +
+ + +
+ 90.48% + Branches + 19/21 +
+ + +
+ 100% + Functions + 4/4 +
+ + +
+ 100% + Lines + 80/80 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +801x +1x +1x +1x +1x +1x +1x +7x +7x +7x +7x +7x +7x +2x +2x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +1x +1x +7x +7x +7x +7x +7x +1x +1x +1x +14x +14x +1x +1x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +1x +1x +1x +1x +1x +1x
import Is from 'strong-type';
+import DominosFormat from './DominosFormat.js';
+ 
+const is=new Is;
+ 
+class Payment extends DominosFormat{
+    constructor(parameters) {
+        is.string(parameters.number);
+        is.string(parameters.expiration);
+        is.string(parameters.securityCode);
+        is.string(parameters.postalCode);
+        
+        if(parameters.amount){
+            is.number(parameters.amount)
+        }
+ 
+        super();
+ 
+        parameters.number=this.#digitsOnly(parameters.number);
+ 
+        this.#validate(parameters.number);
+        
+        if(this.cardType){
+            this.number=parameters.number;
+            
+            //numbers only
+            this.expiration=this.#digitsOnly(parameters.expiration);
+            this.securityCode=parameters.securityCode;
+            this.postalCode=parameters.postalCode;
+            this.amount=parameters.amount||0;
+        }
+ 
+        return this;
+    }
+    
+    type='CreditCard'
+    amount=0
+    number=''
+    cardType=''
+    expiration=''
+    securityCode=''
+    postalCode=''   
+ 
+    #digitsOnly(string){
+        return string.replace(/\D/g,'');
+    }
+ 
+    #validate(number){
+        const re = {
+            visa        : /^4[0-9]{12}(?:[0-9]{3})?$/,
+            mastercard  : /^5[1-5][0-9]{14}$/,
+            amex        : /^3[47][0-9]{13}$/,
+            diners      : /^3(?:0[0-5]|[68][0-9])[0-9]{11}$/,
+            discover    : /^6(?:011|5[0-9]{2})[0-9]{12}$/,
+            jcb         : /^(?:2131|1800|35\d{3})\d{11}$/,
+            enroute     : /^(?:2014|2149)\d{11}$/
+        };
+    
+        (re.visa.test(number))? this.cardType='VISA':null;
+    
+        (re.mastercard.test(number))? this.cardType='MASTERCARD':null;
+    
+        (re.amex.test(number))? this.cardType='AMEX':null;
+    
+        (re.diners.test(number))? this.cardType='DINERS':null;
+    
+        (re.discover.test(number))? this.cardType='DISCOVER':null;
+    
+        (re.jcb.test(number))? this.cardType='JCB':null;
+    
+        (re.enroute.test(number))? this.cardType='ENROUTE':null;
+        
+        return this;
+    }
+}
+ 
+export {
+    Payment as default,
+    Payment
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Store.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Store.js.html new file mode 100644 index 0000000..f52b88d --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Store.js.html @@ -0,0 +1,191 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Store.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Store.js

+
+ +
+ 100% + Statements + 37/37 +
+ + +
+ 100% + Branches + 7/7 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 37/37 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +381x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +9x +9x +4x +4x +5x +5x +5x +9x +1x +1x +5x +5x +5x +5x +4x +4x +4x +4x +5x +1x +1x +1x +1x +1x +1x + 
import {get} from '../utils/api-json.js';
+import urls from '../utils/urls.js';
+import Menu from './Menu.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+const weakIs=new Is(false);
+ 
+class Store{
+    //parameters object required
+    //parameters.id also required as a minimum
+    constructor(id,lang='en') {
+        //accept both string and number types for id
+        if(!weakIs.number(id)&&!weakIs.string(id)){
+            throw new ReferenceError(`Store class expects id to be a number or string, but got ${id}`);
+        }
+        is.string(lang);
+ 
+        return this.#init(id,lang);
+    }
+ 
+    async #init(id,lang) {
+ 
+        this.info=await get(
+            urls.store.info.replace('${storeID}', id)
+        );
+ 
+        this.menu=await new Menu(id,lang);
+ 
+        return this;
+    }
+};
+ 
+export {
+    Store as default,
+    Store
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/Tracking.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/Tracking.js.html new file mode 100644 index 0000000..47e9e53 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/Tracking.js.html @@ -0,0 +1,230 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Tracking.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Tracking.js

+
+ +
+ 94.12% + Statements + 48/51 +
+ + +
+ 100% + Branches + 5/5 +
+ + +
+ 80% + Functions + 4/5 +
+ + +
+ 94.12% + Lines + 48/51 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +511x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import Is from "strong-type";
+import { getSoap } from "../utils/api-json.js";
+import urls from "../utils/urls.js";
+ 
+const is=new Is;
+ 
+class Tracking{
+    constructor(){
+ 
+        return this;
+    }
+    
+    orders={}
+    query={}
+    dominosAPIResult={}
+ 
+    async byPhone(phone) {
+        is.string(phone);
+    
+        return await this.byURL(`${urls.track}Phone=${phone}`);
+    }
+ 
+    async byID(storeID, orderKey) {
+    
+        return await this.byURL(`${urls.track}StoreID=${storeID}&OrderKey=${orderKey}`);
+    }
+ 
+    async byURL(url){
+        is.string(url);
+        
+        //console.log(url)
+ 
+        this.dominosAPIResult=await getSoap(url);
+ 
+        //console.log(this.dominosAPIResult);
+ 
+        is.object(this.dominosAPIResult['soap:Envelope']);
+        is.object(this.dominosAPIResult['soap:Envelope']['soap:Body']);
+        is.object(this.dominosAPIResult['soap:Envelope']['soap:Body'].GetTrackerDataResponse);
+ 
+        this.orders=this.dominosAPIResult['soap:Envelope']['soap:Body'].GetTrackerDataResponse.OrderStatuses;
+        this.query=this.dominosAPIResult['soap:Envelope']['soap:Body'].GetTrackerDataResponse.Query;
+        
+        return this;
+    }
+}
+ 
+export {
+    Tracking as default,
+    Tracking
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/defaultParameters.js.html b/coverage/lcov-report/node-dominos-pizza-api/modules/defaultParameters.js.html new file mode 100644 index 0000000..5954195 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/defaultParameters.js.html @@ -0,0 +1,128 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/defaultParameters.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules defaultParameters.js

+
+ +
+ 100% + Statements + 17/17 +
+ + +
+ 100% + Branches + 4/4 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 17/17 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +171x +48x +35x +35x +35x +35x +13x +13x +13x +13x +13x +48x +1x +1x +1x +1x +1x
const defaultParameters=function(self,parameters){
+    if (typeof parameters !== 'object') {
+        //true because there are parmas to work with,
+        //but the default Object handler can't use them
+        return true;
+    }
+ 
+    Object.assign(self,parameters);
+ 
+    //false because the params have been handled and should need no further work.
+    return false;
+}
+ 
+export {
+    defaultParameters as default,
+    defaultParameters
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/modules/index.html b/coverage/lcov-report/node-dominos-pizza-api/modules/index.html new file mode 100644 index 0000000..d353645 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/modules/index.html @@ -0,0 +1,306 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules + + + + + + + + + +
+
+

All files node-dominos-pizza-api/modules

+
+ +
+ 93.85% + Statements + 1068/1138 +
+ + +
+ 87.42% + Branches + 139/159 +
+ + +
+ 87.5% + Functions + 70/80 +
+ + +
+ 93.85% + Lines + 1068/1138 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
Address.js +
+
100%83/8387.5%14/16100%5/5100%83/83
AmountsBreakdown.js +
+
100%30/3075%3/4100%2/2100%30/30
Customer.js +
+
100%28/2875%3/4100%2/2100%28/28
DominosErrors.js +
+
74.8%95/12770%7/1050%4/874.8%95/127
DominosFormat.js +
+
87.5%42/48100%6/671.43%5/787.5%42/48
Image.js +
+
100%26/2675%3/4100%2/2100%26/26
Item.js +
+
100%37/3783.33%5/6100%4/4100%37/37
Menu.js +
+
100%196/196100%26/26100%11/11100%196/196
NearbyStores.js +
+
96.92%63/65100%5/580%4/596.92%63/65
Order.js +
+
91.37%286/31378.05%32/4190.91%20/2291.37%286/313
Payment.js +
+
100%80/8090.48%19/21100%4/4100%80/80
Store.js +
+
100%37/37100%7/7100%2/2100%37/37
Tracking.js +
+
94.12%48/51100%5/580%4/594.12%48/51
defaultParameters.js +
+
100%17/17100%4/4100%1/1100%17/17
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/utils/DominosTypes.js.html b/coverage/lcov-report/node-dominos-pizza-api/utils/DominosTypes.js.html new file mode 100644 index 0000000..ef6cfd0 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/utils/DominosTypes.js.html @@ -0,0 +1,377 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/DominosTypes.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils DominosTypes.js

+
+ +
+ 92% + Statements + 92/100 +
+ + +
+ 100% + Branches + 16/16 +
+ + +
+ 78.95% + Functions + 15/19 +
+ + +
+ 92% + Lines + 92/100 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +1001x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +19x +19x +1x +1x +347x +347x +1x +1x +164x +164x +1x +1x +5x +5x +1x +1x +4x +4x +1x +1x +4x +4x +1x +1x +8x +8x +1x +1x +10x +10x +1x +1x +1x +1x +1x +1x +6x +6x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +1x +1x +1x +1x +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import '../modules/DominosErrors.js';
+ 
+import Is from 'strong-type';
+import {FetchError} from 'node-fetch';
+ 
+import Address from '../modules/Address.js';
+import AmountsBreakdown from '../modules/AmountsBreakdown.js';
+import NearbyStores from '../modules/NearbyStores.js';
+import Menu from '../modules/Menu.js';
+import Store from '../modules/Store.js';
+import Item from '../modules/Item.js';
+import Image from '../modules/Image.js';
+import Customer from '../modules/Customer.js';
+import Tracking from '../modules/Tracking.js';
+import Payment from '../modules/Payment.js';
+ 
+import VanillaTest from 'vanilla-test';
+ 
+class IsDominos extends Is{
+    test(value){
+        return this.instanceCheck(value,VanillaTest);
+    }
+ 
+    address(value){
+        return this.instanceCheck(value,Address);
+    }
+ 
+    amountsBreakdown(value){
+        return this.instanceCheck(value,AmountsBreakdown);
+    }
+ 
+    nearbyStores(value){
+        return this.instanceCheck(value,NearbyStores);
+    }
+ 
+    menu(value){
+        return this.instanceCheck(value,Menu);
+    }
+ 
+    store(value){
+        return this.instanceCheck(value,Store);
+    }
+ 
+    item(value){
+        return this.instanceCheck(value,Item);
+    }
+ 
+    customer(value){
+        return this.instanceCheck(value,Customer);
+    }
+ 
+    image(value){
+        return this.instanceCheck(value,Image);
+    }
+ 
+    payment(value){
+        return this.instanceCheck(value,Payment);
+    }
+ 
+    tracking(value){
+        return this.instanceCheck(value,Tracking);
+    }
+ 
+    validationError(value){
+        return this.instanceCheck(value,DominosValidationError);
+    }
+ 
+    priceError(value){
+        return this.instanceCheck(value,DominosPriceError);
+    }
+ 
+    placeOrderError(value){
+        return this.instanceCheck(value,DominosPlaceOrderError);
+    }
+ 
+    addressError(value){
+        return this.instanceCheck(value,DominosAddressError);
+    }
+ 
+    dateError(value){
+        return this.instanceCheck(value,DominosDateError);
+    }
+ 
+    storeError(value){
+        return this.instanceCheck(value,DominosStoreError);
+    }
+ 
+    productsError(value){
+        return this.instanceCheck(value,DominosProductsError);
+    }
+ 
+    fetchError(value){
+        return this.instanceCheck(value,FetchError);
+    }
+}
+ 
+export {
+    IsDominos as default, 
+    IsDominos
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/utils/api-json.js.html b/coverage/lcov-report/node-dominos-pizza-api/utils/api-json.js.html new file mode 100644 index 0000000..b1eb5cd --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/utils/api-json.js.html @@ -0,0 +1,332 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/api-json.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils api-json.js

+
+ +
+ 100% + Statements + 85/85 +
+ + +
+ 100% + Branches + 4/4 +
+ + +
+ 100% + Functions + 3/3 +
+ + +
+ 100% + Lines + 85/85 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +851x +1x +1x +1x +1x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +1x +1x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import fetch from 'node-fetch';
+import urls from './urls.js';
+import {default as parser} from 'xml2json';
+ 
+const post=async function(url, payload) {
+    const options = {
+        method:'POST',
+        headers: {
+            'Referer': urls.referer,
+            'Accept': 'application/json',
+            'Content-Type': 'application/json'
+        },
+        body:payload
+    };
+ 
+    //console.log(options,url);
+ 
+    const res=await fetch(
+        url,
+        options
+    );
+ 
+    //console.log(await res.text());
+ 
+    return await res.json();
+}
+ 
+const get = async function(url){
+    const options = {
+        method:'GET',
+        headers: {
+            'Referer': urls.referer,
+            'Accept': 'application/json',
+            'Content-Type': 'application/json'
+        }
+    };
+ 
+    //console.log(options,url);
+ 
+    const res=await fetch(
+        url,
+        options
+    );
+ 
+    //console.log(await res.text());
+ 
+    return await res.json();
+}
+ 
+const getSoap = async function(url){
+    const options = {
+        method:'GET',
+        headers: {
+            'Referer': urls.referer
+        }
+    };
+ 
+    //console.log(options,url);
+ 
+    const res=await fetch(
+        url,
+        options
+    );
+ 
+    //console.log(await res.text());
+ 
+    return parser.toJson(
+        await res.text(),
+        {
+            coerce: false,
+            sanitize: false,
+            object: true,
+            trim: false
+        }
+    );
+}
+ 
+const old={get,getSoap,post}
+ 
+export {
+    old as default,
+    get,
+    getSoap,
+    post
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/utils/customTypes.js.html b/coverage/lcov-report/node-dominos-pizza-api/utils/customTypes.js.html new file mode 100644 index 0000000..1592855 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/utils/customTypes.js.html @@ -0,0 +1,155 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/customTypes.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils customTypes.js

+
+ +
+ 84.62% + Statements + 22/26 +
+ + +
+ 100% + Branches + 3/3 +
+ + +
+ 50% + Functions + 2/4 +
+ + +
+ 84.62% + Lines + 22/26 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +261x +1x +1x +1x +1x +1x +17x +17x +1x +1x +16x +16x +1x +1x +  +  +1x +1x +  +  +1x +1x +1x +1x +1x +1x
import Is from 'strong-type';
+import {Address,NearbyStores,Store} from '../index.js';
+import VanillaTest from 'vanilla-test';
+ 
+class IsDominos extends Is{
+    test(value){
+        return this.instanceCheck(value,VanillaTest);
+    }
+ 
+    address(value){
+        return this.instanceCheck(value,Address);
+    }
+ 
+    nearbyStores(value){
+        return this.instanceCheck(value,NearbyStores);
+    }
+ 
+    store(value){
+        return this.instanceCheck(value,Store);
+    }
+}
+ 
+export {
+    IsDominos as default, 
+    IsDominos
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/utils/delay.js.html b/coverage/lcov-report/node-dominos-pizza-api/utils/delay.js.html new file mode 100644 index 0000000..378f34c --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/utils/delay.js.html @@ -0,0 +1,134 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/delay.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils delay.js

+
+ +
+ 100% + Statements + 19/19 +
+ + +
+ 100% + Branches + 3/3 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 19/19 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +191x +1x +4x +4x +4x +4x +4x +485996x +485996x +485996x +485996x +4x +4x +4x +1x +1x +1x +1x +1x
import fs from 'fs';
+ 
+function delay(ms=100) {
+    const proceedAt = Date.now() + ms;
+ 
+    //may delay a little longer than ms as the requrest to existsSync may take a few ms
+    while (Date.now() < proceedAt) {
+        fs.existsSync(
+            Math.round(Math.random()*(ms*ms))
+        );
+    }
+ 
+    return;
+}
+ 
+export { 
+    delay as default, 
+    delay
+}; 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/utils/index.html b/coverage/lcov-report/node-dominos-pizza-api/utils/index.html new file mode 100644 index 0000000..10b8b09 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/utils/index.html @@ -0,0 +1,171 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils + + + + + + + + + +
+
+

All files node-dominos-pizza-api/utils

+
+ +
+ 97.71% + Statements + 342/350 +
+ + +
+ 100% + Branches + 32/32 +
+ + +
+ 85.71% + Functions + 24/28 +
+ + +
+ 97.71% + Lines + 342/350 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
DominosTypes.js +
+
92%92/100100%16/1678.95%15/1992%92/100
api-json.js +
+
100%85/85100%4/4100%3/3100%85/85
delay.js +
+
100%19/19100%3/3100%1/1100%19/19
toCase.js +
+
100%48/48100%7/7100%4/4100%48/48
urls.js +
+
100%98/98100%2/2100%1/1100%98/98
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/utils/pascalToCamel.js.html b/coverage/lcov-report/node-dominos-pizza-api/utils/pascalToCamel.js.html new file mode 100644 index 0000000..36971a5 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/utils/pascalToCamel.js.html @@ -0,0 +1,101 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/pascalToCamel.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils pascalToCamel.js

+
+ +
+ 100% + Statements + 8/8 +
+ + +
+ 100% + Branches + 2/2 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 8/8 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +81x +60x +60x +1x +1x +1x +1x +1x
const pascalToCamel=function(key){
+    return key[0].toLowerCase()+key.slice(1);
+}
+ 
+export {
+    pascalToCamel as default,
+    pascalToCamel
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/utils/toCase.js.html b/coverage/lcov-report/node-dominos-pizza-api/utils/toCase.js.html new file mode 100644 index 0000000..ffb65a6 --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/utils/toCase.js.html @@ -0,0 +1,221 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/toCase.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils toCase.js

+
+ +
+ 100% + Statements + 48/48 +
+ + +
+ 100% + Branches + 7/7 +
+ + +
+ 100% + Functions + 4/4 +
+ + +
+ 100% + Lines + 48/48 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +481x +1x +1x +1x +1x +70479x +70479x +70479x +1x +1x +499x +499x +499x +1x +1x +30x +30x +30x +465x +465x +465x +465x +30x +30x +30x +1x +1x +18x +18x +18x +220x +220x +220x +220x +18x +18x +18x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+const toCamel=function(key){
+    is.string(key);
+    return key[0].toLowerCase()+key.slice(1);
+}
+ 
+const toPascal=function(key){
+    is.string(key);
+    return key[0].toUpperCase()+key.slice(1);
+}
+ 
+const pascalObjectKeys=function(target){
+    const pascalFormat={};
+        
+    for(const [key,value] of Object.entries(target)){
+        const pascalKey=toPascal(key);
+        
+        pascalFormat[pascalKey]=value;
+    }
+ 
+    return pascalFormat;
+}
+ 
+const camelObjectKeys=function(target){
+    const camelFormat={};
+        
+    for(const [key,value] of Object.entries(target)){
+        const camelKey=toCamel(key);
+        
+        camelFormat[camelKey]=value;
+    }
+ 
+    return camelFormat;
+}
+ 
+ 
+const old={toCamel,toPascal,pascalObjectKeys,camelObjectKeys}
+ 
+export {
+    old as default,
+    toCamel,
+    toPascal,
+    pascalObjectKeys,
+    camelObjectKeys
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/node-dominos-pizza-api/utils/urls.js.html b/coverage/lcov-report/node-dominos-pizza-api/utils/urls.js.html new file mode 100644 index 0000000..eae326d --- /dev/null +++ b/coverage/lcov-report/node-dominos-pizza-api/utils/urls.js.html @@ -0,0 +1,374 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/urls.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils urls.js

+
+ +
+ 100% + Statements + 98/98 +
+ + +
+ 100% + Branches + 2/2 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 98/98 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +991x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +2x +2x +2x +2x +1x +1x +1x +1x +1x +1x +1x +1x + 
import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+const usa={
+  referer : "https://order.dominos.com/en/pages/order/",
+  sourceUri : "order.dominos.com",
+  location:{
+    find:"https://api.dominos.com/store-locator-international-service/findAddress?latitude=${lat}&longitude=${lon}"
+  },
+  store : {
+    find : "https://order.dominos.com/power/store-locator?s=${line1}&c=${line2}&type=${pickUpType}",
+    info : "https://order.dominos.com/power/store/${storeID}/profile",
+    menu : "https://order.dominos.com/power/store/${storeID}/menu?lang=${lang}&structured=true"
+  },
+  order: {
+    validate: "https://order.dominos.com/power/validate-order",
+    price: "https://order.dominos.com/power/price-order",
+    place: "https://order.dominos.com/power/place-order"
+  },
+  images:"https://cache.dominos.com/olo/6_47_2/assets/build/market/US/_en/images/img/products/larges/${productCode}.jpg",
+  track: "https://order.dominos.com/orderstorage/GetTrackerData?",
+ 
+  //POST {storeId: "8278"}
+  token:"https://order.dominos.com/power/paymentGatewayService/braintree/token",
+  
+  //POST general upsell see below
+  upsell:"https://api.dominos.com/upsell-service/stores/upsellForOrder/",
+ 
+  //POST specific types of upsell see below
+  stepUpsell:"https://api.dominos.com/upsell-service/stores/stepUpsellForOrder"
+ 
+};
+ 
+//UPSELL Payload
+//{"maxUpsellCount":3,"order":{"Order":{"Address":{"Street":"251 CLAY ST","City":"MONTEREY","Region":"CA","PostalCode":"93940-2225","Type":"House","StreetName":"CLAY ST","StreetNumber":"251"},"Coupons":[],"CustomerID":"","Email":"","Extension":"","FirstName":"","LastName":"","LanguageCode":"en","OrderChannel":"OLO","OrderID":"QhXExb3uMDO0ieSeb6vi","OrderMethod":"Web","OrderTaker":null,"Payments":[],"Phone":"","PhonePrefix":"","Products":[{"Code":"14SCREEN","Qty":1,"ID":1,"isNew":true,"Options":{"X":{"1/1":"1"},"C":{"1/1":"1"}}},{"Code":"14SCMEATZA","Qty":1,"ID":2,"isNew":true,"Options":{"X":{"1/1":"1"},"C":{"1/1":"1.5"},"H":{"1/1":"1"},"B":{"1/1":"1"},"P":{"1/1":"1"},"S":{"1/1":"1"}}}],"ServiceMethod":"Delivery","SourceOrganizationURI":"order.dominos.com","StoreID":"8278","Tags":{},"Version":"1.0","NoCombine":true,"Partners":{},"HotspotsLite":false,"OrderInfoCollection":[]}},"sortBy":"PRIORITY","upsellType":"BEST"}
+ 
+//STEP UPSELL interesting field is : stepTypes 
+//{"order":{"Address":{"Street":"251 CLAY ST","City":"MONTEREY","Region":"CA","PostalCode":"93940-2225","Type":"House","StreetName":"CLAY ST","StreetNumber":"251"},"Coupons":[],"CustomerID":"","Email":"","Extension":"","FirstName":"","LastName":"","LanguageCode":"en","OrderChannel":"OLO","OrderID":"QhXExb3uMDO0ieSeb6vi","OrderMethod":"Web","Payments":[],"Phone":"","PhonePrefix":"","ServiceMethod":"Delivery","SourceOrganizationURI":"order.dominos.com","StoreID":"8278","Tags":{},"Version":"1.0","NoCombine":true,"Partners":{},"HotspotsLite":false,"OrderInfoCollection":[],"metaData":{"calculateNutrition":"true","prop65Warning":true},"IP":"99.43.15.137","DpzSourceHeader":"DSSPriceOrder","UserAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36","Market":"UNITED_STATES","Currency":"USD","Promotions":{"Redeemable":[],"Valid":[]},"Status":0,"Amounts":{"Menu":37.97,"Discount":0,"Surcharge":4.99,"Adjustment":0,"Net":37.97,"Tax":3.32,"Tax1":3.32,"Tax2":0,"Bottle":0,"Customer":41.29,"Payment":41.29},"BusinessDate":"2021-02-18","EstimatedWaitMinutes":"20-30","PulseOrderGuid":"0013a1d2-ed7f-443f-bd06-014fa6f4d20b","PriceOrderTime":"2021-02-18 13:32:27","PriceOrderMs":1111,"AmountsBreakdown":{"FoodAndBeverage":"32.98","Adjustment":"0.00","Surcharge":"0.00","DeliveryFee":"4.99","Tax":3.32,"Tax1":3.32,"Tax2":0,"Tax3":0,"Tax4":0,"Tax5":0,"Bottle":0,"Customer":41.29,"RoundingAdjustment":0,"Cash":0,"Savings":"0.00"},"Products":[{"ID":1,"Code":"14SCREEN","Qty":1,"CategoryCode":"Pizza","FlavorCode":"HANDTOSS","Price":13.99,"Amount":13.99,"Status":0,"LikeProductID":0,"Name":"Large (14\") Hand Tossed Pizza","IsNew":true,"NeedsCustomization":false,"AutoRemove":false,"Fulfilled":false,"Tags":{},"descriptions":[{"portionCode":"1/1","value":"Robust Inspired Tomato Sauce, Cheese"}]},{"ID":2,"Code":"14SCMEATZA","Qty":1,"CategoryCode":"Pizza","FlavorCode":"HANDTOSS","Price":18.99,"Amount":18.99,"Status":0,"LikeProductID":0,"Name":"Large (14\") Hand Tossed MeatZZa","IsNew":true,"NeedsCustomization":false,"AutoRemove":false,"Fulfilled":false,"Tags":{},"descriptions":[{"portionCode":"1/1","value":"Robust Inspired Tomato Sauce, Extra Cheese, Pepperoni, Beef, Italian Sausage, Ham"}]}]},"stepTypes":["SIDE","DRINKS","DESSERT","FLAVOR"]}
+ 
+ 
+ 
+ 
+const canada={
+  referer   :"https://order.dominos.ca/en/pages/order/",
+  sourceUri :"order.dominos.ca",
+  location:{
+    find:"https://api.dominos.com/store-locator-international-service/findAddress?latitude=${lat}&longitude=${lon}"
+  },
+  store     : {
+      find    : "https://order.dominos.ca/power/store-locator?s=${line1}&c=${line2}&type=${type}",
+      info    : "https://order.dominos.ca/power/store/${storeID}/profile",
+      menu    : "https://order.dominos.ca/power/store/${storeID}/menu?lang=${lang}&structured=true"
+  },
+  order     : {
+      validate: "https://order.dominos.ca/power/validate-order",
+      price   : "https://order.dominos.ca/power/price-order",
+      place   : "https://order.dominos.ca/power/place-order"
+  },
+  images  : "https://cache.dominos.com/nolo/ca/en/6_44_3/assets/build/market/CA/_en/images/img/products/larges/${itemCode}.jpg",
+  track   : "https://order.dominos.ca/orderstorage/GetTrackerData?",
+ 
+ 
+  //Need someone to update these or confirm for canada
+ 
+  //POST {storeId: "8278"}
+  token:"https://order.dominos.com/power/paymentGatewayService/braintree/token",
+  
+  //POST general upsell see below
+  upsell:"https://api.dominos.com/upsell-service/stores/upsellForOrder/",
+ 
+  //POST specific types of upsell see below
+  stepUpsell:"https://api.dominos.com/upsell-service/stores/stepUpsellForOrder"
+}
+ 
+ 
+let urls=usa;
+ 
+//to use other countries just set urls to that countries urls
+ 
+// import {urls} from '../index.js';
+// import {useInternational,canada} from '../utils/urls.js';
+// useInternational(canada);
+ 
+// console.dir(urls);
+ 
+function useInternational(internationalURLs=usa){
+  is.object(internationalURLs);
+  urls=internationalURLs;
+}
+ 
+export {
+    urls as default,
+    urls,
+    canada,
+    usa,
+    useInternational
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/prettify.css b/coverage/lcov-report/prettify.css new file mode 100644 index 0000000..b317a7c --- /dev/null +++ b/coverage/lcov-report/prettify.css @@ -0,0 +1 @@ +.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} diff --git a/coverage/lcov-report/prettify.js b/coverage/lcov-report/prettify.js new file mode 100644 index 0000000..b322523 --- /dev/null +++ b/coverage/lcov-report/prettify.js @@ -0,0 +1,2 @@ +/* eslint-disable */ +window.PR_SHOULD_USE_CONTINUATION=true;(function(){var h=["break,continue,do,else,for,if,return,while"];var u=[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var p=[u,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var l=[p,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var x=[p,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var R=[x,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"];var r="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes";var w=[p,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var s="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var I=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var f=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var H=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var A=[l,R,w,s+I,f,H];var e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;var C="str";var z="kwd";var j="com";var O="typ";var G="lit";var L="pun";var F="pln";var m="tag";var E="dec";var J="src";var P="atn";var n="atv";var N="nocode";var M="(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function k(Z){var ad=0;var S=false;var ac=false;for(var V=0,U=Z.length;V122)){if(!(al<65||ag>90)){af.push([Math.max(65,ag)|32,Math.min(al,90)|32])}if(!(al<97||ag>122)){af.push([Math.max(97,ag)&~32,Math.min(al,122)&~32])}}}}af.sort(function(av,au){return(av[0]-au[0])||(au[1]-av[1])});var ai=[];var ap=[NaN,NaN];for(var ar=0;arat[0]){if(at[1]+1>at[0]){an.push("-")}an.push(T(at[1]))}}an.push("]");return an.join("")}function W(al){var aj=al.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var ah=aj.length;var an=[];for(var ak=0,am=0;ak=2&&ai==="["){aj[ak]=X(ag)}else{if(ai!=="\\"){aj[ak]=ag.replace(/[a-zA-Z]/g,function(ao){var ap=ao.charCodeAt(0);return"["+String.fromCharCode(ap&~32,ap|32)+"]"})}}}}return aj.join("")}var aa=[];for(var V=0,U=Z.length;V=0;){S[ac.charAt(ae)]=Y}}var af=Y[1];var aa=""+af;if(!ag.hasOwnProperty(aa)){ah.push(af);ag[aa]=null}}ah.push(/[\0-\uffff]/);V=k(ah)})();var X=T.length;var W=function(ah){var Z=ah.sourceCode,Y=ah.basePos;var ad=[Y,F];var af=0;var an=Z.match(V)||[];var aj={};for(var ae=0,aq=an.length;ae=5&&"lang-"===ap.substring(0,5);if(am&&!(ai&&typeof ai[1]==="string")){am=false;ap=J}if(!am){aj[ag]=ap}}var ab=af;af+=ag.length;if(!am){ad.push(Y+ab,ap)}else{var al=ai[1];var ak=ag.indexOf(al);var ac=ak+al.length;if(ai[2]){ac=ag.length-ai[2].length;ak=ac-al.length}var ar=ap.substring(5);B(Y+ab,ag.substring(0,ak),W,ad);B(Y+ab+ak,al,q(ar,al),ad);B(Y+ab+ac,ag.substring(ac),W,ad)}}ah.decorations=ad};return W}function i(T){var W=[],S=[];if(T.tripleQuotedStrings){W.push([C,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(T.multiLineStrings){W.push([C,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{W.push([C,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(T.verbatimStrings){S.push([C,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var Y=T.hashComments;if(Y){if(T.cStyleComments){if(Y>1){W.push([j,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{W.push([j,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}S.push([C,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{W.push([j,/^#[^\r\n]*/,null,"#"])}}if(T.cStyleComments){S.push([j,/^\/\/[^\r\n]*/,null]);S.push([j,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(T.regexLiterals){var X=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");S.push(["lang-regex",new RegExp("^"+M+"("+X+")")])}var V=T.types;if(V){S.push([O,V])}var U=(""+T.keywords).replace(/^ | $/g,"");if(U.length){S.push([z,new RegExp("^(?:"+U.replace(/[\s,]+/g,"|")+")\\b"),null])}W.push([F,/^\s+/,null," \r\n\t\xA0"]);S.push([G,/^@[a-z_$][a-z_$@0-9]*/i,null],[O,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[F,/^[a-z_$][a-z_$@0-9]*/i,null],[G,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[F,/^\\[\s\S]?/,null],[L,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]);return g(W,S)}var K=i({keywords:A,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function Q(V,ag){var U=/(?:^|\s)nocode(?:\s|$)/;var ab=/\r\n?|\n/;var ac=V.ownerDocument;var S;if(V.currentStyle){S=V.currentStyle.whiteSpace}else{if(window.getComputedStyle){S=ac.defaultView.getComputedStyle(V,null).getPropertyValue("white-space")}}var Z=S&&"pre"===S.substring(0,3);var af=ac.createElement("LI");while(V.firstChild){af.appendChild(V.firstChild)}var W=[af];function ae(al){switch(al.nodeType){case 1:if(U.test(al.className)){break}if("BR"===al.nodeName){ad(al);if(al.parentNode){al.parentNode.removeChild(al)}}else{for(var an=al.firstChild;an;an=an.nextSibling){ae(an)}}break;case 3:case 4:if(Z){var am=al.nodeValue;var aj=am.match(ab);if(aj){var ai=am.substring(0,aj.index);al.nodeValue=ai;var ah=am.substring(aj.index+aj[0].length);if(ah){var ak=al.parentNode;ak.insertBefore(ac.createTextNode(ah),al.nextSibling)}ad(al);if(!ai){al.parentNode.removeChild(al)}}}break}}function ad(ak){while(!ak.nextSibling){ak=ak.parentNode;if(!ak){return}}function ai(al,ar){var aq=ar?al.cloneNode(false):al;var ao=al.parentNode;if(ao){var ap=ai(ao,1);var an=al.nextSibling;ap.appendChild(aq);for(var am=an;am;am=an){an=am.nextSibling;ap.appendChild(am)}}return aq}var ah=ai(ak.nextSibling,0);for(var aj;(aj=ah.parentNode)&&aj.nodeType===1;){ah=aj}W.push(ah)}for(var Y=0;Y=S){ah+=2}if(V>=ap){Z+=2}}}var t={};function c(U,V){for(var S=V.length;--S>=0;){var T=V[S];if(!t.hasOwnProperty(T)){t[T]=U}else{if(window.console){console.warn("cannot override language handler %s",T)}}}}function q(T,S){if(!(T&&t.hasOwnProperty(T))){T=/^\s*]*(?:>|$)/],[j,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[L,/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);c(g([[F,/^[\s]+/,null," \t\r\n"],[n,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[m,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[P,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[L,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);c(g([],[[n,/^[\s\S]+/]]),["uq.val"]);c(i({keywords:l,hashComments:true,cStyleComments:true,types:e}),["c","cc","cpp","cxx","cyc","m"]);c(i({keywords:"null,true,false"}),["json"]);c(i({keywords:R,hashComments:true,cStyleComments:true,verbatimStrings:true,types:e}),["cs"]);c(i({keywords:x,cStyleComments:true}),["java"]);c(i({keywords:H,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);c(i({keywords:I,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);c(i({keywords:s,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);c(i({keywords:f,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);c(i({keywords:w,cStyleComments:true,regexLiterals:true}),["js"]);c(i({keywords:r,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);c(g([],[[C,/^[\s\S]+/]]),["regex"]);function d(V){var U=V.langExtension;try{var S=a(V.sourceNode);var T=S.sourceCode;V.sourceCode=T;V.spans=S.spans;V.basePos=0;q(U,T)(V);D(V)}catch(W){if("console" in window){console.log(W&&W.stack?W.stack:W)}}}function y(W,V,U){var S=document.createElement("PRE");S.innerHTML=W;if(U){Q(S,U)}var T={langExtension:V,numberLines:U,sourceNode:S};d(T);return S.innerHTML}function b(ad){function Y(af){return document.getElementsByTagName(af)}var ac=[Y("pre"),Y("code"),Y("xmp")];var T=[];for(var aa=0;aa=0){var ah=ai.match(ab);var am;if(!ah&&(am=o(aj))&&"CODE"===am.tagName){ah=am.className.match(ab)}if(ah){ah=ah[1]}var al=false;for(var ak=aj.parentNode;ak;ak=ak.parentNode){if((ak.tagName==="pre"||ak.tagName==="code"||ak.tagName==="xmp")&&ak.className&&ak.className.indexOf("prettyprint")>=0){al=true;break}}if(!al){var af=aj.className.match(/\blinenums\b(?::(\d+))?/);af=af?af[1]&&af[1].length?+af[1]:true:false;if(af){Q(aj,af)}S={langExtension:ah,sourceNode:aj,numberLines:af};d(S)}}}if(X]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]); diff --git a/coverage/lcov-report/sort-arrow-sprite.png b/coverage/lcov-report/sort-arrow-sprite.png new file mode 100644 index 0000000..03f704a Binary files /dev/null and b/coverage/lcov-report/sort-arrow-sprite.png differ diff --git a/coverage/lcov-report/sorter.js b/coverage/lcov-report/sorter.js new file mode 100644 index 0000000..16de10c --- /dev/null +++ b/coverage/lcov-report/sorter.js @@ -0,0 +1,170 @@ +/* eslint-disable */ +var addSorting = (function() { + 'use strict'; + var cols, + currentSort = { + index: 0, + desc: false + }; + + // returns the summary table element + function getTable() { + return document.querySelector('.coverage-summary'); + } + // returns the thead element of the summary table + function getTableHeader() { + return getTable().querySelector('thead tr'); + } + // returns the tbody element of the summary table + function getTableBody() { + return getTable().querySelector('tbody'); + } + // returns the th element for nth column + function getNthColumn(n) { + return getTableHeader().querySelectorAll('th')[n]; + } + + // loads all columns + function loadColumns() { + var colNodes = getTableHeader().querySelectorAll('th'), + colNode, + cols = [], + col, + i; + + for (i = 0; i < colNodes.length; i += 1) { + colNode = colNodes[i]; + col = { + key: colNode.getAttribute('data-col'), + sortable: !colNode.getAttribute('data-nosort'), + type: colNode.getAttribute('data-type') || 'string' + }; + cols.push(col); + if (col.sortable) { + col.defaultDescSort = col.type === 'number'; + colNode.innerHTML = + colNode.innerHTML + ''; + } + } + return cols; + } + // attaches a data attribute to every tr element with an object + // of data values keyed by column name + function loadRowData(tableRow) { + var tableCols = tableRow.querySelectorAll('td'), + colNode, + col, + data = {}, + i, + val; + for (i = 0; i < tableCols.length; i += 1) { + colNode = tableCols[i]; + col = cols[i]; + val = colNode.getAttribute('data-value'); + if (col.type === 'number') { + val = Number(val); + } + data[col.key] = val; + } + return data; + } + // loads all row data + function loadData() { + var rows = getTableBody().querySelectorAll('tr'), + i; + + for (i = 0; i < rows.length; i += 1) { + rows[i].data = loadRowData(rows[i]); + } + } + // sorts the table using the data for the ith column + function sortByIndex(index, desc) { + var key = cols[index].key, + sorter = function(a, b) { + a = a.data[key]; + b = b.data[key]; + return a < b ? -1 : a > b ? 1 : 0; + }, + finalSorter = sorter, + tableBody = document.querySelector('.coverage-summary tbody'), + rowNodes = tableBody.querySelectorAll('tr'), + rows = [], + i; + + if (desc) { + finalSorter = function(a, b) { + return -1 * sorter(a, b); + }; + } + + for (i = 0; i < rowNodes.length; i += 1) { + rows.push(rowNodes[i]); + tableBody.removeChild(rowNodes[i]); + } + + rows.sort(finalSorter); + + for (i = 0; i < rows.length; i += 1) { + tableBody.appendChild(rows[i]); + } + } + // removes sort indicators for current column being sorted + function removeSortIndicators() { + var col = getNthColumn(currentSort.index), + cls = col.className; + + cls = cls.replace(/ sorted$/, '').replace(/ sorted-desc$/, ''); + col.className = cls; + } + // adds sort indicators for current column being sorted + function addSortIndicators() { + getNthColumn(currentSort.index).className += currentSort.desc + ? ' sorted-desc' + : ' sorted'; + } + // adds event listeners for all sorter widgets + function enableUI() { + var i, + el, + ithSorter = function ithSorter(i) { + var col = cols[i]; + + return function() { + var desc = col.defaultDescSort; + + if (currentSort.index === i) { + desc = !currentSort.desc; + } + sortByIndex(i, desc); + removeSortIndicators(); + currentSort.index = i; + currentSort.desc = desc; + addSortIndicators(); + }; + }; + for (i = 0; i < cols.length; i += 1) { + if (cols[i].sortable) { + // add the click event handler on the th so users + // dont have to click on those tiny arrows + el = getNthColumn(i).querySelector('.sorter').parentElement; + if (el.addEventListener) { + el.addEventListener('click', ithSorter(i)); + } else { + el.attachEvent('onclick', ithSorter(i)); + } + } + } + } + // adds sorting functionality to the UI + return function() { + if (!getTable()) { + return; + } + cols = loadColumns(); + loadData(); + addSortIndicators(); + enableUI(); + }; +})(); + +window.addEventListener('load', addSorting); diff --git a/coverage/lcov-report/utils/index.html b/coverage/lcov-report/utils/index.html new file mode 100644 index 0000000..cdf4736 --- /dev/null +++ b/coverage/lcov-report/utils/index.html @@ -0,0 +1,111 @@ + + + + + + Code coverage report for utils + + + + + + + + + +
+
+

All files utils

+
+ +
+ 100% + Statements + 20/20 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 20/20 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
urls.js +
+
100%20/20100%1/1100%0/0100%20/20
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov-report/utils/urls.js.html b/coverage/lcov-report/utils/urls.js.html new file mode 100644 index 0000000..8e027c0 --- /dev/null +++ b/coverage/lcov-report/utils/urls.js.html @@ -0,0 +1,140 @@ + + + + + + Code coverage report for utils/urls.js + + + + + + + + + +
+
+

All files / utils urls.js

+
+ +
+ 100% + Statements + 20/20 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 20/20 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +211x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
const urls={
+  referer : "https://order.dominos.com/en/pages/order/",
+  sourceUri : "order.dominos.com",
+  store : {
+    find : "https://order.dominos.com/power/store-locator?s=${line1}&c=${line2}&type=${type}",
+    info : "https://order.dominos.com/power/store/${storeID}/profile",
+    menu : "https://order.dominos.com/power/store/${storeID}/menu?lang=${lang}&structured=true"
+  },
+  order: {
+    validate: "https://order.dominos.com/power/validate-order",
+    price: "https://order.dominos.com/power/price-order",
+    place: "https://order.dominos.com/power/place-order"
+  },
+  track: "https://order.dominos.com/orderstorage/GetTrackerData?"
+};
+ 
+export {
+    urls as default,
+    urls
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/lcov.info b/coverage/lcov.info new file mode 100644 index 0000000..8a394f8 --- /dev/null +++ b/coverage/lcov.info @@ -0,0 +1,2131 @@ +TN: +SF:index.js +FNF:0 +FNH:0 +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,1 +DA:12,1 +DA:13,1 +DA:14,1 +DA:15,1 +DA:16,1 +DA:17,1 +DA:18,1 +DA:19,1 +DA:20,1 +DA:21,1 +DA:22,1 +DA:23,1 +DA:24,1 +DA:25,1 +DA:26,1 +DA:27,1 +DA:28,1 +DA:29,1 +DA:30,1 +DA:31,1 +DA:32,1 +DA:33,1 +DA:34,1 +DA:35,1 +DA:36,1 +DA:37,1 +DA:38,1 +DA:39,1 +DA:40,1 +DA:41,1 +DA:42,1 +DA:43,1 +DA:44,1 +DA:45,1 +DA:46,1 +DA:47,1 +DA:48,1 +DA:49,1 +DA:50,1 +DA:51,1 +DA:52,1 +DA:53,1 +DA:54,1 +DA:55,1 +LF:55 +LH:55 +BRDA:1,0,0,1 +BRF:1 +BRH:1 +end_of_record +TN: +SF:modules\Address.js +FN:7,Address +FN:18, +FN:28,get addressLines +FN:49,#parse +FN:54,parseAddress +FNF:5 +FNH:5 +FNDA:34,Address +FNDA:34, +FNDA:12,get addressLines +FNDA:13,#parse +FNDA:13,parseAddress +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,34 +DA:9,34 +DA:10,34 +DA:11,34 +DA:12,13 +DA:13,13 +DA:14,34 +DA:15,34 +DA:16,34 +DA:17,1 +DA:18,1 +DA:19,34 +DA:20,34 +DA:21,34 +DA:22,34 +DA:23,34 +DA:24,34 +DA:25,34 +DA:26,34 +DA:27,1 +DA:28,1 +DA:29,12 +DA:30,12 +DA:31,12 +DA:32,12 +DA:33,12 +DA:34,12 +DA:35,12 +DA:36,12 +DA:37,12 +DA:38,12 +DA:39,12 +DA:40,12 +DA:41,12 +DA:42,12 +DA:43,12 +DA:44,12 +DA:45,12 +DA:46,12 +DA:47,12 +DA:48,1 +DA:49,1 +DA:50,13 +DA:51,1 +DA:52,1 +DA:53,1 +DA:54,1 +DA:55,13 +DA:56,13 +DA:57,13 +DA:58,31 +DA:59,31 +DA:60,13 +DA:61,13 +DA:62,13 +DA:63,13 +DA:64,13 +DA:65,13 +DA:66,4 +DA:67,4 +DA:68,13 +DA:69,4 +DA:70,4 +DA:71,4 +DA:72,4 +DA:73,13 +DA:74,2 +DA:75,2 +DA:76,2 +DA:77,13 +DA:78,13 +DA:79,1 +DA:80,1 +DA:81,1 +DA:82,1 +DA:83,1 +LF:83 +LH:83 +BRDA:1,0,0,1 +BRDA:7,1,0,34 +BRDA:11,2,0,13 +BRDA:16,3,0,0 +BRDA:18,4,0,34 +BRDA:28,5,0,12 +BRDA:30,6,0,8 +BRDA:31,7,0,0 +BRDA:34,8,0,8 +BRDA:36,9,0,8 +BRDA:49,10,0,13 +BRDA:54,11,0,13 +BRDA:57,12,0,31 +BRDA:65,13,0,4 +BRDA:68,14,0,4 +BRDA:73,15,0,2 +BRF:16 +BRH:14 +end_of_record +TN: +SF:modules\AmountsBreakdown.js +FN:4,AmountsBreakdown +FN:10, +FNF:2 +FNH:2 +FNDA:9,AmountsBreakdown +FNDA:9, +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,9 +DA:6,9 +DA:7,9 +DA:8,9 +DA:9,1 +DA:10,1 +DA:11,9 +DA:12,9 +DA:13,9 +DA:14,9 +DA:15,9 +DA:16,9 +DA:17,9 +DA:18,9 +DA:19,9 +DA:20,9 +DA:21,9 +DA:22,9 +DA:23,9 +DA:24,9 +DA:25,1 +DA:26,1 +DA:27,1 +DA:28,1 +DA:29,1 +DA:30,1 +LF:30 +LH:30 +BRDA:1,0,0,1 +BRDA:4,1,0,9 +BRDA:8,2,0,0 +BRDA:10,3,0,9 +BRF:4 +BRH:3 +end_of_record +TN: +SF:modules\Customer.js +FN:8,Customer +FN:16, +FNF:2 +FNH:2 +FNDA:3,Customer +FNDA:3, +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,3 +DA:10,3 +DA:11,3 +DA:12,3 +DA:13,3 +DA:14,3 +DA:15,1 +DA:16,1 +DA:17,3 +DA:18,3 +DA:19,3 +DA:20,3 +DA:21,3 +DA:22,1 +DA:23,1 +DA:24,1 +DA:25,1 +DA:26,1 +DA:27,1 +DA:28,1 +LF:28 +LH:28 +BRDA:1,0,0,1 +BRDA:8,1,0,3 +BRDA:14,2,0,0 +BRDA:16,3,0,3 +BRF:4 +BRH:3 +end_of_record +TN: +SF:modules\DominosErrors.js +FN:8,DominosValidationError +FN:21,DominosPriceError +FN:34,DominosPlaceOrderError +FN:47,DominosAddressError +FN:58,DominosDateError +FN:69,DominosStoreError +FN:80,DominosProductsError +FN:90,createErrorMessage +FNF:8 +FNH:4 +FNDA:0,DominosValidationError +FNDA:0,DominosPriceError +FNDA:1,DominosPlaceOrderError +FNDA:1,DominosAddressError +FNDA:0,DominosDateError +FNDA:1,DominosStoreError +FNDA:0,DominosProductsError +FNDA:1,createErrorMessage +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,0 +DA:10,0 +DA:11,0 +DA:12,0 +DA:13,0 +DA:14,0 +DA:15,0 +DA:16,0 +DA:17,0 +DA:18,1 +DA:19,1 +DA:20,1 +DA:21,1 +DA:22,0 +DA:23,0 +DA:24,0 +DA:25,0 +DA:26,0 +DA:27,0 +DA:28,0 +DA:29,0 +DA:30,0 +DA:31,1 +DA:32,1 +DA:33,1 +DA:34,1 +DA:35,1 +DA:36,1 +DA:37,1 +DA:38,1 +DA:39,1 +DA:40,1 +DA:41,1 +DA:42,1 +DA:43,1 +DA:44,1 +DA:45,1 +DA:46,1 +DA:47,1 +DA:48,1 +DA:49,1 +DA:50,1 +DA:51,1 +DA:52,1 +DA:53,1 +DA:54,1 +DA:55,1 +DA:56,1 +DA:57,1 +DA:58,1 +DA:59,0 +DA:60,0 +DA:61,0 +DA:62,0 +DA:63,0 +DA:64,0 +DA:65,0 +DA:66,1 +DA:67,1 +DA:68,1 +DA:69,1 +DA:70,1 +DA:71,1 +DA:72,1 +DA:73,1 +DA:74,1 +DA:75,1 +DA:76,1 +DA:77,1 +DA:78,1 +DA:79,1 +DA:80,1 +DA:81,0 +DA:82,0 +DA:83,0 +DA:84,0 +DA:85,0 +DA:86,0 +DA:87,0 +DA:88,1 +DA:89,1 +DA:90,1 +DA:91,1 +DA:92,1 +DA:93,1 +DA:94,1 +DA:95,1 +DA:96,1 +DA:97,1 +DA:98,1 +DA:99,1 +DA:100,2 +DA:101,2 +DA:102,1 +DA:103,1 +DA:104,1 +DA:105,1 +DA:106,1 +DA:107,1 +DA:108,3 +DA:109,3 +DA:110,1 +DA:111,1 +DA:112,1 +DA:113,1 +DA:114,1 +DA:115,1 +DA:116,1 +DA:117,1 +DA:118,1 +DA:119,1 +DA:120,1 +DA:121,1 +DA:122,1 +DA:123,1 +DA:124,1 +DA:125,1 +DA:126,1 +DA:127,1 +LF:127 +LH:95 +BRDA:1,0,0,1 +BRDA:34,1,0,1 +BRDA:43,2,0,0 +BRDA:47,3,0,1 +BRDA:54,4,0,0 +BRDA:69,5,0,1 +BRDA:76,6,0,0 +BRDA:90,7,0,1 +BRDA:99,8,0,2 +BRDA:107,9,0,3 +BRF:10 +BRH:7 +end_of_record +TN: +SF:modules\DominosFormat.js +FN:5,DominosFormat +FN:10,set init +FN:15,get formatted +FN:23,set formatted +FN:32,get dominosAPIResponse +FN:36,set dominosAPIResponse +FN:42, +FNF:7 +FNH:5 +FNDA:64,DominosFormat +FNDA:48,set init +FNDA:30,get formatted +FNDA:18,set formatted +FNDA:0,get dominosAPIResponse +FNDA:0,set dominosAPIResponse +FNDA:64, +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,64 +DA:7,64 +DA:8,64 +DA:9,1 +DA:10,1 +DA:11,48 +DA:12,48 +DA:13,48 +DA:14,1 +DA:15,1 +DA:16,30 +DA:17,30 +DA:18,30 +DA:19,30 +DA:20,30 +DA:21,30 +DA:22,1 +DA:23,1 +DA:24,18 +DA:25,18 +DA:26,18 +DA:27,18 +DA:28,18 +DA:29,18 +DA:30,18 +DA:31,1 +DA:32,1 +DA:33,0 +DA:34,0 +DA:35,1 +DA:36,1 +DA:37,0 +DA:38,0 +DA:39,0 +DA:40,0 +DA:41,1 +DA:42,1 +DA:43,1 +DA:44,1 +DA:45,1 +DA:46,1 +DA:47,1 +DA:48,1 +LF:48 +LH:42 +BRDA:1,0,0,1 +BRDA:5,1,0,64 +BRDA:10,2,0,48 +BRDA:15,3,0,30 +BRDA:23,4,0,18 +BRDA:42,5,0,64 +BRF:6 +BRH:6 +end_of_record +TN: +SF:modules\Image.js +FN:8,Image +FN:16,#fetchImage +FNF:2 +FNH:2 +FNDA:1,Image +FNDA:1,#fetchImage +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,1 +DA:12,1 +DA:13,1 +DA:14,1 +DA:15,1 +DA:16,1 +DA:17,1 +DA:18,1 +DA:19,1 +DA:20,1 +DA:21,1 +DA:22,1 +DA:23,1 +DA:24,1 +DA:25,1 +DA:26,1 +LF:26 +LH:26 +BRDA:1,0,0,1 +BRDA:8,1,0,1 +BRDA:14,2,0,0 +BRDA:16,3,0,1 +BRF:4 +BRH:3 +end_of_record +TN: +SF:modules\Item.js +FN:8,Item +FN:15, +FN:21,get formatted +FN:29,set formatted +FNF:4 +FNH:4 +FNDA:2,Item +FNDA:2, +FNDA:6,get formatted +FNDA:4,set formatted +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,2 +DA:10,2 +DA:11,2 +DA:12,2 +DA:13,2 +DA:14,1 +DA:15,1 +DA:16,2 +DA:17,2 +DA:18,2 +DA:19,1 +DA:20,1 +DA:21,1 +DA:22,6 +DA:23,6 +DA:24,6 +DA:25,6 +DA:26,6 +DA:27,6 +DA:28,1 +DA:29,1 +DA:30,4 +DA:31,4 +DA:32,1 +DA:33,1 +DA:34,1 +DA:35,1 +DA:36,1 +DA:37,1 +LF:37 +LH:37 +BRDA:1,0,0,1 +BRDA:8,1,0,2 +BRDA:13,2,0,0 +BRDA:15,3,0,2 +BRDA:21,4,0,6 +BRDA:29,5,0,4 +BRF:6 +BRH:5 +end_of_record +TN: +SF:modules\Menu.js +FN:10,Menu +FN:14, +FN:39,get dominosAPIResponse +FN:43,set dominosAPIResponse +FN:51,#getMenu +FN:63,#parse +FN:96,#defineCategories +FN:141,#camelCaseKeys +FN:148,#allDescendantsToCamel +FN:166,#allGrandDescendantsToCamel +FN:177,#allParentAndGrandDescendantsToCamel +FNF:11 +FNH:11 +FNDA:5,Menu +FNDA:5, +FNDA:119,get dominosAPIResponse +FNDA:5,set dominosAPIResponse +FNDA:5,#getMenu +FNDA:5,#parse +FNDA:40,#defineCategories +FNDA:3628,#camelCaseKeys +FNDA:6408,#allDescendantsToCamel +FNDA:135,#allGrandDescendantsToCamel +FNDA:20,#allParentAndGrandDescendantsToCamel +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,5 +DA:12,5 +DA:13,1 +DA:14,1 +DA:15,5 +DA:16,5 +DA:17,5 +DA:18,5 +DA:19,5 +DA:20,5 +DA:21,5 +DA:22,5 +DA:23,5 +DA:24,5 +DA:25,5 +DA:26,5 +DA:27,5 +DA:28,5 +DA:29,5 +DA:30,5 +DA:31,5 +DA:32,5 +DA:33,5 +DA:34,5 +DA:35,5 +DA:36,5 +DA:37,5 +DA:38,5 +DA:39,5 +DA:40,119 +DA:41,119 +DA:42,5 +DA:43,5 +DA:44,5 +DA:45,5 +DA:46,5 +DA:47,5 +DA:48,5 +DA:49,5 +DA:50,1 +DA:51,1 +DA:52,5 +DA:53,5 +DA:54,5 +DA:55,5 +DA:56,5 +DA:57,5 +DA:58,5 +DA:59,5 +DA:60,5 +DA:61,1 +DA:62,1 +DA:63,1 +DA:64,5 +DA:65,5 +DA:66,5 +DA:67,5 +DA:68,20 +DA:69,20 +DA:70,20 +DA:71,20 +DA:72,20 +DA:73,20 +DA:74,20 +DA:75,5 +DA:76,5 +DA:77,5 +DA:78,5 +DA:79,5 +DA:80,5 +DA:81,5 +DA:82,5 +DA:83,5 +DA:84,5 +DA:85,5 +DA:86,5 +DA:87,5 +DA:88,5 +DA:89,5 +DA:90,5 +DA:91,5 +DA:92,5 +DA:93,5 +DA:94,5 +DA:95,1 +DA:96,1 +DA:97,40 +DA:98,200 +DA:99,200 +DA:100,200 +DA:101,200 +DA:102,200 +DA:103,200 +DA:104,200 +DA:105,200 +DA:106,200 +DA:107,140 +DA:108,200 +DA:109,60 +DA:110,60 +DA:111,60 +DA:112,200 +DA:113,200 +DA:114,65 +DA:115,65 +DA:116,200 +DA:117,200 +DA:118,200 +DA:119,200 +DA:120,20 +DA:121,20 +DA:122,20 +DA:123,20 +DA:124,20 +DA:125,20 +DA:126,20 +DA:127,20 +DA:128,200 +DA:129,200 +DA:130,200 +DA:131,200 +DA:132,149 +DA:133,149 +DA:134,149 +DA:135,200 +DA:136,200 +DA:137,200 +DA:138,200 +DA:139,40 +DA:140,1 +DA:141,1 +DA:142,3628 +DA:143,19303 +DA:144,19303 +DA:145,19303 +DA:146,3628 +DA:147,1 +DA:148,1 +DA:149,6408 +DA:150,6408 +DA:151,46908 +DA:152,46908 +DA:153,45650 +DA:154,46908 +DA:155,43300 +DA:156,43300 +DA:157,43300 +DA:158,3608 +DA:159,3608 +DA:160,3608 +DA:161,3608 +DA:162,3608 +DA:163,6408 +DA:164,6408 +DA:165,1 +DA:166,1 +DA:167,135 +DA:168,135 +DA:169,135 +DA:170,2790 +DA:171,2790 +DA:172,2790 +DA:173,2790 +DA:174,135 +DA:175,135 +DA:176,1 +DA:177,1 +DA:178,20 +DA:179,20 +DA:180,20 +DA:181,20 +DA:182,20 +DA:183,90 +DA:184,90 +DA:185,90 +DA:186,90 +DA:187,20 +DA:188,20 +DA:189,20 +DA:190,1 +DA:191,1 +DA:192,1 +DA:193,1 +DA:194,1 +DA:195,1 +DA:196,1 +LF:196 +LH:196 +BRDA:1,0,0,1 +BRDA:10,1,0,5 +BRDA:14,2,0,5 +BRDA:39,3,0,119 +BRDA:43,4,0,5 +BRDA:51,5,0,5 +BRDA:63,6,0,5 +BRDA:67,7,0,20 +BRDA:96,8,0,40 +BRDA:97,9,0,200 +BRDA:106,10,0,140 +BRDA:108,11,0,60 +BRDA:113,12,0,65 +BRDA:119,13,0,20 +BRDA:131,14,0,149 +BRDA:141,15,0,3628 +BRDA:142,16,0,19303 +BRDA:148,17,0,6408 +BRDA:150,18,0,46908 +BRDA:152,19,0,45650 +BRDA:154,20,0,43300 +BRDA:158,21,0,3608 +BRDA:166,22,0,135 +BRDA:169,23,0,2790 +BRDA:177,24,0,20 +BRDA:182,25,0,90 +BRF:26 +BRH:26 +end_of_record +TN: +SF:modules\NearbyStores.js +FN:10,NearbyStores +FN:17, +FN:20,get dominosAPIResponse +FN:24,set dominosAPIResponse +FN:32,#getStores +FNF:5 +FNH:4 +FNDA:6,NearbyStores +FNDA:6, +FNDA:0,get dominosAPIResponse +FNDA:6,set dominosAPIResponse +FNDA:6,#getStores +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,6 +DA:12,6 +DA:13,6 +DA:14,6 +DA:15,6 +DA:16,1 +DA:17,1 +DA:18,6 +DA:19,6 +DA:20,6 +DA:21,0 +DA:22,0 +DA:23,6 +DA:24,6 +DA:25,6 +DA:26,6 +DA:27,6 +DA:28,6 +DA:29,6 +DA:30,6 +DA:31,1 +DA:32,1 +DA:33,6 +DA:34,6 +DA:35,6 +DA:36,6 +DA:37,6 +DA:38,6 +DA:39,6 +DA:40,6 +DA:41,6 +DA:42,6 +DA:43,6 +DA:44,6 +DA:45,6 +DA:46,6 +DA:47,6 +DA:48,6 +DA:49,6 +DA:50,6 +DA:51,6 +DA:52,6 +DA:53,6 +DA:54,6 +DA:55,6 +DA:56,6 +DA:57,6 +DA:58,6 +DA:59,6 +DA:60,1 +DA:61,1 +DA:62,1 +DA:63,1 +DA:64,1 +DA:65,1 +LF:65 +LH:63 +BRDA:1,0,0,1 +BRDA:10,1,0,6 +BRDA:17,2,0,6 +BRDA:24,3,0,6 +BRDA:32,4,0,6 +BRF:5 +BRH:5 +end_of_record +TN: +SF:modules\Order.js +FN:13,Order +FN:19, +FN:60,orderInFuture +FN:71,orderNow +FN:75,addCustomer +FN:83,addCoupon +FN:91,removeCoupon +FN:97,addItem +FN:105,removeItem +FN:111,get payload +FN:139,get formatted +FN:143,get validationResponse +FN:147,set validationResponse +FN:153,get priceResponse +FN:157,set priceResponse +FN:163,get placeResponse +FN:167,set placeResponse +FN:179,#remove +FN:189,validate +FN:212,price +FN:241,place +FN:275,set formatted +FNF:22 +FNH:20 +FNDA:9,Order +FNDA:9, +FNDA:0,orderInFuture +FNDA:0,orderNow +FNDA:9,addCustomer +FNDA:1,addCoupon +FNDA:1,removeCoupon +FNDA:6,addItem +FNDA:1,removeItem +FNDA:6,get payload +FNDA:6,get formatted +FNDA:8,get validationResponse +FNDA:2,set validationResponse +FNDA:4,get priceResponse +FNDA:2,set priceResponse +FNDA:2,get placeResponse +FNDA:1,set placeResponse +FNDA:2,#remove +FNDA:3,validate +FNDA:2,price +FNDA:2,place +FNDA:4,set formatted +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,1 +DA:12,1 +DA:13,1 +DA:14,9 +DA:15,9 +DA:16,9 +DA:17,9 +DA:18,1 +DA:19,1 +DA:20,9 +DA:21,9 +DA:22,9 +DA:23,9 +DA:24,9 +DA:25,9 +DA:26,9 +DA:27,9 +DA:28,9 +DA:29,9 +DA:30,9 +DA:31,9 +DA:32,9 +DA:33,9 +DA:34,9 +DA:35,9 +DA:36,9 +DA:37,9 +DA:38,9 +DA:39,9 +DA:40,9 +DA:41,9 +DA:42,9 +DA:43,9 +DA:44,9 +DA:45,9 +DA:46,9 +DA:47,9 +DA:48,9 +DA:49,9 +DA:50,9 +DA:51,9 +DA:52,9 +DA:53,9 +DA:54,9 +DA:55,9 +DA:56,9 +DA:57,9 +DA:58,9 +DA:59,9 +DA:60,9 +DA:61,0 +DA:62,0 +DA:63,0 +DA:64,0 +DA:65,0 +DA:66,0 +DA:67,0 +DA:68,0 +DA:69,0 +DA:70,9 +DA:71,9 +DA:72,0 +DA:73,0 +DA:74,9 +DA:75,9 +DA:76,9 +DA:77,9 +DA:78,9 +DA:79,9 +DA:80,9 +DA:81,9 +DA:82,9 +DA:83,9 +DA:84,1 +DA:85,1 +DA:86,1 +DA:87,1 +DA:88,1 +DA:89,1 +DA:90,9 +DA:91,9 +DA:92,1 +DA:93,1 +DA:94,1 +DA:95,1 +DA:96,9 +DA:97,9 +DA:98,6 +DA:99,6 +DA:100,6 +DA:101,6 +DA:102,6 +DA:103,6 +DA:104,9 +DA:105,9 +DA:106,1 +DA:107,1 +DA:108,1 +DA:109,1 +DA:110,9 +DA:111,9 +DA:112,6 +DA:113,6 +DA:114,6 +DA:115,6 +DA:116,5 +DA:117,5 +DA:118,6 +DA:119,6 +DA:120,1 +DA:121,1 +DA:122,6 +DA:123,6 +DA:124,6 +DA:125,6 +DA:126,6 +DA:127,6 +DA:128,6 +DA:129,6 +DA:130,6 +DA:131,6 +DA:132,6 +DA:133,6 +DA:134,6 +DA:135,6 +DA:136,6 +DA:137,9 +DA:138,9 +DA:139,9 +DA:140,6 +DA:141,6 +DA:142,9 +DA:143,9 +DA:144,8 +DA:145,8 +DA:146,9 +DA:147,9 +DA:148,2 +DA:149,2 +DA:150,2 +DA:151,2 +DA:152,9 +DA:153,9 +DA:154,4 +DA:155,4 +DA:156,9 +DA:157,9 +DA:158,2 +DA:159,2 +DA:160,2 +DA:161,2 +DA:162,9 +DA:163,9 +DA:164,2 +DA:165,2 +DA:166,9 +DA:167,9 +DA:168,1 +DA:169,1 +DA:170,1 +DA:171,1 +DA:172,9 +DA:173,9 +DA:174,9 +DA:175,9 +DA:176,9 +DA:177,9 +DA:178,1 +DA:179,1 +DA:180,2 +DA:181,2 +DA:182,2 +DA:183,2 +DA:184,2 +DA:185,2 +DA:186,2 +DA:187,2 +DA:188,1 +DA:189,1 +DA:190,3 +DA:191,1 +DA:192,1 +DA:193,2 +DA:194,2 +DA:195,2 +DA:196,2 +DA:197,2 +DA:198,2 +DA:199,2 +DA:200,2 +DA:201,2 +DA:202,2 +DA:203,3 +DA:204,0 +DA:205,0 +DA:206,2 +DA:207,2 +DA:208,2 +DA:209,2 +DA:210,3 +DA:211,1 +DA:212,1 +DA:213,2 +DA:214,0 +DA:215,0 +DA:216,2 +DA:217,2 +DA:218,0 +DA:219,0 +DA:220,2 +DA:221,2 +DA:222,2 +DA:223,2 +DA:224,2 +DA:225,2 +DA:226,2 +DA:227,2 +DA:228,2 +DA:229,2 +DA:230,2 +DA:231,2 +DA:232,2 +DA:233,0 +DA:234,0 +DA:235,2 +DA:236,2 +DA:237,2 +DA:238,2 +DA:239,2 +DA:240,1 +DA:241,1 +DA:242,2 +DA:243,0 +DA:244,0 +DA:245,2 +DA:246,2 +DA:247,0 +DA:248,0 +DA:249,2 +DA:250,2 +DA:251,1 +DA:252,1 +DA:253,1 +DA:254,1 +DA:255,1 +DA:256,1 +DA:257,1 +DA:258,1 +DA:259,1 +DA:260,1 +DA:261,1 +DA:262,1 +DA:263,1 +DA:264,1 +DA:265,1 +DA:266,2 +DA:267,1 +DA:268,1 +DA:269,0 +DA:270,0 +DA:271,0 +DA:272,0 +DA:273,1 +DA:274,1 +DA:275,1 +DA:276,4 +DA:277,4 +DA:278,4 +DA:279,4 +DA:280,4 +DA:281,4 +DA:282,12 +DA:283,12 +DA:284,4 +DA:285,4 +DA:286,4 +DA:287,4 +DA:288,4 +DA:289,4 +DA:290,4 +DA:291,164 +DA:292,164 +DA:293,164 +DA:294,164 +DA:295,164 +DA:296,164 +DA:297,164 +DA:298,116 +DA:299,116 +DA:300,116 +DA:301,164 +DA:302,164 +DA:303,4 +DA:304,4 +DA:305,4 +DA:306,1 +DA:307,1 +DA:308,1 +DA:309,1 +DA:310,1 +DA:311,1 +DA:312,1 +DA:313,1 +LF:313 +LH:286 +BRDA:1,0,0,1 +BRDA:13,1,0,9 +BRDA:17,2,0,0 +BRDA:19,3,0,9 +BRDA:75,4,0,9 +BRDA:83,5,0,1 +BRDA:91,6,0,1 +BRDA:97,7,0,6 +BRDA:105,8,0,1 +BRDA:111,9,0,6 +BRDA:115,10,0,5 +BRDA:119,11,0,1 +BRDA:139,12,0,6 +BRDA:143,13,0,8 +BRDA:147,14,0,2 +BRDA:153,15,0,4 +BRDA:157,16,0,2 +BRDA:163,17,0,2 +BRDA:167,18,0,1 +BRDA:179,19,0,2 +BRDA:189,20,0,3 +BRDA:190,21,0,1 +BRDA:193,22,0,2 +BRDA:203,23,0,0 +BRDA:206,24,0,2 +BRDA:212,25,0,2 +BRDA:213,26,0,0 +BRDA:217,27,0,0 +BRDA:232,28,0,0 +BRDA:241,29,0,2 +BRDA:242,30,0,0 +BRDA:246,31,0,0 +BRDA:250,32,0,1 +BRDA:266,33,0,0 +BRDA:266,34,0,1 +BRDA:269,35,0,0 +BRDA:275,36,0,4 +BRDA:281,37,0,12 +BRDA:290,38,0,164 +BRDA:296,39,0,116 +BRDA:297,40,0,116 +BRF:41 +BRH:32 +end_of_record +TN: +SF:modules\Payment.js +FN:7,Payment +FN:36, +FN:44,#digitsOnly +FN:48,#validate +FNF:4 +FNH:4 +FNDA:7,Payment +FNDA:7, +FNDA:14,#digitsOnly +FNDA:7,#validate +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,7 +DA:9,7 +DA:10,7 +DA:11,7 +DA:12,7 +DA:13,7 +DA:14,2 +DA:15,2 +DA:16,7 +DA:17,7 +DA:18,7 +DA:19,7 +DA:20,7 +DA:21,7 +DA:22,7 +DA:23,7 +DA:24,7 +DA:25,7 +DA:26,7 +DA:27,7 +DA:28,7 +DA:29,7 +DA:30,7 +DA:31,7 +DA:32,7 +DA:33,7 +DA:34,7 +DA:35,1 +DA:36,1 +DA:37,7 +DA:38,7 +DA:39,7 +DA:40,7 +DA:41,7 +DA:42,1 +DA:43,1 +DA:44,1 +DA:45,14 +DA:46,14 +DA:47,1 +DA:48,1 +DA:49,7 +DA:50,7 +DA:51,7 +DA:52,7 +DA:53,7 +DA:54,7 +DA:55,7 +DA:56,7 +DA:57,7 +DA:58,7 +DA:59,7 +DA:60,7 +DA:61,7 +DA:62,7 +DA:63,7 +DA:64,7 +DA:65,7 +DA:66,7 +DA:67,7 +DA:68,7 +DA:69,7 +DA:70,7 +DA:71,7 +DA:72,7 +DA:73,7 +DA:74,7 +DA:75,1 +DA:76,1 +DA:77,1 +DA:78,1 +DA:79,1 +DA:80,1 +LF:80 +LH:80 +BRDA:1,0,0,1 +BRDA:7,1,0,7 +BRDA:13,2,0,2 +BRDA:30,3,0,5 +BRDA:34,4,0,0 +BRDA:36,5,0,7 +BRDA:44,6,0,14 +BRDA:48,7,0,7 +BRDA:59,8,0,2 +BRDA:59,9,0,5 +BRDA:61,10,0,1 +BRDA:61,11,0,6 +BRDA:63,12,0,1 +BRDA:63,13,0,6 +BRDA:65,14,0,1 +BRDA:65,15,0,6 +BRDA:67,16,0,1 +BRDA:67,17,0,6 +BRDA:69,18,0,1 +BRDA:69,19,0,6 +BRDA:71,20,0,0 +BRF:21 +BRH:19 +end_of_record +TN: +SF:modules\Store.js +FN:12,Store +FN:22,#init +FNF:2 +FNH:2 +FNDA:9,Store +FNDA:5,#init +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,1 +DA:12,1 +DA:13,9 +DA:14,9 +DA:15,4 +DA:16,4 +DA:17,5 +DA:18,5 +DA:19,5 +DA:20,9 +DA:21,1 +DA:22,1 +DA:23,5 +DA:24,5 +DA:25,5 +DA:26,5 +DA:27,4 +DA:28,4 +DA:29,4 +DA:30,4 +DA:31,5 +DA:32,1 +DA:33,1 +DA:34,1 +DA:35,1 +DA:36,1 +DA:37,1 +LF:37 +LH:37 +BRDA:1,0,0,1 +BRDA:12,1,0,9 +BRDA:14,2,0,5 +BRDA:14,3,0,4 +BRDA:17,4,0,5 +BRDA:22,5,0,5 +BRDA:27,6,0,4 +BRF:7 +BRH:7 +end_of_record +TN: +SF:modules\Tracking.js +FN:8,Tracking +FN:13, +FN:17,byPhone +FN:23,byID +FN:28,byURL +FNF:5 +FNH:4 +FNDA:1,Tracking +FNDA:1, +FNDA:1,byPhone +FNDA:0,byID +FNDA:1,byURL +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,1 +DA:12,1 +DA:13,1 +DA:14,1 +DA:15,1 +DA:16,1 +DA:17,1 +DA:18,1 +DA:19,1 +DA:20,1 +DA:21,1 +DA:22,1 +DA:23,1 +DA:24,0 +DA:25,0 +DA:26,0 +DA:27,1 +DA:28,1 +DA:29,1 +DA:30,1 +DA:31,1 +DA:32,1 +DA:33,1 +DA:34,1 +DA:35,1 +DA:36,1 +DA:37,1 +DA:38,1 +DA:39,1 +DA:40,1 +DA:41,1 +DA:42,1 +DA:43,1 +DA:44,1 +DA:45,1 +DA:46,1 +DA:47,1 +DA:48,1 +DA:49,1 +DA:50,1 +DA:51,1 +LF:51 +LH:48 +BRDA:1,0,0,1 +BRDA:8,1,0,1 +BRDA:13,2,0,1 +BRDA:17,3,0,1 +BRDA:28,4,0,1 +BRF:5 +BRH:5 +end_of_record +TN: +SF:modules\defaultParameters.js +FN:1,defaultParameters +FNF:1 +FNH:1 +FNDA:48,defaultParameters +DA:1,1 +DA:2,48 +DA:3,35 +DA:4,35 +DA:5,35 +DA:6,35 +DA:7,13 +DA:8,13 +DA:9,13 +DA:10,13 +DA:11,13 +DA:12,48 +DA:13,1 +DA:14,1 +DA:15,1 +DA:16,1 +DA:17,1 +LF:17 +LH:17 +BRDA:1,0,0,1 +BRDA:1,1,0,48 +BRDA:2,2,0,35 +BRDA:7,3,0,13 +BRF:4 +BRH:4 +end_of_record +TN: +SF:utils\DominosTypes.js +FN:20,test +FN:24,address +FN:28,amountsBreakdown +FN:32,nearbyStores +FN:36,menu +FN:40,store +FN:44,item +FN:48,customer +FN:52,image +FN:56,payment +FN:60,tracking +FN:64,validationError +FN:68,priceError +FN:72,placeOrderError +FN:76,addressError +FN:80,dateError +FN:84,storeError +FN:88,productsError +FN:92,fetchError +FNF:19 +FNH:15 +FNDA:19,test +FNDA:347,address +FNDA:164,amountsBreakdown +FNDA:5,nearbyStores +FNDA:4,menu +FNDA:4,store +FNDA:8,item +FNDA:10,customer +FNDA:1,image +FNDA:6,payment +FNDA:1,tracking +FNDA:0,validationError +FNDA:0,priceError +FNDA:1,placeOrderError +FNDA:1,addressError +FNDA:0,dateError +FNDA:1,storeError +FNDA:0,productsError +FNDA:1,fetchError +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,1 +DA:12,1 +DA:13,1 +DA:14,1 +DA:15,1 +DA:16,1 +DA:17,1 +DA:18,1 +DA:19,1 +DA:20,1 +DA:21,19 +DA:22,19 +DA:23,1 +DA:24,1 +DA:25,347 +DA:26,347 +DA:27,1 +DA:28,1 +DA:29,164 +DA:30,164 +DA:31,1 +DA:32,1 +DA:33,5 +DA:34,5 +DA:35,1 +DA:36,1 +DA:37,4 +DA:38,4 +DA:39,1 +DA:40,1 +DA:41,4 +DA:42,4 +DA:43,1 +DA:44,1 +DA:45,8 +DA:46,8 +DA:47,1 +DA:48,1 +DA:49,10 +DA:50,10 +DA:51,1 +DA:52,1 +DA:53,1 +DA:54,1 +DA:55,1 +DA:56,1 +DA:57,6 +DA:58,6 +DA:59,1 +DA:60,1 +DA:61,1 +DA:62,1 +DA:63,1 +DA:64,1 +DA:65,0 +DA:66,0 +DA:67,1 +DA:68,1 +DA:69,0 +DA:70,0 +DA:71,1 +DA:72,1 +DA:73,1 +DA:74,1 +DA:75,1 +DA:76,1 +DA:77,1 +DA:78,1 +DA:79,1 +DA:80,1 +DA:81,0 +DA:82,0 +DA:83,1 +DA:84,1 +DA:85,1 +DA:86,1 +DA:87,1 +DA:88,1 +DA:89,0 +DA:90,0 +DA:91,1 +DA:92,1 +DA:93,1 +DA:94,1 +DA:95,1 +DA:96,1 +DA:97,1 +DA:98,1 +DA:99,1 +DA:100,1 +LF:100 +LH:92 +BRDA:1,0,0,1 +BRDA:20,1,0,19 +BRDA:24,2,0,347 +BRDA:28,3,0,164 +BRDA:32,4,0,5 +BRDA:36,5,0,4 +BRDA:40,6,0,4 +BRDA:44,7,0,8 +BRDA:48,8,0,10 +BRDA:52,9,0,1 +BRDA:56,10,0,6 +BRDA:60,11,0,1 +BRDA:72,12,0,1 +BRDA:76,13,0,1 +BRDA:84,14,0,1 +BRDA:92,15,0,1 +BRF:16 +BRH:16 +end_of_record +TN: +SF:utils\api-json.js +FN:5,post +FN:28,get +FN:50,getSoap +FNF:3 +FNH:3 +FNDA:5,post +FNDA:16,get +FNDA:1,getSoap +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,5 +DA:7,5 +DA:8,5 +DA:9,5 +DA:10,5 +DA:11,5 +DA:12,5 +DA:13,5 +DA:14,5 +DA:15,5 +DA:16,5 +DA:17,5 +DA:18,5 +DA:19,5 +DA:20,5 +DA:21,5 +DA:22,5 +DA:23,5 +DA:24,5 +DA:25,5 +DA:26,5 +DA:27,1 +DA:28,1 +DA:29,16 +DA:30,16 +DA:31,16 +DA:32,16 +DA:33,16 +DA:34,16 +DA:35,16 +DA:36,16 +DA:37,16 +DA:38,16 +DA:39,16 +DA:40,16 +DA:41,16 +DA:42,16 +DA:43,16 +DA:44,16 +DA:45,16 +DA:46,16 +DA:47,16 +DA:48,16 +DA:49,1 +DA:50,1 +DA:51,1 +DA:52,1 +DA:53,1 +DA:54,1 +DA:55,1 +DA:56,1 +DA:57,1 +DA:58,1 +DA:59,1 +DA:60,1 +DA:61,1 +DA:62,1 +DA:63,1 +DA:64,1 +DA:65,1 +DA:66,1 +DA:67,1 +DA:68,1 +DA:69,1 +DA:70,1 +DA:71,1 +DA:72,1 +DA:73,1 +DA:74,1 +DA:75,1 +DA:76,1 +DA:77,1 +DA:78,1 +DA:79,1 +DA:80,1 +DA:81,1 +DA:82,1 +DA:83,1 +DA:84,1 +DA:85,1 +LF:85 +LH:85 +BRDA:1,0,0,1 +BRDA:5,1,0,5 +BRDA:28,2,0,16 +BRDA:50,3,0,1 +BRF:4 +BRH:4 +end_of_record +TN: +SF:utils\delay.js +FN:3,delay +FNF:1 +FNH:1 +FNDA:4,delay +DA:1,1 +DA:2,1 +DA:3,4 +DA:4,4 +DA:5,4 +DA:6,4 +DA:7,4 +DA:8,485996 +DA:9,485996 +DA:10,485996 +DA:11,485996 +DA:12,4 +DA:13,4 +DA:14,4 +DA:15,1 +DA:16,1 +DA:17,1 +DA:18,1 +DA:19,1 +LF:19 +LH:19 +BRDA:1,0,0,1 +BRDA:3,1,0,4 +BRDA:7,2,0,485996 +BRF:3 +BRH:3 +end_of_record +TN: +SF:utils\toCase.js +FN:5,toCamel +FN:10,toPascal +FN:15,pascalObjectKeys +FN:27,camelObjectKeys +FNF:4 +FNH:4 +FNDA:70479,toCamel +FNDA:499,toPascal +FNDA:30,pascalObjectKeys +FNDA:18,camelObjectKeys +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,70479 +DA:7,70479 +DA:8,70479 +DA:9,1 +DA:10,1 +DA:11,499 +DA:12,499 +DA:13,499 +DA:14,1 +DA:15,1 +DA:16,30 +DA:17,30 +DA:18,30 +DA:19,465 +DA:20,465 +DA:21,465 +DA:22,465 +DA:23,30 +DA:24,30 +DA:25,30 +DA:26,1 +DA:27,1 +DA:28,18 +DA:29,18 +DA:30,18 +DA:31,220 +DA:32,220 +DA:33,220 +DA:34,220 +DA:35,18 +DA:36,18 +DA:37,18 +DA:38,1 +DA:39,1 +DA:40,1 +DA:41,1 +DA:42,1 +DA:43,1 +DA:44,1 +DA:45,1 +DA:46,1 +DA:47,1 +DA:48,1 +LF:48 +LH:48 +BRDA:1,0,0,1 +BRDA:5,1,0,70479 +BRDA:10,2,0,499 +BRDA:15,3,0,30 +BRDA:18,4,0,465 +BRDA:27,5,0,18 +BRDA:30,6,0,220 +BRF:7 +BRH:7 +end_of_record +TN: +SF:utils\urls.js +FN:87,useInternational +FNF:1 +FNH:1 +FNDA:2,useInternational +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,1 +DA:12,1 +DA:13,1 +DA:14,1 +DA:15,1 +DA:16,1 +DA:17,1 +DA:18,1 +DA:19,1 +DA:20,1 +DA:21,1 +DA:22,1 +DA:23,1 +DA:24,1 +DA:25,1 +DA:26,1 +DA:27,1 +DA:28,1 +DA:29,1 +DA:30,1 +DA:31,1 +DA:32,1 +DA:33,1 +DA:34,1 +DA:35,1 +DA:36,1 +DA:37,1 +DA:38,1 +DA:39,1 +DA:40,1 +DA:41,1 +DA:42,1 +DA:43,1 +DA:44,1 +DA:45,1 +DA:46,1 +DA:47,1 +DA:48,1 +DA:49,1 +DA:50,1 +DA:51,1 +DA:52,1 +DA:53,1 +DA:54,1 +DA:55,1 +DA:56,1 +DA:57,1 +DA:58,1 +DA:59,1 +DA:60,1 +DA:61,1 +DA:62,1 +DA:63,1 +DA:64,1 +DA:65,1 +DA:66,1 +DA:67,1 +DA:68,1 +DA:69,1 +DA:70,1 +DA:71,1 +DA:72,1 +DA:73,1 +DA:74,1 +DA:75,1 +DA:76,1 +DA:77,1 +DA:78,1 +DA:79,1 +DA:80,1 +DA:81,1 +DA:82,1 +DA:83,1 +DA:84,1 +DA:85,1 +DA:86,1 +DA:87,2 +DA:88,2 +DA:89,2 +DA:90,2 +DA:91,1 +DA:92,1 +DA:93,1 +DA:94,1 +DA:95,1 +DA:96,1 +DA:97,1 +DA:98,1 +LF:98 +LH:98 +BRDA:1,0,0,1 +BRDA:87,1,0,2 +BRF:2 +BRH:2 +end_of_record diff --git a/coverage/modules/Coupon.js.html b/coverage/modules/Coupon.js.html new file mode 100644 index 0000000..eeaf3a5 --- /dev/null +++ b/coverage/modules/Coupon.js.html @@ -0,0 +1,236 @@ + + + + + + Code coverage report for modules/Coupon.js + + + + + + + + + +
+
+

All files / modules Coupon.js

+
+ +
+ 30.77% + Statements + 16/52 +
+ + +
+ 50% + Branches + 1/2 +
+ + +
+ 0% + Functions + 0/2 +
+ + +
+ 30.77% + Lines + 16/52 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +531x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x + 
import defaultParameters from './defaultParameters.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Coupon{
+    constructor(parameters){
+        defaultParameters(this,paramaters);  
+    }
+ 
+    
+    isNew=true
+
+    get code(){
+        return this.#dominos.Code;       
+    }
+    set code(value){
+        is.string(value);
+        return this.#dominos.Code=value;
+    }
+
+    get quantity(){
+        return this.#dominos.Qty;        
+    }
+    set quantity(value){
+        is.number(value);
+        return this.#dominos.Qty=value;
+    }
+
+    get ID(){
+        return this.#dominos.ID;       
+    }
+    set ID(value){
+        is.number(value);
+        return this.#dominos.ID=value;
+    }
+
+    get dominos(){
+        return this.#dominos;
+    }
+
+    #dominos={
+        Code:'',
+        Qty:0,
+        ID:1
+    }
+}
+ 
+export { 
+    Coupon as default,
+    Coupon
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/modules/Customer.js.html b/coverage/modules/Customer.js.html new file mode 100644 index 0000000..bd091f4 --- /dev/null +++ b/coverage/modules/Customer.js.html @@ -0,0 +1,308 @@ + + + + + + Code coverage report for modules/Customer.js + + + + + + + + + +
+
+

All files / modules Customer.js

+
+ +
+ 46.05% + Statements + 35/76 +
+ + +
+ 50% + Branches + 1/2 +
+ + +
+ 0% + Functions + 0/15 +
+ + +
+ 46.05% + Lines + 35/76 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +771x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +  +  +  +1x +1x +  +  +1x +1x +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x + 
import defaultParameters from './defaultParameters.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Customer{
+    constructor(parameters) {
+        defaultParameters(this,parameters);
+    }
+ 
+    get ID(){
+        return this.#dominos.ID;
+    }
+    set ID(value){
+        is.number(value);
+        return this.#dominos.ID=value;
+    }
+ 
+    get firstName(){
+        return this.#dominos.firstName;
+    }
+    set firstName(value){
+        is.string(value);
+        return this.#dominos.firstName=value;
+    }
+ 
+    get lastName(){
+        return this.#dominos.lastName;
+    }
+    set lastName(value){
+        is.string(value);
+        return this.#dominos.lastName=value;
+    }
+ 
+    get email(){
+        return this.#dominos.email;
+    }
+    set email(value){
+        is.string(value);
+        return this.#dominos.email=value;
+    }
+ 
+    get address(){
+        return this.#dominos.address;
+    }
+    set address(value){
+        is.string(value);
+        return this.#dominos.address=value;
+    }
+ 
+    get phone(){
+        return this.#dominos.phone;
+    }
+    set phone(value){
+        is.string(value);
+        return this.#dominos.phone=value;
+    }
+ 
+    get dominos(){
+        return this.#dominos;
+    }
+ 
+    #dominos={
+        ID:0,
+        firstName:'',
+        lastName:'',
+        email:'',
+        address:'',
+        phone:''
+    }
+};
+ 
+export {
+    Customer as default,
+    Customer
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/modules/Item.js.html b/coverage/modules/Item.js.html new file mode 100644 index 0000000..c063961 --- /dev/null +++ b/coverage/modules/Item.js.html @@ -0,0 +1,275 @@ + + + + + + Code coverage report for modules/Item.js + + + + + + + + + +
+
+

All files / modules Item.js

+
+ +
+ 22.73% + Statements + 15/66 +
+ + +
+ 50% + Branches + 1/2 +
+ + +
+ 0% + Functions + 0/2 +
+ + +
+ 22.73% + Lines + 15/66 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +661x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x
import defaultParameters from './defaultParameters.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Item{
+    constructor(parameters) {
+        defaultParameters(this,parameters);
+    }
+ 
+    AutoRemove=false
+    isNew = true
+    
+    get code(){
+        return this.#dominos.Code;
+    }
+    set code(value){
+        id.string(value);
+        return this.#dominos.Code=value;
+    }
+
+    get quantity(){
+        return this.#dominos.Qty;
+    }
+    set quantity(value){
+        id.number(value);
+        return this.#dominos.Qty=value;
+    }
+
+    get ID(){
+        return this.#dominos.ID;
+    }
+    set ID(value){
+        id.number(value);
+        return this.#dominos.ID=value;
+    }
+
+    //to maintain private structure
+    //options must be rewritten when updated
+    get options(){
+        return this.#dominos.Options;
+    }
+    set options(value){
+        id.object(value);
+        return this.#dominos.Options=value;
+    }
+
+    get dominos(){
+        return this.#dominos;
+    }
+
+    #dominos={
+        Code:'',
+        Qty:1,
+        ID:1,
+        Options:{ 
+            'C': {'1/1': '1'}, 
+            'X': {'1/1': '1'} 
+        }
+    }
+}
+ 
+export {
+    Item as default,
+    Item
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/modules/defaultParameters.js.html b/coverage/modules/defaultParameters.js.html new file mode 100644 index 0000000..60c815e --- /dev/null +++ b/coverage/modules/defaultParameters.js.html @@ -0,0 +1,176 @@ + + + + + + Code coverage report for modules/defaultParameters.js + + + + + + + + + +
+
+

All files / modules defaultParameters.js

+
+ +
+ 18.18% + Statements + 6/33 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 18.18% + Lines + 6/33 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +331x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x
const defaultParameters=function(parameters){
+    
+    if(!parameters){
+        //false because there are no parmas to work with.
+        return false;
+    }
+
+    if (typeof parameters !== 'object') {
+        //true because there are parmas to work with,
+        //but the default Object handler can't use them
+        return true;
+    }
+
+    for(const [key,value] of Object.entries(parameters)){
+        //console.log(key,value)
+        
+        //console.log(`${key} in ${this} = ${key in this}`);
+
+        if(!key in this){
+            continue;
+        }
+
+        this[key]=value;
+    }
+
+    //false because the params have been handled and should need no further work.
+    return false;
+}
+ 
+export {
+    defaultParameters as default,
+    defaultParameters
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/modules/index.html b/coverage/modules/index.html new file mode 100644 index 0000000..ebdba18 --- /dev/null +++ b/coverage/modules/index.html @@ -0,0 +1,156 @@ + + + + + + Code coverage report for modules + + + + + + + + + +
+
+

All files modules

+
+ +
+ 31.72% + Statements + 72/227 +
+ + +
+ 57.14% + Branches + 4/7 +
+ + +
+ 0% + Functions + 0/20 +
+ + +
+ 31.72% + Lines + 72/227 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
Coupon.js +
+
30.77%16/5250%1/20%0/230.77%16/52
Customer.js +
+
46.05%35/7650%1/20%0/1546.05%35/76
Item.js +
+
22.73%15/6650%1/20%0/222.73%15/66
defaultParameters.js +
+
18.18%6/33100%1/10%0/118.18%6/33
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/index.html b/coverage/node-dominos-pizza-api/index.html new file mode 100644 index 0000000..4cd1b6b --- /dev/null +++ b/coverage/node-dominos-pizza-api/index.html @@ -0,0 +1,111 @@ + + + + + + Code coverage report for node-dominos-pizza-api + + + + + + + + + +
+
+

All files node-dominos-pizza-api

+
+ +
+ 100% + Statements + 55/55 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 55/55 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
index.js +
+
100%55/55100%1/1100%0/0100%55/55
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/index.js.html b/coverage/node-dominos-pizza-api/index.js.html new file mode 100644 index 0000000..2c21784 --- /dev/null +++ b/coverage/node-dominos-pizza-api/index.js.html @@ -0,0 +1,245 @@ + + + + + + Code coverage report for node-dominos-pizza-api/index.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api index.js

+
+ +
+ 100% + Statements + 55/55 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 55/55 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +561x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
import './modules/DominosErrors.js';
+ 
+import Address from './modules/Address.js';
+import NearbyStores from './modules/NearbyStores.js';
+import Store from './modules/Store.js';
+import Menu from './modules/Menu.js';
+ 
+import Customer from './modules/Customer.js';
+import Item from './modules/Item.js';
+import Image from './modules/Image.js';
+ 
+import Order from './modules/Order.js';
+import Payment from './modules/Payment.js';
+import Tracking from './modules/Tracking.js';
+ 
+import urls from './utils/urls.js';
+import IsDominos from './utils/DominosTypes.js';
+ 
+ 
+const old={
+    Address,
+    NearbyStores,
+    Store,
+    Menu,
+    
+    Customer,
+    Item,
+    Image,
+    
+    Order,
+    Payment,
+    Tracking,
+    
+    urls,
+    IsDominos
+};
+ 
+export {
+    old as default,
+    Address,
+    NearbyStores,
+    Store,
+    Menu,
+    
+    Customer,
+    Item,
+    Image,
+    
+    Order,
+    Payment,
+    Tracking,
+    
+    urls,
+    IsDominos
+};
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Address.js.html b/coverage/node-dominos-pizza-api/modules/Address.js.html new file mode 100644 index 0000000..5e2abef --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Address.js.html @@ -0,0 +1,329 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Address.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Address.js

+
+ +
+ 100% + Statements + 83/83 +
+ + +
+ 87.5% + Branches + 14/16 +
+ + +
+ 100% + Functions + 5/5 +
+ + +
+ 100% + Lines + 83/83 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +841x +1x +1x +1x +1x +1x +1x +34x +34x +34x +34x +13x +13x +34x +34x +34x +1x +1x +34x +34x +34x +34x +34x +34x +34x +34x +1x +1x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +12x +1x +1x +13x +1x +1x +1x +1x +13x +13x +13x +31x +31x +13x +13x +13x +13x +13x +13x +4x +4x +13x +4x +4x +4x +4x +13x +2x +2x +2x +13x +13x +1x +1x +1x +1x +1x + 
import Is from 'strong-type';
+import DominosFormat from './DominosFormat.js';
+ 
+const weakIs=new Is(false);
+ 
+class Address extends DominosFormat{
+    constructor(parameters){
+        super();
+        this.init=parameters;
+ 
+        if(weakIs.string(parameters)){
+            this.#parse(parameters);
+        }
+        
+        return this;
+    }
+ 
+    street      =''
+    streetNumber=''
+    streetName  =''
+    unitType    =''
+    unitNumber  =''
+    city        =''
+    region      =''
+    postalCode  =''
+    deliveryInstructions=''
+ 
+    get addressLines() {
+        const line1 = this.street
+            ||`${this.streetNumber} ${this.streetName} ${this.unitType} ${this.unitNumber}`
+            ||'';
+            
+        const line2 = `${
+            (this.city||'')
+        } ${
+            (this.region||'')
+        } ${
+            this.postalCode
+        }`
+ 
+        const lines={
+            line1,
+            line2
+        };
+        
+        return lines;
+    }
+ 
+    #parse(locationString) {
+        return parseAddress.call(this,locationString);
+    }   
+}
+ 
+const parseAddress=function(locationString){
+    const splitAddress = locationString.split(',');
+ 
+    for (var i in splitAddress) {
+        splitAddress[i] = splitAddress[i].trim();
+    }
+ 
+    this.postalCode= splitAddress[splitAddress.length-1]
+ 
+    //works well enough for addresses, could be better though
+    switch (splitAddress.length) {
+        case 2:
+            this.street=splitAddress[0];
+            break;
+        case 3:
+            this.street=splitAddress[0];
+            this.city = splitAddress[1];
+            
+            break;
+        case 4:
+            this.street = splitAddress[0];
+            this.city = splitAddress[1];
+            this.region = splitAddress[2];
+    }
+}
+ 
+export {
+    Address as default,
+    Address
+};
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/AmountsBreakdown.js.html b/coverage/node-dominos-pizza-api/modules/AmountsBreakdown.js.html new file mode 100644 index 0000000..a354a85 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/AmountsBreakdown.js.html @@ -0,0 +1,167 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/AmountsBreakdown.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules AmountsBreakdown.js

+
+ +
+ 100% + Statements + 30/30 +
+ + +
+ 75% + Branches + 3/4 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 30/30 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +301x +1x +1x +1x +9x +9x +9x +9x +1x +1x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +1x +1x +1x +1x +1x +1x
import DominosFormat from "./DominosFormat.js"
+ 
+class AmountsBreakdown extends DominosFormat{
+    constructor(params){
+        super();
+        this.init=params;
+        return this;
+    }
+ 
+    foodAndBeverage='0.00'
+    adjustment='0.00'
+    surcharge='0.00'
+    deliveryFee='0.00'
+    tax=0
+    tax1=0
+    tax2=0
+    tax3=0
+    tax4=0
+    tax5=0
+    bottle=0
+    customer=0
+    roundingAdjustment=0
+    cash=0
+    savings='0.00'
+  }
+ 
+  export {
+      AmountsBreakdown as default,
+      AmountsBreakdown
+  }
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Coupon.js.html b/coverage/node-dominos-pizza-api/modules/Coupon.js.html new file mode 100644 index 0000000..d89cc04 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Coupon.js.html @@ -0,0 +1,236 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Coupon.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Coupon.js

+
+ +
+ 30.77% + Statements + 16/52 +
+ + +
+ 50% + Branches + 1/2 +
+ + +
+ 0% + Functions + 0/2 +
+ + +
+ 30.77% + Lines + 16/52 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +531x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x + 
import defaultParameters from './defaultParameters.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Coupon{
+    constructor(parameters){
+        defaultParameters(this,paramaters);  
+    }
+ 
+    
+    isNew=true
+
+    get code(){
+        return this.#dominos.Code;       
+    }
+    set code(value){
+        is.string(value);
+        return this.#dominos.Code=value;
+    }
+
+    get quantity(){
+        return this.#dominos.Qty;        
+    }
+    set quantity(value){
+        is.number(value);
+        return this.#dominos.Qty=value;
+    }
+
+    get ID(){
+        return this.#dominos.ID;       
+    }
+    set ID(value){
+        is.number(value);
+        return this.#dominos.ID=value;
+    }
+
+    get dominos(){
+        return this.#dominos;
+    }
+
+    #dominos={
+        Code:'',
+        Qty:0,
+        ID:1
+    }
+}
+ 
+export { 
+    Coupon as default,
+    Coupon
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Customer.js.html b/coverage/node-dominos-pizza-api/modules/Customer.js.html new file mode 100644 index 0000000..0fad4d0 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Customer.js.html @@ -0,0 +1,164 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Customer.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Customer.js

+
+ +
+ 100% + Statements + 28/28 +
+ + +
+ 75% + Branches + 3/4 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 28/28 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +291x +1x +1x +1x +1x +1x +1x +1x +3x +3x +3x +3x +3x +3x +1x +1x +3x +3x +3x +3x +3x +1x +1x +1x +1x +1x +1x +1x + 
import Is from 'strong-type';
+import Address from './Address.js';
+import DominosFormat from './DominosFormat.js';
+ 
+const is=new Is;
+ 
+class Customer extends DominosFormat{
+    constructor(parameters) {
+        super();
+        this.init=parameters;
+        this.address=new Address(parameters.address);
+        this.phone=this.phone.replace(/\-/g,'');
+        return this;
+    }
+ 
+    firstName   =''
+    lastName    =''
+    email       =''
+    address     =new Address
+    phone       =''
+    phonePrefix =''
+    
+};
+ 
+export {
+    Customer as default,
+    Customer
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/DominosErrors.js.html b/coverage/node-dominos-pizza-api/modules/DominosErrors.js.html new file mode 100644 index 0000000..f525aa8 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/DominosErrors.js.html @@ -0,0 +1,458 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/DominosErrors.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules DominosErrors.js

+
+ +
+ 74.8% + Statements + 95/127 +
+ + +
+ 70% + Branches + 7/10 +
+ + +
+ 50% + Functions + 4/8 +
+ + +
+ 74.8% + Lines + 95/127 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +1271x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +  +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +2x +2x +1x +1x +1x +1x +1x +1x +3x +3x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
//all of these classes will be globally available
+ 
+import Is from "strong-type";
+ 
+const is=new Is;
+ 
+class DominosValidationError extends Error{
+    constructor(response){
+        is.object(response);
+        super();
+
+        //console.log(response)
+
+        this.message='Dominos Order Validation failed with the following information:';
+        
+        return createErrorMessage(this,response);
+    }
+};
+ 
+class DominosPriceError extends Error{
+    constructor(response){
+        is.object(response);
+        super();
+
+        //console.log(response)
+
+        this.message='Dominos Order Pricing failed with the following information:';
+
+        return createErrorMessage(this,response);
+    }
+};
+ 
+class DominosPlaceOrderError extends Error{
+    constructor(response){
+        is.object(response);
+        super();
+ 
+        //console.log(response)
+ 
+        this.message='Dominos Place Order failed with the following information:';
+ 
+        return createErrorMessage(this,response);
+    }
+};
+ 
+class DominosAddressError extends Error{
+    constructor(message){
+        is.string(message);
+        super();
+ 
+        this.message='Dominos Address Error: '+message;
+ 
+        return this;
+    }
+};
+ 
+class DominosDateError extends Error{
+    constructor(message){
+        is.string(message);
+        super();
+
+        this.message='Dominos Date Error: '+message;
+
+        return this;
+    }
+};
+ 
+class DominosStoreError extends Error{
+    constructor(message){
+        is.string(message);
+        super();
+ 
+        this.message='Dominos Store Error: '+message;
+ 
+        return this;
+    }
+};
+ 
+class DominosProductsError extends Error{
+    constructor(message){
+        is.string(message);
+        super();
+
+        this.message='Dominos Products Error: '+message;
+
+        return this;
+    }
+};
+ 
+const createErrorMessage=function(self,response){
+    is.object(self);
+    is.object(response);
+ 
+    //console.dir(response,{depth:2})
+ 
+    if(response.Order.StatusItems){
+        for(const [i,statusItem] 
+            of Object.entries(response.Order.StatusItems)
+        ){
+            self.message+=` ${statusItem.Code}:'${statusItem.Message||''}',`
+        }
+    }
+ 
+    if(response.Order.CorrectiveAction){
+        for(const [key,value] 
+            of Object.entries(response.Order.CorrectiveAction)
+        ){
+            self.message+=` ${key}:'${value}',`
+        }
+    }
+ 
+    for(const [i,statusItem] 
+        of Object.entries(response.StatusItems)
+    ){
+        self.message+=` ${statusItem.Code},`
+    }
+ 
+    return self;
+}
+ 
+global.DominosValidationError=DominosValidationError;
+global.DominosPriceError=DominosPriceError;
+global.DominosPlaceOrderError=DominosPlaceOrderError;
+global.DominosAddressError=DominosAddressError;
+global.DominosDateError=DominosDateError;
+global.DominosStoreError=DominosStoreError;
+global.DominosProductsError=DominosProductsError;
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/DominosFormat.js.html b/coverage/node-dominos-pizza-api/modules/DominosFormat.js.html new file mode 100644 index 0000000..a3cf973 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/DominosFormat.js.html @@ -0,0 +1,221 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/DominosFormat.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules DominosFormat.js

+
+ +
+ 87.5% + Statements + 42/48 +
+ + +
+ 100% + Branches + 6/6 +
+ + +
+ 71.43% + Functions + 5/7 +
+ + +
+ 87.5% + Lines + 42/48 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +481x +1x +1x +1x +1x +64x +64x +64x +1x +1x +48x +48x +48x +1x +1x +30x +30x +30x +30x +30x +30x +1x +1x +18x +18x +18x +18x +18x +18x +18x +1x +1x +  +  +1x +1x +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x
import defaultParameters from './defaultParameters.js';
+import {pascalObjectKeys,camelObjectKeys} from '../utils/toCase.js';
+ 
+class DominosFormat{
+    constructor(){
+        
+        return this;
+    }
+ 
+    set init(parameters){
+        //merge params into this object
+        defaultParameters(this,parameters);
+    }
+ 
+    get formatted(){
+        return pascalObjectKeys(
+            JSON.parse(
+                JSON.stringify(this)
+            )
+        );
+    }
+ 
+    set formatted(dominosAddress){
+        Object.assign(
+            this,
+            camelObjectKeys(dominosAddress)
+        );
+ 
+        return this;
+    }
+ 
+    get dominosAPIResponse(){
+        return this.#dominosAPIResponse; 
+    }
+ 
+    set dominosAPIResponse(value){
+        is.object(value);
+
+        return this.#dominosAPIResponse=value;
+    }
+ 
+    #dominosAPIResponse={}
+}
+ 
+export {
+    DominosFormat as default,
+    DominosFormat
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Image.js.html b/coverage/node-dominos-pizza-api/modules/Image.js.html new file mode 100644 index 0000000..a0fecde --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Image.js.html @@ -0,0 +1,155 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Image.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Image.js

+
+ +
+ 100% + Statements + 26/26 +
+ + +
+ 75% + Branches + 3/4 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 26/26 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +261x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import {Base64File} from 'js-base64-file';
+import urls from '../utils/urls.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+class Image extends Base64File{
+    constructor(productCode) {
+        is.string(productCode);
+        
+        super();
+        
+        return this.#fetchImage(urls.images.replace('${productCode}',productCode));
+    } 
+ 
+    async #fetchImage(url){
+        this.base64Image=await this.loadRemote(url,'');
+ 
+        return this;
+    }
+}
+ 
+export {
+    Image as default,
+    Image
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Item.js.html b/coverage/node-dominos-pizza-api/modules/Item.js.html new file mode 100644 index 0000000..d346d3d --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Item.js.html @@ -0,0 +1,188 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Item.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Item.js

+
+ +
+ 100% + Statements + 37/37 +
+ + +
+ 83.33% + Branches + 5/6 +
+ + +
+ 100% + Functions + 4/4 +
+ + +
+ 100% + Lines + 37/37 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +371x +1x +1x +1x +1x +1x +1x +1x +2x +2x +2x +2x +2x +1x +1x +2x +2x +2x +1x +1x +1x +6x +6x +6x +6x +6x +6x +1x +1x +4x +4x +1x +1x +1x +1x +1x +1x
import Is from 'strong-type';
+import DominosFormat from './DominosFormat.js';
+ 
+const is=new Is;
+let id=1;
+ 
+class Item extends DominosFormat{
+    constructor(parameters) {
+        super();
+        this.init=parameters;
+ 
+        return this;
+    }
+ 
+    iD=id++
+    code=''
+    qty=1
+    options={}
+    isNew=true   
+ 
+    get formatted(){
+        const formatted=super.formatted;
+        //console.log(formatted);
+        formatted.isNew=this.isNew;
+        delete formatted.IsNew;
+        return formatted;
+    }
+ 
+    set formatted(value){
+        return super.formatted=value;
+    }
+}
+ 
+export {
+    Item as default,
+    Item
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Menu.js.html b/coverage/node-dominos-pizza-api/modules/Menu.js.html new file mode 100644 index 0000000..7754d04 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Menu.js.html @@ -0,0 +1,668 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Menu.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Menu.js

+
+ +
+ 100% + Statements + 196/196 +
+ + +
+ 100% + Branches + 26/26 +
+ + +
+ 100% + Functions + 11/11 +
+ + +
+ 100% + Lines + 196/196 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +1971x +1x +1x +1x +1x +1x +1x +1x +1x +1x +5x +5x +1x +1x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +119x +119x +5x +5x +5x +5x +5x +5x +5x +5x +1x +1x +5x +5x +5x +5x +5x +5x +5x +5x +5x +1x +1x +1x +5x +5x +5x +5x +20x +20x +20x +20x +20x +20x +20x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +1x +1x +40x +200x +200x +200x +200x +200x +200x +200x +200x +200x +140x +200x +60x +60x +60x +200x +200x +65x +65x +200x +200x +200x +200x +20x +20x +20x +20x +20x +20x +20x +20x +200x +200x +200x +200x +149x +149x +149x +200x +200x +200x +200x +40x +1x +1x +3628x +19303x +19303x +19303x +3628x +1x +1x +6408x +6408x +46908x +46908x +45650x +46908x +43300x +43300x +43300x +3608x +3608x +3608x +3608x +3608x +6408x +6408x +1x +1x +135x +135x +135x +2790x +2790x +2790x +2790x +135x +135x +1x +1x +20x +20x +20x +20x +20x +90x +90x +90x +90x +20x +20x +20x +1x +1x +1x +1x +1x +1x +1x + 
import Is from 'strong-type';
+import urls from '../utils/urls.js';
+import {toCamel} from '../utils/toCase.js';
+import {get} from '../utils/api-json.js';
+ 
+const is=new Is;
+const weakIs=new Is(false);
+ 
+class Menu{
+    constructor(storeID,lang='en') {
+        return this.#getMenu(storeID,lang);
+    }
+ 
+    menu={
+        categories:{},
+        coupons:{
+            products:{},
+            shortCouponDescriptions:{},
+            couponTiers:{},
+        },
+        flavors:{},
+        products:{},
+        sides:{},
+        sizes:{},
+        toppings:{},
+        variants:{},
+        preconfiguredProducts:{},
+        shortProductDescriptions:{},
+        unsupported:{
+            products:{},
+            options:{}
+        },
+        cooking:{
+            instructions:{},
+            instructionGroups:{}
+        }
+    }
+ 
+    get dominosAPIResponse(){
+        return this.#dominosAPIResponse; 
+    }
+ 
+    set dominosAPIResponse(value){
+        is.object(value);
+ 
+        return this.#dominosAPIResponse=value;
+    }
+ 
+    #dominosAPIResponse={}
+ 
+    async #getMenu(storeID,lang){
+        this.dominosAPIResponse=await get(
+            urls.store.menu
+                .replace('${storeID}', storeID)
+                .replace('${lang}', lang)
+        );
+ 
+        this.#parse(this.dominosAPIResponse);
+ 
+        return this;
+    };
+ 
+    #parse(menu){
+        is.object(menu);
+ 
+        //define categories
+        for(const [categoryKey, dominosCategory] of Object.entries(this.dominosAPIResponse.Categorization)){
+            const category= this.menu.categories[toCamel(categoryKey)]={};
+            
+            this.#defineCategories(
+                dominosCategory.Categories,
+                category
+            );
+        }
+ 
+        this.#allParentAndGrandDescendantsToCamel(this.dominosAPIResponse.Flavors,this.menu.flavors);
+        this.#allParentAndGrandDescendantsToCamel(this.dominosAPIResponse.Sides,this.menu.sides);
+        this.#allParentAndGrandDescendantsToCamel(this.dominosAPIResponse.Sizes,this.menu.sizes);
+        this.#allParentAndGrandDescendantsToCamel(this.dominosAPIResponse.Toppings,this.menu.toppings);
+ 
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.Products,this.menu.products);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.PreconfiguredProducts,this.menu.preconfiguredProducts);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.Coupons,this.menu.coupons.products);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.Variants,this.menu.variants);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.ShortProductDescriptions,this.menu.shortProductDescriptions);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.UnsupportedProducts,this.menu.unsupported.products);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.UnsupportedOptions,this.menu.unsupported.options);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.CookingInstructions,this.menu.cooking.instructions);
+        this.#allGrandDescendantsToCamel(this.dominosAPIResponse.CookingInstructionGroups,this.menu.cooking.instructionGroups);
+ 
+        this.#allDescendantsToCamel(this.dominosAPIResponse.CouponTiers,this.menu.coupons.couponTiers);
+        this.#allDescendantsToCamel(this.dominosAPIResponse.ShortCouponDescriptions,this.menu.coupons.shortCouponDescriptions);
+        
+    }
+ 
+    #defineCategories(categories,menuParent){
+        for(const category of categories){
+            const formattedCategory=menuParent[
+                toCamel(category.Code)
+            ]={};
+ 
+            if(category.Code.length){
+                formattedCategory.code=category.Code;
+            }
+    
+            if(category.Name.length){
+                formattedCategory.name=category.Name;
+            }else{
+                //if the name is missing populate it with the code
+                formattedCategory.name=category.Code;
+            }
+    
+            if(category.Description.length){
+                formattedCategory.description=category.Description;
+            }
+    
+            formattedCategory.hasSubCategories=false;
+    
+            if(category.Categories.length){
+                formattedCategory.hasSubCategories=true;
+                formattedCategory.subCategories={};
+    
+                this.#defineCategories(
+                    category.Categories,
+                    formattedCategory.subCategories
+                );
+            }
+    
+            formattedCategory.hasProducts=false;
+    
+            if(category.Products.length){
+                formattedCategory.hasProducts=true;
+                formattedCategory.products=category.Products;
+            }
+    
+            formattedCategory.hasTags=false;
+ 
+        }
+    }
+    
+    #camelCaseKeys(dominos,menu){
+        for(const [key,value] of Object.entries(dominos)){
+            //console.log(key);
+            menu[toCamel(key)]=dominos[key];
+        }
+    }
+    
+    #allDescendantsToCamel(dominos,menu){
+        if(weakIs.object(dominos)){
+            for(const [key,value] of Object.entries(dominos)){
+                if(
+                    weakIs.array(value)||
+                    !weakIs.object(value)
+                ){
+                    menu[toCamel(key)]=value;
+                    continue;
+                }
+                menu[toCamel(key)]={};
+                const menuChild=menu[toCamel(key)];
+                this.#camelCaseKeys(value,menuChild);
+                this.#allDescendantsToCamel(value,menuChild);
+            }
+        }
+    }
+    
+    #allGrandDescendantsToCamel(dominos,menu){
+        if(weakIs.object(dominos)){
+            //console.log(menu);
+            for(const [key,value] of Object.entries(dominos)){
+                menu[key]={};
+                const menuChild=menu[key];
+                this.#allDescendantsToCamel(value,menuChild);
+            }
+        }
+    }
+    
+    #allParentAndGrandDescendantsToCamel(dominos,menu){
+        if(weakIs.object(dominos)){
+            //console.log(menu);
+            if(weakIs.object(dominos)){
+                this.#camelCaseKeys(dominos,menu);
+                for(const [key,value] of Object.entries(dominos)){
+                    const menuChild=menu[toCamel(key)]={};
+                    
+                    this.#allGrandDescendantsToCamel(value,menuChild);
+                }
+            }
+        }
+    }
+   
+}
+ 
+export {
+    Menu as default,
+    Menu
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/NearbyStores.js.html b/coverage/node-dominos-pizza-api/modules/NearbyStores.js.html new file mode 100644 index 0000000..0f9db1c --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/NearbyStores.js.html @@ -0,0 +1,275 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/NearbyStores.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules NearbyStores.js

+
+ +
+ 96.92% + Statements + 63/65 +
+ + +
+ 100% + Branches + 5/5 +
+ + +
+ 80% + Functions + 4/5 +
+ + +
+ 96.92% + Lines + 63/65 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +661x +1x +1x +1x +1x +1x +1x +1x +1x +1x +6x +6x +6x +6x +6x +1x +1x +6x +6x +6x +  +  +6x +6x +6x +6x +6x +6x +6x +6x +1x +1x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +1x +1x +1x +1x +1x +1x + 
import {get} from '../utils/api-json.js';
+import urls from '../utils/urls.js';
+import Is from 'strong-type';
+import Address from '../modules/Address.js';
+ 
+const is=new Is;
+const defaultAddress=new Address('222 2nd St, San Francisco, CA 94105');
+ 
+class NearbyStores{
+    constructor(addressInfo=this.address, pickUpType='Delivery') {
+        
+        this.address = new Address(addressInfo);
+ 
+        return this.#getStores(pickUpType);
+    }
+ 
+    address=defaultAddress
+    stores=[]
+    
+    get dominosAPIResponse(){
+        return this.#dominosAPIResponse; 
+    }
+ 
+    set dominosAPIResponse(value){
+        is.object(value);
+ 
+        return this.#dominosAPIResponse=value;
+    }
+ 
+    #dominosAPIResponse={}
+ 
+    async #getStores(pickUpType){
+        const stores=await get(
+            urls.store.find
+                .replace(
+                    '${line1}',
+                    encodeURI(
+                        this.address.addressLines.line1
+                    )
+                ).replace(
+                    '${line2}',
+                    encodeURI(
+                        this.address.addressLines.line2
+                    )
+                ).replace(
+                    '${pickUpType}',
+                    pickUpType
+                )
+        );
+ 
+        this.dominosAPIResponse=stores;
+ 
+        this.address.formatted=stores.Address;
+        this.stores=stores.Stores;
+ 
+        //console.dir(this,{depth:1})
+        
+        return this;
+    }
+};
+ 
+export {
+    NearbyStores as default,
+    NearbyStores
+};
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Order.js.html b/coverage/node-dominos-pizza-api/modules/Order.js.html new file mode 100644 index 0000000..f24c503 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Order.js.html @@ -0,0 +1,1019 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Order.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Order.js

+
+ +
+ 91.37% + Statements + 286/313 +
+ + +
+ 78.05% + Branches + 32/41 +
+ + +
+ 90.91% + Functions + 20/22 +
+ + +
+ 91.37% + Lines + 286/313 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +3141x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +9x +9x +9x +9x +1x +1x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +  +  +  +  +  +  +  +  +  +9x +9x +  +  +9x +9x +9x +9x +9x +9x +9x +9x +9x +9x +1x +1x +1x +1x +1x +1x +9x +9x +1x +1x +1x +1x +9x +9x +6x +6x +6x +6x +6x +6x +9x +9x +1x +1x +1x +1x +9x +9x +6x +6x +6x +6x +5x +5x +6x +6x +1x +1x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +9x +9x +9x +6x +6x +9x +9x +8x +8x +9x +9x +2x +2x +2x +2x +9x +9x +4x +4x +9x +9x +2x +2x +2x +2x +9x +9x +2x +2x +9x +9x +1x +1x +1x +1x +9x +9x +9x +9x +9x +9x +1x +1x +2x +2x +2x +2x +2x +2x +2x +2x +1x +1x +3x +1x +1x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +3x +  +  +2x +2x +2x +2x +3x +1x +1x +2x +  +  +2x +2x +  +  +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +  +  +2x +2x +2x +2x +2x +1x +1x +2x +  +  +2x +2x +  +  +2x +2x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +2x +1x +1x +  +  +  +  +1x +1x +1x +4x +4x +4x +4x +4x +4x +12x +12x +4x +4x +4x +4x +4x +4x +4x +164x +164x +164x +164x +164x +164x +164x +116x +116x +116x +164x +164x +4x +4x +4x +1x +1x +1x +1x +1x +1x +1x +1x + 
import IsDominos from '../utils/DominosTypes.js';
+import DominosFormat from './DominosFormat.js';
+import {urls} from '../utils/urls.js';
+import Address from '../modules/Address.js';
+import {post} from '../utils/api-json.js';
+import { toCamel } from '../utils/toCase.js';
+import AmountsBreakdown from './AmountsBreakdown.js';
+ 
+const isDominos=new IsDominos;
+const testDominos=new IsDominos(false);
+ 
+class Order extends DominosFormat{
+    constructor(customer) {
+        super();
+ 
+        return this.addCustomer(customer);
+    }
+ 
+    address = new Address
+    amounts = {}
+    amountsBreakdown=new AmountsBreakdown
+    businessDate = ''
+    coupons = []
+    currency = ''
+    customerID = ''
+    
+    estimatedWaitMinutes = ''
+    email = ''
+    extension = ''
+    firstName = ''
+    hotspotsLite= false
+    iP=''
+    lastName = ''
+    languageCode = 'en'
+    market = ''
+    metaData = {calculateNutrition: true, contactless:true}
+    newUser = true
+    noCombine = true
+    orderChannel = 'OLO'
+    orderID = ''
+    orderInfoCollection=[]
+    orderMethod = 'Web'
+    orderTaker = 'node-dominos-pizza-api'
+    partners = {}
+    payments = []
+    phone = ''
+    phonePrefix = ''
+    priceOrderMs=0
+    priceOrderTime = ''
+    products = []
+    promotions={}
+    pulseOrderGuid=''
+    serviceMethod = 'Delivery'
+    sourceOrganizationURI = urls.sourceUri
+    storeID = ''
+    tags = {}
+    userAgent=''
+    version = '1.0'
+    
+    orderInFuture(date){
+        isDominos.date(date);
+        const now=Date.now();
+        if(date<now){
+            throw new DominosDateError('Order dates must be in the future.');
+        }
+        const dateString=date.toISOString().replace('T',' ').replace('.000Z','');
+        
+        this.futureOrderTime=dateString;
+    }
+ 
+    orderNow(){
+        delete this.futureOrderTime;
+    }
+ 
+    addCustomer(customer) { 
+        isDominos.customer(customer);
+        
+        Object.assign(this,customer);
+        
+        return this;
+    }
+ 
+    addCoupon(couponCode) { 
+        isDominos.string(couponCode);
+        
+        this.coupons.push(couponCode);
+        
+        return this;
+    }
+ 
+    removeCoupon(couponCode) { 
+        isDominos.string(couponCode);
+        
+        return this.#remove(couponCode,this.coupons);;
+    }
+ 
+    addItem(item) { 
+        isDominos.item(item);
+ 
+        this.products.push(item);
+        
+        return this;
+    }
+ 
+    removeItem(item) {
+        isDominos.item(item);
+ 
+        return this.#remove(item,this.products);
+    }
+ 
+    get payload(){
+        const formatted=this.formatted;
+        formatted.Address=this.address.formatted;
+        
+        for(const [i,item] of Object.entries(this.products)){
+            formatted.Products[i]=item.formatted;
+        }
+ 
+        for(const [i,payment] of Object.entries(this.payments)){
+            formatted.Payments[i]=payment.formatted;
+        }
+ 
+        //console.log(formatted);
+ 
+        Object.assign(formatted.metaData={},formatted.MetaData);
+ 
+        delete formatted.MetaData
+ 
+        return JSON.stringify(
+            {
+                Order:formatted
+            },
+            // null,
+            // 4
+        )   
+    }
+ 
+    // the setter is very large, so it is near the bottom of the class
+    get formatted(){
+        return super.formatted;
+    }
+ 
+    get validationResponse(){
+        return this.#validationResponse; 
+    }
+ 
+    set validationResponse(value){
+        isDominos.object(value);
+ 
+        return this.#validationResponse=value;
+    }
+ 
+    get priceResponse(){
+        return this.#priceResponse; 
+    }
+ 
+    set priceResponse(value){
+        isDominos.object(value);
+ 
+        return this.#priceResponse=value;
+    }
+ 
+    get placeResponse(){
+        return this.#placeResponse; 
+    }
+ 
+    set placeResponse(value){
+        isDominos.object(value);
+ 
+        return this.#placeResponse=value;
+    }
+ 
+    #priceResponse={}
+ 
+    #validationResponse={}
+ 
+    #placeResponse={}
+    
+    #remove(child,parent){
+ 
+        const index = parent.indexOf(child);
+        if(index != -1) {
+          parent.splice(index, 1);
+        }
+ 
+        return this;
+    }
+ 
+    async validate() {  
+        if(!this.storeID){
+            throw new DominosStoreError('Store ID must be set before validating order');
+        }
+ 
+        this.validationResponse=await post(
+            urls.order.validate,
+            this.payload
+        );
+ 
+        const validation=this.validationResponse.Order;
+        
+        //console.log(this.validationResponse)
+ 
+        if(validation.Status==-1 || this.validationResponse.Status==-1){
+            throw new DominosValidationError(this.validationResponse);
+        }
+ 
+        this.formatted=validation;
+ 
+        return this;
+    }
+ 
+    async price() {
+        if(!this.storeID){
+            throw new DominosStoreError('Store ID must be set before pricing an order. `order.storeID=...`');
+        }
+ 
+        if(!this.products.length>0){
+            throw new DominosProductsError('Order must contain product items before pricing. `order.addItem(...)`');
+        }
+ 
+        this.priceResponse=await post(
+            urls.order.price,
+            this.payload
+        );
+ 
+        //console.dir(JSON.parse(this.payload),{depth:5})
+ 
+        const price=this.priceResponse.Order;
+        
+        //console.dir(this.priceResponse,{depth:5})
+ 
+        if(price.Status==-1 || this.priceResponse.Status==-1){
+            throw new DominosPriceError(this.priceResponse);
+        }
+ 
+        this.formatted=price;
+ 
+        return this;
+    }
+ 
+    async place() {
+        if(!this.storeID){
+            throw new DominosStoreError('Store ID must be set before placing an order. `order.storeID=...`');
+        }
+ 
+        if(!this.products.length>0){
+            throw new DominosProductsError('Order must contain product items before placing. `order.addItem(...)`');
+        }
+        
+        if(!this.address.region){
+            console.log(this.address)
+            throw new DominosAddressError('before you place an order, you must insure `order.address.region` is set');
+        }
+ 
+        this.placeResponse=await post(
+            urls.order.place,
+            this.payload
+        );
+ 
+        // console.dir(JSON.parse(this.payload),{depth:5})
+ 
+        const placeOrder=this.placeResponse.Order;
+        
+        // console.dir(this.placeResponse,{depth:5})
+ 
+        if(placeOrder.Status==-1 || this.priceResponse.Status==-1){
+            throw new DominosPlaceOrderError(this.placeResponse);
+        }
+
+        this.formatted=placeOrder;
+
+        return this;
+    };
+ 
+    set formatted(orderResponse){
+        // instance members
+        this.address.formatted=orderResponse.Address;
+        this.amountsBreakdown.formatted=orderResponse.AmountsBreakdown;
+        
+        //refreneces arrays/objects 
+        for(const [key,promo] of Object.entries(orderResponse.Promotions)){
+            this.promotions[toCamel(key)]=promo;
+        }
+ 
+        for(const [i,product] of Object.entries(orderResponse.Products)){
+            this.products[i].formatted=product;
+        }
+ 
+        //primitives
+        for(const [key,value] of Object.entries(orderResponse)){
+            if(
+                !testDominos.address(value)
+                && !testDominos.address(value)
+                && !testDominos.amountsBreakdown(value)
+                && !testDominos.object(value)
+                && !testDominos.array(value)
+            ){
+                this[toCamel(key)]=value;
+                continue;
+            }
+            //console.log(key,value);
+        }
+ 
+        return this;
+    }
+ 
+}
+ 
+ 
+export {
+    Order as default,
+    Order
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Payment.js.html b/coverage/node-dominos-pizza-api/modules/Payment.js.html new file mode 100644 index 0000000..74a975b --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Payment.js.html @@ -0,0 +1,317 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Payment.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Payment.js

+
+ +
+ 100% + Statements + 80/80 +
+ + +
+ 90.48% + Branches + 19/21 +
+ + +
+ 100% + Functions + 4/4 +
+ + +
+ 100% + Lines + 80/80 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +801x +1x +1x +1x +1x +1x +1x +7x +7x +7x +7x +7x +7x +2x +2x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +1x +1x +7x +7x +7x +7x +7x +1x +1x +1x +14x +14x +1x +1x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +7x +1x +1x +1x +1x +1x +1x
import Is from 'strong-type';
+import DominosFormat from './DominosFormat.js';
+ 
+const is=new Is;
+ 
+class Payment extends DominosFormat{
+    constructor(parameters) {
+        is.string(parameters.number);
+        is.string(parameters.expiration);
+        is.string(parameters.securityCode);
+        is.string(parameters.postalCode);
+        
+        if(parameters.amount){
+            is.number(parameters.amount)
+        }
+ 
+        super();
+ 
+        parameters.number=this.#digitsOnly(parameters.number);
+ 
+        this.#validate(parameters.number);
+        
+        if(this.cardType){
+            this.number=parameters.number;
+            
+            //numbers only
+            this.expiration=this.#digitsOnly(parameters.expiration);
+            this.securityCode=parameters.securityCode;
+            this.postalCode=parameters.postalCode;
+            this.amount=parameters.amount||0;
+        }
+ 
+        return this;
+    }
+    
+    type='CreditCard'
+    amount=0
+    number=''
+    cardType=''
+    expiration=''
+    securityCode=''
+    postalCode=''   
+ 
+    #digitsOnly(string){
+        return string.replace(/\D/g,'');
+    }
+ 
+    #validate(number){
+        const re = {
+            visa        : /^4[0-9]{12}(?:[0-9]{3})?$/,
+            mastercard  : /^5[1-5][0-9]{14}$/,
+            amex        : /^3[47][0-9]{13}$/,
+            diners      : /^3(?:0[0-5]|[68][0-9])[0-9]{11}$/,
+            discover    : /^6(?:011|5[0-9]{2})[0-9]{12}$/,
+            jcb         : /^(?:2131|1800|35\d{3})\d{11}$/,
+            enroute     : /^(?:2014|2149)\d{11}$/
+        };
+    
+        (re.visa.test(number))? this.cardType='VISA':null;
+    
+        (re.mastercard.test(number))? this.cardType='MASTERCARD':null;
+    
+        (re.amex.test(number))? this.cardType='AMEX':null;
+    
+        (re.diners.test(number))? this.cardType='DINERS':null;
+    
+        (re.discover.test(number))? this.cardType='DISCOVER':null;
+    
+        (re.jcb.test(number))? this.cardType='JCB':null;
+    
+        (re.enroute.test(number))? this.cardType='ENROUTE':null;
+        
+        return this;
+    }
+}
+ 
+export {
+    Payment as default,
+    Payment
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Store.js.html b/coverage/node-dominos-pizza-api/modules/Store.js.html new file mode 100644 index 0000000..f52b88d --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Store.js.html @@ -0,0 +1,191 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Store.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Store.js

+
+ +
+ 100% + Statements + 37/37 +
+ + +
+ 100% + Branches + 7/7 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 37/37 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +381x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +9x +9x +4x +4x +5x +5x +5x +9x +1x +1x +5x +5x +5x +5x +4x +4x +4x +4x +5x +1x +1x +1x +1x +1x +1x + 
import {get} from '../utils/api-json.js';
+import urls from '../utils/urls.js';
+import Menu from './Menu.js';
+import Is from 'strong-type';
+ 
+const is=new Is;
+const weakIs=new Is(false);
+ 
+class Store{
+    //parameters object required
+    //parameters.id also required as a minimum
+    constructor(id,lang='en') {
+        //accept both string and number types for id
+        if(!weakIs.number(id)&&!weakIs.string(id)){
+            throw new ReferenceError(`Store class expects id to be a number or string, but got ${id}`);
+        }
+        is.string(lang);
+ 
+        return this.#init(id,lang);
+    }
+ 
+    async #init(id,lang) {
+ 
+        this.info=await get(
+            urls.store.info.replace('${storeID}', id)
+        );
+ 
+        this.menu=await new Menu(id,lang);
+ 
+        return this;
+    }
+};
+ 
+export {
+    Store as default,
+    Store
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/Tracking.js.html b/coverage/node-dominos-pizza-api/modules/Tracking.js.html new file mode 100644 index 0000000..47e9e53 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/Tracking.js.html @@ -0,0 +1,230 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/Tracking.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules Tracking.js

+
+ +
+ 94.12% + Statements + 48/51 +
+ + +
+ 100% + Branches + 5/5 +
+ + +
+ 80% + Functions + 4/5 +
+ + +
+ 94.12% + Lines + 48/51 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +511x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import Is from "strong-type";
+import { getSoap } from "../utils/api-json.js";
+import urls from "../utils/urls.js";
+ 
+const is=new Is;
+ 
+class Tracking{
+    constructor(){
+ 
+        return this;
+    }
+    
+    orders={}
+    query={}
+    dominosAPIResult={}
+ 
+    async byPhone(phone) {
+        is.string(phone);
+    
+        return await this.byURL(`${urls.track}Phone=${phone}`);
+    }
+ 
+    async byID(storeID, orderKey) {
+    
+        return await this.byURL(`${urls.track}StoreID=${storeID}&OrderKey=${orderKey}`);
+    }
+ 
+    async byURL(url){
+        is.string(url);
+        
+        //console.log(url)
+ 
+        this.dominosAPIResult=await getSoap(url);
+ 
+        //console.log(this.dominosAPIResult);
+ 
+        is.object(this.dominosAPIResult['soap:Envelope']);
+        is.object(this.dominosAPIResult['soap:Envelope']['soap:Body']);
+        is.object(this.dominosAPIResult['soap:Envelope']['soap:Body'].GetTrackerDataResponse);
+ 
+        this.orders=this.dominosAPIResult['soap:Envelope']['soap:Body'].GetTrackerDataResponse.OrderStatuses;
+        this.query=this.dominosAPIResult['soap:Envelope']['soap:Body'].GetTrackerDataResponse.Query;
+        
+        return this;
+    }
+}
+ 
+export {
+    Tracking as default,
+    Tracking
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/defaultParameters.js.html b/coverage/node-dominos-pizza-api/modules/defaultParameters.js.html new file mode 100644 index 0000000..5954195 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/defaultParameters.js.html @@ -0,0 +1,128 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules/defaultParameters.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/modules defaultParameters.js

+
+ +
+ 100% + Statements + 17/17 +
+ + +
+ 100% + Branches + 4/4 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 17/17 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +171x +48x +35x +35x +35x +35x +13x +13x +13x +13x +13x +48x +1x +1x +1x +1x +1x
const defaultParameters=function(self,parameters){
+    if (typeof parameters !== 'object') {
+        //true because there are parmas to work with,
+        //but the default Object handler can't use them
+        return true;
+    }
+ 
+    Object.assign(self,parameters);
+ 
+    //false because the params have been handled and should need no further work.
+    return false;
+}
+ 
+export {
+    defaultParameters as default,
+    defaultParameters
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/modules/index.html b/coverage/node-dominos-pizza-api/modules/index.html new file mode 100644 index 0000000..d353645 --- /dev/null +++ b/coverage/node-dominos-pizza-api/modules/index.html @@ -0,0 +1,306 @@ + + + + + + Code coverage report for node-dominos-pizza-api/modules + + + + + + + + + +
+
+

All files node-dominos-pizza-api/modules

+
+ +
+ 93.85% + Statements + 1068/1138 +
+ + +
+ 87.42% + Branches + 139/159 +
+ + +
+ 87.5% + Functions + 70/80 +
+ + +
+ 93.85% + Lines + 1068/1138 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
Address.js +
+
100%83/8387.5%14/16100%5/5100%83/83
AmountsBreakdown.js +
+
100%30/3075%3/4100%2/2100%30/30
Customer.js +
+
100%28/2875%3/4100%2/2100%28/28
DominosErrors.js +
+
74.8%95/12770%7/1050%4/874.8%95/127
DominosFormat.js +
+
87.5%42/48100%6/671.43%5/787.5%42/48
Image.js +
+
100%26/2675%3/4100%2/2100%26/26
Item.js +
+
100%37/3783.33%5/6100%4/4100%37/37
Menu.js +
+
100%196/196100%26/26100%11/11100%196/196
NearbyStores.js +
+
96.92%63/65100%5/580%4/596.92%63/65
Order.js +
+
91.37%286/31378.05%32/4190.91%20/2291.37%286/313
Payment.js +
+
100%80/8090.48%19/21100%4/4100%80/80
Store.js +
+
100%37/37100%7/7100%2/2100%37/37
Tracking.js +
+
94.12%48/51100%5/580%4/594.12%48/51
defaultParameters.js +
+
100%17/17100%4/4100%1/1100%17/17
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/utils/DominosTypes.js.html b/coverage/node-dominos-pizza-api/utils/DominosTypes.js.html new file mode 100644 index 0000000..ef6cfd0 --- /dev/null +++ b/coverage/node-dominos-pizza-api/utils/DominosTypes.js.html @@ -0,0 +1,377 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/DominosTypes.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils DominosTypes.js

+
+ +
+ 92% + Statements + 92/100 +
+ + +
+ 100% + Branches + 16/16 +
+ + +
+ 78.95% + Functions + 15/19 +
+ + +
+ 92% + Lines + 92/100 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +1001x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +19x +19x +1x +1x +347x +347x +1x +1x +164x +164x +1x +1x +5x +5x +1x +1x +4x +4x +1x +1x +4x +4x +1x +1x +8x +8x +1x +1x +10x +10x +1x +1x +1x +1x +1x +1x +6x +6x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +1x +1x +1x +1x +1x +1x +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import '../modules/DominosErrors.js';
+ 
+import Is from 'strong-type';
+import {FetchError} from 'node-fetch';
+ 
+import Address from '../modules/Address.js';
+import AmountsBreakdown from '../modules/AmountsBreakdown.js';
+import NearbyStores from '../modules/NearbyStores.js';
+import Menu from '../modules/Menu.js';
+import Store from '../modules/Store.js';
+import Item from '../modules/Item.js';
+import Image from '../modules/Image.js';
+import Customer from '../modules/Customer.js';
+import Tracking from '../modules/Tracking.js';
+import Payment from '../modules/Payment.js';
+ 
+import VanillaTest from 'vanilla-test';
+ 
+class IsDominos extends Is{
+    test(value){
+        return this.instanceCheck(value,VanillaTest);
+    }
+ 
+    address(value){
+        return this.instanceCheck(value,Address);
+    }
+ 
+    amountsBreakdown(value){
+        return this.instanceCheck(value,AmountsBreakdown);
+    }
+ 
+    nearbyStores(value){
+        return this.instanceCheck(value,NearbyStores);
+    }
+ 
+    menu(value){
+        return this.instanceCheck(value,Menu);
+    }
+ 
+    store(value){
+        return this.instanceCheck(value,Store);
+    }
+ 
+    item(value){
+        return this.instanceCheck(value,Item);
+    }
+ 
+    customer(value){
+        return this.instanceCheck(value,Customer);
+    }
+ 
+    image(value){
+        return this.instanceCheck(value,Image);
+    }
+ 
+    payment(value){
+        return this.instanceCheck(value,Payment);
+    }
+ 
+    tracking(value){
+        return this.instanceCheck(value,Tracking);
+    }
+ 
+    validationError(value){
+        return this.instanceCheck(value,DominosValidationError);
+    }
+ 
+    priceError(value){
+        return this.instanceCheck(value,DominosPriceError);
+    }
+ 
+    placeOrderError(value){
+        return this.instanceCheck(value,DominosPlaceOrderError);
+    }
+ 
+    addressError(value){
+        return this.instanceCheck(value,DominosAddressError);
+    }
+ 
+    dateError(value){
+        return this.instanceCheck(value,DominosDateError);
+    }
+ 
+    storeError(value){
+        return this.instanceCheck(value,DominosStoreError);
+    }
+ 
+    productsError(value){
+        return this.instanceCheck(value,DominosProductsError);
+    }
+ 
+    fetchError(value){
+        return this.instanceCheck(value,FetchError);
+    }
+}
+ 
+export {
+    IsDominos as default, 
+    IsDominos
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/utils/api-json.js.html b/coverage/node-dominos-pizza-api/utils/api-json.js.html new file mode 100644 index 0000000..b1eb5cd --- /dev/null +++ b/coverage/node-dominos-pizza-api/utils/api-json.js.html @@ -0,0 +1,332 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/api-json.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils api-json.js

+
+ +
+ 100% + Statements + 85/85 +
+ + +
+ 100% + Branches + 4/4 +
+ + +
+ 100% + Functions + 3/3 +
+ + +
+ 100% + Lines + 85/85 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +851x +1x +1x +1x +1x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +1x +1x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +16x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import fetch from 'node-fetch';
+import urls from './urls.js';
+import {default as parser} from 'xml2json';
+ 
+const post=async function(url, payload) {
+    const options = {
+        method:'POST',
+        headers: {
+            'Referer': urls.referer,
+            'Accept': 'application/json',
+            'Content-Type': 'application/json'
+        },
+        body:payload
+    };
+ 
+    //console.log(options,url);
+ 
+    const res=await fetch(
+        url,
+        options
+    );
+ 
+    //console.log(await res.text());
+ 
+    return await res.json();
+}
+ 
+const get = async function(url){
+    const options = {
+        method:'GET',
+        headers: {
+            'Referer': urls.referer,
+            'Accept': 'application/json',
+            'Content-Type': 'application/json'
+        }
+    };
+ 
+    //console.log(options,url);
+ 
+    const res=await fetch(
+        url,
+        options
+    );
+ 
+    //console.log(await res.text());
+ 
+    return await res.json();
+}
+ 
+const getSoap = async function(url){
+    const options = {
+        method:'GET',
+        headers: {
+            'Referer': urls.referer
+        }
+    };
+ 
+    //console.log(options,url);
+ 
+    const res=await fetch(
+        url,
+        options
+    );
+ 
+    //console.log(await res.text());
+ 
+    return parser.toJson(
+        await res.text(),
+        {
+            coerce: false,
+            sanitize: false,
+            object: true,
+            trim: false
+        }
+    );
+}
+ 
+const old={get,getSoap,post}
+ 
+export {
+    old as default,
+    get,
+    getSoap,
+    post
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/utils/customTypes.js.html b/coverage/node-dominos-pizza-api/utils/customTypes.js.html new file mode 100644 index 0000000..6df5248 --- /dev/null +++ b/coverage/node-dominos-pizza-api/utils/customTypes.js.html @@ -0,0 +1,155 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/customTypes.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils customTypes.js

+
+ +
+ 84.62% + Statements + 22/26 +
+ + +
+ 100% + Branches + 3/3 +
+ + +
+ 50% + Functions + 2/4 +
+ + +
+ 84.62% + Lines + 22/26 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +261x +1x +1x +1x +1x +1x +17x +17x +1x +1x +16x +16x +1x +1x +  +  +1x +1x +  +  +1x +1x +1x +1x +1x +1x
import Is from 'strong-type';
+import {Address,NearbyStores,Store} from '../index.js';
+import VanillaTest from 'vanilla-test';
+ 
+class IsDominos extends Is{
+    test(value){
+        return this.instanceCheck(value,VanillaTest);
+    }
+ 
+    address(value){
+        return this.instanceCheck(value,Address);
+    }
+ 
+    nearbyStores(value){
+        return this.instanceCheck(value,NearbyStores);
+    }
+ 
+    store(value){
+        return this.instanceCheck(value,Store);
+    }
+}
+ 
+export {
+    IsDominos as default, 
+    IsDominos
+};
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/utils/delay.js.html b/coverage/node-dominos-pizza-api/utils/delay.js.html new file mode 100644 index 0000000..378f34c --- /dev/null +++ b/coverage/node-dominos-pizza-api/utils/delay.js.html @@ -0,0 +1,134 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/delay.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils delay.js

+
+ +
+ 100% + Statements + 19/19 +
+ + +
+ 100% + Branches + 3/3 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 19/19 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +191x +1x +4x +4x +4x +4x +4x +485996x +485996x +485996x +485996x +4x +4x +4x +1x +1x +1x +1x +1x
import fs from 'fs';
+ 
+function delay(ms=100) {
+    const proceedAt = Date.now() + ms;
+ 
+    //may delay a little longer than ms as the requrest to existsSync may take a few ms
+    while (Date.now() < proceedAt) {
+        fs.existsSync(
+            Math.round(Math.random()*(ms*ms))
+        );
+    }
+ 
+    return;
+}
+ 
+export { 
+    delay as default, 
+    delay
+}; 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/utils/index.html b/coverage/node-dominos-pizza-api/utils/index.html new file mode 100644 index 0000000..10b8b09 --- /dev/null +++ b/coverage/node-dominos-pizza-api/utils/index.html @@ -0,0 +1,171 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils + + + + + + + + + +
+
+

All files node-dominos-pizza-api/utils

+
+ +
+ 97.71% + Statements + 342/350 +
+ + +
+ 100% + Branches + 32/32 +
+ + +
+ 85.71% + Functions + 24/28 +
+ + +
+ 97.71% + Lines + 342/350 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
DominosTypes.js +
+
92%92/100100%16/1678.95%15/1992%92/100
api-json.js +
+
100%85/85100%4/4100%3/3100%85/85
delay.js +
+
100%19/19100%3/3100%1/1100%19/19
toCase.js +
+
100%48/48100%7/7100%4/4100%48/48
urls.js +
+
100%98/98100%2/2100%1/1100%98/98
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/utils/pascalToCamel.js.html b/coverage/node-dominos-pizza-api/utils/pascalToCamel.js.html new file mode 100644 index 0000000..36971a5 --- /dev/null +++ b/coverage/node-dominos-pizza-api/utils/pascalToCamel.js.html @@ -0,0 +1,101 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/pascalToCamel.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils pascalToCamel.js

+
+ +
+ 100% + Statements + 8/8 +
+ + +
+ 100% + Branches + 2/2 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 8/8 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +81x +60x +60x +1x +1x +1x +1x +1x
const pascalToCamel=function(key){
+    return key[0].toLowerCase()+key.slice(1);
+}
+ 
+export {
+    pascalToCamel as default,
+    pascalToCamel
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/utils/toCase.js.html b/coverage/node-dominos-pizza-api/utils/toCase.js.html new file mode 100644 index 0000000..ffb65a6 --- /dev/null +++ b/coverage/node-dominos-pizza-api/utils/toCase.js.html @@ -0,0 +1,221 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/toCase.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils toCase.js

+
+ +
+ 100% + Statements + 48/48 +
+ + +
+ 100% + Branches + 7/7 +
+ + +
+ 100% + Functions + 4/4 +
+ + +
+ 100% + Lines + 48/48 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +481x +1x +1x +1x +1x +70479x +70479x +70479x +1x +1x +499x +499x +499x +1x +1x +30x +30x +30x +465x +465x +465x +465x +30x +30x +30x +1x +1x +18x +18x +18x +220x +220x +220x +220x +18x +18x +18x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x
import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+const toCamel=function(key){
+    is.string(key);
+    return key[0].toLowerCase()+key.slice(1);
+}
+ 
+const toPascal=function(key){
+    is.string(key);
+    return key[0].toUpperCase()+key.slice(1);
+}
+ 
+const pascalObjectKeys=function(target){
+    const pascalFormat={};
+        
+    for(const [key,value] of Object.entries(target)){
+        const pascalKey=toPascal(key);
+        
+        pascalFormat[pascalKey]=value;
+    }
+ 
+    return pascalFormat;
+}
+ 
+const camelObjectKeys=function(target){
+    const camelFormat={};
+        
+    for(const [key,value] of Object.entries(target)){
+        const camelKey=toCamel(key);
+        
+        camelFormat[camelKey]=value;
+    }
+ 
+    return camelFormat;
+}
+ 
+ 
+const old={toCamel,toPascal,pascalObjectKeys,camelObjectKeys}
+ 
+export {
+    old as default,
+    toCamel,
+    toPascal,
+    pascalObjectKeys,
+    camelObjectKeys
+}
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/node-dominos-pizza-api/utils/urls.js.html b/coverage/node-dominos-pizza-api/utils/urls.js.html new file mode 100644 index 0000000..eae326d --- /dev/null +++ b/coverage/node-dominos-pizza-api/utils/urls.js.html @@ -0,0 +1,374 @@ + + + + + + Code coverage report for node-dominos-pizza-api/utils/urls.js + + + + + + + + + +
+
+

All files / node-dominos-pizza-api/utils urls.js

+
+ +
+ 100% + Statements + 98/98 +
+ + +
+ 100% + Branches + 2/2 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 98/98 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +991x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +2x +2x +2x +2x +1x +1x +1x +1x +1x +1x +1x +1x + 
import Is from 'strong-type';
+ 
+const is=new Is;
+ 
+const usa={
+  referer : "https://order.dominos.com/en/pages/order/",
+  sourceUri : "order.dominos.com",
+  location:{
+    find:"https://api.dominos.com/store-locator-international-service/findAddress?latitude=${lat}&longitude=${lon}"
+  },
+  store : {
+    find : "https://order.dominos.com/power/store-locator?s=${line1}&c=${line2}&type=${pickUpType}",
+    info : "https://order.dominos.com/power/store/${storeID}/profile",
+    menu : "https://order.dominos.com/power/store/${storeID}/menu?lang=${lang}&structured=true"
+  },
+  order: {
+    validate: "https://order.dominos.com/power/validate-order",
+    price: "https://order.dominos.com/power/price-order",
+    place: "https://order.dominos.com/power/place-order"
+  },
+  images:"https://cache.dominos.com/olo/6_47_2/assets/build/market/US/_en/images/img/products/larges/${productCode}.jpg",
+  track: "https://order.dominos.com/orderstorage/GetTrackerData?",
+ 
+  //POST {storeId: "8278"}
+  token:"https://order.dominos.com/power/paymentGatewayService/braintree/token",
+  
+  //POST general upsell see below
+  upsell:"https://api.dominos.com/upsell-service/stores/upsellForOrder/",
+ 
+  //POST specific types of upsell see below
+  stepUpsell:"https://api.dominos.com/upsell-service/stores/stepUpsellForOrder"
+ 
+};
+ 
+//UPSELL Payload
+//{"maxUpsellCount":3,"order":{"Order":{"Address":{"Street":"251 CLAY ST","City":"MONTEREY","Region":"CA","PostalCode":"93940-2225","Type":"House","StreetName":"CLAY ST","StreetNumber":"251"},"Coupons":[],"CustomerID":"","Email":"","Extension":"","FirstName":"","LastName":"","LanguageCode":"en","OrderChannel":"OLO","OrderID":"QhXExb3uMDO0ieSeb6vi","OrderMethod":"Web","OrderTaker":null,"Payments":[],"Phone":"","PhonePrefix":"","Products":[{"Code":"14SCREEN","Qty":1,"ID":1,"isNew":true,"Options":{"X":{"1/1":"1"},"C":{"1/1":"1"}}},{"Code":"14SCMEATZA","Qty":1,"ID":2,"isNew":true,"Options":{"X":{"1/1":"1"},"C":{"1/1":"1.5"},"H":{"1/1":"1"},"B":{"1/1":"1"},"P":{"1/1":"1"},"S":{"1/1":"1"}}}],"ServiceMethod":"Delivery","SourceOrganizationURI":"order.dominos.com","StoreID":"8278","Tags":{},"Version":"1.0","NoCombine":true,"Partners":{},"HotspotsLite":false,"OrderInfoCollection":[]}},"sortBy":"PRIORITY","upsellType":"BEST"}
+ 
+//STEP UPSELL interesting field is : stepTypes 
+//{"order":{"Address":{"Street":"251 CLAY ST","City":"MONTEREY","Region":"CA","PostalCode":"93940-2225","Type":"House","StreetName":"CLAY ST","StreetNumber":"251"},"Coupons":[],"CustomerID":"","Email":"","Extension":"","FirstName":"","LastName":"","LanguageCode":"en","OrderChannel":"OLO","OrderID":"QhXExb3uMDO0ieSeb6vi","OrderMethod":"Web","Payments":[],"Phone":"","PhonePrefix":"","ServiceMethod":"Delivery","SourceOrganizationURI":"order.dominos.com","StoreID":"8278","Tags":{},"Version":"1.0","NoCombine":true,"Partners":{},"HotspotsLite":false,"OrderInfoCollection":[],"metaData":{"calculateNutrition":"true","prop65Warning":true},"IP":"99.43.15.137","DpzSourceHeader":"DSSPriceOrder","UserAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36","Market":"UNITED_STATES","Currency":"USD","Promotions":{"Redeemable":[],"Valid":[]},"Status":0,"Amounts":{"Menu":37.97,"Discount":0,"Surcharge":4.99,"Adjustment":0,"Net":37.97,"Tax":3.32,"Tax1":3.32,"Tax2":0,"Bottle":0,"Customer":41.29,"Payment":41.29},"BusinessDate":"2021-02-18","EstimatedWaitMinutes":"20-30","PulseOrderGuid":"0013a1d2-ed7f-443f-bd06-014fa6f4d20b","PriceOrderTime":"2021-02-18 13:32:27","PriceOrderMs":1111,"AmountsBreakdown":{"FoodAndBeverage":"32.98","Adjustment":"0.00","Surcharge":"0.00","DeliveryFee":"4.99","Tax":3.32,"Tax1":3.32,"Tax2":0,"Tax3":0,"Tax4":0,"Tax5":0,"Bottle":0,"Customer":41.29,"RoundingAdjustment":0,"Cash":0,"Savings":"0.00"},"Products":[{"ID":1,"Code":"14SCREEN","Qty":1,"CategoryCode":"Pizza","FlavorCode":"HANDTOSS","Price":13.99,"Amount":13.99,"Status":0,"LikeProductID":0,"Name":"Large (14\") Hand Tossed Pizza","IsNew":true,"NeedsCustomization":false,"AutoRemove":false,"Fulfilled":false,"Tags":{},"descriptions":[{"portionCode":"1/1","value":"Robust Inspired Tomato Sauce, Cheese"}]},{"ID":2,"Code":"14SCMEATZA","Qty":1,"CategoryCode":"Pizza","FlavorCode":"HANDTOSS","Price":18.99,"Amount":18.99,"Status":0,"LikeProductID":0,"Name":"Large (14\") Hand Tossed MeatZZa","IsNew":true,"NeedsCustomization":false,"AutoRemove":false,"Fulfilled":false,"Tags":{},"descriptions":[{"portionCode":"1/1","value":"Robust Inspired Tomato Sauce, Extra Cheese, Pepperoni, Beef, Italian Sausage, Ham"}]}]},"stepTypes":["SIDE","DRINKS","DESSERT","FLAVOR"]}
+ 
+ 
+ 
+ 
+const canada={
+  referer   :"https://order.dominos.ca/en/pages/order/",
+  sourceUri :"order.dominos.ca",
+  location:{
+    find:"https://api.dominos.com/store-locator-international-service/findAddress?latitude=${lat}&longitude=${lon}"
+  },
+  store     : {
+      find    : "https://order.dominos.ca/power/store-locator?s=${line1}&c=${line2}&type=${type}",
+      info    : "https://order.dominos.ca/power/store/${storeID}/profile",
+      menu    : "https://order.dominos.ca/power/store/${storeID}/menu?lang=${lang}&structured=true"
+  },
+  order     : {
+      validate: "https://order.dominos.ca/power/validate-order",
+      price   : "https://order.dominos.ca/power/price-order",
+      place   : "https://order.dominos.ca/power/place-order"
+  },
+  images  : "https://cache.dominos.com/nolo/ca/en/6_44_3/assets/build/market/CA/_en/images/img/products/larges/${itemCode}.jpg",
+  track   : "https://order.dominos.ca/orderstorage/GetTrackerData?",
+ 
+ 
+  //Need someone to update these or confirm for canada
+ 
+  //POST {storeId: "8278"}
+  token:"https://order.dominos.com/power/paymentGatewayService/braintree/token",
+  
+  //POST general upsell see below
+  upsell:"https://api.dominos.com/upsell-service/stores/upsellForOrder/",
+ 
+  //POST specific types of upsell see below
+  stepUpsell:"https://api.dominos.com/upsell-service/stores/stepUpsellForOrder"
+}
+ 
+ 
+let urls=usa;
+ 
+//to use other countries just set urls to that countries urls
+ 
+// import {urls} from '../index.js';
+// import {useInternational,canada} from '../utils/urls.js';
+// useInternational(canada);
+ 
+// console.dir(urls);
+ 
+function useInternational(internationalURLs=usa){
+  is.object(internationalURLs);
+  urls=internationalURLs;
+}
+ 
+export {
+    urls as default,
+    urls,
+    canada,
+    usa,
+    useInternational
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/prettify.css b/coverage/prettify.css new file mode 100644 index 0000000..b317a7c --- /dev/null +++ b/coverage/prettify.css @@ -0,0 +1 @@ +.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} diff --git a/coverage/prettify.js b/coverage/prettify.js new file mode 100644 index 0000000..b322523 --- /dev/null +++ b/coverage/prettify.js @@ -0,0 +1,2 @@ +/* eslint-disable */ +window.PR_SHOULD_USE_CONTINUATION=true;(function(){var h=["break,continue,do,else,for,if,return,while"];var u=[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var p=[u,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var l=[p,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var x=[p,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var R=[x,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"];var r="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes";var w=[p,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var s="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var I=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var f=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var H=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var A=[l,R,w,s+I,f,H];var e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;var C="str";var z="kwd";var j="com";var O="typ";var G="lit";var L="pun";var F="pln";var m="tag";var E="dec";var J="src";var P="atn";var n="atv";var N="nocode";var M="(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function k(Z){var ad=0;var S=false;var ac=false;for(var V=0,U=Z.length;V122)){if(!(al<65||ag>90)){af.push([Math.max(65,ag)|32,Math.min(al,90)|32])}if(!(al<97||ag>122)){af.push([Math.max(97,ag)&~32,Math.min(al,122)&~32])}}}}af.sort(function(av,au){return(av[0]-au[0])||(au[1]-av[1])});var ai=[];var ap=[NaN,NaN];for(var ar=0;arat[0]){if(at[1]+1>at[0]){an.push("-")}an.push(T(at[1]))}}an.push("]");return an.join("")}function W(al){var aj=al.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var ah=aj.length;var an=[];for(var ak=0,am=0;ak=2&&ai==="["){aj[ak]=X(ag)}else{if(ai!=="\\"){aj[ak]=ag.replace(/[a-zA-Z]/g,function(ao){var ap=ao.charCodeAt(0);return"["+String.fromCharCode(ap&~32,ap|32)+"]"})}}}}return aj.join("")}var aa=[];for(var V=0,U=Z.length;V=0;){S[ac.charAt(ae)]=Y}}var af=Y[1];var aa=""+af;if(!ag.hasOwnProperty(aa)){ah.push(af);ag[aa]=null}}ah.push(/[\0-\uffff]/);V=k(ah)})();var X=T.length;var W=function(ah){var Z=ah.sourceCode,Y=ah.basePos;var ad=[Y,F];var af=0;var an=Z.match(V)||[];var aj={};for(var ae=0,aq=an.length;ae=5&&"lang-"===ap.substring(0,5);if(am&&!(ai&&typeof ai[1]==="string")){am=false;ap=J}if(!am){aj[ag]=ap}}var ab=af;af+=ag.length;if(!am){ad.push(Y+ab,ap)}else{var al=ai[1];var ak=ag.indexOf(al);var ac=ak+al.length;if(ai[2]){ac=ag.length-ai[2].length;ak=ac-al.length}var ar=ap.substring(5);B(Y+ab,ag.substring(0,ak),W,ad);B(Y+ab+ak,al,q(ar,al),ad);B(Y+ab+ac,ag.substring(ac),W,ad)}}ah.decorations=ad};return W}function i(T){var W=[],S=[];if(T.tripleQuotedStrings){W.push([C,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(T.multiLineStrings){W.push([C,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{W.push([C,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(T.verbatimStrings){S.push([C,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var Y=T.hashComments;if(Y){if(T.cStyleComments){if(Y>1){W.push([j,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{W.push([j,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}S.push([C,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{W.push([j,/^#[^\r\n]*/,null,"#"])}}if(T.cStyleComments){S.push([j,/^\/\/[^\r\n]*/,null]);S.push([j,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(T.regexLiterals){var X=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");S.push(["lang-regex",new RegExp("^"+M+"("+X+")")])}var V=T.types;if(V){S.push([O,V])}var U=(""+T.keywords).replace(/^ | $/g,"");if(U.length){S.push([z,new RegExp("^(?:"+U.replace(/[\s,]+/g,"|")+")\\b"),null])}W.push([F,/^\s+/,null," \r\n\t\xA0"]);S.push([G,/^@[a-z_$][a-z_$@0-9]*/i,null],[O,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[F,/^[a-z_$][a-z_$@0-9]*/i,null],[G,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[F,/^\\[\s\S]?/,null],[L,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]);return g(W,S)}var K=i({keywords:A,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function Q(V,ag){var U=/(?:^|\s)nocode(?:\s|$)/;var ab=/\r\n?|\n/;var ac=V.ownerDocument;var S;if(V.currentStyle){S=V.currentStyle.whiteSpace}else{if(window.getComputedStyle){S=ac.defaultView.getComputedStyle(V,null).getPropertyValue("white-space")}}var Z=S&&"pre"===S.substring(0,3);var af=ac.createElement("LI");while(V.firstChild){af.appendChild(V.firstChild)}var W=[af];function ae(al){switch(al.nodeType){case 1:if(U.test(al.className)){break}if("BR"===al.nodeName){ad(al);if(al.parentNode){al.parentNode.removeChild(al)}}else{for(var an=al.firstChild;an;an=an.nextSibling){ae(an)}}break;case 3:case 4:if(Z){var am=al.nodeValue;var aj=am.match(ab);if(aj){var ai=am.substring(0,aj.index);al.nodeValue=ai;var ah=am.substring(aj.index+aj[0].length);if(ah){var ak=al.parentNode;ak.insertBefore(ac.createTextNode(ah),al.nextSibling)}ad(al);if(!ai){al.parentNode.removeChild(al)}}}break}}function ad(ak){while(!ak.nextSibling){ak=ak.parentNode;if(!ak){return}}function ai(al,ar){var aq=ar?al.cloneNode(false):al;var ao=al.parentNode;if(ao){var ap=ai(ao,1);var an=al.nextSibling;ap.appendChild(aq);for(var am=an;am;am=an){an=am.nextSibling;ap.appendChild(am)}}return aq}var ah=ai(ak.nextSibling,0);for(var aj;(aj=ah.parentNode)&&aj.nodeType===1;){ah=aj}W.push(ah)}for(var Y=0;Y=S){ah+=2}if(V>=ap){Z+=2}}}var t={};function c(U,V){for(var S=V.length;--S>=0;){var T=V[S];if(!t.hasOwnProperty(T)){t[T]=U}else{if(window.console){console.warn("cannot override language handler %s",T)}}}}function q(T,S){if(!(T&&t.hasOwnProperty(T))){T=/^\s*]*(?:>|$)/],[j,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[L,/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);c(g([[F,/^[\s]+/,null," \t\r\n"],[n,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[m,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[P,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[L,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);c(g([],[[n,/^[\s\S]+/]]),["uq.val"]);c(i({keywords:l,hashComments:true,cStyleComments:true,types:e}),["c","cc","cpp","cxx","cyc","m"]);c(i({keywords:"null,true,false"}),["json"]);c(i({keywords:R,hashComments:true,cStyleComments:true,verbatimStrings:true,types:e}),["cs"]);c(i({keywords:x,cStyleComments:true}),["java"]);c(i({keywords:H,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);c(i({keywords:I,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);c(i({keywords:s,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);c(i({keywords:f,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);c(i({keywords:w,cStyleComments:true,regexLiterals:true}),["js"]);c(i({keywords:r,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);c(g([],[[C,/^[\s\S]+/]]),["regex"]);function d(V){var U=V.langExtension;try{var S=a(V.sourceNode);var T=S.sourceCode;V.sourceCode=T;V.spans=S.spans;V.basePos=0;q(U,T)(V);D(V)}catch(W){if("console" in window){console.log(W&&W.stack?W.stack:W)}}}function y(W,V,U){var S=document.createElement("PRE");S.innerHTML=W;if(U){Q(S,U)}var T={langExtension:V,numberLines:U,sourceNode:S};d(T);return S.innerHTML}function b(ad){function Y(af){return document.getElementsByTagName(af)}var ac=[Y("pre"),Y("code"),Y("xmp")];var T=[];for(var aa=0;aa=0){var ah=ai.match(ab);var am;if(!ah&&(am=o(aj))&&"CODE"===am.tagName){ah=am.className.match(ab)}if(ah){ah=ah[1]}var al=false;for(var ak=aj.parentNode;ak;ak=ak.parentNode){if((ak.tagName==="pre"||ak.tagName==="code"||ak.tagName==="xmp")&&ak.className&&ak.className.indexOf("prettyprint")>=0){al=true;break}}if(!al){var af=aj.className.match(/\blinenums\b(?::(\d+))?/);af=af?af[1]&&af[1].length?+af[1]:true:false;if(af){Q(aj,af)}S={langExtension:ah,sourceNode:aj,numberLines:af};d(S)}}}if(X]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]); diff --git a/coverage/sort-arrow-sprite.png b/coverage/sort-arrow-sprite.png new file mode 100644 index 0000000..03f704a Binary files /dev/null and b/coverage/sort-arrow-sprite.png differ diff --git a/coverage/sorter.js b/coverage/sorter.js new file mode 100644 index 0000000..16de10c --- /dev/null +++ b/coverage/sorter.js @@ -0,0 +1,170 @@ +/* eslint-disable */ +var addSorting = (function() { + 'use strict'; + var cols, + currentSort = { + index: 0, + desc: false + }; + + // returns the summary table element + function getTable() { + return document.querySelector('.coverage-summary'); + } + // returns the thead element of the summary table + function getTableHeader() { + return getTable().querySelector('thead tr'); + } + // returns the tbody element of the summary table + function getTableBody() { + return getTable().querySelector('tbody'); + } + // returns the th element for nth column + function getNthColumn(n) { + return getTableHeader().querySelectorAll('th')[n]; + } + + // loads all columns + function loadColumns() { + var colNodes = getTableHeader().querySelectorAll('th'), + colNode, + cols = [], + col, + i; + + for (i = 0; i < colNodes.length; i += 1) { + colNode = colNodes[i]; + col = { + key: colNode.getAttribute('data-col'), + sortable: !colNode.getAttribute('data-nosort'), + type: colNode.getAttribute('data-type') || 'string' + }; + cols.push(col); + if (col.sortable) { + col.defaultDescSort = col.type === 'number'; + colNode.innerHTML = + colNode.innerHTML + ''; + } + } + return cols; + } + // attaches a data attribute to every tr element with an object + // of data values keyed by column name + function loadRowData(tableRow) { + var tableCols = tableRow.querySelectorAll('td'), + colNode, + col, + data = {}, + i, + val; + for (i = 0; i < tableCols.length; i += 1) { + colNode = tableCols[i]; + col = cols[i]; + val = colNode.getAttribute('data-value'); + if (col.type === 'number') { + val = Number(val); + } + data[col.key] = val; + } + return data; + } + // loads all row data + function loadData() { + var rows = getTableBody().querySelectorAll('tr'), + i; + + for (i = 0; i < rows.length; i += 1) { + rows[i].data = loadRowData(rows[i]); + } + } + // sorts the table using the data for the ith column + function sortByIndex(index, desc) { + var key = cols[index].key, + sorter = function(a, b) { + a = a.data[key]; + b = b.data[key]; + return a < b ? -1 : a > b ? 1 : 0; + }, + finalSorter = sorter, + tableBody = document.querySelector('.coverage-summary tbody'), + rowNodes = tableBody.querySelectorAll('tr'), + rows = [], + i; + + if (desc) { + finalSorter = function(a, b) { + return -1 * sorter(a, b); + }; + } + + for (i = 0; i < rowNodes.length; i += 1) { + rows.push(rowNodes[i]); + tableBody.removeChild(rowNodes[i]); + } + + rows.sort(finalSorter); + + for (i = 0; i < rows.length; i += 1) { + tableBody.appendChild(rows[i]); + } + } + // removes sort indicators for current column being sorted + function removeSortIndicators() { + var col = getNthColumn(currentSort.index), + cls = col.className; + + cls = cls.replace(/ sorted$/, '').replace(/ sorted-desc$/, ''); + col.className = cls; + } + // adds sort indicators for current column being sorted + function addSortIndicators() { + getNthColumn(currentSort.index).className += currentSort.desc + ? ' sorted-desc' + : ' sorted'; + } + // adds event listeners for all sorter widgets + function enableUI() { + var i, + el, + ithSorter = function ithSorter(i) { + var col = cols[i]; + + return function() { + var desc = col.defaultDescSort; + + if (currentSort.index === i) { + desc = !currentSort.desc; + } + sortByIndex(i, desc); + removeSortIndicators(); + currentSort.index = i; + currentSort.desc = desc; + addSortIndicators(); + }; + }; + for (i = 0; i < cols.length; i += 1) { + if (cols[i].sortable) { + // add the click event handler on the th so users + // dont have to click on those tiny arrows + el = getNthColumn(i).querySelector('.sorter').parentElement; + if (el.addEventListener) { + el.addEventListener('click', ithSorter(i)); + } else { + el.attachEvent('onclick', ithSorter(i)); + } + } + } + } + // adds sorting functionality to the UI + return function() { + if (!getTable()) { + return; + } + cols = loadColumns(); + loadData(); + addSortIndicators(); + enableUI(); + }; +})(); + +window.addEventListener('load', addSorting); diff --git a/coverage/tmp/coverage-15912-1615080010033-0.json b/coverage/tmp/coverage-15912-1615080010033-0.json new file mode 100644 index 0000000..661eb03 --- /dev/null +++ b/coverage/tmp/coverage-15912-1615080010033-0.json @@ -0,0 +1 @@ +{"result":[{"scriptId":"6","url":"internal/per_context/primordials.js","functions":[{"functionName":"uncurryThis","ranges":[{"startOffset":1021,"endOffset":1119,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1060,"endOffset":1115,"count":1464406}],"isBlockCoverage":true}]},{"scriptId":"9","url":"internal/bootstrap/loaders.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10639,"count":1}],"isBlockCoverage":true},{"functionName":"binding","ranges":[{"startOffset":3766,"endOffset":4172,"count":0}],"isBlockCoverage":false},{"functionName":"_linkedBinding","ranges":[{"startOffset":4204,"endOffset":4418,"count":0}],"isBlockCoverage":false},{"functionName":"internalBinding","ranges":[{"startOffset":4606,"endOffset":4875,"count":190},{"startOffset":4710,"endOffset":4853,"count":41}],"isBlockCoverage":true},{"functionName":"getOwn","ranges":[{"startOffset":5029,"endOffset":5187,"count":888},{"startOffset":5167,"endOffset":5183,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5566,"endOffset":5666,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5626,"endOffset":5660,"count":229}],"isBlockCoverage":true},{"functionName":"NativeModule","ranges":[{"startOffset":5673,"endOffset":6448,"count":229}],"isBlockCoverage":true},{"functionName":"exposeInternals","ranges":[{"startOffset":6602,"endOffset":6835,"count":0}],"isBlockCoverage":false},{"functionName":"exists","ranges":[{"startOffset":6848,"endOffset":6903,"count":58}],"isBlockCoverage":true},{"functionName":"canBeRequiredByUsers","ranges":[{"startOffset":6916,"endOffset":7035,"count":235},{"startOffset":7002,"endOffset":7029,"count":21}],"isBlockCoverage":true},{"functionName":"compileForPublicLoader","ranges":[{"startOffset":7110,"endOffset":7820,"count":20},{"startOffset":7174,"endOffset":7370,"count":0},{"startOffset":7436,"endOffset":7738,"count":12},{"startOffset":7699,"endOffset":7703,"count":0}],"isBlockCoverage":true},{"functionName":"getESMFacade","ranges":[{"startOffset":7826,"endOffset":8392,"count":21},{"startOffset":7865,"endOffset":7884,"count":9},{"startOffset":7884,"endOffset":8391,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8111,"endOffset":8227,"count":12}],"isBlockCoverage":true},{"functionName":"syncExports","ranges":[{"startOffset":8694,"endOffset":9048,"count":32},{"startOffset":8816,"endOffset":9036,"count":888},{"startOffset":8895,"endOffset":8904,"count":0}],"isBlockCoverage":true},{"functionName":"compileForInternalLoader","ranges":[{"startOffset":9054,"endOffset":9661,"count":622},{"startOffset":9104,"endOffset":9119,"count":122},{"startOffset":9121,"endOffset":9157,"count":506},{"startOffset":9157,"endOffset":9302,"count":116},{"startOffset":9302,"endOffset":9338,"count":1},{"startOffset":9339,"endOffset":9360,"count":115},{"startOffset":9520,"endOffset":9660,"count":116}],"isBlockCoverage":true},{"functionName":"nativeModuleRequire","ranges":[{"startOffset":9870,"endOffset":10251,"count":607},{"startOffset":9929,"endOffset":9962,"count":5},{"startOffset":9962,"endOffset":10151,"count":602},{"startOffset":10151,"endOffset":10206,"count":0},{"startOffset":10206,"endOffset":10250,"count":602}],"isBlockCoverage":true},{"functionName":"requireWithFallbackInDeps","ranges":[{"startOffset":10371,"endOffset":10548,"count":0}],"isBlockCoverage":false}]},{"scriptId":"10","url":"internal/bootstrap/node.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12978,"count":1},{"startOffset":3667,"endOffset":3881,"count":0}],"isBlockCoverage":true},{"functionName":"process.openStdin","ranges":[{"startOffset":3489,"endOffset":3562,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6320,"endOffset":6486,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6591,"endOffset":6770,"count":0}],"isBlockCoverage":false},{"functionName":"setupPrepareStackTrace","ranges":[{"startOffset":9634,"endOffset":10237,"count":1}],"isBlockCoverage":true},{"functionName":"setupProcessObject","ranges":[{"startOffset":10241,"endOffset":10864,"count":1}],"isBlockCoverage":true},{"functionName":"setupGlobalProxy","ranges":[{"startOffset":10868,"endOffset":11052,"count":1}],"isBlockCoverage":true},{"functionName":"setupBuffer","ranges":[{"startOffset":11056,"endOffset":11507,"count":1}],"isBlockCoverage":true},{"functionName":"createGlobalConsole","ranges":[{"startOffset":11511,"endOffset":12207,"count":1}],"isBlockCoverage":true},{"functionName":"exposeNamespace","ranges":[{"startOffset":12262,"endOffset":12467,"count":1}],"isBlockCoverage":true},{"functionName":"exposeInterface","ranges":[{"startOffset":12522,"endOffset":12727,"count":4}],"isBlockCoverage":true},{"functionName":"defineOperation","ranges":[{"startOffset":12790,"endOffset":12976,"count":7}],"isBlockCoverage":true}]},{"scriptId":"11","url":"internal/errors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":54592,"count":1}],"isBlockCoverage":false},{"functionName":"prepareStackTrace","ranges":[{"startOffset":1462,"endOffset":2201,"count":486155},{"startOffset":1642,"endOffset":1762,"count":0},{"startOffset":1893,"endOffset":1915,"count":1},{"startOffset":1915,"endOffset":2104,"count":486154},{"startOffset":2104,"endOffset":2135,"count":0},{"startOffset":2135,"endOffset":2200,"count":486154}],"isBlockCoverage":true},{"functionName":"maybeOverridePrepareStackTrace","ranges":[{"startOffset":2245,"endOffset":2968,"count":486155},{"startOffset":2519,"endOffset":2587,"count":1},{"startOffset":2587,"endOffset":2872,"count":486154},{"startOffset":2872,"endOffset":2940,"count":0},{"startOffset":2940,"endOffset":2967,"count":486154}],"isBlockCoverage":true},{"functionName":"lazyInternalUtil","ranges":[{"startOffset":3067,"endOffset":3198,"count":0}],"isBlockCoverage":false},{"functionName":"lazyInternalUtilInspect","ranges":[{"startOffset":3235,"endOffset":3402,"count":485996},{"startOffset":3301,"endOffset":3368,"count":1}],"isBlockCoverage":true},{"functionName":"lazyBuffer","ranges":[{"startOffset":3419,"endOffset":3532,"count":0}],"isBlockCoverage":false},{"functionName":"SystemError","ranges":[{"startOffset":4045,"endOffset":6675,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":6681,"endOffset":6758,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6764,"endOffset":6959,"count":0}],"isBlockCoverage":false},{"functionName":"makeSystemErrorWithCode","ranges":[{"startOffset":6966,"endOffset":7117,"count":4}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":7059,"endOffset":7108,"count":0}],"isBlockCoverage":false},{"functionName":"makeNodeErrorWithCode","ranges":[{"startOffset":7121,"endOffset":7903,"count":232}],"isBlockCoverage":true},{"functionName":"NodeError","ranges":[{"startOffset":7211,"endOffset":7811,"count":486136},{"startOffset":7276,"endOffset":7304,"count":140},{"startOffset":7304,"endOffset":7519,"count":485996}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":7819,"endOffset":7894,"count":0}],"isBlockCoverage":false},{"functionName":"hideStackFrames","ranges":[{"startOffset":7978,"endOffset":8405,"count":30}],"isBlockCoverage":true},{"functionName":"hidden","ranges":[{"startOffset":8019,"endOffset":8401,"count":974451},{"startOffset":8186,"endOffset":8253,"count":487629},{"startOffset":8341,"endOffset":8389,"count":487629}],"isBlockCoverage":true},{"functionName":"addCodeToName","ranges":[{"startOffset":8409,"endOffset":9046,"count":486136},{"startOffset":8509,"endOffset":8566,"count":485996},{"startOffset":8858,"endOffset":9009,"count":0}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":9162,"endOffset":9686,"count":233},{"startOffset":9408,"endOffset":9455,"count":4},{"startOffset":9455,"endOffset":9511,"count":229},{"startOffset":9548,"endOffset":9662,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9576,"endOffset":9655,"count":3}],"isBlockCoverage":true},{"functionName":"getMessage","ranges":[{"startOffset":9690,"endOffset":10519,"count":486136},{"startOffset":9794,"endOffset":9830,"count":1},{"startOffset":10130,"endOffset":10190,"count":0},{"startOffset":10419,"endOffset":10518,"count":0}],"isBlockCoverage":true},{"functionName":"lazyUv","ranges":[{"startOffset":10541,"endOffset":10650,"count":29},{"startOffset":10580,"endOffset":10626,"count":1}],"isBlockCoverage":true},{"functionName":"uvErrmapGet","ranges":[{"startOffset":10711,"endOffset":10887,"count":29},{"startOffset":10791,"endOffset":10846,"count":1}],"isBlockCoverage":true},{"functionName":"uvException","ranges":[{"startOffset":11192,"endOffset":12431,"count":29},{"startOffset":11270,"endOffset":11288,"count":0},{"startOffset":11491,"endOffset":11563,"count":0},{"startOffset":12116,"endOffset":12243,"count":87},{"startOffset":12165,"endOffset":12183,"count":58},{"startOffset":12185,"endOffset":12210,"count":29},{"startOffset":12210,"endOffset":12243,"count":58},{"startOffset":12321,"endOffset":12349,"count":0}],"isBlockCoverage":true},{"functionName":"uvExceptionWithHostPort","ranges":[{"startOffset":12757,"endOffset":13691,"count":0}],"isBlockCoverage":false},{"functionName":"errnoException","ranges":[{"startOffset":13880,"endOffset":14603,"count":0}],"isBlockCoverage":false},{"functionName":"exceptionWithHostPort","ranges":[{"startOffset":14969,"endOffset":16220,"count":0}],"isBlockCoverage":false},{"functionName":"dnsException","ranges":[{"startOffset":16392,"endOffset":17944,"count":0}],"isBlockCoverage":false},{"functionName":"connResetException","ranges":[{"startOffset":17948,"endOffset":18108,"count":0}],"isBlockCoverage":false},{"functionName":"isStackOverflowError","ranges":[{"startOffset":18410,"endOffset":18801,"count":0}],"isBlockCoverage":false},{"functionName":"addNumericalSeparator","ranges":[{"startOffset":18885,"endOffset":19129,"count":0}],"isBlockCoverage":false},{"functionName":"beforeInspector","ranges":[{"startOffset":19416,"endOffset":19820,"count":0}],"isBlockCoverage":false},{"functionName":"afterInspector","ranges":[{"startOffset":19825,"endOffset":21199,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":23018,"endOffset":23187,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26081,"endOffset":26199,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26493,"endOffset":26590,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":28916,"endOffset":29151,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":30917,"endOffset":31143,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":32926,"endOffset":33232,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":33275,"endOffset":33423,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":33468,"endOffset":36777,"count":485996},{"startOffset":33598,"endOffset":33636,"count":0},{"startOffset":33699,"endOffset":33775,"count":0},{"startOffset":33822,"endOffset":33834,"count":0},{"startOffset":34028,"endOffset":34456,"count":1457988},{"startOffset":34171,"endOffset":34223,"count":485996},{"startOffset":34223,"endOffset":34449,"count":971992},{"startOffset":34300,"endOffset":34449,"count":0},{"startOffset":34682,"endOffset":34758,"count":0},{"startOffset":34826,"endOffset":34934,"count":0},{"startOffset":34964,"endOffset":35032,"count":0},{"startOffset":35120,"endOffset":35139,"count":0},{"startOffset":35240,"endOffset":35359,"count":0},{"startOffset":35555,"endOffset":35569,"count":0},{"startOffset":35606,"endOffset":35962,"count":0},{"startOffset":35990,"endOffset":36036,"count":0},{"startOffset":36075,"endOffset":36089,"count":0},{"startOffset":36091,"endOffset":36151,"count":0},{"startOffset":36189,"endOffset":36494,"count":0},{"startOffset":36640,"endOffset":36683,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":36819,"endOffset":37081,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":37482,"endOffset":37651,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38325,"endOffset":38463,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38505,"endOffset":38835,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":38997,"endOffset":39148,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":39194,"endOffset":39982,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40369,"endOffset":40536,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40590,"endOffset":40930,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40975,"endOffset":41291,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":41669,"endOffset":41747,"count":140}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":41793,"endOffset":42089,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":42423,"endOffset":42867,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43560,"endOffset":44101,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":44197,"endOffset":44300,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45018,"endOffset":45734,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":45786,"endOffset":45981,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":46031,"endOffset":46353,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":46388,"endOffset":47283,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":47744,"endOffset":48008,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":49385,"endOffset":49559,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":51496,"endOffset":51631,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":52235,"endOffset":52526,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":53525,"endOffset":53624,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":53823,"endOffset":54187,"count":0}],"isBlockCoverage":false}]},{"scriptId":"12","url":"internal/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12740,"count":1}],"isBlockCoverage":false},{"functionName":"removeColors","ranges":[{"startOffset":1021,"endOffset":1092,"count":3}],"isBlockCoverage":true},{"functionName":"isError","ranges":[{"startOffset":1096,"endOffset":1351,"count":11},{"startOffset":1326,"endOffset":1347,"count":3}],"isBlockCoverage":true},{"functionName":"deprecate","ranges":[{"startOffset":1645,"endOffset":2779,"count":24},{"startOffset":1720,"endOffset":1742,"count":0},{"startOffset":1805,"endOffset":1860,"count":0},{"startOffset":2525,"endOffset":2752,"count":23}],"isBlockCoverage":true},{"functionName":"deprecated","ranges":[{"startOffset":1889,"endOffset":2379,"count":0}],"isBlockCoverage":false},{"functionName":"decorateErrorStack","ranges":[{"startOffset":2783,"endOffset":3133,"count":0}],"isBlockCoverage":false},{"functionName":"assertCrypto","ranges":[{"startOffset":3137,"endOffset":3214,"count":4},{"startOffset":3185,"endOffset":3211,"count":0}],"isBlockCoverage":true},{"functionName":"normalizeEncoding","ranges":[{"startOffset":3398,"endOffset":3532,"count":40},{"startOffset":3469,"endOffset":3487,"count":0},{"startOffset":3503,"endOffset":3531,"count":0}],"isBlockCoverage":true},{"functionName":"slowCases","ranges":[{"startOffset":3536,"endOffset":5162,"count":0}],"isBlockCoverage":false},{"functionName":"emitExperimentalWarning","ranges":[{"startOffset":5166,"endOffset":5460,"count":0}],"isBlockCoverage":false},{"functionName":"filterDuplicateStrings","ranges":[{"startOffset":5464,"endOffset":5784,"count":0}],"isBlockCoverage":false},{"functionName":"cachedResult","ranges":[{"startOffset":5788,"endOffset":5938,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5841,"endOffset":5934,"count":0}],"isBlockCoverage":false},{"functionName":"createClassWrapper","ranges":[{"startOffset":6211,"endOffset":6588,"count":0}],"isBlockCoverage":false},{"functionName":"getSignalsToNamesMapping","ranges":[{"startOffset":6620,"endOffset":6908,"count":0}],"isBlockCoverage":false},{"functionName":"convertToValidSignal","ranges":[{"startOffset":6912,"endOffset":7229,"count":0}],"isBlockCoverage":false},{"functionName":"getConstructorOf","ranges":[{"startOffset":7233,"endOffset":7592,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7596,"endOffset":7728,"count":0}],"isBlockCoverage":false},{"functionName":"promisify","ranges":[{"startOffset":7878,"endOffset":9394,"count":3},{"startOffset":7953,"endOffset":8018,"count":0},{"startOffset":8064,"endOffset":8393,"count":0}],"isBlockCoverage":true},{"functionName":"fn","ranges":[{"startOffset":8599,"endOffset":9096,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":9494,"endOffset":9828,"count":3},{"startOffset":9659,"endOffset":9774,"count":8}],"isBlockCoverage":true},{"functionName":"spliceOne","ranges":[{"startOffset":9973,"endOffset":10104,"count":142},{"startOffset":10056,"endOffset":10086,"count":71}],"isBlockCoverage":true},{"functionName":"isInsideNodeModules","ranges":[{"startOffset":10192,"endOffset":11396,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":11400,"endOffset":11565,"count":24}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11459,"endOffset":11561,"count":24},{"startOffset":11496,"endOffset":11503,"count":0}],"isBlockCoverage":true},{"functionName":"sleep","ranges":[{"startOffset":11592,"endOffset":11814,"count":0}],"isBlockCoverage":false}]},{"scriptId":"13","url":"events.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":23141,"count":1}],"isBlockCoverage":false},{"functionName":"EventEmitter","ranges":[{"startOffset":1914,"endOffset":1985,"count":193}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2308,"endOffset":2366,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":2371,"endOffset":2612,"count":0}],"isBlockCoverage":false},{"functionName":"checkListener","ranges":[{"startOffset":3186,"endOffset":3340,"count":2485},{"startOffset":3260,"endOffset":3337,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3433,"endOffset":3483,"count":309}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3493,"endOffset":3775,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.init","ranges":[{"startOffset":3804,"endOffset":4556,"count":193},{"startOffset":3857,"endOffset":3918,"count":95},{"startOffset":3920,"endOffset":3994,"count":98},{"startOffset":4070,"endOffset":4095,"count":120},{"startOffset":4097,"endOffset":4362,"count":0}],"isBlockCoverage":true},{"functionName":"addCatch","ranges":[{"startOffset":4561,"endOffset":5140,"count":23},{"startOffset":4651,"endOffset":5083,"count":0},{"startOffset":5089,"endOffset":5137,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4860,"endOffset":5074,"count":0}],"isBlockCoverage":false},{"functionName":"emitUnhandledRejectionOrErr","ranges":[{"startOffset":5144,"endOffset":5821,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxListeners","ranges":[{"startOffset":5996,"endOffset":6201,"count":0}],"isBlockCoverage":false},{"functionName":"_getMaxListeners","ranges":[{"startOffset":6206,"endOffset":6359,"count":309},{"startOffset":6326,"endOffset":6358,"count":0}],"isBlockCoverage":true},{"functionName":"getMaxListeners","ranges":[{"startOffset":6404,"endOffset":6469,"count":0}],"isBlockCoverage":false},{"functionName":"identicalSequenceRange","ranges":[{"startOffset":6601,"endOffset":7198,"count":0}],"isBlockCoverage":false},{"functionName":"enhanceStackTrace","ranges":[{"startOffset":7202,"endOffset":7827,"count":0}],"isBlockCoverage":false},{"functionName":"emit","ranges":[{"startOffset":7861,"endOffset":10221,"count":2713},{"startOffset":8011,"endOffset":8049,"count":0},{"startOffset":8058,"endOffset":8092,"count":0},{"startOffset":8117,"endOffset":8146,"count":0},{"startOffset":8153,"endOffset":8191,"count":0},{"startOffset":8266,"endOffset":9229,"count":0},{"startOffset":9302,"endOffset":9315,"count":496},{"startOffset":9315,"endOffset":9356,"count":2217},{"startOffset":9356,"endOffset":9654,"count":2050},{"startOffset":9578,"endOffset":9596,"count":23},{"startOffset":9598,"endOffset":9649,"count":23},{"startOffset":9654,"endOffset":10200,"count":167},{"startOffset":9774,"endOffset":10195,"count":429},{"startOffset":10113,"endOffset":10131,"count":0},{"startOffset":10133,"endOffset":10188,"count":0},{"startOffset":10200,"endOffset":10220,"count":2217}],"isBlockCoverage":true},{"functionName":"_addListener","ranges":[{"startOffset":10226,"endOffset":12341,"count":1211},{"startOffset":10414,"endOffset":10501,"count":25},{"startOffset":10501,"endOffset":11011,"count":1186},{"startOffset":10689,"endOffset":10976,"count":460},{"startOffset":10768,"endOffset":10787,"count":119},{"startOffset":10788,"endOffset":10798,"count":341},{"startOffset":11045,"endOffset":11187,"count":902},{"startOffset":11187,"endOffset":12318,"count":309},{"startOffset":11236,"endOffset":11457,"count":167},{"startOffset":11350,"endOffset":11372,"count":24},{"startOffset":11373,"endOffset":11395,"count":143},{"startOffset":11457,"endOffset":11565,"count":142},{"startOffset":11476,"endOffset":11519,"count":0},{"startOffset":11673,"endOffset":11692,"count":0},{"startOffset":11694,"endOffset":12313,"count":0}],"isBlockCoverage":true},{"functionName":"addListener","ranges":[{"startOffset":12382,"endOffset":12476,"count":1142}],"isBlockCoverage":true},{"functionName":"prependListener","ranges":[{"startOffset":12594,"endOffset":12699,"count":69}],"isBlockCoverage":true},{"functionName":"onceWrapper","ranges":[{"startOffset":12704,"endOffset":12976,"count":256},{"startOffset":12872,"endOffset":12911,"count":208},{"startOffset":12911,"endOffset":12973,"count":48}],"isBlockCoverage":true},{"functionName":"_onceWrap","ranges":[{"startOffset":12980,"endOffset":13227,"count":395}],"isBlockCoverage":true},{"functionName":"once","ranges":[{"startOffset":13261,"endOffset":13392,"count":395}],"isBlockCoverage":true},{"functionName":"prependOnceListener","ranges":[{"startOffset":13447,"endOffset":13622,"count":0}],"isBlockCoverage":false},{"functionName":"removeListener","ranges":[{"startOffset":13748,"endOffset":15090,"count":879},{"startOffset":13902,"endOffset":13914,"count":0},{"startOffset":13991,"endOffset":14003,"count":134},{"startOffset":14003,"endOffset":14035,"count":745},{"startOffset":14035,"endOffset":14064,"count":422},{"startOffset":14066,"endOffset":14334,"count":462},{"startOffset":14119,"endOffset":14153,"count":0},{"startOffset":14253,"endOffset":14314,"count":0},{"startOffset":14334,"endOffset":15061,"count":283},{"startOffset":14372,"endOffset":15061,"count":237},{"startOffset":14456,"endOffset":14600,"count":474},{"startOffset":14494,"endOffset":14526,"count":237},{"startOffset":14528,"endOffset":14589,"count":237},{"startOffset":14641,"endOffset":14653,"count":0},{"startOffset":14696,"endOffset":14709,"count":95},{"startOffset":14709,"endOffset":14875,"count":142},{"startOffset":14779,"endOffset":14826,"count":1},{"startOffset":14921,"endOffset":14944,"count":119},{"startOffset":15008,"endOffset":15052,"count":0},{"startOffset":15061,"endOffset":15089,"count":745}],"isBlockCoverage":true},{"functionName":"removeAllListeners","ranges":[{"startOffset":15215,"endOffset":16584,"count":1},{"startOffset":15329,"endOffset":15341,"count":0},{"startOffset":15491,"endOffset":15583,"count":0},{"startOffset":15621,"endOffset":15773,"count":0},{"startOffset":15804,"endOffset":16583,"count":0}],"isBlockCoverage":true},{"functionName":"_listeners","ranges":[{"startOffset":16589,"endOffset":16999,"count":0}],"isBlockCoverage":false},{"functionName":"listeners","ranges":[{"startOffset":17038,"endOffset":17107,"count":0}],"isBlockCoverage":false},{"functionName":"rawListeners","ranges":[{"startOffset":17150,"endOffset":17223,"count":0}],"isBlockCoverage":false},{"functionName":"EventEmitter.listenerCount","ranges":[{"startOffset":17257,"endOffset":17430,"count":4},{"startOffset":17382,"endOffset":17429,"count":0}],"isBlockCoverage":true},{"functionName":"listenerCount","ranges":[{"startOffset":17490,"endOffset":17794,"count":1613},{"startOffset":17669,"endOffset":17694,"count":1427},{"startOffset":17694,"endOffset":17771,"count":186},{"startOffset":17730,"endOffset":17771,"count":0},{"startOffset":17776,"endOffset":17793,"count":186}],"isBlockCoverage":true},{"functionName":"eventNames","ranges":[{"startOffset":17834,"endOffset":17929,"count":0}],"isBlockCoverage":false},{"functionName":"arrayClone","ranges":[{"startOffset":17934,"endOffset":18405,"count":167},{"startOffset":18110,"endOffset":18142,"count":96},{"startOffset":18148,"endOffset":18188,"count":47},{"startOffset":18194,"endOffset":18242,"count":24},{"startOffset":18248,"endOffset":18304,"count":0},{"startOffset":18310,"endOffset":18374,"count":0},{"startOffset":18379,"endOffset":18404,"count":0}],"isBlockCoverage":true},{"functionName":"unwrapListeners","ranges":[{"startOffset":18409,"endOffset":18631,"count":0}],"isBlockCoverage":false},{"functionName":"once","ranges":[{"startOffset":18635,"endOffset":19217,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":19298,"endOffset":19319,"count":0}],"isBlockCoverage":false},{"functionName":"createIterResult","ranges":[{"startOffset":19336,"endOffset":19406,"count":0}],"isBlockCoverage":false},{"functionName":"addErrorHandlerIfEventEmitter","ranges":[{"startOffset":19410,"endOffset":19597,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticRemoveListener","ranges":[{"startOffset":19601,"endOffset":19994,"count":0}],"isBlockCoverage":false},{"functionName":"eventTargetAgnosticAddListener","ranges":[{"startOffset":19998,"endOffset":20601,"count":0}],"isBlockCoverage":false},{"functionName":"on","ranges":[{"startOffset":20605,"endOffset":23139,"count":0}],"isBlockCoverage":false}]},{"scriptId":"14","url":"internal/util/inspect.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":73524,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3043,"endOffset":3079,"count":62}],"isBlockCoverage":true},{"functionName":"isUndetectableObject","ranges":[{"startOffset":3174,"endOffset":3224,"count":486007},{"startOffset":3206,"endOffset":3224,"count":0}],"isBlockCoverage":true},{"functionName":"getUserOptions","ranges":[{"startOffset":6445,"endOffset":7939,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":8244,"endOffset":10215,"count":486007},{"startOffset":9055,"endOffset":9258,"count":0},{"startOffset":9330,"endOffset":9368,"count":0},{"startOffset":9730,"endOffset":9761,"count":0},{"startOffset":9808,"endOffset":9966,"count":0},{"startOffset":10007,"endOffset":10038,"count":11},{"startOffset":10075,"endOffset":10105,"count":0},{"startOffset":10143,"endOffset":10174,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":10311,"endOffset":10358,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":10363,"endOffset":10576,"count":0}],"isBlockCoverage":false},{"functionName":"defineColorAlias","ranges":[{"startOffset":12369,"endOffset":12622,"count":12}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":12466,"endOffset":12508,"count":10}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":12515,"endOffset":12563,"count":0}],"isBlockCoverage":false},{"functionName":"addQuotes","ranges":[{"startOffset":13665,"endOffset":13831,"count":11},{"startOffset":13721,"endOffset":13751,"count":0},{"startOffset":13774,"endOffset":13806,"count":0}],"isBlockCoverage":true},{"functionName":"escapeFn","ranges":[{"startOffset":13852,"endOffset":13884,"count":0}],"isBlockCoverage":false},{"functionName":"strEscape","ranges":[{"startOffset":14001,"endOffset":15680,"count":11},{"startOffset":14433,"endOffset":14827,"count":0},{"startOffset":14998,"endOffset":15679,"count":0}],"isBlockCoverage":true},{"functionName":"stylizeWithColor","ranges":[{"startOffset":15684,"endOffset":15958,"count":36},{"startOffset":15800,"endOffset":15940,"count":25},{"startOffset":15940,"endOffset":15957,"count":11}],"isBlockCoverage":true},{"functionName":"stylizeNoColor","ranges":[{"startOffset":15962,"endOffset":16010,"count":485996}],"isBlockCoverage":true},{"functionName":"getEmptyFormatArray","ranges":[{"startOffset":16092,"endOffset":16141,"count":3}],"isBlockCoverage":true},{"functionName":"getConstructorName","ranges":[{"startOffset":16145,"endOffset":17447,"count":11},{"startOffset":16264,"endOffset":16292,"count":0},{"startOffset":16294,"endOffset":16940,"count":22},{"startOffset":16406,"endOffset":16456,"count":11},{"startOffset":16457,"endOffset":16497,"count":11},{"startOffset":16498,"endOffset":16541,"count":11},{"startOffset":16543,"endOffset":16826,"count":11},{"startOffset":16581,"endOffset":16670,"count":0},{"startOffset":16672,"endOffset":16782,"count":0},{"startOffset":16826,"endOffset":16935,"count":11},{"startOffset":16940,"endOffset":17101,"count":0},{"startOffset":17103,"endOffset":17446,"count":0}],"isBlockCoverage":true},{"functionName":"addPrototypeProperties","ranges":[{"startOffset":17639,"endOffset":19537,"count":0}],"isBlockCoverage":false},{"functionName":"getPrefix","ranges":[{"startOffset":19541,"endOffset":19920,"count":11},{"startOffset":19630,"endOffset":19783,"count":0},{"startOffset":19804,"endOffset":19826,"count":0},{"startOffset":19828,"endOffset":19881,"count":0}],"isBlockCoverage":true},{"functionName":"getKeys","ranges":[{"startOffset":19960,"endOffset":20928,"count":11},{"startOffset":20085,"endOffset":20198,"count":0},{"startOffset":20555,"endOffset":20739,"count":0},{"startOffset":20771,"endOffset":20904,"count":0}],"isBlockCoverage":true},{"functionName":"filter","ranges":[{"startOffset":20795,"endOffset":20851,"count":0}],"isBlockCoverage":false},{"functionName":"getCtxStyle","ranges":[{"startOffset":20932,"endOffset":21204,"count":1},{"startOffset":21031,"endOffset":21152,"count":0}],"isBlockCoverage":true},{"functionName":"formatProxy","ranges":[{"startOffset":21208,"endOffset":21670,"count":0}],"isBlockCoverage":false},{"functionName":"findTypedConstructor","ranges":[{"startOffset":21674,"endOffset":22215,"count":0}],"isBlockCoverage":false},{"functionName":"formatValue","ranges":[{"startOffset":22402,"endOffset":25008,"count":486018},{"startOffset":22542,"endOffset":22579,"count":486007},{"startOffset":22580,"endOffset":22618,"count":486007},{"startOffset":22620,"endOffset":22680,"count":486007},{"startOffset":22680,"endOffset":22704,"count":11},{"startOffset":22704,"endOffset":22751,"count":0},{"startOffset":22751,"endOffset":23034,"count":11},{"startOffset":23034,"endOffset":23146,"count":0},{"startOffset":23146,"endOffset":24391,"count":11},{"startOffset":23400,"endOffset":23508,"count":0},{"startOffset":23509,"endOffset":23658,"count":0},{"startOffset":23660,"endOffset":24386,"count":0},{"startOffset":24391,"endOffset":24585,"count":11},{"startOffset":24585,"endOffset":24944,"count":0},{"startOffset":24944,"endOffset":25007,"count":11}],"isBlockCoverage":true},{"functionName":"formatRaw","ranges":[{"startOffset":25012,"endOffset":35716,"count":11},{"startOffset":25125,"endOffset":25177,"count":0},{"startOffset":25179,"endOffset":25207,"count":0},{"startOffset":25376,"endOffset":25402,"count":0},{"startOffset":25404,"endOffset":25439,"count":0},{"startOffset":25626,"endOffset":25807,"count":0},{"startOffset":25977,"endOffset":25993,"count":0},{"startOffset":26305,"endOffset":29200,"count":0},{"startOffset":29327,"endOffset":29621,"count":0},{"startOffset":29660,"endOffset":29828,"count":0},{"startOffset":29855,"endOffset":30328,"count":0},{"startOffset":30353,"endOffset":30794,"count":0},{"startOffset":30820,"endOffset":30971,"count":10},{"startOffset":30914,"endOffset":30941,"count":8},{"startOffset":30952,"endOffset":30964,"count":8},{"startOffset":30971,"endOffset":33178,"count":1},{"startOffset":31006,"endOffset":31686,"count":0},{"startOffset":31715,"endOffset":31915,"count":0},{"startOffset":31943,"endOffset":32050,"count":0},{"startOffset":32078,"endOffset":32225,"count":0},{"startOffset":32253,"endOffset":32400,"count":0},{"startOffset":32442,"endOffset":32595,"count":0},{"startOffset":32630,"endOffset":32793,"count":0},{"startOffset":32830,"endOffset":32857,"count":0},{"startOffset":32859,"endOffset":33108,"count":0},{"startOffset":33183,"endOffset":33218,"count":3},{"startOffset":33218,"endOffset":33239,"count":0},{"startOffset":33241,"endOffset":33458,"count":0},{"startOffset":33458,"endOffset":33704,"count":3},{"startOffset":33805,"endOffset":33841,"count":3},{"startOffset":33841,"endOffset":33884,"count":0},{"startOffset":33890,"endOffset":34067,"count":0},{"startOffset":34067,"endOffset":34103,"count":3},{"startOffset":34103,"endOffset":34504,"count":0},{"startOffset":34504,"endOffset":34545,"count":3},{"startOffset":34545,"endOffset":34900,"count":0},{"startOffset":34900,"endOffset":35059,"count":3},{"startOffset":35671,"endOffset":35698,"count":0},{"startOffset":35698,"endOffset":35715,"count":3}],"isBlockCoverage":true},{"functionName":"getIteratorBraces","ranges":[{"startOffset":35720,"endOffset":35909,"count":0}],"isBlockCoverage":false},{"functionName":"getBoxedBase","ranges":[{"startOffset":35913,"endOffset":37125,"count":0}],"isBlockCoverage":false},{"functionName":"getClassBase","ranges":[{"startOffset":37129,"endOffset":37748,"count":0}],"isBlockCoverage":false},{"functionName":"getFunctionBase","ranges":[{"startOffset":37752,"endOffset":38881,"count":0}],"isBlockCoverage":false},{"functionName":"formatError","ranges":[{"startOffset":38885,"endOffset":42088,"count":10},{"startOffset":38994,"endOffset":39003,"count":0},{"startOffset":39076,"endOffset":39105,"count":0},{"startOffset":39253,"endOffset":39533,"count":6},{"startOffset":39309,"endOffset":39528,"count":18},{"startOffset":39449,"endOffset":39477,"count":6},{"startOffset":39479,"endOffset":39521,"count":6},{"startOffset":39824,"endOffset":39846,"count":0},{"startOffset":39912,"endOffset":40165,"count":0},{"startOffset":40264,"endOffset":40540,"count":3},{"startOffset":40326,"endOffset":40380,"count":0},{"startOffset":40458,"endOffset":40533,"count":0},{"startOffset":40666,"endOffset":40671,"count":0},{"startOffset":40868,"endOffset":40901,"count":0},{"startOffset":41114,"endOffset":41827,"count":58},{"startOffset":41224,"endOffset":41294,"count":10},{"startOffset":41294,"endOffset":41820,"count":48},{"startOffset":41515,"endOffset":41754,"count":4},{"startOffset":41786,"endOffset":41792,"count":44},{"startOffset":41793,"endOffset":41810,"count":4},{"startOffset":41950,"endOffset":42068,"count":0}],"isBlockCoverage":true},{"functionName":"groupArrayElements","ranges":[{"startOffset":42092,"endOffset":46451,"count":0}],"isBlockCoverage":false},{"functionName":"handleMaxCallStackSize","ranges":[{"startOffset":46455,"endOffset":46818,"count":0}],"isBlockCoverage":false},{"functionName":"formatNumber","ranges":[{"startOffset":46822,"endOffset":47002,"count":485996},{"startOffset":46968,"endOffset":46974,"count":0}],"isBlockCoverage":true},{"functionName":"formatBigInt","ranges":[{"startOffset":47006,"endOffset":47080,"count":0}],"isBlockCoverage":false},{"functionName":"formatPrimitive","ranges":[{"startOffset":47084,"endOffset":48297,"count":486007},{"startOffset":47161,"endOffset":47916,"count":11},{"startOffset":47231,"endOffset":47431,"count":0},{"startOffset":47607,"endOffset":47674,"count":0},{"startOffset":47676,"endOffset":47857,"count":0},{"startOffset":47916,"endOffset":47987,"count":485996},{"startOffset":47987,"endOffset":48296,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":47739,"endOffset":47778,"count":0}],"isBlockCoverage":false},{"functionName":"formatNamespaceObject","ranges":[{"startOffset":48301,"endOffset":49474,"count":0}],"isBlockCoverage":false},{"functionName":"formatSpecialArray","ranges":[{"startOffset":49524,"endOffset":50768,"count":0}],"isBlockCoverage":false},{"functionName":"formatArrayBuffer","ranges":[{"startOffset":50772,"endOffset":51387,"count":0}],"isBlockCoverage":false},{"functionName":"formatArray","ranges":[{"startOffset":51391,"endOffset":52001,"count":0}],"isBlockCoverage":false},{"functionName":"formatTypedArray","ranges":[{"startOffset":52005,"endOffset":53050,"count":0}],"isBlockCoverage":false},{"functionName":"formatSet","ranges":[{"startOffset":53054,"endOffset":53294,"count":0}],"isBlockCoverage":false},{"functionName":"formatMap","ranges":[{"startOffset":53298,"endOffset":53605,"count":0}],"isBlockCoverage":false},{"functionName":"formatSetIterInner","ranges":[{"startOffset":53609,"endOffset":54442,"count":0}],"isBlockCoverage":false},{"functionName":"formatMapIterInner","ranges":[{"startOffset":54446,"endOffset":55804,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakCollection","ranges":[{"startOffset":55808,"endOffset":55902,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakSet","ranges":[{"startOffset":55906,"endOffset":56066,"count":0}],"isBlockCoverage":false},{"functionName":"formatWeakMap","ranges":[{"startOffset":56070,"endOffset":56230,"count":0}],"isBlockCoverage":false},{"functionName":"formatIterator","ranges":[{"startOffset":56234,"endOffset":56634,"count":0}],"isBlockCoverage":false},{"functionName":"formatPromise","ranges":[{"startOffset":56638,"endOffset":57119,"count":0}],"isBlockCoverage":false},{"functionName":"formatProperty","ranges":[{"startOffset":57123,"endOffset":59516,"count":11},{"startOffset":57334,"endOffset":57381,"count":0},{"startOffset":57458,"endOffset":57481,"count":0},{"startOffset":57487,"endOffset":57490,"count":0},{"startOffset":57600,"endOffset":57652,"count":0},{"startOffset":57654,"endOffset":57716,"count":0},{"startOffset":57754,"endOffset":59006,"count":0},{"startOffset":59035,"endOffset":59058,"count":0},{"startOffset":59091,"endOffset":59223,"count":0},{"startOffset":59260,"endOffset":59336,"count":0},{"startOffset":59414,"endOffset":59477,"count":0}],"isBlockCoverage":true},{"functionName":"isBelowBreakLength","ranges":[{"startOffset":59520,"endOffset":60484,"count":3},{"startOffset":60082,"endOffset":60095,"count":2},{"startOffset":60095,"endOffset":60139,"count":1},{"startOffset":60224,"endOffset":60278,"count":0},{"startOffset":60319,"endOffset":60348,"count":1},{"startOffset":60353,"endOffset":60480,"count":0}],"isBlockCoverage":true},{"functionName":"reduceToSingleString","ranges":[{"startOffset":60488,"endOffset":63296,"count":3},{"startOffset":61003,"endOffset":61017,"count":0},{"startOffset":61019,"endOffset":61087,"count":0},{"startOffset":62165,"endOffset":62289,"count":0},{"startOffset":62440,"endOffset":62452,"count":2},{"startOffset":62453,"endOffset":62457,"count":1},{"startOffset":62567,"endOffset":63103,"count":0},{"startOffset":63104,"endOffset":63114,"count":0},{"startOffset":63115,"endOffset":63162,"count":0}],"isBlockCoverage":true},{"functionName":"hasBuiltInToString","ranges":[{"startOffset":63300,"endOffset":64349,"count":0}],"isBlockCoverage":false},{"functionName":"firstErrorLine","ranges":[{"startOffset":64376,"endOffset":64415,"count":0}],"isBlockCoverage":false},{"functionName":"tryStringify","ranges":[{"startOffset":64447,"endOffset":64934,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":64938,"endOffset":65024,"count":0}],"isBlockCoverage":false},{"functionName":"formatWithOptions","ranges":[{"startOffset":65028,"endOffset":65312,"count":103},{"startOffset":65152,"endOffset":65247,"count":0}],"isBlockCoverage":true},{"functionName":"formatWithOptionsInternal","ranges":[{"startOffset":65316,"endOffset":69220,"count":103},{"startOffset":65489,"endOffset":69013,"count":92},{"startOffset":65548,"endOffset":69008,"count":0},{"startOffset":69013,"endOffset":69202,"count":11},{"startOffset":69162,"endOffset":69169,"count":0},{"startOffset":69202,"endOffset":69219,"count":11}],"isBlockCoverage":true},{"functionName":"getStringWidth","ranges":[{"startOffset":69658,"endOffset":70225,"count":0}],"isBlockCoverage":false},{"functionName":"getStringWidth","ranges":[{"startOffset":70345,"endOffset":70773,"count":0}],"isBlockCoverage":false},{"functionName":"isFullWidthCodePoint","ranges":[{"startOffset":70947,"endOffset":72592,"count":0}],"isBlockCoverage":false},{"functionName":"isZeroWidthCodePoint","ranges":[{"startOffset":72628,"endOffset":73206,"count":0}],"isBlockCoverage":false},{"functionName":"stripVTControlCharacters","ranges":[{"startOffset":73302,"endOffset":73378,"count":0}],"isBlockCoverage":false}]},{"scriptId":"15","url":"internal/util/types.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1997,"count":1}],"isBlockCoverage":false},{"functionName":"isTypedArray","ranges":[{"startOffset":443,"endOffset":536,"count":0}],"isBlockCoverage":false},{"functionName":"isUint8Array","ranges":[{"startOffset":540,"endOffset":636,"count":486965}],"isBlockCoverage":true},{"functionName":"isUint8ClampedArray","ranges":[{"startOffset":640,"endOffset":750,"count":0}],"isBlockCoverage":false},{"functionName":"isUint16Array","ranges":[{"startOffset":754,"endOffset":852,"count":0}],"isBlockCoverage":false},{"functionName":"isUint32Array","ranges":[{"startOffset":856,"endOffset":954,"count":0}],"isBlockCoverage":false},{"functionName":"isInt8Array","ranges":[{"startOffset":958,"endOffset":1052,"count":0}],"isBlockCoverage":false},{"functionName":"isInt16Array","ranges":[{"startOffset":1056,"endOffset":1152,"count":0}],"isBlockCoverage":false},{"functionName":"isInt32Array","ranges":[{"startOffset":1156,"endOffset":1252,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat32Array","ranges":[{"startOffset":1256,"endOffset":1356,"count":0}],"isBlockCoverage":false},{"functionName":"isFloat64Array","ranges":[{"startOffset":1360,"endOffset":1460,"count":0}],"isBlockCoverage":false},{"functionName":"isBigInt64Array","ranges":[{"startOffset":1464,"endOffset":1566,"count":0}],"isBlockCoverage":false},{"functionName":"isBigUint64Array","ranges":[{"startOffset":1570,"endOffset":1674,"count":159}],"isBlockCoverage":true}]},{"scriptId":"16","url":"internal/assert.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":499,"count":1}],"isBlockCoverage":false},{"functionName":"lazyError","ranges":[{"startOffset":29,"endOffset":163,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":167,"endOffset":322,"count":2430715},{"startOffset":216,"endOffset":319,"count":0}],"isBlockCoverage":true},{"functionName":"fail","ranges":[{"startOffset":326,"endOffset":446,"count":0}],"isBlockCoverage":false}]},{"scriptId":"17","url":"buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":36947,"count":1}],"isBlockCoverage":false},{"functionName":"validateOffset","ranges":[{"startOffset":2886,"endOffset":2971,"count":23}],"isBlockCoverage":true},{"functionName":"createUnsafeBuffer","ranges":[{"startOffset":4230,"endOffset":4373,"count":153}],"isBlockCoverage":true},{"functionName":"createPool","ranges":[{"startOffset":4377,"endOffset":4541,"count":13}],"isBlockCoverage":true},{"functionName":"alignPool","ranges":[{"startOffset":4560,"endOffset":4688,"count":66},{"startOffset":4636,"endOffset":4685,"count":63}],"isBlockCoverage":true},{"functionName":"showFlaggedDeprecation","ranges":[{"startOffset":5000,"endOffset":5696,"count":0}],"isBlockCoverage":false},{"functionName":"toInteger","ranges":[{"startOffset":5700,"endOffset":5926,"count":0}],"isBlockCoverage":false},{"functionName":"_copy","ranges":[{"startOffset":5930,"endOffset":7235,"count":0}],"isBlockCoverage":false},{"functionName":"_copyActual","ranges":[{"startOffset":7239,"endOffset":7859,"count":464},{"startOffset":7382,"endOffset":7436,"count":0},{"startOffset":7604,"endOffset":7619,"count":0},{"startOffset":7648,"endOffset":7663,"count":0},{"startOffset":7726,"endOffset":7802,"count":0}],"isBlockCoverage":true},{"functionName":"Buffer","ranges":[{"startOffset":8447,"endOffset":8790,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":8888,"endOffset":8916,"count":0}],"isBlockCoverage":false},{"functionName":"from","ranges":[{"startOffset":9184,"endOffset":10180,"count":18},{"startOffset":9272,"endOffset":9315,"count":12},{"startOffset":9315,"endOffset":9368,"count":6},{"startOffset":9370,"endOffset":10028,"count":6},{"startOffset":9469,"endOffset":9525,"count":0},{"startOffset":9552,"endOffset":9581,"count":0},{"startOffset":9582,"endOffset":9654,"count":0},{"startOffset":9656,"endOffset":10023,"count":0},{"startOffset":10028,"endOffset":10179,"count":0}],"isBlockCoverage":true},{"functionName":"of","ranges":[{"startOffset":10559,"endOffset":10716,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":11013,"endOffset":11241,"count":289},{"startOffset":11058,"endOffset":11125,"count":0},{"startOffset":11169,"endOffset":11238,"count":0}],"isBlockCoverage":true},{"functionName":"alloc","ranges":[{"startOffset":11350,"endOffset":11602,"count":94},{"startOffset":11436,"endOffset":11449,"count":0},{"startOffset":11450,"endOffset":11461,"count":0},{"startOffset":11463,"endOffset":11567,"count":0}],"isBlockCoverage":true},{"functionName":"allocUnsafe","ranges":[{"startOffset":11787,"endOffset":11865,"count":195}],"isBlockCoverage":true},{"functionName":"allocUnsafeSlow","ranges":[{"startOffset":12113,"endOffset":12205,"count":0}],"isBlockCoverage":false},{"functionName":"SlowBuffer","ranges":[{"startOffset":12305,"endOffset":12398,"count":0}],"isBlockCoverage":false},{"functionName":"allocate","ranges":[{"startOffset":12517,"endOffset":12862,"count":195},{"startOffset":12561,"endOffset":12597,"count":0},{"startOffset":12637,"endOffset":12823,"count":55},{"startOffset":12687,"endOffset":12700,"count":10},{"startOffset":12823,"endOffset":12861,"count":140}],"isBlockCoverage":true},{"functionName":"fromStringFast","ranges":[{"startOffset":12866,"endOffset":13429,"count":12},{"startOffset":12996,"endOffset":13045,"count":1},{"startOffset":13045,"endOffset":13094,"count":11},{"startOffset":13094,"endOffset":13107,"count":2},{"startOffset":13107,"endOffset":13243,"count":11},{"startOffset":13243,"endOffset":13372,"count":0},{"startOffset":13372,"endOffset":13428,"count":11}],"isBlockCoverage":true},{"functionName":"fromString","ranges":[{"startOffset":13433,"endOffset":13901,"count":12},{"startOffset":13521,"endOffset":13545,"count":4},{"startOffset":13547,"endOffset":13671,"count":8},{"startOffset":13586,"endOffset":13610,"count":0},{"startOffset":13671,"endOffset":13859,"count":4},{"startOffset":13751,"endOffset":13792,"count":0},{"startOffset":13830,"endOffset":13854,"count":0}],"isBlockCoverage":true},{"functionName":"fromArrayBuffer","ranges":[{"startOffset":13905,"endOffset":14631,"count":6},{"startOffset":14053,"endOffset":14153,"count":0},{"startOffset":14235,"endOffset":14280,"count":0},{"startOffset":14343,"endOffset":14575,"count":0}],"isBlockCoverage":true},{"functionName":"fromArrayLike","ranges":[{"startOffset":14635,"endOffset":15022,"count":0}],"isBlockCoverage":false},{"functionName":"fromObject","ranges":[{"startOffset":15026,"endOffset":15343,"count":0}],"isBlockCoverage":false},{"functionName":"isBuffer","ranges":[{"startOffset":15386,"endOffset":15442,"count":191}],"isBlockCoverage":true},{"functionName":"compare","ranges":[{"startOffset":15464,"endOffset":15803,"count":0}],"isBlockCoverage":false},{"functionName":"isEncoding","ranges":[{"startOffset":15828,"endOffset":15982,"count":40}],"isBlockCoverage":true},{"functionName":"concat","ranges":[{"startOffset":16051,"endOffset":17296,"count":59},{"startOffset":16111,"endOffset":16177,"count":0},{"startOffset":16211,"endOffset":16235,"count":0},{"startOffset":16267,"endOffset":16415,"count":36},{"startOffset":16415,"endOffset":16466,"count":23},{"startOffset":16572,"endOffset":16929,"count":464},{"startOffset":16629,"endOffset":16866,"count":0},{"startOffset":17023,"endOffset":17273,"count":0}],"isBlockCoverage":true},{"functionName":"base64ByteLength","ranges":[{"startOffset":17301,"endOffset":17546,"count":1},{"startOffset":17480,"endOffset":17488,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":17688,"endOffset":17752,"count":8}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":17766,"endOffset":17812,"count":40}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":17828,"endOffset":17925,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18023,"endOffset":18052,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18066,"endOffset":18130,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18144,"endOffset":18190,"count":36}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":18206,"endOffset":18306,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18410,"endOffset":18439,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18453,"endOffset":18517,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18531,"endOffset":18577,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18593,"endOffset":18693,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":18794,"endOffset":18819,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":18833,"endOffset":18899,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":18913,"endOffset":18961,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":18977,"endOffset":19076,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19174,"endOffset":19199,"count":3}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":19213,"endOffset":19278,"count":3}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":19292,"endOffset":19339,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":19355,"endOffset":19572,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":19673,"endOffset":19724,"count":1}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":19738,"endOffset":19804,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":19818,"endOffset":19866,"count":1}],"isBlockCoverage":true},{"functionName":"indexOf","ranges":[{"startOffset":19882,"endOffset":20101,"count":0}],"isBlockCoverage":false},{"functionName":"byteLength","ranges":[{"startOffset":20193,"endOffset":20224,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":20238,"endOffset":20301,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":20315,"endOffset":20360,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":20376,"endOffset":20589,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingOps","ranges":[{"startOffset":20600,"endOffset":22196,"count":81},{"startOffset":20690,"endOffset":20981,"count":76},{"startOffset":20730,"endOffset":20754,"count":40},{"startOffset":20754,"endOffset":20811,"count":36},{"startOffset":20811,"endOffset":20981,"count":0},{"startOffset":20987,"endOffset":21400,"count":3},{"startOffset":21028,"endOffset":21052,"count":0},{"startOffset":21111,"endOffset":21400,"count":0},{"startOffset":21406,"endOffset":21539,"count":0},{"startOffset":21545,"endOffset":21680,"count":0},{"startOffset":21686,"endOffset":22061,"count":2},{"startOffset":21762,"endOffset":21788,"count":0},{"startOffset":21849,"endOffset":21949,"count":0},{"startOffset":21960,"endOffset":22061,"count":0},{"startOffset":22067,"endOffset":22188,"count":0}],"isBlockCoverage":true},{"functionName":"byteLength","ranges":[{"startOffset":22200,"endOffset":22880,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":23027,"endOffset":23125,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":23207,"endOffset":23309,"count":0}],"isBlockCoverage":false},{"functionName":"copy","ranges":[{"startOffset":23345,"endOffset":23480,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":23767,"endOffset":24376,"count":99},{"startOffset":23840,"endOffset":23890,"count":22},{"startOffset":23890,"endOffset":23947,"count":77},{"startOffset":23947,"endOffset":23957,"count":0},{"startOffset":23957,"endOffset":24024,"count":77},{"startOffset":23989,"endOffset":23999,"count":0},{"startOffset":24024,"endOffset":24052,"count":77},{"startOffset":24052,"endOffset":24064,"count":0},{"startOffset":24071,"endOffset":24081,"count":77},{"startOffset":24081,"endOffset":24104,"count":0},{"startOffset":24104,"endOffset":24133,"count":77},{"startOffset":24133,"endOffset":24143,"count":0},{"startOffset":24143,"endOffset":24182,"count":77},{"startOffset":24182,"endOffset":24216,"count":0},{"startOffset":24216,"endOffset":24291,"count":77},{"startOffset":24291,"endOffset":24332,"count":0},{"startOffset":24332,"endOffset":24375,"count":77}],"isBlockCoverage":true},{"functionName":"equals","ranges":[{"startOffset":24407,"endOffset":24774,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":24906,"endOffset":25930,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":26029,"endOffset":27216,"count":0}],"isBlockCoverage":false},{"functionName":"bidirectionalIndexOf","ranges":[{"startOffset":27655,"endOffset":29005,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":29036,"endOffset":29155,"count":0}],"isBlockCoverage":false},{"functionName":"lastIndexOf","ranges":[{"startOffset":29191,"endOffset":29315,"count":0}],"isBlockCoverage":false},{"functionName":"includes","ranges":[{"startOffset":29348,"endOffset":29455,"count":0}],"isBlockCoverage":false},{"functionName":"fill","ranges":[{"startOffset":29639,"endOffset":29740,"count":0}],"isBlockCoverage":false},{"functionName":"_fill","ranges":[{"startOffset":29745,"endOffset":31723,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":31752,"endOffset":32803,"count":0}],"isBlockCoverage":false},{"functionName":"toJSON","ranges":[{"startOffset":32834,"endOffset":33076,"count":0}],"isBlockCoverage":false},{"functionName":"adjustOffset","ranges":[{"startOffset":33081,"endOffset":33530,"count":1626},{"startOffset":33325,"endOffset":33346,"count":146},{"startOffset":33346,"endOffset":33366,"count":1480},{"startOffset":33366,"endOffset":33432,"count":0},{"startOffset":33432,"endOffset":33457,"count":1480},{"startOffset":33457,"endOffset":33483,"count":1348},{"startOffset":33483,"endOffset":33514,"count":132},{"startOffset":33514,"endOffset":33517,"count":0},{"startOffset":33518,"endOffset":33526,"count":132}],"isBlockCoverage":true},{"functionName":"slice","ranges":[{"startOffset":33559,"endOffset":33865,"count":813},{"startOffset":33723,"endOffset":33734,"count":0},{"startOffset":33783,"endOffset":33786,"count":0}],"isBlockCoverage":true},{"functionName":"swap","ranges":[{"startOffset":33870,"endOffset":33945,"count":0}],"isBlockCoverage":false},{"functionName":"swap16","ranges":[{"startOffset":33975,"endOffset":34392,"count":0}],"isBlockCoverage":false},{"functionName":"swap32","ranges":[{"startOffset":34423,"endOffset":34882,"count":0}],"isBlockCoverage":false},{"functionName":"swap64","ranges":[{"startOffset":34913,"endOffset":35438,"count":0}],"isBlockCoverage":false},{"functionName":"transcode","ranges":[{"startOffset":35764,"endOffset":36523,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36856,"endOffset":36891,"count":5}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":36898,"endOffset":36935,"count":0}],"isBlockCoverage":false}]},{"scriptId":"18","url":"internal/validators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7169,"count":1}],"isBlockCoverage":false},{"functionName":"isInt32","ranges":[{"startOffset":610,"endOffset":671,"count":81}],"isBlockCoverage":true},{"functionName":"isUint32","ranges":[{"startOffset":675,"endOffset":739,"count":116}],"isBlockCoverage":true},{"functionName":"parseFileMode","ranges":[{"startOffset":1378,"endOffset":1880,"count":76},{"startOffset":1442,"endOffset":1462,"count":0},{"startOffset":1464,"endOffset":1487,"count":0},{"startOffset":1539,"endOffset":1879,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1928,"endOffset":2316,"count":135},{"startOffset":2050,"endOffset":2104,"count":0},{"startOffset":2146,"endOffset":2200,"count":0},{"startOffset":2245,"endOffset":2311,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2366,"endOffset":2961,"count":81},{"startOffset":2530,"endOffset":2836,"count":0},{"startOffset":2874,"endOffset":2956,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3008,"endOffset":3533,"count":0}],"isBlockCoverage":false},{"functionName":"validateString","ranges":[{"startOffset":3539,"endOffset":3674,"count":2715},{"startOffset":3617,"endOffset":3671,"count":0}],"isBlockCoverage":true},{"functionName":"validateNumber","ranges":[{"startOffset":3678,"endOffset":3813,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3855,"endOffset":4318,"count":26},{"startOffset":3928,"endOffset":4315,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3969,"endOffset":4022,"count":0}],"isBlockCoverage":false},{"functionName":"validateBoolean","ranges":[{"startOffset":4324,"endOffset":4462,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4509,"endOffset":4740,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4784,"endOffset":5079,"count":0}],"isBlockCoverage":false},{"functionName":"validateSignalName","ranges":[{"startOffset":5085,"endOffset":5518,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5561,"endOffset":5797,"count":40},{"startOffset":5627,"endOffset":5794,"count":0}],"isBlockCoverage":true},{"functionName":"validateEncoding","ranges":[{"startOffset":5803,"endOffset":6145,"count":0}],"isBlockCoverage":false},{"functionName":"validatePort","ranges":[{"startOffset":6293,"endOffset":6676,"count":24},{"startOffset":6398,"endOffset":6425,"count":0},{"startOffset":6463,"endOffset":6490,"count":0},{"startOffset":6572,"endOffset":6585,"count":0},{"startOffset":6588,"endOffset":6653,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6721,"endOffset":6825,"count":24},{"startOffset":6781,"endOffset":6822,"count":0}],"isBlockCoverage":true}]},{"scriptId":"19","url":"internal/buffer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30708,"count":1}],"isBlockCoverage":false},{"functionName":"checkBounds","ranges":[{"startOffset":1155,"endOffset":1375,"count":0}],"isBlockCoverage":false},{"functionName":"checkInt","ranges":[{"startOffset":1379,"endOffset":2014,"count":0}],"isBlockCoverage":false},{"functionName":"boundsError","ranges":[{"startOffset":2018,"endOffset":2433,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64LE","ranges":[{"startOffset":2456,"endOffset":2973,"count":0}],"isBlockCoverage":false},{"functionName":"readBigUInt64BE","ranges":[{"startOffset":2977,"endOffset":3494,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64LE","ranges":[{"startOffset":3498,"endOffset":4015,"count":0}],"isBlockCoverage":false},{"functionName":"readBigInt64BE","ranges":[{"startOffset":4019,"endOffset":4530,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntLE","ranges":[{"startOffset":4534,"endOffset":5103,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48LE","ranges":[{"startOffset":5107,"endOffset":5502,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40LE","ranges":[{"startOffset":5506,"endOffset":5874,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32LE","ranges":[{"startOffset":5878,"endOffset":6215,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24LE","ranges":[{"startOffset":6219,"endOffset":6515,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16LE","ranges":[{"startOffset":6519,"endOffset":6787,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt8","ranges":[{"startOffset":6791,"endOffset":6978,"count":0}],"isBlockCoverage":false},{"functionName":"readUIntBE","ranges":[{"startOffset":6982,"endOffset":7551,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt48BE","ranges":[{"startOffset":7555,"endOffset":7950,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt40BE","ranges":[{"startOffset":7954,"endOffset":8322,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt32BE","ranges":[{"startOffset":8326,"endOffset":8663,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt24BE","ranges":[{"startOffset":8667,"endOffset":8963,"count":0}],"isBlockCoverage":false},{"functionName":"readUInt16BE","ranges":[{"startOffset":8967,"endOffset":9235,"count":0}],"isBlockCoverage":false},{"functionName":"readIntLE","ranges":[{"startOffset":9239,"endOffset":9801,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48LE","ranges":[{"startOffset":9805,"endOffset":10249,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40LE","ranges":[{"startOffset":10253,"endOffset":10652,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32LE","ranges":[{"startOffset":10656,"endOffset":11002,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24LE","ranges":[{"startOffset":11006,"endOffset":11347,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16LE","ranges":[{"startOffset":11351,"endOffset":11666,"count":0}],"isBlockCoverage":false},{"functionName":"readInt8","ranges":[{"startOffset":11670,"endOffset":11885,"count":0}],"isBlockCoverage":false},{"functionName":"readIntBE","ranges":[{"startOffset":11889,"endOffset":12451,"count":0}],"isBlockCoverage":false},{"functionName":"readInt48BE","ranges":[{"startOffset":12455,"endOffset":12897,"count":0}],"isBlockCoverage":false},{"functionName":"readInt40BE","ranges":[{"startOffset":12901,"endOffset":13301,"count":0}],"isBlockCoverage":false},{"functionName":"readInt32BE","ranges":[{"startOffset":13305,"endOffset":13651,"count":0}],"isBlockCoverage":false},{"functionName":"readInt24BE","ranges":[{"startOffset":13655,"endOffset":13996,"count":0}],"isBlockCoverage":false},{"functionName":"readInt16BE","ranges":[{"startOffset":14000,"endOffset":14315,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatBackwards","ranges":[{"startOffset":14335,"endOffset":14752,"count":0}],"isBlockCoverage":false},{"functionName":"readFloatForwards","ranges":[{"startOffset":14756,"endOffset":15172,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleBackwards","ranges":[{"startOffset":15176,"endOffset":15762,"count":0}],"isBlockCoverage":false},{"functionName":"readDoubleForwards","ranges":[{"startOffset":15766,"endOffset":16351,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64LE","ranges":[{"startOffset":16375,"endOffset":16877,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64LE","ranges":[{"startOffset":16881,"endOffset":17005,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigU_Int64BE","ranges":[{"startOffset":17009,"endOffset":17527,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigUInt64BE","ranges":[{"startOffset":17531,"endOffset":17655,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64LE","ranges":[{"startOffset":17659,"endOffset":17806,"count":0}],"isBlockCoverage":false},{"functionName":"writeBigInt64BE","ranges":[{"startOffset":17810,"endOffset":17957,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntLE","ranges":[{"startOffset":17961,"endOffset":18585,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48LE","ranges":[{"startOffset":18589,"endOffset":19017,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40LE","ranges":[{"startOffset":19021,"endOffset":19414,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32LE","ranges":[{"startOffset":19418,"endOffset":19737,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32LE","ranges":[{"startOffset":19741,"endOffset":19849,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24LE","ranges":[{"startOffset":19853,"endOffset":20122,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16LE","ranges":[{"startOffset":20126,"endOffset":20329,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16LE","ranges":[{"startOffset":20333,"endOffset":20437,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int8","ranges":[{"startOffset":20441,"endOffset":20865,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt8","ranges":[{"startOffset":20869,"endOffset":20965,"count":0}],"isBlockCoverage":false},{"functionName":"writeUIntBE","ranges":[{"startOffset":20969,"endOffset":21593,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int48BE","ranges":[{"startOffset":21597,"endOffset":22033,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int40BE","ranges":[{"startOffset":22037,"endOffset":22412,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int32BE","ranges":[{"startOffset":22416,"endOffset":22743,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt32BE","ranges":[{"startOffset":22747,"endOffset":22855,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int24BE","ranges":[{"startOffset":22859,"endOffset":23134,"count":0}],"isBlockCoverage":false},{"functionName":"writeU_Int16BE","ranges":[{"startOffset":23138,"endOffset":23341,"count":0}],"isBlockCoverage":false},{"functionName":"writeUInt16BE","ranges":[{"startOffset":23345,"endOffset":23449,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntLE","ranges":[{"startOffset":23453,"endOffset":24130,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32LE","ranges":[{"startOffset":24134,"endOffset":24251,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16LE","ranges":[{"startOffset":24255,"endOffset":24364,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt8","ranges":[{"startOffset":24368,"endOffset":24467,"count":0}],"isBlockCoverage":false},{"functionName":"writeIntBE","ranges":[{"startOffset":24471,"endOffset":25148,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt32BE","ranges":[{"startOffset":25152,"endOffset":25269,"count":0}],"isBlockCoverage":false},{"functionName":"writeInt16BE","ranges":[{"startOffset":25273,"endOffset":25382,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleForwards","ranges":[{"startOffset":25404,"endOffset":25884,"count":0}],"isBlockCoverage":false},{"functionName":"writeDoubleBackwards","ranges":[{"startOffset":25888,"endOffset":26369,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatForwards","ranges":[{"startOffset":26373,"endOffset":26684,"count":0}],"isBlockCoverage":false},{"functionName":"writeFloatBackwards","ranges":[{"startOffset":26688,"endOffset":27000,"count":0}],"isBlockCoverage":false},{"functionName":"addBufferPrototypeMethods","ranges":[{"startOffset":27046,"endOffset":30182,"count":1},{"startOffset":29187,"endOffset":29207,"count":0},{"startOffset":29262,"endOffset":29281,"count":0},{"startOffset":29338,"endOffset":29359,"count":0},{"startOffset":29416,"endOffset":29436,"count":0},{"startOffset":29494,"endOffset":29515,"count":0},{"startOffset":29572,"endOffset":29592,"count":0},{"startOffset":29651,"endOffset":29673,"count":0},{"startOffset":29732,"endOffset":29753,"count":0}],"isBlockCoverage":true},{"functionName":"markAsUntransferable","ranges":[{"startOffset":30342,"endOffset":30610,"count":13},{"startOffset":30411,"endOffset":30439,"count":0},{"startOffset":30463,"endOffset":30470,"count":0}],"isBlockCoverage":true}]},{"scriptId":"20","url":"internal/worker/js_transferable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1349,"count":1}],"isBlockCoverage":false},{"functionName":"setup","ranges":[{"startOffset":317,"endOffset":1120,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":602,"endOffset":1115,"count":0}],"isBlockCoverage":false}]},{"scriptId":"21","url":"internal/process/per_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10963,"count":1}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":833,"endOffset":923,"count":0}],"isBlockCoverage":false},{"functionName":"wrapProcessMethods","ranges":[{"startOffset":1004,"endOffset":6941,"count":1}],"isBlockCoverage":true},{"functionName":"_rawDebug","ranges":[{"startOffset":1224,"endOffset":1308,"count":0}],"isBlockCoverage":false},{"functionName":"cpuUsage","ranges":[{"startOffset":1526,"endOffset":3129,"count":0}],"isBlockCoverage":false},{"functionName":"previousValueIsValid","ranges":[{"startOffset":3286,"endOffset":3427,"count":0}],"isBlockCoverage":false},{"functionName":"hrtime","ranges":[{"startOffset":3658,"endOffset":4282,"count":0}],"isBlockCoverage":false},{"functionName":"hrtimeBigInt","ranges":[{"startOffset":4474,"endOffset":4571,"count":0}],"isBlockCoverage":false},{"functionName":"memoryUsage","ranges":[{"startOffset":4619,"endOffset":4854,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":4860,"endOffset":5310,"count":1}],"isBlockCoverage":true},{"functionName":"kill","ranges":[{"startOffset":5316,"endOffset":5987,"count":0}],"isBlockCoverage":false},{"functionName":"resourceUsage","ranges":[{"startOffset":6041,"endOffset":6794,"count":0}],"isBlockCoverage":false},{"functionName":"buildAllowedFlags","ranges":[{"startOffset":7160,"endOffset":10315,"count":0}],"isBlockCoverage":false},{"functionName":"toggleTraceCategoryState","ranges":[{"startOffset":10511,"endOffset":10851,"count":1},{"startOffset":10592,"endOffset":10773,"count":0},{"startOffset":10805,"endOffset":10848,"count":0}],"isBlockCoverage":true}]},{"scriptId":"22","url":"internal/async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19463,"count":1}],"isBlockCoverage":false},{"functionName":"useDomainTrampoline","ranges":[{"startOffset":5335,"endOffset":5391,"count":0}],"isBlockCoverage":false},{"functionName":"callbackTrampoline","ranges":[{"startOffset":5395,"endOffset":6008,"count":0}],"isBlockCoverage":false},{"functionName":"executionAsyncResource","ranges":[{"startOffset":6090,"endOffset":6599,"count":0}],"isBlockCoverage":false},{"functionName":"fatalError","ranges":[{"startOffset":6663,"endOffset":7052,"count":0}],"isBlockCoverage":false},{"functionName":"lookupPublicResource","ranges":[{"startOffset":7056,"endOffset":7413,"count":0}],"isBlockCoverage":false},{"functionName":"emitInitNative","ranges":[{"startOffset":7611,"endOffset":8732,"count":0}],"isBlockCoverage":false},{"functionName":"emitHook","ranges":[{"startOffset":8837,"endOffset":9812,"count":0}],"isBlockCoverage":false},{"functionName":"emitHookFactory","ranges":[{"startOffset":9816,"endOffset":10084,"count":4}],"isBlockCoverage":true},{"functionName":"getHookArrays","ranges":[{"startOffset":10117,"endOffset":10617,"count":0}],"isBlockCoverage":false},{"functionName":"storeActiveHooks","ranges":[{"startOffset":10623,"endOffset":10929,"count":0}],"isBlockCoverage":false},{"functionName":"copyHooks","ranges":[{"startOffset":10933,"endOffset":11204,"count":0}],"isBlockCoverage":false},{"functionName":"restoreActiveHooks","ranges":[{"startOffset":11324,"endOffset":11535,"count":0}],"isBlockCoverage":false},{"functionName":"trackPromise","ranges":[{"startOffset":11539,"endOffset":11906,"count":0}],"isBlockCoverage":false},{"functionName":"fastPromiseHook","ranges":[{"startOffset":11910,"endOffset":13081,"count":0}],"isBlockCoverage":false},{"functionName":"enableHooks","ranges":[{"startOffset":13115,"endOffset":13177,"count":0}],"isBlockCoverage":false},{"functionName":"updatePromiseHookMode","ranges":[{"startOffset":13208,"endOffset":13510,"count":0}],"isBlockCoverage":false},{"functionName":"disableHooks","ranges":[{"startOffset":13514,"endOffset":13797,"count":0}],"isBlockCoverage":false},{"functionName":"disablePromiseHookIfNecessary","ranges":[{"startOffset":13801,"endOffset":13932,"count":0}],"isBlockCoverage":false},{"functionName":"newAsyncId","ranges":[{"startOffset":14140,"endOffset":14212,"count":1681}],"isBlockCoverage":true},{"functionName":"getOrSetAsyncId","ranges":[{"startOffset":14216,"endOffset":14412,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultTriggerAsyncId","ranges":[{"startOffset":14601,"endOffset":14897,"count":1681},{"startOffset":14861,"endOffset":14896,"count":0}],"isBlockCoverage":true},{"functionName":"clearDefaultTriggerAsyncId","ranges":[{"startOffset":14903,"endOffset":14994,"count":0}],"isBlockCoverage":false},{"functionName":"defaultTriggerAsyncIdScope","ranges":[{"startOffset":15000,"endOffset":15488,"count":48},{"startOffset":15112,"endOffset":15134,"count":0}],"isBlockCoverage":true},{"functionName":"hasHooks","ranges":[{"startOffset":15492,"endOffset":15557,"count":8397}],"isBlockCoverage":true},{"functionName":"enabledHooksExist","ranges":[{"startOffset":15561,"endOffset":15622,"count":1679}],"isBlockCoverage":true},{"functionName":"initHooksExist","ranges":[{"startOffset":15626,"endOffset":15683,"count":1681}],"isBlockCoverage":true},{"functionName":"afterHooksExist","ranges":[{"startOffset":15687,"endOffset":15746,"count":0}],"isBlockCoverage":false},{"functionName":"destroyHooksExist","ranges":[{"startOffset":15750,"endOffset":15813,"count":1679}],"isBlockCoverage":true},{"functionName":"emitInitScript","ranges":[{"startOffset":15819,"endOffset":16238,"count":0}],"isBlockCoverage":false},{"functionName":"emitBeforeScript","ranges":[{"startOffset":16244,"endOffset":16425,"count":1679},{"startOffset":16396,"endOffset":16422,"count":0}],"isBlockCoverage":true},{"functionName":"emitAfterScript","ranges":[{"startOffset":16431,"endOffset":16556,"count":1679},{"startOffset":16497,"endOffset":16522,"count":0}],"isBlockCoverage":true},{"functionName":"emitDestroyScript","ranges":[{"startOffset":16562,"endOffset":16777,"count":0}],"isBlockCoverage":false},{"functionName":"hasAsyncIdStack","ranges":[{"startOffset":16783,"endOffset":16848,"count":0}],"isBlockCoverage":false},{"functionName":"pushAsyncContext","ranges":[{"startOffset":16918,"endOffset":17498,"count":1679},{"startOffset":17142,"endOffset":17192,"count":0}],"isBlockCoverage":true},{"functionName":"popAsyncContext","ranges":[{"startOffset":17567,"endOffset":18206,"count":1679},{"startOffset":17685,"endOffset":17698,"count":0},{"startOffset":17779,"endOffset":17888,"count":0}],"isBlockCoverage":true},{"functionName":"executionAsyncId","ranges":[{"startOffset":18212,"endOffset":18290,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":18294,"endOffset":18368,"count":0}],"isBlockCoverage":false}]},{"scriptId":"23","url":"internal/process/task_queues.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4756,"count":1}],"isBlockCoverage":false},{"functionName":"hasTickScheduled","ranges":[{"startOffset":1000,"endOffset":1077,"count":0}],"isBlockCoverage":false},{"functionName":"setHasTickScheduled","ranges":[{"startOffset":1081,"endOffset":1169,"count":1489},{"startOffset":1158,"endOffset":1161,"count":802},{"startOffset":1162,"endOffset":1165,"count":687}],"isBlockCoverage":true},{"functionName":"runNextTicks","ranges":[{"startOffset":1276,"endOffset":1479,"count":0}],"isBlockCoverage":false},{"functionName":"processTicksAndRejections","ranges":[{"startOffset":1483,"endOffset":2483,"count":688},{"startOffset":1541,"endOffset":2360,"count":733},{"startOffset":1577,"endOffset":2333,"count":1655},{"startOffset":1784,"endOffset":1819,"count":0},{"startOffset":1909,"endOffset":1942,"count":318},{"startOffset":1956,"endOffset":1998,"count":1313},{"startOffset":2012,"endOffset":2063,"count":24},{"startOffset":2077,"endOffset":2137,"count":0},{"startOffset":2151,"endOffset":2178,"count":0},{"startOffset":2267,"endOffset":2288,"count":0},{"startOffset":2360,"endOffset":2414,"count":687}],"isBlockCoverage":true},{"functionName":"nextTick","ranges":[{"startOffset":2631,"endOffset":3578,"count":1657},{"startOffset":2705,"endOffset":2746,"count":0},{"startOffset":2779,"endOffset":2786,"count":0},{"startOffset":2838,"endOffset":2852,"count":0},{"startOffset":2858,"endOffset":2895,"count":320},{"startOffset":2901,"endOffset":2952,"count":1313},{"startOffset":2958,"endOffset":3023,"count":24},{"startOffset":3029,"endOffset":3176,"count":0},{"startOffset":3208,"endOffset":3234,"count":802},{"startOffset":3488,"endOffset":3548,"count":0}],"isBlockCoverage":true},{"functionName":"createMicrotaskResource","ranges":[{"startOffset":3672,"endOffset":3924,"count":0}],"isBlockCoverage":false},{"functionName":"runMicrotask","ranges":[{"startOffset":3928,"endOffset":4113,"count":0}],"isBlockCoverage":false},{"functionName":"queueMicrotask","ranges":[{"startOffset":4117,"endOffset":4439,"count":0}],"isBlockCoverage":false},{"functionName":"setupTaskQueue","ranges":[{"startOffset":4465,"endOffset":4731,"count":1}],"isBlockCoverage":true}]},{"scriptId":"24","url":"internal/process/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9905,"count":1}],"isBlockCoverage":false},{"functionName":"setHasRejectionToWarn","ranges":[{"startOffset":1984,"endOffset":2076,"count":690},{"startOffset":2065,"endOffset":2068,"count":3},{"startOffset":2069,"endOffset":2072,"count":687}],"isBlockCoverage":true},{"functionName":"hasRejectionToWarn","ranges":[{"startOffset":2080,"endOffset":2161,"count":0}],"isBlockCoverage":false},{"functionName":"getUnhandledRejectionsMode","ranges":[{"startOffset":2165,"endOffset":2716,"count":1},{"startOffset":2324,"endOffset":2378,"count":0},{"startOffset":2384,"endOffset":2442,"count":0},{"startOffset":2448,"endOffset":2504,"count":0},{"startOffset":2510,"endOffset":2564,"count":0},{"startOffset":2570,"endOffset":2651,"count":0}],"isBlockCoverage":true},{"functionName":"promiseRejectHandler","ranges":[{"startOffset":2720,"endOffset":3307,"count":6},{"startOffset":2821,"endOffset":2888,"count":1},{"startOffset":2913,"endOffset":3004,"count":3},{"startOffset":3010,"endOffset":3095,"count":3},{"startOffset":3101,"endOffset":3198,"count":0},{"startOffset":3204,"endOffset":3299,"count":0}],"isBlockCoverage":true},{"functionName":"resolveError","ranges":[{"startOffset":3311,"endOffset":3567,"count":0}],"isBlockCoverage":false},{"functionName":"unhandledRejection","ranges":[{"startOffset":3571,"endOffset":3874,"count":3}],"isBlockCoverage":true},{"functionName":"handledRejection","ranges":[{"startOffset":3878,"endOffset":4713,"count":3},{"startOffset":4085,"endOffset":4589,"count":0},{"startOffset":4636,"endOffset":4674,"count":0},{"startOffset":4681,"endOffset":4710,"count":0}],"isBlockCoverage":true},{"functionName":"emitUnhandledRejectionWarning","ranges":[{"startOffset":4788,"endOffset":5706,"count":0}],"isBlockCoverage":false},{"functionName":"emitDeprecationWarning","ranges":[{"startOffset":5742,"endOffset":6033,"count":0}],"isBlockCoverage":false},{"functionName":"processPromiseRejections","ranges":[{"startOffset":6211,"endOffset":8765,"count":687},{"startOffset":6372,"endOffset":6543,"count":0},{"startOffset":6611,"endOffset":8666,"count":3},{"startOffset":6793,"endOffset":7291,"count":0},{"startOffset":7299,"endOffset":7420,"count":0},{"startOffset":7428,"endOffset":7606,"count":0},{"startOffset":7614,"endOffset":7964,"count":0},{"startOffset":7972,"endOffset":8244,"count":0},{"startOffset":8252,"endOffset":8609,"count":0},{"startOffset":8616,"endOffset":8666,"count":0}],"isBlockCoverage":true},{"functionName":"getErrorWithoutStack","ranges":[{"startOffset":8769,"endOffset":9201,"count":0}],"isBlockCoverage":false},{"functionName":"generateUnhandledRejectionError","ranges":[{"startOffset":9205,"endOffset":9686,"count":0}],"isBlockCoverage":false},{"functionName":"listenForRejections","ranges":[{"startOffset":9690,"endOffset":9776,"count":1}],"isBlockCoverage":true}]},{"scriptId":"25","url":"internal/fixed_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4301,"count":1}],"isBlockCoverage":false},{"functionName":"FixedCircularBuffer","ranges":[{"startOffset":3018,"endOffset":3137,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3143,"endOffset":3197,"count":4777}],"isBlockCoverage":true},{"functionName":"isFull","ranges":[{"startOffset":3203,"endOffset":3272,"count":1657}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3278,"endOffset":3368,"count":1657}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":3374,"endOffset":3596,"count":2388},{"startOffset":3470,"endOffset":3482,"count":733},{"startOffset":3482,"endOffset":3595,"count":1655}],"isBlockCoverage":true},{"functionName":"FixedQueue","ranges":[{"startOffset":3642,"endOffset":3718,"count":1}],"isBlockCoverage":true},{"functionName":"isEmpty","ranges":[{"startOffset":3724,"endOffset":3773,"count":2389}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":3779,"endOffset":4050,"count":1657},{"startOffset":3821,"endOffset":4018,"count":0}],"isBlockCoverage":true},{"functionName":"shift","ranges":[{"startOffset":4056,"endOffset":4295,"count":2388},{"startOffset":4151,"endOffset":4172,"count":1534},{"startOffset":4174,"endOffset":4272,"count":0}],"isBlockCoverage":true}]},{"scriptId":"26","url":"internal/console/global.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1993,"count":1}],"isBlockCoverage":false}]},{"scriptId":"27","url":"internal/console/constructor.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":20604,"count":1}],"isBlockCoverage":false},{"functionName":"Console","ranges":[{"startOffset":2686,"endOffset":4925,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5144,"endOffset":5200,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5458,"endOffset":5669,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":5878,"endOffset":6489,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":6067,"endOffset":6165,"count":253},{"startOffset":6101,"endOffset":6124,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":6178,"endOffset":6208,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6315,"endOffset":6417,"count":35},{"startOffset":6349,"endOffset":6376,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":6430,"endOffset":6460,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6563,"endOffset":7776,"count":1}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":7850,"endOffset":9334,"count":94},{"startOffset":8066,"endOffset":8080,"count":85},{"startOffset":8081,"endOffset":8095,"count":9},{"startOffset":8135,"endOffset":8170,"count":85},{"startOffset":8171,"endOffset":8197,"count":9},{"startOffset":8238,"endOffset":8432,"count":0},{"startOffset":8493,"endOffset":8521,"count":0},{"startOffset":8887,"endOffset":8914,"count":74},{"startOffset":8971,"endOffset":9261,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9411,"endOffset":9918,"count":103},{"startOffset":9629,"endOffset":9635,"count":0},{"startOffset":9714,"endOffset":9840,"count":0},{"startOffset":9886,"endOffset":9910,"count":0}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":9993,"endOffset":10124,"count":85}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":10199,"endOffset":10330,"count":18}],"isBlockCoverage":true},{"functionName":"createWriteErrorHandler","ranges":[{"startOffset":10424,"endOffset":11331,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10493,"endOffset":11327,"count":91},{"startOffset":10742,"endOffset":10767,"count":83},{"startOffset":10768,"endOffset":10786,"count":8},{"startOffset":11268,"endOffset":11315,"count":20}],"isBlockCoverage":true},{"functionName":"log","ranges":[{"startOffset":11363,"endOffset":11452,"count":85}],"isBlockCoverage":true},{"functionName":"warn","ranges":[{"startOffset":11461,"endOffset":11551,"count":9}],"isBlockCoverage":true},{"functionName":"dir","ranges":[{"startOffset":11560,"endOffset":11751,"count":0}],"isBlockCoverage":false},{"functionName":"time","ranges":[{"startOffset":11758,"endOffset":12125,"count":0}],"isBlockCoverage":false},{"functionName":"timeEnd","ranges":[{"startOffset":12132,"endOffset":12429,"count":0}],"isBlockCoverage":false},{"functionName":"timeLog","ranges":[{"startOffset":12436,"endOffset":12679,"count":0}],"isBlockCoverage":false},{"functionName":"trace","ranges":[{"startOffset":12693,"endOffset":12886,"count":9}],"isBlockCoverage":true},{"functionName":"assert","ranges":[{"startOffset":12893,"endOffset":13116,"count":0}],"isBlockCoverage":false},{"functionName":"clear","ranges":[{"startOffset":13180,"endOffset":13620,"count":0}],"isBlockCoverage":false},{"functionName":"count","ranges":[{"startOffset":13684,"endOffset":14153,"count":0}],"isBlockCoverage":false},{"functionName":"countReset","ranges":[{"startOffset":14222,"endOffset":14518,"count":0}],"isBlockCoverage":false},{"functionName":"group","ranges":[{"startOffset":14525,"endOffset":14699,"count":0}],"isBlockCoverage":false},{"functionName":"groupEnd","ranges":[{"startOffset":14706,"endOffset":14880,"count":0}],"isBlockCoverage":false},{"functionName":"table","ranges":[{"startOffset":14932,"endOffset":18454,"count":0}],"isBlockCoverage":false},{"functionName":"timeLogImpl","ranges":[{"startOffset":18499,"endOffset":19012,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":19016,"endOffset":19095,"count":0}],"isBlockCoverage":false},{"functionName":"formatTime","ranges":[{"startOffset":19099,"endOffset":19892,"count":0}],"isBlockCoverage":false},{"functionName":"isArray","ranges":[{"startOffset":20033,"endOffset":20089,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":20094,"endOffset":20112,"count":0}],"isBlockCoverage":false}]},{"scriptId":"28","url":"internal/constants.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1638,"count":1}],"isBlockCoverage":false}]},{"scriptId":"29","url":"internal/util/inspector.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2283,"count":1}],"isBlockCoverage":false},{"functionName":"sendInspectorCommand","ranges":[{"startOffset":100,"endOffset":453,"count":0}],"isBlockCoverage":false},{"functionName":"installConsoleExtensions","ranges":[{"startOffset":530,"endOffset":1094,"count":0}],"isBlockCoverage":false},{"functionName":"wrapConsole","ranges":[{"startOffset":1176,"endOffset":1984,"count":1},{"startOffset":1336,"endOffset":1981,"count":23},{"startOffset":1555,"endOffset":1855,"count":19},{"startOffset":1855,"endOffset":1976,"count":4}],"isBlockCoverage":true},{"functionName":"get consoleFromVM","ranges":[{"startOffset":2164,"endOffset":2217,"count":0}],"isBlockCoverage":false},{"functionName":"set consoleFromVM","ranges":[{"startOffset":2222,"endOffset":2277,"count":1}],"isBlockCoverage":true}]},{"scriptId":"30","url":"internal/url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":42805,"count":1}],"isBlockCoverage":false},{"functionName":"toUSVString","ranges":[{"startOffset":2323,"endOffset":2627,"count":118},{"startOffset":2582,"endOffset":2626,"count":0}],"isBlockCoverage":true},{"functionName":"serializeTupleOrigin","ranges":[{"startOffset":2845,"endOffset":2965,"count":0}],"isBlockCoverage":false},{"functionName":"URLContext","ranges":[{"startOffset":3378,"endOffset":3611,"count":1443}],"isBlockCoverage":true},{"functionName":"URLSearchParams","ranges":[{"startOffset":3909,"endOffset":6333,"count":1303},{"startOffset":4027,"endOffset":6267,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6339,"endOffset":7439,"count":0}],"isBlockCoverage":false},{"functionName":"onParseComplete","ranges":[{"startOffset":7446,"endOffset":8156,"count":1303},{"startOffset":7706,"endOffset":7716,"count":0},{"startOffset":7780,"endOffset":7790,"count":0},{"startOffset":7873,"endOffset":7877,"count":0}],"isBlockCoverage":true},{"functionName":"onParseError","ranges":[{"startOffset":8160,"endOffset":8237,"count":140}],"isBlockCoverage":true},{"functionName":"onParseProtocolComplete","ranges":[{"startOffset":8241,"endOffset":8596,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostnameComplete","ranges":[{"startOffset":8600,"endOffset":8956,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePortComplete","ranges":[{"startOffset":8960,"endOffset":9125,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHostComplete","ranges":[{"startOffset":9129,"endOffset":9440,"count":0}],"isBlockCoverage":false},{"functionName":"onParsePathComplete","ranges":[{"startOffset":9444,"endOffset":9954,"count":181},{"startOffset":9716,"endOffset":9787,"count":0}],"isBlockCoverage":true},{"functionName":"onParseSearchComplete","ranges":[{"startOffset":9958,"endOffset":10129,"count":0}],"isBlockCoverage":false},{"functionName":"onParseHashComplete","ranges":[{"startOffset":10133,"endOffset":10306,"count":0}],"isBlockCoverage":false},{"functionName":"URL","ranges":[{"startOffset":10325,"endOffset":10663,"count":1443},{"startOffset":10464,"endOffset":10518,"count":426}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10669,"endOffset":10752,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10758,"endOffset":10853,"count":3843}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10931,"endOffset":11136,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":11142,"endOffset":12107,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":12284,"endOffset":13512,"count":1122},{"startOffset":12371,"endOffset":12432,"count":0},{"startOffset":12856,"endOffset":13023,"count":0},{"startOffset":13056,"endOffset":13099,"count":0},{"startOffset":13160,"endOffset":13182,"count":0},{"startOffset":13191,"endOffset":13257,"count":0},{"startOffset":13373,"endOffset":13396,"count":0},{"startOffset":13460,"endOffset":13486,"count":0}],"isBlockCoverage":true},{"functionName":"toString","ranges":[{"startOffset":13798,"endOffset":13859,"count":288}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":13930,"endOffset":13977,"count":834}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":13984,"endOffset":14169,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14255,"endOffset":14905,"count":638},{"startOffset":14399,"endOffset":14651,"count":0},{"startOffset":14661,"endOffset":14673,"count":0},{"startOffset":14683,"endOffset":14698,"count":0},{"startOffset":14708,"endOffset":14721,"count":0},{"startOffset":14731,"endOffset":14745,"count":0},{"startOffset":14755,"endOffset":14766,"count":0},{"startOffset":14776,"endOffset":14860,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14980,"endOffset":15030,"count":953}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":15037,"endOffset":15418,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":15493,"endOffset":15545,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":15552,"endOffset":15963,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16038,"endOffset":16090,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":16097,"endOffset":16508,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":16579,"endOffset":16741,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":16748,"endOffset":17048,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":17123,"endOffset":17177,"count":1800}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":17184,"endOffset":17492,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":17563,"endOffset":17666,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":17673,"endOffset":18001,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":18076,"endOffset":18278,"count":3662},{"startOffset":18158,"endOffset":18177,"count":0},{"startOffset":18221,"endOffset":18231,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18285,"endOffset":18511,"count":181},{"startOffset":18399,"endOffset":18406,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":18584,"endOffset":18728,"count":118},{"startOffset":18658,"endOffset":18673,"count":0},{"startOffset":18694,"endOffset":18727,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":18735,"endOffset":19242,"count":118},{"startOffset":18927,"endOffset":19182,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":19334,"endOffset":19382,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":19453,"endOffset":19609,"count":118},{"startOffset":19533,"endOffset":19551,"count":0},{"startOffset":19572,"endOffset":19608,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":19616,"endOffset":20047,"count":118},{"startOffset":19846,"endOffset":20046,"count":0}],"isBlockCoverage":true},{"functionName":"toJSON","ranges":[{"startOffset":20200,"endOffset":20259,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":20273,"endOffset":20591,"count":0}],"isBlockCoverage":false},{"functionName":"initSearchParams","ranges":[{"startOffset":20595,"endOffset":20741,"count":1421},{"startOffset":20696,"endOffset":20740,"count":0}],"isBlockCoverage":true},{"functionName":"parseParams","ranges":[{"startOffset":20854,"endOffset":23251,"count":0}],"isBlockCoverage":false},{"functionName":"serializeParams","ranges":[{"startOffset":24254,"endOffset":24830,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":24888,"endOffset":25602,"count":2},{"startOffset":25236,"endOffset":25389,"count":13},{"startOffset":25445,"endOffset":25599,"count":1}],"isBlockCoverage":true},{"functionName":"merge","ranges":[{"startOffset":25625,"endOffset":26281,"count":0}],"isBlockCoverage":false},{"functionName":"append","ranges":[{"startOffset":26351,"endOffset":26750,"count":0}],"isBlockCoverage":false},{"functionName":"delete","ranges":[{"startOffset":26757,"endOffset":27275,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":27282,"endOffset":27732,"count":0}],"isBlockCoverage":false},{"functionName":"getAll","ranges":[{"startOffset":27739,"endOffset":28224,"count":0}],"isBlockCoverage":false},{"functionName":"has","ranges":[{"startOffset":28231,"endOffset":28675,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":28682,"endOffset":29746,"count":0}],"isBlockCoverage":false},{"functionName":"sort","ranges":[{"startOffset":29753,"endOffset":30972,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":31140,"endOffset":31355,"count":0}],"isBlockCoverage":false},{"functionName":"forEach","ranges":[{"startOffset":31362,"endOffset":31953,"count":0}],"isBlockCoverage":false},{"functionName":"keys","ranges":[{"startOffset":32011,"endOffset":32217,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":32224,"endOffset":32434,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":32571,"endOffset":32777,"count":0}],"isBlockCoverage":false},{"functionName":"createSearchParamsIterator","ranges":[{"startOffset":33068,"endOffset":33279,"count":0}],"isBlockCoverage":false},{"functionName":"next","ranges":[{"startOffset":33509,"endOffset":34299,"count":0}],"isBlockCoverage":false},{"functionName":"defineIDLClass","ranges":[{"startOffset":34304,"endOffset":35554,"count":0}],"isBlockCoverage":false},{"functionName":"domainToASCII","ranges":[{"startOffset":35563,"endOffset":35744,"count":0}],"isBlockCoverage":false},{"functionName":"domainToUnicode","ranges":[{"startOffset":35748,"endOffset":35933,"count":0}],"isBlockCoverage":false},{"functionName":"urlToOptions","ranges":[{"startOffset":36081,"endOffset":36643,"count":0}],"isBlockCoverage":false},{"functionName":"getPathFromURLWin32","ranges":[{"startOffset":36683,"endOffset":38109,"count":678},{"startOffset":36830,"endOffset":37192,"count":44322},{"startOffset":36862,"endOffset":37187,"count":0},{"startOffset":37318,"endOffset":37764,"count":0},{"startOffset":38009,"endOffset":38077,"count":0}],"isBlockCoverage":true},{"functionName":"getPathFromURLPosix","ranges":[{"startOffset":38113,"endOffset":38633,"count":0}],"isBlockCoverage":false},{"functionName":"fileURLToPath","ranges":[{"startOffset":38637,"endOffset":38992,"count":678},{"startOffset":38706,"endOffset":38727,"count":76},{"startOffset":38727,"endOffset":38831,"count":602},{"startOffset":38767,"endOffset":38831,"count":0},{"startOffset":38871,"endOffset":38912,"count":0},{"startOffset":38961,"endOffset":38988,"count":0}],"isBlockCoverage":true},{"functionName":"encodePathChars","ranges":[{"startOffset":39771,"endOffset":40340,"count":181},{"startOffset":39844,"endOffset":39893,"count":0},{"startOffset":39969,"endOffset":39995,"count":0},{"startOffset":40002,"endOffset":40053,"count":0},{"startOffset":40091,"endOffset":40140,"count":0},{"startOffset":40178,"endOffset":40234,"count":0},{"startOffset":40272,"endOffset":40317,"count":0}],"isBlockCoverage":true},{"functionName":"pathToFileURL","ranges":[{"startOffset":40344,"endOffset":41492,"count":181},{"startOffset":40466,"endOffset":41035,"count":0},{"startOffset":41271,"endOffset":41335,"count":180},{"startOffset":41337,"endOffset":41391,"count":1},{"startOffset":41400,"endOffset":41416,"count":1}],"isBlockCoverage":true},{"functionName":"isURLInstance","ranges":[{"startOffset":41496,"endOffset":41617,"count":487027},{"startOffset":41590,"endOffset":41613,"count":638}],"isBlockCoverage":true},{"functionName":"toPathIfFileURL","ranges":[{"startOffset":41621,"endOffset":41770,"count":486425},{"startOffset":41706,"endOffset":41727,"count":486389},{"startOffset":41727,"endOffset":41769,"count":36}],"isBlockCoverage":true},{"functionName":"constructUrl","ranges":[{"startOffset":41774,"endOffset":42494,"count":0}],"isBlockCoverage":false}]},{"scriptId":"31","url":"internal/querystring.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3010,"count":1}],"isBlockCoverage":false},{"functionName":"encodeStr","ranges":[{"startOffset":1250,"endOffset":2941,"count":0}],"isBlockCoverage":false}]},{"scriptId":"32","url":"path.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":43178,"count":1}],"isBlockCoverage":false},{"functionName":"isPathSeparator","ranges":[{"startOffset":1529,"endOffset":1635,"count":96827},{"startOffset":1600,"endOffset":1631,"count":96656}],"isBlockCoverage":true},{"functionName":"isPosixPathSeparator","ranges":[{"startOffset":1639,"endOffset":1718,"count":0}],"isBlockCoverage":false},{"functionName":"isWindowsDeviceRoot","ranges":[{"startOffset":1722,"endOffset":1895,"count":2791},{"startOffset":1795,"endOffset":1822,"count":2727},{"startOffset":1824,"endOffset":1891,"count":352},{"startOffset":1863,"endOffset":1890,"count":288}],"isBlockCoverage":true},{"functionName":"normalizeString","ranges":[{"startOffset":1961,"endOffset":3826,"count":1399},{"startOffset":2184,"endOffset":3808,"count":88947},{"startOffset":2219,"endOffset":2245,"count":87548},{"startOffset":2245,"endOffset":2340,"count":1399},{"startOffset":2290,"endOffset":2296,"count":1392},{"startOffset":2296,"endOffset":2340,"count":7},{"startOffset":2340,"endOffset":2375,"count":87555},{"startOffset":2375,"endOffset":3704,"count":9320},{"startOffset":2408,"endOffset":2421,"count":9071},{"startOffset":2423,"endOffset":2450,"count":280},{"startOffset":2450,"endOffset":3658,"count":9040},{"startOffset":2472,"endOffset":3439,"count":3},{"startOffset":2529,"endOffset":2588,"count":0},{"startOffset":2589,"endOffset":2648,"count":0},{"startOffset":2789,"endOffset":2868,"count":0},{"startOffset":3108,"endOffset":3283,"count":0},{"startOffset":3294,"endOffset":3430,"count":0},{"startOffset":3439,"endOffset":3658,"count":9037},{"startOffset":3487,"endOffset":3540,"count":7718},{"startOffset":3540,"endOffset":3601,"count":1319},{"startOffset":3658,"endOffset":3704,"count":9317},{"startOffset":3704,"endOffset":3803,"count":78235},{"startOffset":3732,"endOffset":3746,"count":1043},{"startOffset":3748,"endOffset":3771,"count":41},{"startOffset":3771,"endOffset":3803,"count":78194}],"isBlockCoverage":true},{"functionName":"_format","ranges":[{"startOffset":3830,"endOffset":4266,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":4324,"endOffset":8860,"count":1392},{"startOffset":4487,"endOffset":8393,"count":1665},{"startOffset":4525,"endOffset":4698,"count":1664},{"startOffset":4656,"endOffset":4689,"count":0},{"startOffset":4698,"endOffset":5590,"count":1},{"startOffset":4778,"endOffset":5590,"count":0},{"startOffset":5798,"endOffset":5963,"count":0},{"startOffset":5996,"endOffset":7343,"count":0},{"startOffset":7379,"endOffset":7434,"count":1630},{"startOffset":7436,"endOffset":7760,"count":1392},{"startOffset":7793,"endOffset":8078,"count":1392},{"startOffset":7835,"endOffset":8015,"count":0},{"startOffset":8110,"endOffset":8178,"count":0},{"startOffset":8317,"endOffset":8345,"count":1392},{"startOffset":8347,"endOffset":8377,"count":1392},{"startOffset":8804,"endOffset":8854,"count":0}],"isBlockCoverage":true},{"functionName":"normalize","ranges":[{"startOffset":8867,"endOffset":11703,"count":7},{"startOffset":8977,"endOffset":8988,"count":0},{"startOffset":9145,"endOffset":9302,"count":0},{"startOffset":9335,"endOffset":10884,"count":0},{"startOffset":11377,"endOffset":11388,"count":0},{"startOffset":11417,"endOffset":11431,"count":0},{"startOffset":11440,"endOffset":11451,"count":0},{"startOffset":11530,"endOffset":11543,"count":0},{"startOffset":11575,"endOffset":11630,"count":0},{"startOffset":11677,"endOffset":11697,"count":0}],"isBlockCoverage":true},{"functionName":"isAbsolute","ranges":[{"startOffset":11710,"endOffset":12091,"count":127},{"startOffset":11821,"endOffset":11834,"count":0},{"startOffset":11995,"endOffset":12038,"count":98},{"startOffset":12039,"endOffset":12084,"count":48}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":12098,"endOffset":14217,"count":7},{"startOffset":12149,"endOffset":12160,"count":0},{"startOffset":12243,"endOffset":12472,"count":19},{"startOffset":12384,"endOffset":12409,"count":7},{"startOffset":12409,"endOffset":12456,"count":12},{"startOffset":12513,"endOffset":12524,"count":0},{"startOffset":13397,"endOffset":13817,"count":0},{"startOffset":14012,"endOffset":14045,"count":0},{"startOffset":14125,"endOffset":14166,"count":0}],"isBlockCoverage":true},{"functionName":"relative","ranges":[{"startOffset":14437,"endOffset":18022,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":18029,"endOffset":19088,"count":722},{"startOffset":18148,"endOffset":18160,"count":0},{"startOffset":18191,"endOffset":18217,"count":0},{"startOffset":18311,"endOffset":18323,"count":0},{"startOffset":18387,"endOffset":18758,"count":0},{"startOffset":19063,"endOffset":19087,"count":0}],"isBlockCoverage":true},{"functionName":"dirname","ranges":[{"startOffset":19095,"endOffset":21507,"count":228},{"startOffset":19203,"endOffset":19214,"count":0},{"startOffset":19319,"endOffset":19483,"count":0},{"startOffset":19546,"endOffset":20848,"count":0},{"startOffset":20992,"endOffset":20995,"count":0},{"startOffset":21125,"endOffset":21366,"count":2371},{"startOffset":21175,"endOffset":21264,"count":228},{"startOffset":21264,"endOffset":21359,"count":2143},{"startOffset":21390,"endOffset":21470,"count":0}],"isBlockCoverage":true},{"functionName":"basename","ranges":[{"startOffset":21514,"endOffset":24230,"count":41},{"startOffset":21571,"endOffset":21598,"count":0},{"startOffset":22061,"endOffset":22078,"count":0},{"startOffset":22079,"endOffset":22107,"count":0},{"startOffset":22109,"endOffset":23618,"count":0},{"startOffset":23671,"endOffset":24148,"count":429},{"startOffset":23721,"endOffset":23952,"count":41},{"startOffset":23952,"endOffset":24141,"count":388},{"startOffset":23974,"endOffset":24141,"count":41},{"startOffset":24179,"endOffset":24189,"count":0}],"isBlockCoverage":true},{"functionName":"extname","ranges":[{"startOffset":24237,"endOffset":26308,"count":120},{"startOffset":24802,"endOffset":24853,"count":1},{"startOffset":24855,"endOffset":24893,"count":1},{"startOffset":24948,"endOffset":25916,"count":1350},{"startOffset":25024,"endOffset":25278,"count":119},{"startOffset":25250,"endOffset":25278,"count":0},{"startOffset":25278,"endOffset":25302,"count":1231},{"startOffset":25302,"endOffset":25464,"count":120},{"startOffset":25464,"endOffset":25495,"count":1231},{"startOffset":25495,"endOffset":25701,"count":119},{"startOffset":25627,"endOffset":25692,"count":0},{"startOffset":25701,"endOffset":25909,"count":1112},{"startOffset":25728,"endOffset":25909,"count":864},{"startOffset":25944,"endOffset":25966,"count":119},{"startOffset":25967,"endOffset":26062,"count":119},{"startOffset":26063,"endOffset":26236,"count":119},{"startOffset":26162,"endOffset":26195,"count":0},{"startOffset":26196,"endOffset":26235,"count":0},{"startOffset":26238,"endOffset":26264,"count":1},{"startOffset":26264,"endOffset":26307,"count":119}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":26354,"endOffset":30966,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":31095,"endOffset":32020,"count":0}],"isBlockCoverage":false},{"functionName":"normalize","ranges":[{"startOffset":32027,"endOffset":32624,"count":0}],"isBlockCoverage":false},{"functionName":"isAbsolute","ranges":[{"startOffset":32631,"endOffset":32763,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":32770,"endOffset":33201,"count":0}],"isBlockCoverage":false},{"functionName":"relative","ranges":[{"startOffset":33208,"endOffset":35486,"count":0}],"isBlockCoverage":false},{"functionName":"toNamespacedPath","ranges":[{"startOffset":35493,"endOffset":35572,"count":0}],"isBlockCoverage":false},{"functionName":"dirname","ranges":[{"startOffset":35579,"endOffset":36231,"count":0}],"isBlockCoverage":false},{"functionName":"basename","ranges":[{"startOffset":36238,"endOffset":38631,"count":0}],"isBlockCoverage":false},{"functionName":"extname","ranges":[{"startOffset":38638,"endOffset":40346,"count":0}],"isBlockCoverage":false},{"functionName":"parse","ranges":[{"startOffset":40391,"endOffset":42823,"count":0}],"isBlockCoverage":false}]},{"scriptId":"33","url":"internal/encoding.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":16444,"count":1}],"isBlockCoverage":false},{"functionName":"lazyBuffer","ranges":[{"startOffset":1006,"endOffset":1119,"count":0}],"isBlockCoverage":false},{"functionName":"validateEncoder","ranges":[{"startOffset":1123,"endOffset":1251,"count":0}],"isBlockCoverage":false},{"functionName":"validateDecoder","ranges":[{"startOffset":1255,"endOffset":1383,"count":36},{"startOffset":1338,"endOffset":1380,"count":0}],"isBlockCoverage":true},{"functionName":"validateArgument","ranges":[{"startOffset":1387,"endOffset":1557,"count":37},{"startOffset":1493,"endOffset":1554,"count":0}],"isBlockCoverage":true},{"functionName":"trimAsciiWhitespace","ranges":[{"startOffset":8522,"endOffset":9024,"count":0}],"isBlockCoverage":false},{"functionName":"getEncodingFromLabel","ranges":[{"startOffset":9028,"endOffset":9211,"count":1},{"startOffset":9141,"endOffset":9210,"count":0}],"isBlockCoverage":true},{"functionName":"TextEncoder","ranges":[{"startOffset":9287,"endOffset":9335,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":9341,"endOffset":9411,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":9417,"endOffset":9512,"count":0}],"isBlockCoverage":false},{"functionName":"encodeInto","ranges":[{"startOffset":9518,"endOffset":9835,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9841,"endOffset":10247,"count":0}],"isBlockCoverage":false},{"functionName":"makeTextDecoderICU","ranges":[{"startOffset":10636,"endOffset":12353,"count":1}],"isBlockCoverage":true},{"functionName":"TextDecoder","ranges":[{"startOffset":10781,"endOffset":11530,"count":1},{"startOffset":11019,"endOffset":11066,"count":0},{"startOffset":11154,"endOffset":11177,"count":0},{"startOffset":11219,"endOffset":11247,"count":0},{"startOffset":11354,"endOffset":11401,"count":0}],"isBlockCoverage":true},{"functionName":"decode","ranges":[{"startOffset":11540,"endOffset":12320,"count":36},{"startOffset":11644,"endOffset":11697,"count":0},{"startOffset":11734,"endOffset":11917,"count":0},{"startOffset":12069,"endOffset":12072,"count":0},{"startOffset":12193,"endOffset":12277,"count":0}],"isBlockCoverage":true},{"functionName":"makeTextDecoderJS","ranges":[{"startOffset":12357,"endOffset":14981,"count":0}],"isBlockCoverage":false},{"functionName":"get encoding","ranges":[{"startOffset":15112,"endOffset":15196,"count":0}],"isBlockCoverage":false},{"functionName":"get fatal","ranges":[{"startOffset":15205,"endOffset":15335,"count":0}],"isBlockCoverage":false},{"functionName":"get ignoreBOM","ranges":[{"startOffset":15344,"endOffset":15503,"count":0}],"isBlockCoverage":false},{"functionName":"ObjectGetOwnPropertyDescriptors","ranges":[{"startOffset":15512,"endOffset":16142,"count":0}],"isBlockCoverage":false}]},{"scriptId":"34","url":"timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9339,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1863,"endOffset":1890,"count":0}],"isBlockCoverage":false},{"functionName":"unenroll","ranges":[{"startOffset":2381,"endOffset":3600,"count":0}],"isBlockCoverage":false},{"functionName":"enroll","ranges":[{"startOffset":3812,"endOffset":4074,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout","ranges":[{"startOffset":4114,"endOffset":4787,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout.","ranges":[{"startOffset":4821,"endOffset":5060,"count":0}],"isBlockCoverage":false},{"functionName":"clearTimeout","ranges":[{"startOffset":5065,"endOffset":5444,"count":72},{"startOffset":5109,"endOffset":5128,"count":0},{"startOffset":5130,"endOffset":5201,"count":0},{"startOffset":5265,"endOffset":5441,"count":0}],"isBlockCoverage":true},{"functionName":"setInterval","ranges":[{"startOffset":5448,"endOffset":6123,"count":0}],"isBlockCoverage":false},{"functionName":"clearInterval","ranges":[{"startOffset":6127,"endOffset":6430,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.close","ranges":[{"startOffset":6460,"endOffset":6514,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.","ranges":[{"startOffset":6558,"endOffset":6726,"count":0}],"isBlockCoverage":false},{"functionName":"Immediate","ranges":[{"startOffset":6770,"endOffset":7106,"count":24}],"isBlockCoverage":true},{"functionName":"ref","ranges":[{"startOffset":7112,"endOffset":7292,"count":24}],"isBlockCoverage":true},{"functionName":"unref","ranges":[{"startOffset":7298,"endOffset":7481,"count":0}],"isBlockCoverage":false},{"functionName":"hasRef","ranges":[{"startOffset":7487,"endOffset":7530,"count":0}],"isBlockCoverage":false},{"functionName":"setImmediate","ranges":[{"startOffset":7538,"endOffset":8103,"count":24},{"startOffset":7694,"endOffset":7715,"count":0},{"startOffset":7770,"endOffset":7819,"count":0},{"startOffset":7825,"endOffset":8052,"count":0}],"isBlockCoverage":true},{"functionName":"setImmediate.","ranges":[{"startOffset":8139,"endOffset":8228,"count":0}],"isBlockCoverage":false},{"functionName":"clearImmediate","ranges":[{"startOffset":8233,"endOffset":8673,"count":0}],"isBlockCoverage":false}]},{"scriptId":"35","url":"internal/linkedlist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1166,"count":1}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":17,"endOffset":93,"count":0}],"isBlockCoverage":false},{"functionName":"peek","ranges":[{"startOffset":126,"endOffset":221,"count":0}],"isBlockCoverage":false},{"functionName":"remove","ranges":[{"startOffset":259,"endOffset":497,"count":0}],"isBlockCoverage":false},{"functionName":"append","ranges":[{"startOffset":556,"endOffset":1021,"count":0}],"isBlockCoverage":false},{"functionName":"isEmpty","ranges":[{"startOffset":1025,"endOffset":1087,"count":0}],"isBlockCoverage":false}]},{"scriptId":"36","url":"internal/timers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":18351,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4493,"endOffset":4520,"count":0}],"isBlockCoverage":false},{"functionName":"initAsyncResource","ranges":[{"startOffset":5495,"endOffset":5779,"count":24},{"startOffset":5726,"endOffset":5776,"count":0}],"isBlockCoverage":true},{"functionName":"Timeout","ranges":[{"startOffset":5868,"endOffset":6895,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.","ranges":[{"startOffset":7011,"endOffset":7190,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.refresh","ranges":[{"startOffset":7223,"endOffset":7328,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.unref","ranges":[{"startOffset":7359,"endOffset":7494,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.ref","ranges":[{"startOffset":7523,"endOffset":7658,"count":0}],"isBlockCoverage":false},{"functionName":"Timeout.hasRef","ranges":[{"startOffset":7690,"endOffset":7729,"count":0}],"isBlockCoverage":false},{"functionName":"TimersList","ranges":[{"startOffset":7734,"endOffset":8041,"count":0}],"isBlockCoverage":false},{"functionName":"TimersList.","ranges":[{"startOffset":8160,"endOffset":8339,"count":0}],"isBlockCoverage":false},{"functionName":"ImmediateList","ranges":[{"startOffset":8400,"endOffset":8471,"count":2}],"isBlockCoverage":true},{"functionName":"ImmediateList.append","ranges":[{"startOffset":8654,"endOffset":8829,"count":24},{"startOffset":8698,"endOffset":8770,"count":0}],"isBlockCoverage":true},{"functionName":"ImmediateList.remove","ranges":[{"startOffset":9011,"endOffset":9382,"count":0}],"isBlockCoverage":false},{"functionName":"incRefCount","ranges":[{"startOffset":9387,"endOffset":9466,"count":0}],"isBlockCoverage":false},{"functionName":"decRefCount","ranges":[{"startOffset":9470,"endOffset":9550,"count":0}],"isBlockCoverage":false},{"functionName":"active","ranges":[{"startOffset":9637,"endOffset":9693,"count":0}],"isBlockCoverage":false},{"functionName":"unrefActive","ranges":[{"startOffset":9844,"endOffset":9906,"count":0}],"isBlockCoverage":false},{"functionName":"insertGuarded","ranges":[{"startOffset":10133,"endOffset":10672,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":10676,"endOffset":11347,"count":0}],"isBlockCoverage":false},{"functionName":"setUnrefTimeout","ranges":[{"startOffset":11351,"endOffset":11667,"count":0}],"isBlockCoverage":false},{"functionName":"getTimerDuration","ranges":[{"startOffset":11737,"endOffset":12274,"count":0}],"isBlockCoverage":false},{"functionName":"compareTimersLists","ranges":[{"startOffset":12278,"endOffset":12492,"count":0}],"isBlockCoverage":false},{"functionName":"setPosition","ranges":[{"startOffset":12496,"endOffset":12569,"count":0}],"isBlockCoverage":false},{"functionName":"getTimerCallbacks","ranges":[{"startOffset":12573,"endOffset":17852,"count":1}],"isBlockCoverage":true},{"functionName":"processImmediate","ranges":[{"startOffset":12891,"endOffset":14753,"count":24},{"startOffset":12971,"endOffset":12996,"count":0},{"startOffset":13447,"endOffset":13462,"count":0},{"startOffset":13786,"endOffset":13885,"count":0},{"startOffset":14307,"endOffset":14332,"count":0},{"startOffset":14497,"endOffset":14518,"count":0},{"startOffset":14678,"endOffset":14707,"count":0}],"isBlockCoverage":true},{"functionName":"processTimers","ranges":[{"startOffset":14761,"endOffset":15253,"count":0}],"isBlockCoverage":false},{"functionName":"listOnTimeout","ranges":[{"startOffset":15259,"endOffset":17787,"count":0}],"isBlockCoverage":false}]},{"scriptId":"37","url":"internal/priority_queue.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3052,"count":1}],"isBlockCoverage":false},{"functionName":"PriorityQueue","ranges":[{"startOffset":589,"endOffset":838,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":844,"endOffset":886,"count":0}],"isBlockCoverage":false},{"functionName":"insert","ranges":[{"startOffset":892,"endOffset":1086,"count":0}],"isBlockCoverage":false},{"functionName":"peek","ranges":[{"startOffset":1092,"endOffset":1133,"count":0}],"isBlockCoverage":false},{"functionName":"percolateDown","ranges":[{"startOffset":1139,"endOffset":1829,"count":0}],"isBlockCoverage":false},{"functionName":"percolateUp","ranges":[{"startOffset":1835,"endOffset":2344,"count":0}],"isBlockCoverage":false},{"functionName":"removeAt","ranges":[{"startOffset":2350,"endOffset":2695,"count":0}],"isBlockCoverage":false},{"functionName":"remove","ranges":[{"startOffset":2701,"endOffset":2876,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":2882,"endOffset":3046,"count":0}],"isBlockCoverage":false}]},{"scriptId":"38","url":"internal/util/debuglog.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2918,"count":1}],"isBlockCoverage":false},{"functionName":"initializeDebugEnv","ranges":[{"startOffset":521,"endOffset":904,"count":1},{"startOffset":614,"endOffset":819,"count":0}],"isBlockCoverage":true},{"functionName":"emitWarningIfNeeded","ranges":[{"startOffset":982,"endOffset":1314,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":1318,"endOffset":1336,"count":11461}],"isBlockCoverage":true},{"functionName":"debuglogImpl","ranges":[{"startOffset":1340,"endOffset":1921,"count":11},{"startOffset":1416,"endOffset":1891,"count":7},{"startOffset":1436,"endOffset":1841,"count":0}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":1528,"endOffset":1833,"count":0}],"isBlockCoverage":false},{"functionName":"debuglog","ranges":[{"startOffset":2147,"endOffset":2855,"count":16}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":2179,"endOffset":2278,"count":11}],"isBlockCoverage":true},{"functionName":"debug","ranges":[{"startOffset":2294,"endOffset":2539,"count":11}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":2571,"endOffset":2644,"count":0}],"isBlockCoverage":false},{"functionName":"logger","ranges":[{"startOffset":2664,"endOffset":2691,"count":110}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2743,"endOffset":2779,"count":0}],"isBlockCoverage":false}]},{"scriptId":"39","url":"internal/process/execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7161,"count":1}],"isBlockCoverage":false},{"functionName":"tryGetCwd","ranges":[{"startOffset":551,"endOffset":890,"count":1},{"startOffset":615,"endOffset":887,"count":0}],"isBlockCoverage":true},{"functionName":"evalModule","ranges":[{"startOffset":894,"endOffset":1347,"count":0}],"isBlockCoverage":false},{"functionName":"evalScript","ranges":[{"startOffset":1351,"endOffset":2774,"count":0}],"isBlockCoverage":false},{"functionName":"setUncaughtExceptionCaptureCallback","ranges":[{"startOffset":2858,"endOffset":3570,"count":0}],"isBlockCoverage":false},{"functionName":"hasUncaughtExceptionCaptureCallback","ranges":[{"startOffset":3574,"endOffset":3677,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":3681,"endOffset":3699,"count":0}],"isBlockCoverage":false},{"functionName":"createOnGlobalUncaughtException","ranges":[{"startOffset":4252,"endOffset":6711,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4525,"endOffset":6707,"count":0}],"isBlockCoverage":false},{"functionName":"readStdin","ranges":[{"startOffset":6715,"endOffset":6931,"count":0}],"isBlockCoverage":false}]},{"scriptId":"40","url":"internal/process/warning.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5002,"count":1}],"isBlockCoverage":false},{"functionName":"lazyOption","ranges":[{"startOffset":295,"endOffset":864,"count":0}],"isBlockCoverage":false},{"functionName":"writeOut","ranges":[{"startOffset":970,"endOffset":1097,"count":0}],"isBlockCoverage":false},{"functionName":"writeToFile","ranges":[{"startOffset":1101,"endOffset":1504,"count":0}],"isBlockCoverage":false},{"functionName":"doEmitWarning","ranges":[{"startOffset":1508,"endOffset":1581,"count":0}],"isBlockCoverage":false},{"functionName":"onWarning","ranges":[{"startOffset":1623,"endOffset":2833,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarning","ranges":[{"startOffset":2961,"endOffset":4139,"count":0}],"isBlockCoverage":false},{"functionName":"emitWarningSync","ranges":[{"startOffset":4143,"endOffset":4239,"count":0}],"isBlockCoverage":false},{"functionName":"createWarningObject","ranges":[{"startOffset":4243,"endOffset":4924,"count":0}],"isBlockCoverage":false}]},{"scriptId":"41","url":"internal/bootstrap/switches/is_main_thread.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6632,"count":1}],"isBlockCoverage":true},{"functionName":"process._startProfilerIdleNotifier","ranges":[{"startOffset":525,"endOffset":533,"count":0}],"isBlockCoverage":false},{"functionName":"process._stopProfilerIdleNotifier","ranges":[{"startOffset":572,"endOffset":580,"count":0}],"isBlockCoverage":false},{"functionName":"defineStream","ranges":[{"startOffset":585,"endOffset":738,"count":3}],"isBlockCoverage":true},{"functionName":"createWritableStdioStream","ranges":[{"startOffset":1318,"endOffset":2943,"count":2},{"startOffset":1612,"endOffset":1802,"count":0},{"startOffset":1810,"endOffset":1822,"count":0},{"startOffset":1828,"endOffset":2552,"count":0},{"startOffset":2560,"endOffset":2813,"count":0}],"isBlockCoverage":true},{"functionName":"write","ranges":[{"startOffset":2753,"endOffset":2802,"count":0}],"isBlockCoverage":false},{"functionName":"dummyDestroy","ranges":[{"startOffset":2947,"endOffset":3343,"count":0}],"isBlockCoverage":false},{"functionName":"getStdout","ranges":[{"startOffset":3387,"endOffset":3728,"count":46},{"startOffset":3425,"endOffset":3439,"count":45},{"startOffset":3439,"endOffset":3727,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3673,"endOffset":3700,"count":0}],"isBlockCoverage":false},{"functionName":"getStderr","ranges":[{"startOffset":3732,"endOffset":4073,"count":70},{"startOffset":3770,"endOffset":3784,"count":69},{"startOffset":3784,"endOffset":4072,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4018,"endOffset":4045,"count":0}],"isBlockCoverage":false},{"functionName":"getStdin","ranges":[{"startOffset":4077,"endOffset":6480,"count":0}],"isBlockCoverage":false},{"functionName":"rawMethods.resetStdioForTesting","ranges":[{"startOffset":6546,"endOffset":6629,"count":0}],"isBlockCoverage":false}]},{"scriptId":"42","url":"internal/process/signal.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1177,"count":1}],"isBlockCoverage":false},{"functionName":"isSignal","ranges":[{"startOffset":220,"endOffset":318,"count":5}],"isBlockCoverage":true},{"functionName":"startListeningIfSignal","ranges":[{"startOffset":385,"endOffset":892,"count":5},{"startOffset":447,"endOffset":472,"count":2},{"startOffset":474,"endOffset":889,"count":1},{"startOffset":766,"endOffset":848,"count":0}],"isBlockCoverage":true},{"functionName":"stopListeningIfSignal","ranges":[{"startOffset":896,"endOffset":1097,"count":0}],"isBlockCoverage":false}]},{"scriptId":"43","url":"internal/bootstrap/switches/does_own_process_state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3611,"count":1},{"startOffset":298,"endOffset":598,"count":0}],"isBlockCoverage":true},{"functionName":"wrapPosixCredentialSetters","ranges":[{"startOffset":846,"endOffset":3020,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedChdir","ranges":[{"startOffset":3177,"endOffset":3353,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedUmask","ranges":[{"startOffset":3357,"endOffset":3498,"count":0}],"isBlockCoverage":false},{"functionName":"wrappedCwd","ranges":[{"startOffset":3502,"endOffset":3609,"count":3},{"startOffset":3556,"endOffset":3585,"count":1}],"isBlockCoverage":true}]},{"scriptId":"44","url":"internal/main/run_main_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":649,"count":1}],"isBlockCoverage":true}]},{"scriptId":"45","url":"internal/bootstrap/pre_execution.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":15401,"count":1}],"isBlockCoverage":true},{"functionName":"prepareMainThreadExecution","ranges":[{"startOffset":402,"endOffset":2588,"count":1},{"startOffset":1157,"endOffset":1384,"count":0}],"isBlockCoverage":true},{"functionName":"patchProcessObject","ranges":[{"startOffset":2592,"endOffset":4207,"count":1},{"startOffset":3208,"endOffset":3216,"count":0}],"isBlockCoverage":true},{"functionName":"addReadOnlyProcessAlias","ranges":[{"startOffset":4211,"endOffset":4478,"count":13},{"startOffset":4334,"endOffset":4475,"count":1}],"isBlockCoverage":true},{"functionName":"setupWarningHandler","ranges":[{"startOffset":4482,"endOffset":4719,"count":1}],"isBlockCoverage":true},{"functionName":"setupCoverageHooks","ranges":[{"startOffset":4835,"endOffset":5529,"count":1},{"startOffset":5315,"endOffset":5497,"count":0}],"isBlockCoverage":true},{"functionName":"setupStacktracePrinterOnSigint","ranges":[{"startOffset":5533,"endOffset":5766,"count":1},{"startOffset":5638,"endOffset":5765,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReport","ranges":[{"startOffset":5770,"endOffset":6003,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":5957,"endOffset":5993,"count":0}],"isBlockCoverage":false},{"functionName":"setupDebugEnv","ranges":[{"startOffset":6007,"endOffset":6244,"count":1},{"startOffset":6160,"endOffset":6241,"count":0}],"isBlockCoverage":true},{"functionName":"initializeReportSignalHandlers","ranges":[{"startOffset":6309,"endOffset":6448,"count":1}],"isBlockCoverage":true},{"functionName":"initializeHeapSnapshotSignalHandlers","ranges":[{"startOffset":6452,"endOffset":6771,"count":1},{"startOffset":6591,"endOffset":6770,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6728,"endOffset":6766,"count":0}],"isBlockCoverage":false},{"functionName":"setupTraceCategoryState","ranges":[{"startOffset":6775,"endOffset":7038,"count":1}],"isBlockCoverage":true},{"functionName":"setupInspectorHooks","ranges":[{"startOffset":7042,"endOffset":7636,"count":1}],"isBlockCoverage":true},{"functionName":"initializeDeprecations","ranges":[{"startOffset":7836,"endOffset":10442,"count":1},{"startOffset":8572,"endOffset":8882,"count":16},{"startOffset":8618,"endOffset":8855,"count":0},{"startOffset":9206,"endOffset":9386,"count":0},{"startOffset":9416,"endOffset":9818,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":10074,"endOffset":10112,"count":18}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":10119,"endOffset":10163,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":10296,"endOffset":10333,"count":220}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":10340,"endOffset":10383,"count":0}],"isBlockCoverage":false},{"functionName":"setupChildProcessIpcChannel","ranges":[{"startOffset":10446,"endOffset":11028,"count":1},{"startOffset":10523,"endOffset":11025,"count":0}],"isBlockCoverage":true},{"functionName":"initializeClusterIPC","ranges":[{"startOffset":11032,"endOffset":11309,"count":1},{"startOffset":11120,"endOffset":11306,"count":0}],"isBlockCoverage":true},{"functionName":"initializePolicy","ranges":[{"startOffset":11313,"endOffset":13184,"count":1},{"startOffset":11441,"endOffset":13181,"count":0}],"isBlockCoverage":true},{"functionName":"initializeWASI","ranges":[{"startOffset":13188,"endOffset":13422,"count":1}],"isBlockCoverage":true},{"functionName":"initializeCJSLoader","ranges":[{"startOffset":13426,"endOffset":13718,"count":1}],"isBlockCoverage":true},{"functionName":"initializeESMLoader","ranges":[{"startOffset":13722,"endOffset":14405,"count":1},{"startOffset":13935,"endOffset":13942,"count":0}],"isBlockCoverage":true},{"functionName":"initializeFrozenIntrinsics","ranges":[{"startOffset":14409,"endOffset":14672,"count":1},{"startOffset":14495,"endOffset":14669,"count":0}],"isBlockCoverage":true},{"functionName":"loadPreloadModules","ranges":[{"startOffset":14676,"endOffset":15034,"count":1},{"startOffset":14873,"endOffset":15031,"count":0}],"isBlockCoverage":true}]},{"scriptId":"46","url":"internal/options.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":934,"count":1}],"isBlockCoverage":false},{"functionName":"getOptionValue","ranges":[{"startOffset":182,"endOffset":327,"count":220},{"startOffset":271,"endOffset":300,"count":1},{"startOffset":300,"endOffset":326,"count":219}],"isBlockCoverage":true},{"functionName":"getAllowUnauthorized","ranges":[{"startOffset":331,"endOffset":808,"count":24},{"startOffset":471,"endOffset":497,"count":0},{"startOffset":499,"endOffset":776,"count":0}],"isBlockCoverage":true}]},{"scriptId":"47","url":"internal/inspector_async_hook.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2048,"count":1}],"isBlockCoverage":false},{"functionName":"lazyHookCreation","ranges":[{"startOffset":84,"endOffset":1304,"count":0}],"isBlockCoverage":false},{"functionName":"enable","ranges":[{"startOffset":1308,"endOffset":1905,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":1909,"endOffset":1998,"count":0}],"isBlockCoverage":false}]},{"scriptId":"48","url":"internal/source_map/source_map_cache.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8475,"count":1}],"isBlockCoverage":false},{"functionName":"ObjectGetValueSafe","ranges":[{"startOffset":322,"endOffset":503,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":689,"endOffset":716,"count":0}],"isBlockCoverage":false},{"functionName":"maybeCacheSourceMap","ranges":[{"startOffset":1331,"endOffset":2616,"count":76},{"startOffset":1445,"endOffset":1521,"count":1},{"startOffset":1560,"endOffset":1585,"count":0},{"startOffset":1588,"endOffset":1595,"count":0},{"startOffset":1725,"endOffset":1868,"count":0},{"startOffset":1975,"endOffset":2613,"count":0}],"isBlockCoverage":true},{"functionName":"dataFromUrl","ranges":[{"startOffset":2620,"endOffset":3168,"count":0}],"isBlockCoverage":false},{"functionName":"lineLengths","ranges":[{"startOffset":3363,"endOffset":3678,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromFile","ranges":[{"startOffset":3682,"endOffset":3962,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapFromDataUrl","ranges":[{"startOffset":4060,"endOffset":4714,"count":0}],"isBlockCoverage":false},{"functionName":"sourcesToAbsolute","ranges":[{"startOffset":4904,"endOffset":5367,"count":0}],"isBlockCoverage":false},{"functionName":"rekeySourceMap","ranges":[{"startOffset":5439,"endOffset":5639,"count":0}],"isBlockCoverage":false},{"functionName":"sourceMapCacheToObject","ranges":[{"startOffset":6086,"endOffset":6472,"count":0}],"isBlockCoverage":false},{"functionName":"appendCJSCache","ranges":[{"startOffset":6718,"endOffset":7390,"count":0}],"isBlockCoverage":false},{"functionName":"findSourceMap","ranges":[{"startOffset":7614,"endOffset":8359,"count":0}],"isBlockCoverage":false}]},{"scriptId":"49","url":"fs.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":60020,"count":1}],"isBlockCoverage":false},{"functionName":"showTruncateDeprecation","ranges":[{"startOffset":3977,"endOffset":4272,"count":0}],"isBlockCoverage":false},{"functionName":"maybeCallback","ranges":[{"startOffset":4276,"endOffset":4397,"count":0}],"isBlockCoverage":false},{"functionName":"makeCallback","ranges":[{"startOffset":4605,"endOffset":4754,"count":0}],"isBlockCoverage":false},{"functionName":"makeStatsCallback","ranges":[{"startOffset":4940,"endOffset":5164,"count":0}],"isBlockCoverage":false},{"functionName":"isFileType","ranges":[{"startOffset":5194,"endOffset":5461,"count":1069},{"startOffset":5398,"endOffset":5418,"count":127}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":5465,"endOffset":5836,"count":0}],"isBlockCoverage":false},{"functionName":"accessSync","ranges":[{"startOffset":5840,"endOffset":6085,"count":3}],"isBlockCoverage":true},{"functionName":"exists","ranges":[{"startOffset":6089,"endOffset":6339,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":6415,"endOffset":6495,"count":0}],"isBlockCoverage":false},{"functionName":"existsSync","ranges":[{"startOffset":6921,"endOffset":7469,"count":485996},{"startOffset":7030,"endOffset":7372,"count":0},{"startOffset":7374,"endOffset":7468,"count":0}],"isBlockCoverage":true},{"functionName":"readFileAfterOpen","ranges":[{"startOffset":7473,"endOffset":7767,"count":0}],"isBlockCoverage":false},{"functionName":"readFileAfterStat","ranges":[{"startOffset":7771,"endOffset":8295,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":8299,"endOffset":9150,"count":0}],"isBlockCoverage":false},{"functionName":"tryStatSync","ranges":[{"startOffset":9154,"endOffset":9392,"count":40},{"startOffset":9300,"endOffset":9312,"count":0},{"startOffset":9314,"endOffset":9372,"count":0}],"isBlockCoverage":true},{"functionName":"tryCreateBuffer","ranges":[{"startOffset":9396,"endOffset":9720,"count":40},{"startOffset":9518,"endOffset":9572,"count":0},{"startOffset":9663,"endOffset":9675,"count":0},{"startOffset":9677,"endOffset":9694,"count":0}],"isBlockCoverage":true},{"functionName":"tryReadSync","ranges":[{"startOffset":9724,"endOffset":9989,"count":40},{"startOffset":9929,"endOffset":9941,"count":0},{"startOffset":9943,"endOffset":9960,"count":0}],"isBlockCoverage":true},{"functionName":"readFileSync","ranges":[{"startOffset":9993,"endOffset":11425,"count":40},{"startOffset":10165,"endOffset":10171,"count":0},{"startOffset":10314,"endOffset":10317,"count":0},{"startOffset":10452,"endOffset":10477,"count":0},{"startOffset":10740,"endOffset":11105,"count":0},{"startOffset":11170,"endOffset":11269,"count":0},{"startOffset":11291,"endOffset":11333,"count":0}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":11429,"endOffset":11626,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":11630,"endOffset":11779,"count":40}],"isBlockCoverage":true},{"functionName":"open","ranges":[{"startOffset":11783,"endOffset":12382,"count":0}],"isBlockCoverage":false},{"functionName":"openSync","ranges":[{"startOffset":12388,"endOffset":12795,"count":40}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":12908,"endOffset":14468,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":14746,"endOffset":15700,"count":40},{"startOffset":14867,"endOffset":15021,"count":0},{"startOffset":15076,"endOffset":15099,"count":0},{"startOffset":15193,"endOffset":15214,"count":0},{"startOffset":15249,"endOffset":15382,"count":0}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":15704,"endOffset":16150,"count":0}],"isBlockCoverage":false},{"functionName":"readvSync","ranges":[{"startOffset":16298,"endOffset":16620,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":16772,"endOffset":18082,"count":0}],"isBlockCoverage":false},{"functionName":"writeSync","ranges":[{"startOffset":18368,"endOffset":19261,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":19326,"endOffset":19770,"count":0}],"isBlockCoverage":false},{"functionName":"writevSync","ranges":[{"startOffset":19906,"endOffset":20232,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":20236,"endOffset":20626,"count":0}],"isBlockCoverage":false},{"functionName":"renameSync","ranges":[{"startOffset":20630,"endOffset":20984,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":20988,"endOffset":21630,"count":0}],"isBlockCoverage":false},{"functionName":"truncateSync","ranges":[{"startOffset":21634,"endOffset":22056,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":22060,"endOffset":22413,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncateSync","ranges":[{"startOffset":22417,"endOffset":22644,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadRimraf","ranges":[{"startOffset":22650,"endOffset":22772,"count":0}],"isBlockCoverage":false},{"functionName":"rmdir","ranges":[{"startOffset":22776,"endOffset":23440,"count":0}],"isBlockCoverage":false},{"functionName":"rmdirSync","ranges":[{"startOffset":23444,"endOffset":23895,"count":0}],"isBlockCoverage":false},{"functionName":"rm","ranges":[{"startOffset":23899,"endOffset":24250,"count":0}],"isBlockCoverage":false},{"functionName":"rmSync","ranges":[{"startOffset":24254,"endOffset":24429,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":24433,"endOffset":24612,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasyncSync","ranges":[{"startOffset":24616,"endOffset":24771,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":24775,"endOffset":24946,"count":0}],"isBlockCoverage":false},{"functionName":"fsyncSync","ranges":[{"startOffset":24950,"endOffset":25097,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":25101,"endOffset":25905,"count":0}],"isBlockCoverage":false},{"functionName":"mkdirSync","ranges":[{"startOffset":25909,"endOffset":26704,"count":0}],"isBlockCoverage":false},{"functionName":"readdir","ranges":[{"startOffset":26708,"endOffset":27308,"count":0}],"isBlockCoverage":false},{"functionName":"readdirSync","ranges":[{"startOffset":27312,"endOffset":27747,"count":0}],"isBlockCoverage":false},{"functionName":"fstat","ranges":[{"startOffset":27751,"endOffset":28101,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":28105,"endOffset":28491,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":28495,"endOffset":28879,"count":0}],"isBlockCoverage":false},{"functionName":"fstatSync","ranges":[{"startOffset":28883,"endOffset":29131,"count":0}],"isBlockCoverage":false},{"functionName":"lstatSync","ranges":[{"startOffset":29135,"endOffset":29452,"count":0}],"isBlockCoverage":false},{"functionName":"statSync","ranges":[{"startOffset":29456,"endOffset":29770,"count":186}],"isBlockCoverage":true},{"functionName":"readlink","ranges":[{"startOffset":29774,"endOffset":30129,"count":0}],"isBlockCoverage":false},{"functionName":"readlinkSync","ranges":[{"startOffset":30133,"endOffset":30472,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":30476,"endOffset":32126,"count":0}],"isBlockCoverage":false},{"functionName":"symlinkSync","ranges":[{"startOffset":32130,"endOffset":32806,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":32810,"endOffset":33223,"count":0}],"isBlockCoverage":false},{"functionName":"linkSync","ranges":[{"startOffset":33227,"endOffset":33686,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":33690,"endOffset":33923,"count":0}],"isBlockCoverage":false},{"functionName":"unlinkSync","ranges":[{"startOffset":33927,"endOffset":34118,"count":0}],"isBlockCoverage":false},{"functionName":"fchmod","ranges":[{"startOffset":34122,"endOffset":34372,"count":0}],"isBlockCoverage":false},{"functionName":"fchmodSync","ranges":[{"startOffset":34376,"endOffset":34576,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":34580,"endOffset":35032,"count":0}],"isBlockCoverage":false},{"functionName":"lchmodSync","ranges":[{"startOffset":35036,"endOffset":35370,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":35376,"endOffset":35660,"count":0}],"isBlockCoverage":false},{"functionName":"chmodSync","ranges":[{"startOffset":35664,"endOffset":35906,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":35910,"endOffset":36259,"count":0}],"isBlockCoverage":false},{"functionName":"lchownSync","ranges":[{"startOffset":36263,"endOffset":36570,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":36574,"endOffset":36889,"count":0}],"isBlockCoverage":false},{"functionName":"fchownSync","ranges":[{"startOffset":36893,"endOffset":37160,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":37164,"endOffset":37513,"count":0}],"isBlockCoverage":false},{"functionName":"chownSync","ranges":[{"startOffset":37517,"endOffset":37822,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":37826,"endOffset":38177,"count":0}],"isBlockCoverage":false},{"functionName":"utimesSync","ranges":[{"startOffset":38181,"endOffset":38470,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":38474,"endOffset":38791,"count":0}],"isBlockCoverage":false},{"functionName":"futimesSync","ranges":[{"startOffset":38795,"endOffset":39062,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":39066,"endOffset":39422,"count":0}],"isBlockCoverage":false},{"functionName":"lutimesSync","ranges":[{"startOffset":39426,"endOffset":39738,"count":0}],"isBlockCoverage":false},{"functionName":"writeAll","ranges":[{"startOffset":39742,"endOffset":40415,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":40419,"endOffset":41170,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileSync","ranges":[{"startOffset":41174,"endOffset":41908,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":41912,"endOffset":42364,"count":0}],"isBlockCoverage":false},{"functionName":"appendFileSync","ranges":[{"startOffset":42368,"endOffset":42758,"count":0}],"isBlockCoverage":false},{"functionName":"watch","ranges":[{"startOffset":42762,"endOffset":43680,"count":0}],"isBlockCoverage":false},{"functionName":"watchFile","ranges":[{"startOffset":43721,"endOffset":44872,"count":0}],"isBlockCoverage":false},{"functionName":"unwatchFile","ranges":[{"startOffset":44876,"endOffset":45585,"count":0}],"isBlockCoverage":false},{"functionName":"splitRoot","ranges":[{"startOffset":45809,"endOffset":45877,"count":80}],"isBlockCoverage":true},{"functionName":"splitRoot","ranges":[{"startOffset":45904,"endOffset":46088,"count":0}],"isBlockCoverage":false},{"functionName":"encodeRealpathResult","ranges":[{"startOffset":46096,"endOffset":46391,"count":80},{"startOffset":46182,"endOffset":46212,"count":0},{"startOffset":46233,"endOffset":46390,"count":0}],"isBlockCoverage":true},{"functionName":"nextPart","ranges":[{"startOffset":46519,"endOffset":46771,"count":578},{"startOffset":46576,"endOffset":46750,"count":5330},{"startOffset":46695,"endOffset":46723,"count":4832},{"startOffset":46734,"endOffset":46743,"count":498},{"startOffset":46750,"endOffset":46770,"count":80}],"isBlockCoverage":true},{"functionName":"nextPart","ranges":[{"startOffset":46797,"endOffset":46850,"count":0}],"isBlockCoverage":false},{"functionName":"realpathSync","ranges":[{"startOffset":46896,"endOffset":50891,"count":164},{"startOffset":47033,"endOffset":47053,"count":0},{"startOffset":47228,"endOffset":47265,"count":84},{"startOffset":47265,"endOffset":48179,"count":80},{"startOffset":48179,"endOffset":50804,"count":578},{"startOffset":48295,"endOffset":48415,"count":80},{"startOffset":48415,"endOffset":48545,"count":498},{"startOffset":48671,"endOffset":48814,"count":451},{"startOffset":48764,"endOffset":48790,"count":0},{"startOffset":48814,"endOffset":48897,"count":127},{"startOffset":48929,"endOffset":48980,"count":0},{"startOffset":48980,"endOffset":50302,"count":127},{"startOffset":49446,"endOffset":50295,"count":0},{"startOffset":50302,"endOffset":50607,"count":0},{"startOffset":50609,"endOffset":50799,"count":0},{"startOffset":50804,"endOffset":50890,"count":80}],"isBlockCoverage":true},{"functionName":"realpathSync.native","ranges":[{"startOffset":50919,"endOffset":51165,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":51172,"endOffset":54732,"count":0}],"isBlockCoverage":false},{"functionName":"realpath.native","ranges":[{"startOffset":54756,"endOffset":55033,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":55038,"endOffset":55520,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtempSync","ranges":[{"startOffset":55526,"endOffset":56013,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":56019,"endOffset":56592,"count":0}],"isBlockCoverage":false},{"functionName":"copyFileSync","ranges":[{"startOffset":56598,"endOffset":56981,"count":0}],"isBlockCoverage":false},{"functionName":"lazyLoadStreams","ranges":[{"startOffset":56985,"endOffset":57184,"count":12},{"startOffset":57034,"endOffset":57181,"count":1}],"isBlockCoverage":true},{"functionName":"createReadStream","ranges":[{"startOffset":57188,"endOffset":57296,"count":0}],"isBlockCoverage":false},{"functionName":"createWriteStream","ranges":[{"startOffset":57300,"endOffset":57410,"count":0}],"isBlockCoverage":false},{"functionName":"get ReadStream","ranges":[{"startOffset":58725,"endOffset":58796,"count":3}],"isBlockCoverage":true},{"functionName":"set ReadStream","ranges":[{"startOffset":58803,"endOffset":58852,"count":0}],"isBlockCoverage":false},{"functionName":"get WriteStream","ranges":[{"startOffset":58859,"endOffset":58932,"count":3}],"isBlockCoverage":true},{"functionName":"set WriteStream","ranges":[{"startOffset":58939,"endOffset":58990,"count":0}],"isBlockCoverage":false},{"functionName":"get FileReadStream","ranges":[{"startOffset":59132,"endOffset":59211,"count":3}],"isBlockCoverage":true},{"functionName":"set FileReadStream","ranges":[{"startOffset":59218,"endOffset":59275,"count":0}],"isBlockCoverage":false},{"functionName":"get FileWriteStream","ranges":[{"startOffset":59282,"endOffset":59363,"count":3}],"isBlockCoverage":true},{"functionName":"set FileWriteStream","ranges":[{"startOffset":59370,"endOffset":59429,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":59879,"endOffset":60008,"count":3},{"startOffset":59926,"endOffset":59977,"count":1}],"isBlockCoverage":true}]},{"scriptId":"50","url":"internal/fs/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":22407,"count":1}],"isBlockCoverage":false},{"functionName":"lazyLoadFs","ranges":[{"startOffset":2587,"endOffset":2671,"count":0}],"isBlockCoverage":false},{"functionName":"assertEncoding","ranges":[{"startOffset":2675,"endOffset":2826,"count":204},{"startOffset":2727,"endOffset":2758,"count":40},{"startOffset":2760,"endOffset":2823,"count":0}],"isBlockCoverage":true},{"functionName":"Dirent","ranges":[{"startOffset":2848,"endOffset":2926,"count":0}],"isBlockCoverage":false},{"functionName":"isDirectory","ranges":[{"startOffset":2932,"endOffset":2995,"count":0}],"isBlockCoverage":false},{"functionName":"isFile","ranges":[{"startOffset":3001,"endOffset":3060,"count":0}],"isBlockCoverage":false},{"functionName":"isBlockDevice","ranges":[{"startOffset":3066,"endOffset":3133,"count":0}],"isBlockCoverage":false},{"functionName":"isCharacterDevice","ranges":[{"startOffset":3139,"endOffset":3209,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbolicLink","ranges":[{"startOffset":3215,"endOffset":3282,"count":0}],"isBlockCoverage":false},{"functionName":"isFIFO","ranges":[{"startOffset":3288,"endOffset":3347,"count":0}],"isBlockCoverage":false},{"functionName":"isSocket","ranges":[{"startOffset":3353,"endOffset":3416,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats","ranges":[{"startOffset":3465,"endOffset":3547,"count":0}],"isBlockCoverage":false},{"functionName":"DirentFromStats.","ranges":[{"startOffset":3699,"endOffset":3750,"count":0}],"isBlockCoverage":false},{"functionName":"copyObject","ranges":[{"startOffset":3758,"endOffset":3891,"count":0}],"isBlockCoverage":false},{"functionName":"join","ranges":[{"startOffset":3945,"endOffset":4573,"count":0}],"isBlockCoverage":false},{"functionName":"getDirents","ranges":[{"startOffset":4577,"endOffset":5715,"count":0}],"isBlockCoverage":false},{"functionName":"getDirent","ranges":[{"startOffset":5719,"endOffset":6467,"count":0}],"isBlockCoverage":false},{"functionName":"getOptions","ranges":[{"startOffset":6471,"endOffset":7028,"count":240},{"startOffset":6567,"endOffset":6606,"count":204},{"startOffset":6608,"endOffset":6642,"count":36},{"startOffset":6642,"endOffset":6681,"count":204},{"startOffset":6681,"endOffset":6803,"count":40},{"startOffset":6803,"endOffset":6927,"count":164},{"startOffset":6842,"endOffset":6927,"count":0},{"startOffset":6927,"endOffset":7027,"count":204}],"isBlockCoverage":true},{"functionName":"handleErrorFromBinding","ranges":[{"startOffset":7032,"endOffset":7574,"count":516},{"startOffset":7103,"endOffset":7242,"count":29},{"startOffset":7242,"endOffset":7275,"count":487},{"startOffset":7275,"endOffset":7571,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7719,"endOffset":8292,"count":429},{"startOffset":7954,"endOffset":7974,"count":0},{"startOffset":8029,"endOffset":8078,"count":0},{"startOffset":8099,"endOffset":8291,"count":0}],"isBlockCoverage":true},{"functionName":"preprocessSymlinkDestination","ranges":[{"startOffset":8298,"endOffset":8986,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase","ranges":[{"startOffset":9022,"endOffset":9341,"count":186}],"isBlockCoverage":true},{"functionName":"StatsBase.isDirectory","ranges":[{"startOffset":9379,"endOffset":9438,"count":162}],"isBlockCoverage":true},{"functionName":"StatsBase.isFile","ranges":[{"startOffset":9472,"endOffset":9531,"count":142}],"isBlockCoverage":true},{"functionName":"StatsBase.isBlockDevice","ranges":[{"startOffset":9572,"endOffset":9631,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isCharacterDevice","ranges":[{"startOffset":9676,"endOffset":9735,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSymbolicLink","ranges":[{"startOffset":9777,"endOffset":9836,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isFIFO","ranges":[{"startOffset":9870,"endOffset":9929,"count":0}],"isBlockCoverage":false},{"functionName":"StatsBase.isSocket","ranges":[{"startOffset":9965,"endOffset":10025,"count":0}],"isBlockCoverage":false},{"functionName":"msFromTimeSpec","ranges":[{"startOffset":10156,"endOffset":10240,"count":636}],"isBlockCoverage":true},{"functionName":"nsFromTimeSpecBigInt","ranges":[{"startOffset":10244,"endOffset":10329,"count":0}],"isBlockCoverage":false},{"functionName":"dateFromMs","ranges":[{"startOffset":10686,"endOffset":10752,"count":744}],"isBlockCoverage":true},{"functionName":"BigIntStats","ranges":[{"startOffset":10756,"endOffset":11510,"count":0}],"isBlockCoverage":false},{"functionName":"BigIntStats._checkModeProperty","ranges":[{"startOffset":11673,"endOffset":11925,"count":0}],"isBlockCoverage":false},{"functionName":"Stats","ranges":[{"startOffset":11930,"endOffset":12460,"count":186}],"isBlockCoverage":true},{"functionName":"Stats._checkModeProperty","ranges":[{"startOffset":12810,"endOffset":13046,"count":304},{"startOffset":12929,"endOffset":12998,"count":0}],"isBlockCoverage":true},{"functionName":"getStatsFromBinding","ranges":[{"startOffset":13051,"endOffset":14152,"count":159},{"startOffset":13133,"endOffset":13669,"count":0}],"isBlockCoverage":true},{"functionName":"stringToFlags","ranges":[{"startOffset":14156,"endOffset":15403,"count":76},{"startOffset":14222,"endOffset":14247,"count":0},{"startOffset":14272,"endOffset":14300,"count":0},{"startOffset":14361,"endOffset":14372,"count":0},{"startOffset":14395,"endOffset":14432,"count":0},{"startOffset":14438,"endOffset":14464,"count":0},{"startOffset":14470,"endOffset":14482,"count":0},{"startOffset":14505,"endOffset":14541,"count":0},{"startOffset":14549,"endOffset":14596,"count":0},{"startOffset":14602,"endOffset":14613,"count":0},{"startOffset":14636,"endOffset":14693,"count":0},{"startOffset":14701,"endOffset":14747,"count":0},{"startOffset":14753,"endOffset":14764,"count":0},{"startOffset":14787,"endOffset":14842,"count":0},{"startOffset":14850,"endOffset":14898,"count":0},{"startOffset":14904,"endOffset":14915,"count":0},{"startOffset":14938,"endOffset":14996,"count":0},{"startOffset":15002,"endOffset":15013,"count":0},{"startOffset":15036,"endOffset":15094,"count":0},{"startOffset":15102,"endOffset":15149,"count":0},{"startOffset":15155,"endOffset":15166,"count":0},{"startOffset":15189,"endOffset":15245,"count":0},{"startOffset":15251,"endOffset":15262,"count":0},{"startOffset":15285,"endOffset":15341,"count":0},{"startOffset":15346,"endOffset":15402,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15451,"endOffset":15828,"count":0}],"isBlockCoverage":false},{"functionName":"toUnixTimestamp","ranges":[{"startOffset":15893,"endOffset":16352,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":16409,"endOffset":16799,"count":112},{"startOffset":16466,"endOffset":16535,"count":0},{"startOffset":16557,"endOffset":16626,"count":0},{"startOffset":16668,"endOffset":16794,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":16861,"endOffset":17143,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":17188,"endOffset":17468,"count":486425},{"startOffset":17251,"endOffset":17273,"count":485996},{"startOffset":17275,"endOffset":17363,"count":485996},{"startOffset":17363,"endOffset":17443,"count":429},{"startOffset":17443,"endOffset":17465,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17515,"endOffset":17654,"count":486261}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17704,"endOffset":18045,"count":0}],"isBlockCoverage":false},{"functionName":"warnOnNonPortableTemplate","ranges":[{"startOffset":18090,"endOffset":18556,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":18807,"endOffset":19450,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":19502,"endOffset":20109,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":20164,"endOffset":20659,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":20702,"endOffset":21302,"count":3},{"startOffset":20833,"endOffset":20934,"count":0},{"startOffset":21023,"endOffset":21068,"count":0},{"startOffset":21069,"endOffset":21083,"count":0},{"startOffset":21085,"endOffset":21301,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":21367,"endOffset":21758,"count":0}],"isBlockCoverage":false}]},{"scriptId":"51","url":"internal/fs/dir.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6802,"count":1}],"isBlockCoverage":false},{"functionName":"Dir","ranges":[{"startOffset":1135,"endOffset":1930,"count":0}],"isBlockCoverage":false},{"functionName":"get path","ranges":[{"startOffset":1936,"endOffset":1981,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":1987,"endOffset":2056,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2062,"endOffset":3483,"count":0}],"isBlockCoverage":false},{"functionName":"readSync","ranges":[{"startOffset":3489,"endOffset":4274,"count":0}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":4280,"endOffset":4862,"count":0}],"isBlockCoverage":false},{"functionName":"closeSync","ranges":[{"startOffset":4868,"endOffset":5259,"count":0}],"isBlockCoverage":false},{"functionName":"entries","ranges":[{"startOffset":5265,"endOffset":5540,"count":0}],"isBlockCoverage":false},{"functionName":"opendir","ranges":[{"startOffset":5711,"endOffset":6362,"count":0}],"isBlockCoverage":false},{"functionName":"opendirSync","ranges":[{"startOffset":6366,"endOffset":6739,"count":0}],"isBlockCoverage":false}]},{"scriptId":"52","url":"internal/modules/cjs/helpers.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5616,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":704,"endOffset":731,"count":1}],"isBlockCoverage":true},{"functionName":"loadNativeModule","ranges":[{"startOffset":890,"endOffset":1103,"count":61},{"startOffset":996,"endOffset":1100,"count":20}],"isBlockCoverage":true},{"functionName":"makeRequireFunction","ranges":[{"startOffset":1358,"endOffset":3426,"count":40},{"startOffset":1476,"endOffset":2790,"count":0}],"isBlockCoverage":true},{"functionName":"require","ranges":[{"startOffset":1618,"endOffset":2784,"count":0}],"isBlockCoverage":false},{"functionName":"require","ranges":[{"startOffset":2813,"endOffset":2877,"count":108}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":2889,"endOffset":3038,"count":0}],"isBlockCoverage":false},{"functionName":"paths","ranges":[{"startOffset":3076,"endOffset":3201,"count":0}],"isBlockCoverage":false},{"functionName":"stripBOM","ranges":[{"startOffset":3618,"endOffset":3749,"count":0}],"isBlockCoverage":false},{"functionName":"addBuiltinLibsToObject","ranges":[{"startOffset":3753,"endOffset":5263,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeReferrerURL","ranges":[{"startOffset":5267,"endOffset":5460,"count":76},{"startOffset":5375,"endOffset":5423,"count":40},{"startOffset":5423,"endOffset":5459,"count":36}],"isBlockCoverage":true}]},{"scriptId":"53","url":"url.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":30926,"count":1}],"isBlockCoverage":false},{"functionName":"Url","ranges":[{"startOffset":1905,"endOffset":2194,"count":28}],"isBlockCoverage":true},{"functionName":"urlParse","ranges":[{"startOffset":3954,"endOffset":4174,"count":27},{"startOffset":4043,"endOffset":4054,"count":0}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":4200,"endOffset":13940,"count":27},{"startOffset":4662,"endOffset":5895,"count":1697},{"startOffset":5122,"endOffset":5194,"count":27},{"startOffset":5150,"endOffset":5159,"count":0},{"startOffset":5194,"endOffset":5349,"count":1670},{"startOffset":5210,"endOffset":5289,"count":0},{"startOffset":5305,"endOffset":5349,"count":0},{"startOffset":5442,"endOffset":5817,"count":1267},{"startOffset":5476,"endOffset":5518,"count":0},{"startOffset":5553,"endOffset":5620,"count":12},{"startOffset":5630,"endOffset":5801,"count":0},{"startOffset":5817,"endOffset":5890,"count":430},{"startOffset":5859,"endOffset":5890,"count":0},{"startOffset":6147,"endOffset":6197,"count":0},{"startOffset":6206,"endOffset":6261,"count":0},{"startOffset":6268,"endOffset":6604,"count":0},{"startOffset":6638,"endOffset":6649,"count":25},{"startOffset":6651,"endOffset":7315,"count":25},{"startOffset":6757,"endOffset":7310,"count":0},{"startOffset":7798,"endOffset":7806,"count":25},{"startOffset":7807,"endOffset":7832,"count":0},{"startOffset":8153,"endOffset":8194,"count":0},{"startOffset":8732,"endOffset":10022,"count":480},{"startOffset":8780,"endOffset":8794,"count":0},{"startOffset":8804,"endOffset":8824,"count":0},{"startOffset":8834,"endOffset":8860,"count":0},{"startOffset":8870,"endOffset":8886,"count":0},{"startOffset":8896,"endOffset":8919,"count":0},{"startOffset":8929,"endOffset":8947,"count":0},{"startOffset":8957,"endOffset":8980,"count":0},{"startOffset":8990,"endOffset":9010,"count":0},{"startOffset":9020,"endOffset":9049,"count":0},{"startOffset":9059,"endOffset":9089,"count":0},{"startOffset":9099,"endOffset":9124,"count":0},{"startOffset":9134,"endOffset":9162,"count":0},{"startOffset":9172,"endOffset":9195,"count":0},{"startOffset":9205,"endOffset":9234,"count":0},{"startOffset":9244,"endOffset":9268,"count":0},{"startOffset":9278,"endOffset":9464,"count":0},{"startOffset":9474,"endOffset":9489,"count":0},{"startOffset":9499,"endOffset":9523,"count":27},{"startOffset":9533,"endOffset":9724,"count":27},{"startOffset":9734,"endOffset":9963,"count":0},{"startOffset":10009,"endOffset":10015,"count":27},{"startOffset":10063,"endOffset":10160,"count":0},{"startOffset":10186,"endOffset":10250,"count":0},{"startOffset":10551,"endOffset":10570,"count":0},{"startOffset":10782,"endOffset":10862,"count":0},{"startOffset":11025,"endOffset":11060,"count":0},{"startOffset":11632,"endOffset":11649,"count":0},{"startOffset":11685,"endOffset":11690,"count":0},{"startOffset":11831,"endOffset":11957,"count":0},{"startOffset":12357,"endOffset":12600,"count":1028},{"startOffset":12426,"endOffset":12502,"count":0},{"startOffset":12540,"endOffset":12561,"count":12},{"startOffset":12563,"endOffset":12595,"count":12},{"startOffset":12630,"endOffset":13055,"count":12},{"startOffset":12760,"endOffset":12887,"count":0},{"startOffset":12915,"endOffset":13050,"count":0},{"startOffset":13055,"endOffset":13214,"count":15},{"startOffset":13083,"endOffset":13214,"count":0},{"startOffset":13267,"endOffset":13311,"count":12},{"startOffset":13286,"endOffset":13310,"count":0},{"startOffset":13348,"endOffset":13361,"count":12},{"startOffset":13362,"endOffset":13371,"count":15},{"startOffset":13397,"endOffset":13458,"count":15},{"startOffset":13458,"endOffset":13534,"count":12},{"startOffset":13617,"endOffset":13649,"count":0},{"startOffset":13703,"endOffset":13717,"count":0},{"startOffset":13750,"endOffset":13755,"count":0},{"startOffset":13784,"endOffset":13789,"count":15}],"isBlockCoverage":true},{"functionName":"getHostname","ranges":[{"startOffset":13945,"endOffset":14689,"count":27},{"startOffset":14035,"endOffset":14670,"count":453},{"startOffset":14126,"endOffset":14153,"count":399},{"startOffset":14155,"endOffset":14196,"count":54},{"startOffset":14197,"endOffset":14275,"count":0},{"startOffset":14276,"endOffset":14334,"count":0},{"startOffset":14335,"endOffset":14385,"count":0},{"startOffset":14386,"endOffset":14428,"count":0},{"startOffset":14429,"endOffset":14477,"count":0},{"startOffset":14478,"endOffset":14512,"count":0},{"startOffset":14566,"endOffset":14665,"count":0}],"isBlockCoverage":true},{"functionName":"autoEscapeStr","ranges":[{"startOffset":15768,"endOffset":16496,"count":27},{"startOffset":15888,"endOffset":16264,"count":1028},{"startOffset":16042,"endOffset":16259,"count":0},{"startOffset":16341,"endOffset":16495,"count":0}],"isBlockCoverage":true},{"functionName":"urlFormat","ranges":[{"startOffset":16545,"endOffset":17272,"count":25},{"startOffset":16810,"endOffset":16854,"count":0},{"startOffset":16917,"endOffset":17042,"count":0},{"startOffset":17081,"endOffset":17239,"count":0}],"isBlockCoverage":true},{"functionName":"format","ranges":[{"startOffset":17998,"endOffset":20499,"count":54},{"startOffset":18062,"endOffset":18139,"count":0},{"startOffset":18174,"endOffset":18179,"count":0},{"startOffset":18213,"endOffset":18218,"count":0},{"startOffset":18344,"endOffset":18562,"count":0},{"startOffset":18592,"endOffset":18625,"count":24},{"startOffset":18627,"endOffset":18755,"count":0},{"startOffset":18786,"endOffset":18813,"count":30},{"startOffset":18796,"endOffset":18812,"count":0},{"startOffset":18814,"endOffset":18819,"count":30},{"startOffset":18903,"endOffset":18919,"count":0},{"startOffset":19012,"endOffset":19433,"count":1154},{"startOffset":19060,"endOffset":19232,"count":0},{"startOffset":19240,"endOffset":19421,"count":0},{"startOffset":19454,"endOffset":19596,"count":0},{"startOffset":19731,"endOffset":19763,"count":0},{"startOffset":19789,"endOffset":19796,"count":0},{"startOffset":19879,"endOffset":19905,"count":0},{"startOffset":19939,"endOffset":20227,"count":0},{"startOffset":20290,"endOffset":20325,"count":0},{"startOffset":20332,"endOffset":20350,"count":0},{"startOffset":20365,"endOffset":20411,"count":24},{"startOffset":20418,"endOffset":20440,"count":0}],"isBlockCoverage":true},{"functionName":"urlResolve","ranges":[{"startOffset":20504,"endOffset":20605,"count":1}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":20633,"endOffset":20736,"count":1}],"isBlockCoverage":true},{"functionName":"urlResolveObject","ranges":[{"startOffset":20741,"endOffset":20887,"count":0}],"isBlockCoverage":false},{"functionName":"resolveObject","ranges":[{"startOffset":20921,"endOffset":30315,"count":1},{"startOffset":20993,"endOffset":21087,"count":0},{"startOffset":21199,"endOffset":21266,"count":12},{"startOffset":21490,"endOffset":21552,"count":0},{"startOffset":21657,"endOffset":22201,"count":0},{"startOffset":22271,"endOffset":24093,"count":0},{"startOffset":24216,"endOffset":24277,"count":0},{"startOffset":24314,"endOffset":24328,"count":0},{"startOffset":24329,"endOffset":24387,"count":0},{"startOffset":24492,"endOffset":24497,"count":0},{"startOffset":24570,"endOffset":24575,"count":0},{"startOffset":24962,"endOffset":25544,"count":0},{"startOffset":25612,"endOffset":25635,"count":0},{"startOffset":25807,"endOffset":25834,"count":0},{"startOffset":26109,"endOffset":27482,"count":0},{"startOffset":27509,"endOffset":27817,"count":0},{"startOffset":28072,"endOffset":28088,"count":0},{"startOffset":28089,"endOffset":28110,"count":0},{"startOffset":28358,"endOffset":28591,"count":3},{"startOffset":28407,"endOffset":28445,"count":0},{"startOffset":28470,"endOffset":28521,"count":0},{"startOffset":28535,"endOffset":28586,"count":0},{"startOffset":28684,"endOffset":28701,"count":0},{"startOffset":28703,"endOffset":28766,"count":0},{"startOffset":28808,"endOffset":28863,"count":0},{"startOffset":28865,"endOffset":28897,"count":0},{"startOffset":28967,"endOffset":28996,"count":0},{"startOffset":29039,"endOffset":29093,"count":0},{"startOffset":29146,"endOffset":29665,"count":0},{"startOffset":29695,"endOffset":29729,"count":0},{"startOffset":29767,"endOffset":29799,"count":0},{"startOffset":29826,"endOffset":29886,"count":0},{"startOffset":30005,"endOffset":30030,"count":0},{"startOffset":30088,"endOffset":30092,"count":0},{"startOffset":30130,"endOffset":30145,"count":0},{"startOffset":30240,"endOffset":30259,"count":0}],"isBlockCoverage":true},{"functionName":"parseHost","ranges":[{"startOffset":30346,"endOffset":30630,"count":27},{"startOffset":30445,"endOffset":30592,"count":0}],"isBlockCoverage":true}]},{"scriptId":"54","url":"internal/idna.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":273,"count":1}],"isBlockCoverage":false}]},{"scriptId":"55","url":"internal/process/report.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3067,"count":1}],"isBlockCoverage":false},{"functionName":"writeReport","ranges":[{"startOffset":313,"endOffset":833,"count":0}],"isBlockCoverage":false},{"functionName":"getReport","ranges":[{"startOffset":838,"endOffset":1081,"count":0}],"isBlockCoverage":false},{"functionName":"get directory","ranges":[{"startOffset":1086,"endOffset":1139,"count":0}],"isBlockCoverage":false},{"functionName":"set directory","ranges":[{"startOffset":1144,"endOffset":1235,"count":0}],"isBlockCoverage":false},{"functionName":"get filename","ranges":[{"startOffset":1240,"endOffset":1291,"count":0}],"isBlockCoverage":false},{"functionName":"set filename","ranges":[{"startOffset":1296,"endOffset":1387,"count":0}],"isBlockCoverage":false},{"functionName":"get compact","ranges":[{"startOffset":1392,"endOffset":1441,"count":0}],"isBlockCoverage":false},{"functionName":"set compact","ranges":[{"startOffset":1446,"endOffset":1526,"count":0}],"isBlockCoverage":false},{"functionName":"get signal","ranges":[{"startOffset":1531,"endOffset":1578,"count":0}],"isBlockCoverage":false},{"functionName":"set signal","ranges":[{"startOffset":1583,"endOffset":1725,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnFatalError","ranges":[{"startOffset":1730,"endOffset":1804,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnFatalError","ranges":[{"startOffset":1809,"endOffset":1998,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnSignal","ranges":[{"startOffset":2003,"endOffset":2069,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnSignal","ranges":[{"startOffset":2074,"endOffset":2308,"count":0}],"isBlockCoverage":false},{"functionName":"get reportOnUncaughtException","ranges":[{"startOffset":2313,"endOffset":2401,"count":0}],"isBlockCoverage":false},{"functionName":"set reportOnUncaughtException","ranges":[{"startOffset":2406,"endOffset":2609,"count":0}],"isBlockCoverage":false},{"functionName":"addSignalHandler","ranges":[{"startOffset":2617,"endOffset":2795,"count":1},{"startOffset":2684,"endOffset":2792,"count":0}],"isBlockCoverage":true},{"functionName":"removeSignalHandler","ranges":[{"startOffset":2799,"endOffset":2928,"count":0}],"isBlockCoverage":false},{"functionName":"signalHandler","ranges":[{"startOffset":2932,"endOffset":3008,"count":0}],"isBlockCoverage":false}]},{"scriptId":"56","url":"internal/modules/cjs/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":39201,"count":1}],"isBlockCoverage":false},{"functionName":"get hasLoadedAnyUserCJSModule","ranges":[{"startOffset":1936,"endOffset":2005,"count":1}],"isBlockCoverage":true},{"functionName":"stat","ranges":[{"startOffset":4403,"endOffset":4729,"count":216},{"startOffset":4503,"endOffset":4600,"count":201},{"startOffset":4581,"endOffset":4595,"count":54},{"startOffset":4600,"endOffset":4676,"count":162},{"startOffset":4676,"endOffset":4708,"count":147},{"startOffset":4708,"endOffset":4728,"count":162}],"isBlockCoverage":true},{"functionName":"updateChildren","ranges":[{"startOffset":4733,"endOffset":4912,"count":91},{"startOffset":4807,"endOffset":4825,"count":86},{"startOffset":4843,"endOffset":4881,"count":86},{"startOffset":4853,"endOffset":4880,"count":48},{"startOffset":4888,"endOffset":4909,"count":86}],"isBlockCoverage":true},{"functionName":"Module","ranges":[{"startOffset":4916,"endOffset":5162,"count":41}],"isBlockCoverage":true},{"functionName":"wrap","ranges":[{"startOffset":5634,"endOffset":5713,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":5866,"endOffset":5991,"count":0}],"isBlockCoverage":false},{"functionName":"defineProperty","ranges":[{"startOffset":5998,"endOffset":6134,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6185,"endOffset":6215,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6222,"endOffset":6279,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6333,"endOffset":6371,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6378,"endOffset":6443,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6517,"endOffset":6544,"count":1}],"isBlockCoverage":true},{"functionName":"readPackage","ranges":[{"startOffset":6908,"endOffset":7747,"count":196},{"startOffset":7092,"endOffset":7108,"count":170},{"startOffset":7108,"endOffset":7209,"count":26},{"startOffset":7209,"endOffset":7215,"count":0},{"startOffset":7216,"endOffset":7231,"count":26},{"startOffset":7260,"endOffset":7329,"count":12},{"startOffset":7329,"endOffset":7625,"count":14},{"startOffset":7625,"endOffset":7744,"count":0}],"isBlockCoverage":true},{"functionName":"readPackageScope","ranges":[{"startOffset":7751,"endOffset":8309,"count":87},{"startOffset":7889,"endOffset":8244,"count":167},{"startOffset":8100,"endOffset":8113,"count":0},{"startOffset":8179,"endOffset":8239,"count":87},{"startOffset":8244,"endOffset":8308,"count":0}],"isBlockCoverage":true},{"functionName":"tryPackage","ranges":[{"startOffset":8313,"endOffset":9649,"count":15},{"startOffset":8438,"endOffset":8521,"count":1},{"startOffset":8521,"endOffset":8618,"count":14},{"startOffset":8618,"endOffset":8663,"count":1},{"startOffset":8664,"endOffset":8732,"count":0},{"startOffset":8759,"endOffset":9628,"count":0},{"startOffset":9628,"endOffset":9648,"count":14}],"isBlockCoverage":true},{"functionName":"tryFile","ranges":[{"startOffset":10001,"endOffset":10218,"count":92},{"startOffset":10091,"endOffset":10098,"count":52},{"startOffset":10098,"endOffset":10123,"count":40},{"startOffset":10123,"endOffset":10133,"count":0},{"startOffset":10135,"endOffset":10180,"count":0},{"startOffset":10180,"endOffset":10217,"count":40}],"isBlockCoverage":true},{"functionName":"toRealPath","ranges":[{"startOffset":10222,"endOffset":10357,"count":46}],"isBlockCoverage":true},{"functionName":"tryExtensions","ranges":[{"startOffset":10435,"endOffset":10650,"count":44},{"startOffset":10518,"endOffset":10630,"count":78},{"startOffset":10593,"endOffset":10625,"count":27},{"startOffset":10630,"endOffset":10649,"count":17}],"isBlockCoverage":true},{"functionName":"findLongestRegisteredExtension","ranges":[{"startOffset":10743,"endOffset":11191,"count":41},{"startOffset":11009,"endOffset":11018,"count":0},{"startOffset":11171,"endOffset":11190,"count":0}],"isBlockCoverage":true},{"functionName":"trySelfParentPath","ranges":[{"startOffset":11195,"endOffset":11496,"count":48},{"startOffset":11248,"endOffset":11261,"count":2},{"startOffset":11261,"endOffset":11323,"count":46},{"startOffset":11323,"endOffset":11493,"count":0}],"isBlockCoverage":true},{"functionName":"trySelf","ranges":[{"startOffset":11500,"endOffset":12374,"count":48},{"startOffset":11560,"endOffset":11573,"count":2},{"startOffset":11573,"endOffset":11645,"count":46},{"startOffset":11645,"endOffset":11650,"count":0},{"startOffset":11664,"endOffset":11692,"count":46},{"startOffset":11694,"endOffset":11707,"count":46},{"startOffset":11707,"endOffset":12371,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExports","ranges":[{"startOffset":12541,"endOffset":13298,"count":42},{"startOffset":12746,"endOffset":12751,"count":28},{"startOffset":12772,"endOffset":12779,"count":28},{"startOffset":12779,"endOffset":12875,"count":14},{"startOffset":12875,"endOffset":12898,"count":13},{"startOffset":12899,"endOffset":12927,"count":13},{"startOffset":12929,"endOffset":13295,"count":0}],"isBlockCoverage":true},{"functionName":"Module._findPath","ranges":[{"startOffset":13367,"endOffset":16076,"count":49},{"startOffset":13479,"endOffset":13504,"count":6},{"startOffset":13504,"endOffset":13569,"count":43},{"startOffset":13544,"endOffset":13569,"count":0},{"startOffset":13648,"endOffset":13658,"count":35},{"startOffset":13659,"endOffset":13679,"count":14},{"startOffset":13747,"endOffset":13760,"count":1},{"startOffset":13760,"endOffset":13887,"count":48},{"startOffset":13912,"endOffset":13989,"count":47},{"startOffset":13989,"endOffset":14054,"count":48},{"startOffset":14054,"endOffset":16054,"count":82},{"startOffset":14155,"endOffset":14175,"count":76},{"startOffset":14177,"endOffset":14186,"count":34},{"startOffset":14186,"endOffset":14216,"count":48},{"startOffset":14216,"endOffset":14350,"count":42},{"startOffset":14320,"endOffset":14343,"count":0},{"startOffset":14350,"endOffset":14485,"count":48},{"startOffset":14485,"endOffset":15692,"count":47},{"startOffset":14508,"endOffset":15461,"count":5},{"startOffset":14542,"endOffset":14716,"count":4},{"startOffset":14577,"endOffset":14639,"count":0},{"startOffset":14716,"endOffset":15452,"count":1},{"startOffset":14748,"endOffset":15390,"count":0},{"startOffset":15486,"endOffset":15685,"count":42},{"startOffset":15692,"endOffset":15714,"count":48},{"startOffset":15714,"endOffset":15725,"count":18},{"startOffset":15727,"endOffset":15948,"count":15},{"startOffset":15840,"endOffset":15878,"count":1},{"startOffset":15948,"endOffset":15970,"count":48},{"startOffset":15970,"endOffset":16049,"count":45},{"startOffset":16054,"endOffset":16075,"count":3}],"isBlockCoverage":true},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":16327,"endOffset":17757,"count":45},{"startOffset":16805,"endOffset":16864,"count":0},{"startOffset":16873,"endOffset":16904,"count":0},{"startOffset":17005,"endOffset":17731,"count":2936},{"startOffset":17383,"endOffset":17424,"count":2624},{"startOffset":17425,"endOffset":17458,"count":2624},{"startOffset":17460,"endOffset":17594,"count":357},{"startOffset":17499,"endOffset":17550,"count":312},{"startOffset":17594,"endOffset":17724,"count":2579},{"startOffset":17614,"endOffset":17724,"count":898},{"startOffset":17650,"endOffset":17678,"count":586},{"startOffset":17678,"endOffset":17715,"count":312}],"isBlockCoverage":true},{"functionName":"Module._nodeModulePaths","ranges":[{"startOffset":17852,"endOffset":18925,"count":0}],"isBlockCoverage":false},{"functionName":"Module._resolveLookupPaths","ranges":[{"startOffset":18962,"endOffset":20137,"count":48},{"startOffset":19041,"endOffset":19110,"count":0},{"startOffset":19182,"endOffset":19337,"count":29},{"startOffset":19248,"endOffset":19283,"count":28},{"startOffset":19284,"endOffset":19336,"count":0},{"startOffset":19339,"endOffset":19592,"count":19},{"startOffset":19397,"endOffset":19412,"count":17},{"startOffset":19413,"endOffset":19435,"count":17},{"startOffset":19437,"endOffset":19488,"count":17},{"startOffset":19580,"endOffset":19586,"count":0},{"startOffset":19592,"endOffset":19663,"count":29},{"startOffset":19664,"endOffset":19683,"count":29},{"startOffset":19685,"endOffset":19941,"count":0},{"startOffset":19941,"endOffset":20136,"count":29}],"isBlockCoverage":true},{"functionName":"emitCircularRequireWarning","ranges":[{"startOffset":20142,"endOffset":20330,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20528,"endOffset":20907,"count":0}],"isBlockCoverage":false},{"functionName":"getOwnPropertyDescriptor","ranges":[{"startOffset":20914,"endOffset":21160,"count":0}],"isBlockCoverage":false},{"functionName":"getExportsForCircularRequire","ranges":[{"startOffset":21368,"endOffset":22033,"count":1}],"isBlockCoverage":true},{"functionName":"Module._load","ranges":[{"startOffset":22454,"endOffset":25560,"count":110},{"startOffset":22539,"endOffset":23333,"count":108},{"startOffset":22966,"endOffset":23328,"count":44},{"startOffset":23161,"endOffset":23211,"count":1},{"startOffset":23211,"endOffset":23258,"count":43},{"startOffset":23258,"endOffset":23328,"count":0},{"startOffset":23333,"endOffset":23492,"count":66},{"startOffset":23492,"endOffset":23862,"count":6},{"startOffset":23574,"endOffset":23807,"count":3},{"startOffset":23710,"endOffset":23760,"count":0},{"startOffset":23807,"endOffset":23857,"count":3},{"startOffset":23862,"endOffset":23928,"count":60},{"startOffset":23928,"endOffset":23955,"count":19},{"startOffset":23957,"endOffset":23976,"count":19},{"startOffset":23976,"endOffset":24078,"count":41},{"startOffset":24078,"endOffset":24109,"count":38},{"startOffset":24128,"endOffset":24190,"count":0},{"startOffset":24190,"endOffset":24259,"count":41},{"startOffset":24259,"endOffset":24330,"count":39},{"startOffset":24330,"endOffset":24576,"count":41},{"startOffset":24576,"endOffset":24773,"count":0},{"startOffset":24773,"endOffset":25529,"count":41},{"startOffset":24869,"endOffset":25263,"count":0},{"startOffset":25288,"endOffset":25331,"count":40},{"startOffset":25332,"endOffset":25446,"count":40},{"startOffset":25448,"endOffset":25524,"count":1},{"startOffset":25529,"endOffset":25559,"count":41}],"isBlockCoverage":true},{"functionName":"Module._resolveFilename","ranges":[{"startOffset":25591,"endOffset":28542,"count":67},{"startOffset":25687,"endOffset":25714,"count":19},{"startOffset":25714,"endOffset":25768,"count":48},{"startOffset":25768,"endOffset":25787,"count":0},{"startOffset":25789,"endOffset":26802,"count":0},{"startOffset":26802,"endOffset":26889,"count":48},{"startOffset":26889,"endOffset":26907,"count":46},{"startOffset":26909,"endOffset":27506,"count":46},{"startOffset":26940,"endOffset":27501,"count":0},{"startOffset":27506,"endOffset":27672,"count":48},{"startOffset":27672,"endOffset":27873,"count":0},{"startOffset":27873,"endOffset":28024,"count":48},{"startOffset":28024,"endOffset":28040,"count":45},{"startOffset":28040,"endOffset":28140,"count":3},{"startOffset":28140,"endOffset":28200,"count":11},{"startOffset":28181,"endOffset":28193,"count":0},{"startOffset":28200,"endOffset":28541,"count":3}],"isBlockCoverage":true},{"functionName":"finalizeEsmResolution","ranges":[{"startOffset":28547,"endOffset":29278,"count":0}],"isBlockCoverage":false},{"functionName":"createEsmNotFoundErr","ranges":[{"startOffset":29282,"endOffset":29580,"count":0}],"isBlockCoverage":false},{"functionName":"Module.load","ranges":[{"startOffset":29672,"endOffset":30499,"count":41},{"startOffset":30000,"endOffset":30030,"count":0},{"startOffset":30032,"endOffset":30080,"count":0},{"startOffset":30361,"endOffset":30410,"count":0}],"isBlockCoverage":true},{"functionName":"Module.require","ranges":[{"startOffset":30622,"endOffset":30933,"count":108},{"startOffset":30684,"endOffset":30805,"count":0}],"isBlockCoverage":true},{"functionName":"wrapSafe","ranges":[{"startOffset":31121,"endOffset":32284,"count":40},{"startOffset":31195,"endOffset":31546,"count":0},{"startOffset":31855,"endOffset":31968,"count":0}],"isBlockCoverage":true},{"functionName":"importModuleDynamically","ranges":[{"startOffset":31382,"endOffset":31531,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":32100,"endOffset":32243,"count":0}],"isBlockCoverage":false},{"functionName":"Module._compile","ranges":[{"startOffset":32490,"endOffset":34384,"count":40},{"startOffset":32581,"endOffset":32752,"count":0},{"startOffset":32939,"endOffset":32963,"count":0},{"startOffset":32965,"endOffset":33722,"count":0},{"startOffset":33952,"endOffset":33974,"count":2},{"startOffset":34000,"endOffset":34142,"count":0},{"startOffset":34346,"endOffset":34363,"count":2}],"isBlockCoverage":true},{"functionName":"Module._extensions..js","ranges":[{"startOffset":34446,"endOffset":35241,"count":40},{"startOffset":34669,"endOffset":34908,"count":0},{"startOffset":35051,"endOffset":35067,"count":3},{"startOffset":35069,"endOffset":35137,"count":3},{"startOffset":35137,"endOffset":35199,"count":37}],"isBlockCoverage":true},{"functionName":"Module._extensions..json","ranges":[{"startOffset":35309,"endOffset":35687,"count":0}],"isBlockCoverage":false},{"functionName":"Module._extensions..node","ranges":[{"startOffset":35755,"endOffset":36081,"count":1},{"startOffset":35809,"endOffset":35969,"count":0}],"isBlockCoverage":true},{"functionName":"createRequireFromPath","ranges":[{"startOffset":36086,"endOffset":36525,"count":0}],"isBlockCoverage":false},{"functionName":"createRequire","ranges":[{"startOffset":36822,"endOffset":37392,"count":0}],"isBlockCoverage":false},{"functionName":"Module._initPaths","ranges":[{"startOffset":37457,"endOffset":38392,"count":1},{"startOffset":37525,"endOffset":37545,"count":0},{"startOffset":37601,"endOffset":37626,"count":0},{"startOffset":37856,"endOffset":37905,"count":0},{"startOffset":38132,"endOffset":38265,"count":0}],"isBlockCoverage":true},{"functionName":"pathsFilterCB","ranges":[{"startOffset":38185,"endOffset":38244,"count":0}],"isBlockCoverage":false},{"functionName":"Module._preloadModules","ranges":[{"startOffset":38422,"endOffset":38945,"count":0}],"isBlockCoverage":false},{"functionName":"syncBuiltinESMExports","ranges":[{"startOffset":38981,"endOffset":39143,"count":0}],"isBlockCoverage":false}]},{"scriptId":"57","url":"vm.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":13363,"count":1}],"isBlockCoverage":false},{"functionName":"Script","ranges":[{"startOffset":2055,"endOffset":4277,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":4283,"endOffset":4569,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":4575,"endOffset":4989,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":4995,"endOffset":5169,"count":0}],"isBlockCoverage":false},{"functionName":"validateContext","ranges":[{"startOffset":5176,"endOffset":5400,"count":0}],"isBlockCoverage":false},{"functionName":"getRunInContextArgs","ranges":[{"startOffset":5404,"endOffset":6018,"count":0}],"isBlockCoverage":false},{"functionName":"getContextOptions","ranges":[{"startOffset":6022,"endOffset":7116,"count":0}],"isBlockCoverage":false},{"functionName":"isContext","ranges":[{"startOffset":7120,"endOffset":7307,"count":0}],"isBlockCoverage":false},{"functionName":"createContext","ranges":[{"startOffset":7345,"endOffset":8519,"count":0}],"isBlockCoverage":false},{"functionName":"createScript","ranges":[{"startOffset":8523,"endOffset":8601,"count":0}],"isBlockCoverage":false},{"functionName":"sigintHandlersWrap","ranges":[{"startOffset":8759,"endOffset":9219,"count":0}],"isBlockCoverage":false},{"functionName":"runInContext","ranges":[{"startOffset":9223,"endOffset":9632,"count":0}],"isBlockCoverage":false},{"functionName":"runInNewContext","ranges":[{"startOffset":9636,"endOffset":9995,"count":0}],"isBlockCoverage":false},{"functionName":"runInThisContext","ranges":[{"startOffset":9999,"endOffset":10190,"count":0}],"isBlockCoverage":false},{"functionName":"compileFunction","ranges":[{"startOffset":10194,"endOffset":11991,"count":0}],"isBlockCoverage":false},{"functionName":"measureMemory","ranges":[{"startOffset":12280,"endOffset":12854,"count":0}],"isBlockCoverage":false}]},{"scriptId":"58","url":"internal/modules/package_json_reader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1016,"count":1}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":294,"endOffset":984,"count":38},{"startOffset":348,"endOffset":387,"count":5},{"startOffset":387,"endOffset":618,"count":33},{"startOffset":618,"endOffset":931,"count":18},{"startOffset":653,"endOffset":791,"count":1},{"startOffset":713,"endOffset":767,"count":0},{"startOffset":820,"endOffset":926,"count":0},{"startOffset":931,"endOffset":983,"count":33}],"isBlockCoverage":true}]},{"scriptId":"59","url":"internal/process/esm_loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2405,"count":1}],"isBlockCoverage":false},{"functionName":"exports.initializeImportMetaObject","ranges":[{"startOffset":419,"endOffset":723,"count":0}],"isBlockCoverage":false},{"functionName":"exports.importModuleDynamicallyCallback","ranges":[{"startOffset":770,"endOffset":1171,"count":0}],"isBlockCoverage":false},{"functionName":"initializeLoader","ranges":[{"startOffset":1241,"endOffset":2031,"count":1},{"startOffset":1431,"endOffset":2030,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1776,"endOffset":2024,"count":0}],"isBlockCoverage":true},{"functionName":"loadESM","ranges":[{"startOffset":2053,"endOffset":2402,"count":1},{"startOffset":2159,"endOffset":2399,"count":0}],"isBlockCoverage":true}]},{"scriptId":"60","url":"internal/modules/esm/loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8542,"count":1}],"isBlockCoverage":false},{"functionName":"Loader","ranges":[{"startOffset":1402,"endOffset":3212,"count":1}],"isBlockCoverage":true},{"functionName":"resolve","ranges":[{"startOffset":3218,"endOffset":3859,"count":120},{"startOffset":3326,"endOffset":3365,"count":119},{"startOffset":3546,"endOffset":3652,"count":0},{"startOffset":3727,"endOffset":3837,"count":0}],"isBlockCoverage":true},{"functionName":"getFormat","ranges":[{"startOffset":3865,"endOffset":4928,"count":120},{"startOffset":4025,"endOffset":4135,"count":0},{"startOffset":4218,"endOffset":4336,"count":0},{"startOffset":4370,"endOffset":4400,"count":2},{"startOffset":4400,"endOffset":4446,"count":118},{"startOffset":4446,"endOffset":4623,"count":0},{"startOffset":4623,"endOffset":4718,"count":118},{"startOffset":4719,"endOffset":4769,"count":0},{"startOffset":4777,"endOffset":4901,"count":0},{"startOffset":4901,"endOffset":4927,"count":118}],"isBlockCoverage":true},{"functionName":"eval","ranges":[{"startOffset":4934,"endOffset":5630,"count":0}],"isBlockCoverage":false},{"functionName":"import","ranges":[{"startOffset":5636,"endOffset":5811,"count":1},{"startOffset":5771,"endOffset":5810,"count":0}],"isBlockCoverage":true},{"functionName":"hook","ranges":[{"startOffset":5817,"endOffset":6808,"count":0}],"isBlockCoverage":false},{"functionName":"runGlobalPreloadCode","ranges":[{"startOffset":6814,"endOffset":7643,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleJob","ranges":[{"startOffset":7649,"endOffset":8460,"count":120},{"startOffset":7942,"endOffset":7979,"count":0},{"startOffset":8015,"endOffset":8026,"count":81},{"startOffset":8026,"endOffset":8071,"count":39},{"startOffset":8071,"endOffset":8115,"count":0},{"startOffset":8115,"endOffset":8221,"count":39},{"startOffset":8221,"endOffset":8252,"count":1},{"startOffset":8253,"endOffset":8287,"count":1}],"isBlockCoverage":true}]},{"scriptId":"61","url":"internal/modules/esm/module_map.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":911,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":181,"endOffset":208,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":433,"endOffset":509,"count":120}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":513,"endOffset":797,"count":39},{"startOffset":605,"endOffset":642,"count":0},{"startOffset":644,"endOffset":716,"count":0}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":801,"endOffset":877,"count":0}],"isBlockCoverage":false}]},{"scriptId":"62","url":"internal/modules/esm/module_job.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5935,"count":1}],"isBlockCoverage":false},{"functionName":"ModuleJob","ranges":[{"startOffset":866,"endOffset":2553,"count":39}],"isBlockCoverage":true},{"functionName":"link","ranges":[{"startOffset":1346,"endOffset":2170,"count":39}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1811,"endOffset":2043,"count":119}],"isBlockCoverage":true},{"functionName":"instantiate","ranges":[{"startOffset":2559,"endOffset":2709,"count":1}],"isBlockCoverage":true},{"functionName":"_instantiate","ranges":[{"startOffset":2715,"endOffset":5643,"count":1},{"startOffset":3203,"endOffset":3384,"count":0},{"startOffset":3444,"endOffset":5389,"count":0},{"startOffset":5438,"endOffset":5638,"count":39}],"isBlockCoverage":true},{"functionName":"addJobsToDependencyGraph","ranges":[{"startOffset":2816,"endOffset":3098,"count":120},{"startOffset":2878,"endOffset":2905,"count":81},{"startOffset":2905,"endOffset":3097,"count":39}],"isBlockCoverage":true},{"functionName":"run","ranges":[{"startOffset":5649,"endOffset":5851,"count":1},{"startOffset":5809,"endOffset":5850,"count":0}],"isBlockCoverage":true}]},{"scriptId":"63","url":"internal/modules/esm/resolve.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":29103,"count":1}],"isBlockCoverage":false},{"functionName":"getConditionsSet","ranges":[{"startOffset":1935,"endOffset":2296,"count":118},{"startOffset":2045,"endOffset":2259,"count":0}],"isBlockCoverage":true},{"functionName":"tryStatSync","ranges":[{"startOffset":2412,"endOffset":2523,"count":186},{"startOffset":2483,"endOffset":2520,"count":27}],"isBlockCoverage":true},{"functionName":"getPackageConfig","ranges":[{"startOffset":2527,"endOffset":3915,"count":281},{"startOffset":2657,"endOffset":2685,"count":269},{"startOffset":2685,"endOffset":2770,"count":12},{"startOffset":2770,"endOffset":3057,"count":5},{"startOffset":3057,"endOffset":3132,"count":7},{"startOffset":3132,"endOffset":3317,"count":0},{"startOffset":3317,"endOffset":3443,"count":7},{"startOffset":3443,"endOffset":3462,"count":0},{"startOffset":3464,"endOffset":3518,"count":7},{"startOffset":3518,"endOffset":3535,"count":2},{"startOffset":3535,"endOffset":3569,"count":7},{"startOffset":3569,"endOffset":3586,"count":0},{"startOffset":3586,"endOffset":3666,"count":7},{"startOffset":3666,"endOffset":3688,"count":2},{"startOffset":3690,"endOffset":3704,"count":2},{"startOffset":3704,"endOffset":3914,"count":7}],"isBlockCoverage":true},{"functionName":"getPackageScopeConfig","ranges":[{"startOffset":3919,"endOffset":5048,"count":139},{"startOffset":4039,"endOffset":4706,"count":260},{"startOffset":4182,"endOffset":4188,"count":0},{"startOffset":4350,"endOffset":4371,"count":139},{"startOffset":4371,"endOffset":4695,"count":121},{"startOffset":4695,"endOffset":4701,"count":0},{"startOffset":4706,"endOffset":5047,"count":0}],"isBlockCoverage":true},{"functionName":"fileExists","ranges":[{"startOffset":5314,"endOffset":5395,"count":24}],"isBlockCoverage":true},{"functionName":"legacyMainResolve","ranges":[{"startOffset":5399,"endOffset":7117,"count":20},{"startOffset":5716,"endOffset":5745,"count":16},{"startOffset":5745,"endOffset":5895,"count":4},{"startOffset":5895,"endOffset":6671,"count":0},{"startOffset":6697,"endOffset":7116,"count":0}],"isBlockCoverage":true},{"functionName":"resolveExtensionsWithTryExactName","ranges":[{"startOffset":7121,"endOffset":7255,"count":0}],"isBlockCoverage":false},{"functionName":"resolveExtensions","ranges":[{"startOffset":7314,"endOffset":7578,"count":0}],"isBlockCoverage":false},{"functionName":"resolveIndex","ranges":[{"startOffset":7582,"endOffset":7671,"count":0}],"isBlockCoverage":false},{"functionName":"finalizeResolution","ranges":[{"startOffset":7712,"endOffset":8951,"count":118},{"startOffset":7827,"endOffset":7972,"count":0},{"startOffset":8089,"endOffset":8509,"count":0},{"startOffset":8576,"endOffset":8613,"count":0},{"startOffset":8651,"endOffset":8782,"count":0},{"startOffset":8809,"endOffset":8926,"count":0}],"isBlockCoverage":true},{"functionName":"throwImportNotDefined","ranges":[{"startOffset":8955,"endOffset":9174,"count":0}],"isBlockCoverage":false},{"functionName":"throwExportsNotFound","ranges":[{"startOffset":9178,"endOffset":9381,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidSubpath","ranges":[{"startOffset":9385,"endOffset":9740,"count":0}],"isBlockCoverage":false},{"functionName":"throwInvalidPackageTarget","ranges":[{"startOffset":9744,"endOffset":10136,"count":0}],"isBlockCoverage":false},{"functionName":"resolvePackageTargetString","ranges":[{"startOffset":10242,"endOffset":11947,"count":1},{"startOffset":10383,"endOffset":10394,"count":0},{"startOffset":10395,"endOffset":10431,"count":0},{"startOffset":10438,"endOffset":10511,"count":0},{"startOffset":10563,"endOffset":11119,"count":0},{"startOffset":11209,"endOffset":11282,"count":0},{"startOffset":11512,"endOffset":11585,"count":0},{"startOffset":11627,"endOffset":11946,"count":0}],"isBlockCoverage":true},{"functionName":"isArrayIndex","ranges":[{"startOffset":12008,"endOffset":12152,"count":0}],"isBlockCoverage":false},{"functionName":"resolvePackageTarget","ranges":[{"startOffset":12156,"endOffset":14351,"count":1},{"startOffset":12487,"endOffset":14350,"count":0}],"isBlockCoverage":true},{"functionName":"isConditionalExportsMainSugar","ranges":[{"startOffset":14355,"endOffset":15311,"count":1},{"startOffset":14462,"endOffset":14486,"count":0},{"startOffset":14500,"endOffset":14555,"count":0},{"startOffset":14557,"endOffset":15310,"count":0}],"isBlockCoverage":true},{"functionName":"packageExportsResolve","ranges":[{"startOffset":15506,"endOffset":17436,"count":1},{"startOffset":16057,"endOffset":16116,"count":0},{"startOffset":16160,"endOffset":17435,"count":0}],"isBlockCoverage":true},{"functionName":"packageImportsResolve","ranges":[{"startOffset":17440,"endOffset":19486,"count":0}],"isBlockCoverage":false},{"functionName":"getPackageType","ranges":[{"startOffset":19490,"endOffset":19606,"count":118}],"isBlockCoverage":true},{"functionName":"packageResolve","ranges":[{"startOffset":19727,"endOffset":22636,"count":21},{"startOffset":19932,"endOffset":20168,"count":0},{"startOffset":20233,"endOffset":20285,"count":0},{"startOffset":20432,"endOffset":20554,"count":230},{"startOffset":20494,"endOffset":20549,"count":0},{"startOffset":20583,"endOffset":20705,"count":0},{"startOffset":20768,"endOffset":20822,"count":0},{"startOffset":21042,"endOffset":21089,"count":0},{"startOffset":21090,"endOffset":21123,"count":0},{"startOffset":21125,"endOffset":21262,"count":0},{"startOffset":21444,"endOffset":22422,"count":44},{"startOffset":21629,"endOffset":21913,"count":23},{"startOffset":21708,"endOffset":21746,"count":0},{"startOffset":21913,"endOffset":22063,"count":21},{"startOffset":22063,"endOffset":22096,"count":1},{"startOffset":22105,"endOffset":22226,"count":1},{"startOffset":22226,"endOffset":22329,"count":20},{"startOffset":22329,"endOffset":22422,"count":0},{"startOffset":22422,"endOffset":22635,"count":0}],"isBlockCoverage":true},{"functionName":"isBareSpecifier","ranges":[{"startOffset":22640,"endOffset":22752,"count":0}],"isBlockCoverage":false},{"functionName":"isRelativeSpecifier","ranges":[{"startOffset":22756,"endOffset":23035,"count":118},{"startOffset":22827,"endOffset":23015,"count":96},{"startOffset":22886,"endOffset":22898,"count":35},{"startOffset":22898,"endOffset":23010,"count":61},{"startOffset":23015,"endOffset":23034,"count":22}],"isBlockCoverage":true},{"functionName":"shouldBeTreatedAsRelativeOrAbsolutePath","ranges":[{"startOffset":23039,"endOffset":23226,"count":118},{"startOffset":23126,"endOffset":23139,"count":0},{"startOffset":23169,"endOffset":23181,"count":0}],"isBlockCoverage":true},{"functionName":"moduleResolve","ranges":[{"startOffset":23347,"endOffset":23934,"count":118},{"startOffset":23579,"endOffset":23627,"count":96},{"startOffset":23627,"endOffset":23885,"count":22},{"startOffset":23659,"endOffset":23739,"count":0},{"startOffset":23803,"endOffset":23880,"count":21}],"isBlockCoverage":true},{"functionName":"resolveAsCommonJS","ranges":[{"startOffset":24088,"endOffset":25533,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolve","ranges":[{"startOffset":25537,"endOffset":28943,"count":120},{"startOffset":25671,"endOffset":25690,"count":119},{"startOffset":25692,"endOffset":26315,"count":0},{"startOffset":26412,"endOffset":26470,"count":0},{"startOffset":26476,"endOffset":26484,"count":119},{"startOffset":26499,"endOffset":26529,"count":1},{"startOffset":26536,"endOffset":26562,"count":0},{"startOffset":26577,"endOffset":26607,"count":1},{"startOffset":26608,"endOffset":26638,"count":0},{"startOffset":26645,"endOffset":26694,"count":0},{"startOffset":26748,"endOffset":26808,"count":2},{"startOffset":26808,"endOffset":26826,"count":118},{"startOffset":26826,"endOffset":26874,"count":117},{"startOffset":26876,"endOffset":26967,"count":0},{"startOffset":26967,"endOffset":27028,"count":118},{"startOffset":27028,"endOffset":27566,"count":1},{"startOffset":27522,"endOffset":27561,"count":0},{"startOffset":27566,"endOffset":27701,"count":118},{"startOffset":27701,"endOffset":28526,"count":0},{"startOffset":28526,"endOffset":28543,"count":118},{"startOffset":28543,"endOffset":28566,"count":1},{"startOffset":28567,"endOffset":28586,"count":117},{"startOffset":28588,"endOffset":28909,"count":118},{"startOffset":28835,"endOffset":28840,"count":0},{"startOffset":28909,"endOffset":28942,"count":118}],"isBlockCoverage":true}]},{"scriptId":"64","url":"internal/modules/esm/get_format.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2574,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetFormat","ranges":[{"startOffset":1169,"endOffset":2526,"count":120},{"startOffset":1283,"endOffset":1324,"count":2},{"startOffset":1324,"endOffset":1393,"count":118},{"startOffset":1393,"endOffset":1815,"count":0},{"startOffset":1815,"endOffset":2495,"count":118},{"startOffset":1999,"endOffset":2009,"count":114},{"startOffset":2010,"endOffset":2022,"count":4},{"startOffset":2030,"endOffset":2085,"count":0},{"startOffset":2104,"endOffset":2450,"count":0},{"startOffset":2480,"endOffset":2487,"count":0},{"startOffset":2495,"endOffset":2525,"count":0}],"isBlockCoverage":true}]},{"scriptId":"65","url":"internal/modules/esm/get_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1351,"count":1}],"isBlockCoverage":false},{"functionName":"defaultGetSource","ranges":[{"startOffset":632,"endOffset":1303,"count":36},{"startOffset":838,"endOffset":1192,"count":0},{"startOffset":1218,"endOffset":1278,"count":0}],"isBlockCoverage":true}]},{"scriptId":"66","url":"internal/fs/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":19440,"count":1}],"isBlockCoverage":false},{"functionName":"FileHandle","ranges":[{"startOffset":2252,"endOffset":2436,"count":36},{"startOffset":2369,"endOffset":2373,"count":0}],"isBlockCoverage":true},{"functionName":"getAsyncId","ranges":[{"startOffset":2442,"endOffset":2501,"count":0}],"isBlockCoverage":false},{"functionName":"get fd","ranges":[{"startOffset":2507,"endOffset":2545,"count":108}],"isBlockCoverage":true},{"functionName":"appendFile","ranges":[{"startOffset":2551,"endOffset":2635,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":2641,"endOffset":2699,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":2705,"endOffset":2771,"count":0}],"isBlockCoverage":false},{"functionName":"datasync","ranges":[{"startOffset":2777,"endOffset":2831,"count":0}],"isBlockCoverage":false},{"functionName":"sync","ranges":[{"startOffset":2837,"endOffset":2883,"count":0}],"isBlockCoverage":false},{"functionName":"read","ranges":[{"startOffset":2889,"endOffset":3000,"count":0}],"isBlockCoverage":false},{"functionName":"readv","ranges":[{"startOffset":3006,"endOffset":3089,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":3095,"endOffset":3164,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":3170,"endOffset":3232,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":3238,"endOffset":3304,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":3310,"endOffset":3386,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":3392,"endOffset":3505,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":3511,"endOffset":3596,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":3602,"endOffset":3685,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3691,"endOffset":4410,"count":36}],"isBlockCoverage":false},{"functionName":"close","ranges":[{"startOffset":3699,"endOffset":4410,"count":36},{"startOffset":3734,"endOffset":3774,"count":0},{"startOffset":3807,"endOffset":3850,"count":0},{"startOffset":4052,"endOffset":4370,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3985,"endOffset":4043,"count":36}],"isBlockCoverage":true},{"functionName":".Promise.finally.","ranges":[{"startOffset":4101,"endOffset":4210,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4220,"endOffset":4361,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4416,"endOffset":4901,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4907,"endOffset":4962,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4968,"endOffset":5058,"count":0}],"isBlockCoverage":false},{"functionName":"fsCall","ranges":[{"startOffset":5065,"endOffset":5708,"count":0}],"isBlockCoverage":false},{"functionName":"writeFileHandle","ranges":[{"startOffset":5712,"endOffset":6286,"count":0}],"isBlockCoverage":false},{"functionName":"readFileHandle","ranges":[{"startOffset":6290,"endOffset":7183,"count":36},{"startOffset":6535,"endOffset":6562,"count":0},{"startOffset":6598,"endOffset":6636,"count":0},{"startOffset":6693,"endOffset":6721,"count":0},{"startOffset":6799,"endOffset":7042,"count":72},{"startOffset":6997,"endOffset":7037,"count":36},{"startOffset":7135,"endOffset":7170,"count":0}],"isBlockCoverage":true},{"functionName":"access","ranges":[{"startOffset":7340,"endOffset":7567,"count":0}],"isBlockCoverage":false},{"functionName":"copyFile","ranges":[{"startOffset":7571,"endOffset":7937,"count":0}],"isBlockCoverage":false},{"functionName":"open","ranges":[{"startOffset":8061,"endOffset":8393,"count":36}],"isBlockCoverage":true},{"functionName":"read","ranges":[{"startOffset":8397,"endOffset":9490,"count":72},{"startOffset":8538,"endOffset":8830,"count":0},{"startOffset":8856,"endOffset":8879,"count":0},{"startOffset":8978,"endOffset":9015,"count":0},{"startOffset":9046,"endOffset":9179,"count":0},{"startOffset":9288,"endOffset":9302,"count":0},{"startOffset":9447,"endOffset":9451,"count":36}],"isBlockCoverage":true},{"functionName":"readv","ranges":[{"startOffset":9494,"endOffset":9823,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":9827,"endOffset":10773,"count":0}],"isBlockCoverage":false},{"functionName":"writev","ranges":[{"startOffset":10777,"endOffset":11118,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":11122,"endOffset":11434,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":11438,"endOffset":11584,"count":0}],"isBlockCoverage":false},{"functionName":"ftruncate","ranges":[{"startOffset":11588,"endOffset":11751,"count":0}],"isBlockCoverage":false},{"functionName":"rm","ranges":[{"startOffset":11755,"endOffset":11956,"count":0}],"isBlockCoverage":false},{"functionName":"rmdir","ranges":[{"startOffset":11960,"endOffset":12232,"count":0}],"isBlockCoverage":false},{"functionName":"fdatasync","ranges":[{"startOffset":12236,"endOffset":12327,"count":0}],"isBlockCoverage":false},{"functionName":"fsync","ranges":[{"startOffset":12331,"endOffset":12414,"count":0}],"isBlockCoverage":false},{"functionName":"mkdir","ranges":[{"startOffset":12418,"endOffset":12965,"count":0}],"isBlockCoverage":false},{"functionName":"readdir","ranges":[{"startOffset":12969,"endOffset":13431,"count":0}],"isBlockCoverage":false},{"functionName":"readlink","ranges":[{"startOffset":13435,"endOffset":13683,"count":0}],"isBlockCoverage":false},{"functionName":"symlink","ranges":[{"startOffset":13687,"endOffset":14108,"count":0}],"isBlockCoverage":false},{"functionName":"fstat","ranges":[{"startOffset":14112,"endOffset":14293,"count":0}],"isBlockCoverage":false},{"functionName":"lstat","ranges":[{"startOffset":14297,"endOffset":14572,"count":0}],"isBlockCoverage":false},{"functionName":"stat","ranges":[{"startOffset":14576,"endOffset":14848,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":14852,"endOffset":15181,"count":0}],"isBlockCoverage":false},{"functionName":"unlink","ranges":[{"startOffset":15185,"endOffset":15326,"count":0}],"isBlockCoverage":false},{"functionName":"fchmod","ranges":[{"startOffset":15330,"endOffset":15466,"count":0}],"isBlockCoverage":false},{"functionName":"chmod","ranges":[{"startOffset":15470,"endOffset":15660,"count":0}],"isBlockCoverage":false},{"functionName":"lchmod","ranges":[{"startOffset":15664,"endOffset":15908,"count":0}],"isBlockCoverage":false},{"functionName":"lchown","ranges":[{"startOffset":15912,"endOffset":16160,"count":0}],"isBlockCoverage":false},{"functionName":"fchown","ranges":[{"startOffset":16164,"endOffset":16331,"count":0}],"isBlockCoverage":false},{"functionName":"chown","ranges":[{"startOffset":16335,"endOffset":16580,"count":0}],"isBlockCoverage":false},{"functionName":"utimes","ranges":[{"startOffset":16584,"endOffset":16862,"count":0}],"isBlockCoverage":false},{"functionName":"futimes","ranges":[{"startOffset":16866,"endOffset":17069,"count":0}],"isBlockCoverage":false},{"functionName":"lutimes","ranges":[{"startOffset":17073,"endOffset":17356,"count":0}],"isBlockCoverage":false},{"functionName":"realpath","ranges":[{"startOffset":17360,"endOffset":17541,"count":0}],"isBlockCoverage":false},{"functionName":"mkdtemp","ranges":[{"startOffset":17545,"endOffset":17883,"count":0}],"isBlockCoverage":false},{"functionName":"writeFile","ranges":[{"startOffset":17887,"endOffset":18414,"count":0}],"isBlockCoverage":false},{"functionName":"appendFile","ranges":[{"startOffset":18418,"endOffset":18664,"count":0}],"isBlockCoverage":false},{"functionName":"readFile","ranges":[{"startOffset":18668,"endOffset":18998,"count":36},{"startOffset":18787,"endOffset":18793,"count":0},{"startOffset":18837,"endOffset":18874,"count":0}],"isBlockCoverage":true}]},{"scriptId":"67","url":"internal/fs/rimraf.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7336,"count":1}],"isBlockCoverage":false},{"functionName":"rimraf","ranges":[{"startOffset":1179,"endOffset":1657,"count":0}],"isBlockCoverage":false},{"functionName":"_rimraf","ranges":[{"startOffset":1663,"endOffset":2550,"count":0}],"isBlockCoverage":false},{"functionName":"fixWinEPERM","ranges":[{"startOffset":2556,"endOffset":3006,"count":0}],"isBlockCoverage":false},{"functionName":"_rmdir","ranges":[{"startOffset":3012,"endOffset":3321,"count":0}],"isBlockCoverage":false},{"functionName":"_rmchildren","ranges":[{"startOffset":3327,"endOffset":4031,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafPromises","ranges":[{"startOffset":4037,"endOffset":4244,"count":0}],"isBlockCoverage":false},{"functionName":"rimrafSync","ranges":[{"startOffset":4250,"endOffset":4985,"count":0}],"isBlockCoverage":false},{"functionName":"_unlinkSync","ranges":[{"startOffset":4991,"endOffset":5490,"count":0}],"isBlockCoverage":false},{"functionName":"_rmdirSync","ranges":[{"startOffset":5496,"endOffset":6805,"count":0}],"isBlockCoverage":false},{"functionName":"fixWinEPERMSync","ranges":[{"startOffset":6811,"endOffset":7272,"count":0}],"isBlockCoverage":false}]},{"scriptId":"68","url":"internal/modules/esm/transform_source.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":222,"count":1}],"isBlockCoverage":false},{"functionName":"defaultTransformSource","ranges":[{"startOffset":17,"endOffset":162,"count":36}],"isBlockCoverage":true}]},{"scriptId":"69","url":"internal/modules/esm/translators.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":12430,"count":1}],"isBlockCoverage":false},{"functionName":"lazyTypes","ranges":[{"startOffset":440,"endOffset":555,"count":72},{"startOffset":487,"endOffset":501,"count":71},{"startOffset":501,"endOffset":554,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1249,"endOffset":1276,"count":1}],"isBlockCoverage":true},{"functionName":"initCJSParse","ranges":[{"startOffset":1925,"endOffset":2226,"count":1},{"startOffset":2000,"endOffset":2077,"count":0}],"isBlockCoverage":true},{"functionName":"assertBufferSource","ranges":[{"startOffset":2367,"endOffset":2801,"count":72},{"startOffset":2445,"endOffset":2472,"count":36},{"startOffset":2474,"endOffset":2493,"count":0},{"startOffset":2589,"endOffset":2614,"count":0},{"startOffset":2635,"endOffset":2716,"count":0},{"startOffset":2717,"endOffset":2721,"count":0}],"isBlockCoverage":true},{"functionName":"stringify","ranges":[{"startOffset":2805,"endOffset":3028,"count":36},{"startOffset":2865,"endOffset":2877,"count":0},{"startOffset":2963,"endOffset":2982,"count":1},{"startOffset":2983,"endOffset":2992,"count":35}],"isBlockCoverage":true},{"functionName":"errPath","ranges":[{"startOffset":3032,"endOffset":3183,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamically","ranges":[{"startOffset":3187,"endOffset":3303,"count":0}],"isBlockCoverage":false},{"functionName":"createImportMetaResolve","ranges":[{"startOffset":3307,"endOffset":3664,"count":0}],"isBlockCoverage":false},{"functionName":"initializeImportMeta","ranges":[{"startOffset":3668,"endOffset":3843,"count":0}],"isBlockCoverage":false},{"functionName":"moduleStrategy","ranges":[{"startOffset":3928,"endOffset":4524,"count":36}],"isBlockCoverage":true},{"functionName":"enrichCJSError","ranges":[{"startOffset":4530,"endOffset":5449,"count":0}],"isBlockCoverage":false},{"functionName":"commonjsStrategy","ranges":[{"startOffset":5612,"endOffset":6959,"count":2},{"startOffset":5875,"endOffset":5896,"count":1},{"startOffset":6023,"endOffset":6046,"count":1},{"startOffset":6047,"endOffset":6076,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6139,"endOffset":6954,"count":2},{"startOffset":6262,"endOffset":6379,"count":0},{"startOffset":6474,"endOffset":6546,"count":0},{"startOffset":6599,"endOffset":6908,"count":8},{"startOffset":6713,"endOffset":6722,"count":1},{"startOffset":6722,"endOffset":6851,"count":7},{"startOffset":6851,"endOffset":6859,"count":0},{"startOffset":6859,"endOffset":6908,"count":7}],"isBlockCoverage":true},{"functionName":"cjsPreparseModuleExports","ranges":[{"startOffset":6965,"endOffset":8463,"count":3},{"startOffset":7070,"endOffset":7199,"count":0},{"startOffset":7510,"endOffset":7518,"count":0},{"startOffset":7604,"endOffset":7609,"count":0},{"startOffset":7618,"endOffset":7670,"count":0},{"startOffset":7838,"endOffset":7938,"count":1},{"startOffset":7976,"endOffset":8423,"count":1},{"startOffset":8079,"endOffset":8110,"count":0},{"startOffset":8171,"endOffset":8188,"count":0},{"startOffset":8189,"endOffset":8219,"count":0},{"startOffset":8389,"endOffset":8411,"count":2}],"isBlockCoverage":true},{"functionName":"builtinStrategy","ranges":[{"startOffset":8591,"endOffset":8989,"count":1},{"startOffset":8857,"endOffset":8911,"count":0}],"isBlockCoverage":true},{"functionName":"jsonStrategy","ranges":[{"startOffset":9056,"endOffset":11233,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":11302,"endOffset":12426,"count":0}],"isBlockCoverage":false}]},{"scriptId":"70","url":"internal/modules/esm/create_dynamic_module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1828,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":200,"endOffset":227,"count":0}],"isBlockCoverage":false},{"functionName":"createImport","ranges":[{"startOffset":233,"endOffset":427,"count":0}],"isBlockCoverage":false},{"functionName":"createExport","ranges":[{"startOffset":431,"endOffset":640,"count":0}],"isBlockCoverage":false},{"functionName":"createDynamicModule","ranges":[{"startOffset":672,"endOffset":1784,"count":0}],"isBlockCoverage":false}]},{"scriptId":"71","url":"internal/vm/module.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":13238,"count":1}],"isBlockCoverage":false},{"functionName":"Module","ranges":[{"startOffset":1692,"endOffset":3943,"count":0}],"isBlockCoverage":false},{"functionName":"get identifier","ranges":[{"startOffset":3949,"endOffset":4091,"count":0}],"isBlockCoverage":false},{"functionName":"get context","ranges":[{"startOffset":4097,"endOffset":4235,"count":0}],"isBlockCoverage":false},{"functionName":"get namespace","ranges":[{"startOffset":4241,"endOffset":4526,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":4532,"endOffset":4690,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":4696,"endOffset":4954,"count":0}],"isBlockCoverage":false},{"functionName":"link","ranges":[{"startOffset":4960,"endOffset":5454,"count":0}],"isBlockCoverage":false},{"functionName":"evaluate","ranges":[{"startOffset":5460,"endOffset":6441,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6447,"endOffset":7197,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":7351,"endOffset":7388,"count":0}],"isBlockCoverage":false},{"functionName":"SourceTextModule","ranges":[{"startOffset":7395,"endOffset":9799,"count":0}],"isBlockCoverage":false},{"functionName":"get dependencySpecifiers","ranges":[{"startOffset":9805,"endOffset":10112,"count":0}],"isBlockCoverage":false},{"functionName":"get status","ranges":[{"startOffset":10118,"endOffset":10398,"count":0}],"isBlockCoverage":false},{"functionName":"get error","ranges":[{"startOffset":10404,"endOffset":10608,"count":0}],"isBlockCoverage":false},{"functionName":"createCachedData","ranges":[{"startOffset":10614,"endOffset":10884,"count":0}],"isBlockCoverage":false},{"functionName":"SyntheticModule","ranges":[{"startOffset":10933,"endOffset":12266,"count":0}],"isBlockCoverage":false},{"functionName":"setExport","ranges":[{"startOffset":12272,"endOffset":12583,"count":0}],"isBlockCoverage":false},{"functionName":"importModuleDynamicallyWrap","ranges":[{"startOffset":12590,"endOffset":13067,"count":0}],"isBlockCoverage":false},{"functionName":"getModuleFromWrap","ranges":[{"startOffset":13196,"endOffset":13231,"count":0}],"isBlockCoverage":false}]},{"scriptId":"72","url":"internal/modules/run_main.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2661,"count":1}],"isBlockCoverage":false},{"functionName":"resolveMainPath","ranges":[{"startOffset":227,"endOffset":678,"count":1},{"startOffset":500,"endOffset":507,"count":0}],"isBlockCoverage":true},{"functionName":"shouldUseESMLoader","ranges":[{"startOffset":682,"endOffset":1252,"count":1},{"startOffset":809,"endOffset":821,"count":0},{"startOffset":973,"endOffset":985,"count":0},{"startOffset":1083,"endOffset":1095,"count":0},{"startOffset":1148,"endOffset":1161,"count":0}],"isBlockCoverage":true},{"functionName":"runMainESM","ranges":[{"startOffset":1256,"endOffset":1599,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1442,"endOffset":1593,"count":1},{"startOffset":1541,"endOffset":1551,"count":0}],"isBlockCoverage":true},{"functionName":"handleMainPromise","ranges":[{"startOffset":1603,"endOffset":2050,"count":1}],"isBlockCoverage":true},{"functionName":"handler","ranges":[{"startOffset":1856,"endOffset":1952,"count":1},{"startOffset":1925,"endOffset":1947,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2011,"endOffset":2045,"count":0}],"isBlockCoverage":false},{"functionName":"executeUserEntryPoint","ranges":[{"startOffset":2241,"endOffset":2585,"count":1},{"startOffset":2455,"endOffset":2462,"count":0},{"startOffset":2469,"endOffset":2582,"count":0}],"isBlockCoverage":true}]},{"scriptId":"73","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/CI.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1177,"count":1}],"isBlockCoverage":true}]},{"scriptId":"74","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/vanilla-test/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4663,"count":1}],"isBlockCoverage":true},{"functionName":"VanillaTest","ranges":[{"startOffset":220,"endOffset":251,"count":1}],"isBlockCoverage":true},{"functionName":"get is","ranges":[{"startOffset":259,"endOffset":301,"count":61}],"isBlockCoverage":true},{"functionName":"get compare","ranges":[{"startOffset":309,"endOffset":364,"count":69}],"isBlockCoverage":true},{"functionName":"get throw","ranges":[{"startOffset":372,"endOffset":423,"count":0}],"isBlockCoverage":false},{"functionName":"get strict","ranges":[{"startOffset":431,"endOffset":484,"count":0}],"isBlockCoverage":false},{"functionName":"set strict","ranges":[{"startOffset":492,"endOffset":593,"count":0}],"isBlockCoverage":false},{"functionName":"expects","ranges":[{"startOffset":601,"endOffset":1517,"count":41},{"startOffset":687,"endOffset":862,"count":0},{"startOffset":1172,"endOffset":1480,"count":0}],"isBlockCoverage":true},{"functionName":"pass","ranges":[{"startOffset":1525,"endOffset":2173,"count":42},{"startOffset":1650,"endOffset":1686,"count":41},{"startOffset":1697,"endOffset":2001,"count":1},{"startOffset":1722,"endOffset":1956,"count":0},{"startOffset":2001,"endOffset":2172,"count":41}],"isBlockCoverage":true},{"functionName":"fail","ranges":[{"startOffset":2181,"endOffset":2821,"count":0}],"isBlockCoverage":false},{"functionName":"done","ranges":[{"startOffset":2829,"endOffset":3138,"count":41},{"startOffset":2956,"endOffset":2993,"count":0},{"startOffset":3004,"endOffset":3047,"count":0}],"isBlockCoverage":true},{"functionName":"report","ranges":[{"startOffset":3146,"endOffset":4302,"count":1},{"startOffset":3224,"endOffset":3250,"count":0},{"startOffset":3559,"endOffset":3629,"count":0},{"startOffset":3737,"endOffset":3809,"count":41},{"startOffset":3882,"endOffset":4007,"count":0},{"startOffset":4156,"endOffset":4301,"count":0}],"isBlockCoverage":true},{"functionName":"delay","ranges":[{"startOffset":4373,"endOffset":4543,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4551,"endOffset":4610,"count":1}],"isBlockCoverage":true}]},{"scriptId":"75","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/utils/delay.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":378,"count":1}],"isBlockCoverage":true},{"functionName":"delay","ranges":[{"startOffset":24,"endOffset":325,"count":4},{"startOffset":216,"endOffset":307,"count":485996}],"isBlockCoverage":true}]},{"scriptId":"76","url":"internal/fs/streams.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":13463,"count":1}],"isBlockCoverage":false},{"functionName":"allocNewPool","ranges":[{"startOffset":1129,"endOffset":1299,"count":0}],"isBlockCoverage":false},{"functionName":"roundUpToMultipleOf8","ranges":[{"startOffset":1303,"endOffset":1394,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream","ranges":[{"startOffset":1398,"endOffset":3559,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3702,"endOffset":3739,"count":0}],"isBlockCoverage":false},{"functionName":"_openReadFs","ranges":[{"startOffset":3842,"endOffset":4345,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._read","ranges":[{"startOffset":4378,"endOffset":6946,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream._destroy","ranges":[{"startOffset":6983,"endOffset":7282,"count":0}],"isBlockCoverage":false},{"functionName":"closeFsStream","ranges":[{"startOffset":7287,"endOffset":7450,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.close","ranges":[{"startOffset":7483,"endOffset":7572,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":7636,"endOffset":7670,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":7702,"endOffset":10026,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._final","ranges":[{"startOffset":10173,"endOffset":10338,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10373,"endOffset":10411,"count":0}],"isBlockCoverage":false},{"functionName":"_openWriteFs","ranges":[{"startOffset":10517,"endOffset":10970,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._write","ranges":[{"startOffset":11007,"endOffset":11702,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream._writev","ranges":[{"startOffset":11741,"endOffset":12672,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.close","ranges":[{"startOffset":12774,"endOffset":13174,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":13343,"endOffset":13377,"count":0}],"isBlockCoverage":false}]},{"scriptId":"77","url":"stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2234,"count":1}],"isBlockCoverage":false},{"functionName":"_uint8ArrayToBuffer","ranges":[{"startOffset":2020,"endOffset":2231,"count":0}],"isBlockCoverage":false}]},{"scriptId":"78","url":"internal/streams/pipeline.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7621,"count":1}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":553,"endOffset":1986,"count":0}],"isBlockCoverage":false},{"functionName":"popCallback","ranges":[{"startOffset":1990,"endOffset":2368,"count":0}],"isBlockCoverage":false},{"functionName":"isPromise","ranges":[{"startOffset":2372,"endOffset":2453,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":2457,"endOffset":2539,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":2543,"endOffset":2626,"count":0}],"isBlockCoverage":false},{"functionName":"isStream","ranges":[{"startOffset":2630,"endOffset":2703,"count":0}],"isBlockCoverage":false},{"functionName":"isIterable","ranges":[{"startOffset":2707,"endOffset":3036,"count":0}],"isBlockCoverage":false},{"functionName":"makeAsyncIterable","ranges":[{"startOffset":3040,"endOffset":3325,"count":0}],"isBlockCoverage":false},{"functionName":"fromReadable","ranges":[{"startOffset":3329,"endOffset":3498,"count":0}],"isBlockCoverage":false},{"functionName":"pump","ranges":[{"startOffset":3502,"endOffset":3903,"count":0}],"isBlockCoverage":false},{"functionName":"pipeline","ranges":[{"startOffset":3907,"endOffset":7589,"count":0}],"isBlockCoverage":false}]},{"scriptId":"79","url":"internal/streams/destroy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4144,"count":1}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":127,"endOffset":1464,"count":71},{"startOffset":251,"endOffset":272,"count":69},{"startOffset":274,"endOffset":357,"count":2},{"startOffset":311,"endOffset":332,"count":0},{"startOffset":357,"endOffset":372,"count":69},{"startOffset":372,"endOffset":602,"count":0},{"startOffset":602,"endOffset":870,"count":69}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":872,"endOffset":1441,"count":69},{"startOffset":897,"endOffset":1145,"count":0},{"startOffset":1275,"endOffset":1299,"count":0},{"startOffset":1316,"endOffset":1378,"count":0}],"isBlockCoverage":true},{"functionName":"emitErrorCloseNT","ranges":[{"startOffset":1468,"endOffset":1558,"count":0}],"isBlockCoverage":false},{"functionName":"emitCloseNT","ranges":[{"startOffset":1562,"endOffset":1791,"count":69},{"startOffset":1734,"endOffset":1755,"count":24},{"startOffset":1757,"endOffset":1788,"count":45}],"isBlockCoverage":true},{"functionName":"emitErrorNT","ranges":[{"startOffset":1795,"endOffset":2098,"count":0}],"isBlockCoverage":false},{"functionName":"undestroy","ranges":[{"startOffset":2102,"endOffset":2692,"count":26}],"isBlockCoverage":true},{"functionName":"errorOrDestroy","ranges":[{"startOffset":2696,"endOffset":3628,"count":0}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":3632,"endOffset":3739,"count":0}],"isBlockCoverage":false},{"functionName":"destroyer","ranges":[{"startOffset":3777,"endOffset":4058,"count":0}],"isBlockCoverage":false}]},{"scriptId":"80","url":"internal/streams/end-of-stream.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5981,"count":1}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":291,"endOffset":388,"count":0}],"isBlockCoverage":false},{"functionName":"isReadable","ranges":[{"startOffset":392,"endOffset":554,"count":0}],"isBlockCoverage":false},{"functionName":"isWritable","ranges":[{"startOffset":558,"endOffset":720,"count":0}],"isBlockCoverage":false},{"functionName":"isWritableFinished","ranges":[{"startOffset":724,"endOffset":966,"count":0}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":970,"endOffset":987,"count":0}],"isBlockCoverage":false},{"functionName":"isReadableEnded","ranges":[{"startOffset":991,"endOffset":1229,"count":0}],"isBlockCoverage":false},{"functionName":"eos","ranges":[{"startOffset":1233,"endOffset":5954,"count":0}],"isBlockCoverage":false}]},{"scriptId":"81","url":"internal/streams/legacy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2176,"count":1}],"isBlockCoverage":false},{"functionName":"Stream","ranges":[{"startOffset":104,"endOffset":154,"count":190}],"isBlockCoverage":true},{"functionName":"Stream.pipe","ranges":[{"startOffset":272,"endOffset":2145,"count":0}],"isBlockCoverage":false}]},{"scriptId":"82","url":"internal/streams/readable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":41720,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1639,"endOffset":1666,"count":1}],"isBlockCoverage":true},{"functionName":"nop","ranges":[{"startOffset":2285,"endOffset":2302,"count":0}],"isBlockCoverage":false},{"functionName":"prependListener","ranges":[{"startOffset":2349,"endOffset":3172,"count":45},{"startOffset":2612,"endOffset":2981,"count":0},{"startOffset":2988,"endOffset":3169,"count":0}],"isBlockCoverage":true},{"functionName":"ReadableState","ranges":[{"startOffset":3176,"endOffset":6847,"count":95},{"startOffset":3582,"endOffset":3625,"count":0},{"startOffset":3784,"endOffset":3805,"count":72},{"startOffset":3832,"endOffset":3918,"count":71},{"startOffset":3887,"endOffset":3916,"count":48},{"startOffset":4097,"endOffset":4170,"count":72},{"startOffset":4171,"endOffset":4208,"count":23},{"startOffset":5323,"endOffset":5353,"count":72},{"startOffset":5462,"endOffset":5494,"count":72},{"startOffset":6272,"endOffset":6298,"count":72},{"startOffset":6632,"endOffset":6651,"count":72},{"startOffset":6653,"endOffset":6844,"count":0}],"isBlockCoverage":true},{"functionName":"Readable","ranges":[{"startOffset":6853,"endOffset":7442,"count":95},{"startOffset":6923,"endOffset":6952,"count":0},{"startOffset":7231,"endOffset":7406,"count":72},{"startOffset":7285,"endOffset":7311,"count":0},{"startOffset":7369,"endOffset":7401,"count":0}],"isBlockCoverage":true},{"functionName":"Readable._destroy","ranges":[{"startOffset":7583,"endOffset":7617,"count":23}],"isBlockCoverage":true},{"functionName":"Readable.","ranges":[{"startOffset":7670,"endOffset":7710,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.push","ranges":[{"startOffset":7945,"endOffset":8033,"count":1431}],"isBlockCoverage":true},{"functionName":"Readable.unshift","ranges":[{"startOffset":8132,"endOffset":8219,"count":0}],"isBlockCoverage":false},{"functionName":"readableAddChunk","ranges":[{"startOffset":8224,"endOffset":10543,"count":1431},{"startOffset":8444,"endOffset":8920,"count":0},{"startOffset":8955,"endOffset":8985,"count":1360},{"startOffset":8985,"endOffset":9238,"count":71},{"startOffset":9024,"endOffset":9104,"count":0},{"startOffset":9129,"endOffset":9238,"count":0},{"startOffset":9258,"endOffset":9298,"count":0},{"startOffset":9324,"endOffset":9390,"count":71},{"startOffset":9390,"endOffset":10252,"count":1360},{"startOffset":9472,"endOffset":9643,"count":0},{"startOffset":9666,"endOffset":9738,"count":0},{"startOffset":9765,"endOffset":9794,"count":0},{"startOffset":9857,"endOffset":9869,"count":0},{"startOffset":9871,"endOffset":10084,"count":0},{"startOffset":10160,"endOffset":10252,"count":0},{"startOffset":10473,"endOffset":10539,"count":1360},{"startOffset":10517,"endOffset":10538,"count":0}],"isBlockCoverage":true},{"functionName":"addChunk","ranges":[{"startOffset":10547,"endOffset":11270,"count":1360},{"startOffset":10622,"endOffset":10643,"count":1359},{"startOffset":10644,"endOffset":10658,"count":1354},{"startOffset":10659,"endOffset":10701,"count":1332},{"startOffset":10703,"endOffset":10972,"count":1332},{"startOffset":10833,"endOffset":10881,"count":0},{"startOffset":10972,"endOffset":11234,"count":28},{"startOffset":11050,"endOffset":11053,"count":0},{"startOffset":11098,"endOffset":11126,"count":0},{"startOffset":11208,"endOffset":11229,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.isPaused","ranges":[{"startOffset":11304,"endOffset":11419,"count":24}],"isBlockCoverage":true},{"functionName":"Readable.setEncoding","ranges":[{"startOffset":11486,"endOffset":12149,"count":0}],"isBlockCoverage":false},{"functionName":"computeNewHighWaterMark","ranges":[{"startOffset":12214,"endOffset":12595,"count":0}],"isBlockCoverage":false},{"functionName":"howMuchToRead","ranges":[{"startOffset":12712,"endOffset":13120,"count":1365},{"startOffset":12761,"endOffset":12799,"count":220},{"startOffset":12784,"endOffset":12798,"count":192},{"startOffset":12806,"endOffset":12815,"count":1224},{"startOffset":12815,"endOffset":12846,"count":141},{"startOffset":12846,"endOffset":12855,"count":0},{"startOffset":12855,"endOffset":13034,"count":141},{"startOffset":12968,"endOffset":13003,"count":28},{"startOffset":13003,"endOffset":13034,"count":113},{"startOffset":13034,"endOffset":13112,"count":0},{"startOffset":13113,"endOffset":13116,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.read","ranges":[{"startOffset":13220,"endOffset":17582,"count":1365},{"startOffset":13414,"endOffset":13434,"count":220},{"startOffset":13434,"endOffset":13503,"count":1145},{"startOffset":13465,"endOffset":13503,"count":0},{"startOffset":13674,"endOffset":13723,"count":0},{"startOffset":13747,"endOffset":13777,"count":220},{"startOffset":13968,"endOffset":13996,"count":1145},{"startOffset":13997,"endOffset":14134,"count":1044},{"startOffset":14082,"endOffset":14109,"count":0},{"startOffset":14136,"endOffset":14328,"count":0},{"startOffset":14442,"endOffset":14456,"count":1337},{"startOffset":14458,"endOffset":14537,"count":93},{"startOffset":14496,"endOffset":14514,"count":88},{"startOffset":14537,"endOffset":15842,"count":1272},{"startOffset":15842,"endOffset":15883,"count":46},{"startOffset":15885,"endOffset":16145,"count":1272},{"startOffset":16145,"endOffset":16161,"count":1267},{"startOffset":16162,"endOffset":16180,"count":1112},{"startOffset":16182,"endOffset":16249,"count":162},{"startOffset":16249,"endOffset":16796,"count":1110},{"startOffset":16453,"endOffset":16479,"count":1092},{"startOffset":16759,"endOffset":16791,"count":0},{"startOffset":16796,"endOffset":16830,"count":1272},{"startOffset":16830,"endOffset":16855,"count":28},{"startOffset":16855,"endOffset":16880,"count":1244},{"startOffset":16880,"endOffset":16904,"count":1272},{"startOffset":16904,"endOffset":16985,"count":1244},{"startOffset":16985,"endOffset":17155,"count":28},{"startOffset":17049,"endOffset":17097,"count":0},{"startOffset":17155,"endOffset":17185,"count":1272},{"startOffset":17185,"endOffset":17510,"count":1249},{"startOffset":17338,"endOffset":17364,"count":1244},{"startOffset":17464,"endOffset":17478,"count":136},{"startOffset":17487,"endOffset":17505,"count":5},{"startOffset":17510,"endOffset":17539,"count":1272},{"startOffset":17539,"endOffset":17562,"count":28},{"startOffset":17562,"endOffset":17581,"count":1272}],"isBlockCoverage":true},{"functionName":"onEofChunk","ranges":[{"startOffset":17587,"endOffset":18432,"count":71},{"startOffset":17668,"endOffset":17675,"count":0},{"startOffset":17698,"endOffset":17878,"count":0},{"startOffset":17923,"endOffset":18130,"count":6},{"startOffset":18130,"endOffset":18429,"count":65}],"isBlockCoverage":true},{"functionName":"emitReadable","ranges":[{"startOffset":18638,"endOffset":18974,"count":6}],"isBlockCoverage":true},{"functionName":"emitReadable_","ranges":[{"startOffset":18978,"endOffset":19633,"count":71},{"startOffset":19548,"endOffset":19568,"count":0},{"startOffset":19569,"endOffset":19612,"count":0}],"isBlockCoverage":true},{"functionName":"maybeReadMore","ranges":[{"startOffset":19992,"endOffset":20153,"count":1360},{"startOffset":20059,"endOffset":20150,"count":1064}],"isBlockCoverage":true},{"functionName":"maybeReadMore_","ranges":[{"startOffset":20157,"endOffset":21988,"count":1064},{"startOffset":21651,"endOffset":21666,"count":1044},{"startOffset":21667,"endOffset":21768,"count":1021},{"startOffset":21716,"endOffset":21767,"count":0},{"startOffset":21770,"endOffset":21955,"count":1021}],"isBlockCoverage":true},{"functionName":"Readable._read","ranges":[{"startOffset":22265,"endOffset":22333,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.pipe","ranges":[{"startOffset":22364,"endOffset":26902,"count":45},{"startOffset":22485,"endOffset":22688,"count":0},{"startOffset":22813,"endOffset":22838,"count":0},{"startOffset":22958,"endOffset":22966,"count":0},{"startOffset":22998,"endOffset":23022,"count":0},{"startOffset":26829,"endOffset":26881,"count":0}],"isBlockCoverage":true},{"functionName":"onunpipe","ranges":[{"startOffset":23097,"endOffset":23331,"count":45}],"isBlockCoverage":true},{"functionName":"onend","ranges":[{"startOffset":23337,"endOffset":23398,"count":45}],"isBlockCoverage":true},{"functionName":"cleanup","ranges":[{"startOffset":23448,"endOffset":24364,"count":45},{"startOffset":23656,"endOffset":23710,"count":1},{"startOffset":24246,"endOffset":24272,"count":1},{"startOffset":24273,"endOffset":24340,"count":0},{"startOffset":24349,"endOffset":24359,"count":0}],"isBlockCoverage":true},{"functionName":"ondata","ranges":[{"startOffset":24397,"endOffset":25592,"count":708},{"startOffset":24535,"endOffset":25587,"count":4},{"startOffset":25008,"endOffset":25209,"count":0},{"startOffset":25262,"endOffset":25580,"count":1}],"isBlockCoverage":true},{"functionName":"onerror","ranges":[{"startOffset":25718,"endOffset":26146,"count":0}],"isBlockCoverage":false},{"functionName":"onclose","ranges":[{"startOffset":26332,"endOffset":26418,"count":0}],"isBlockCoverage":false},{"functionName":"onfinish","ranges":[{"startOffset":26454,"endOffset":26563,"count":45}],"isBlockCoverage":true},{"functionName":"unpipe","ranges":[{"startOffset":26603,"endOffset":26672,"count":45}],"isBlockCoverage":true},{"functionName":"pipeOnDrain","ranges":[{"startOffset":26907,"endOffset":27602,"count":1}],"isBlockCoverage":true},{"functionName":"pipeOnDrainFunctionResult","ranges":[{"startOffset":26951,"endOffset":27598,"count":4},{"startOffset":27275,"endOffset":27420,"count":0},{"startOffset":27458,"endOffset":27495,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.unpipe","ranges":[{"startOffset":27636,"endOffset":28336,"count":45},{"startOffset":27829,"endOffset":27841,"count":0},{"startOffset":27858,"endOffset":28066,"count":0},{"startOffset":28172,"endOffset":28184,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.on","ranges":[{"startOffset":28466,"endOffset":29400,"count":1033},{"startOffset":28602,"endOffset":28942,"count":92},{"startOffset":28942,"endOffset":29380,"count":941},{"startOffset":28971,"endOffset":29380,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeListener","ranges":[{"startOffset":29498,"endOffset":30026,"count":855},{"startOffset":29612,"endOffset":30006,"count":0}],"isBlockCoverage":true},{"functionName":"Readable.removeAllListeners","ranges":[{"startOffset":30132,"endOffset":30684,"count":1},{"startOffset":30270,"endOffset":30664,"count":0}],"isBlockCoverage":true},{"functionName":"updateReadableListening","ranges":[{"startOffset":30689,"endOffset":31214,"count":0}],"isBlockCoverage":false},{"functionName":"nReadingNextTick","ranges":[{"startOffset":31218,"endOffset":31309,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.resume","ranges":[{"startOffset":31467,"endOffset":31804,"count":316},{"startOffset":31541,"endOffset":31758,"count":93}],"isBlockCoverage":true},{"functionName":"resume","ranges":[{"startOffset":31809,"endOffset":31964,"count":93}],"isBlockCoverage":true},{"functionName":"resume_","ranges":[{"startOffset":31968,"endOffset":32230,"count":93},{"startOffset":32060,"endOffset":32087,"count":68},{"startOffset":32212,"endOffset":32227,"count":6}],"isBlockCoverage":true},{"functionName":"Readable.pause","ranges":[{"startOffset":32261,"endOffset":32537,"count":49}],"isBlockCoverage":true},{"functionName":"flow","ranges":[{"startOffset":32542,"endOffset":32693,"count":168},{"startOffset":32663,"endOffset":32688,"count":196},{"startOffset":32689,"endOffset":32690,"count":28}],"isBlockCoverage":true},{"functionName":"Readable.wrap","ranges":[{"startOffset":32882,"endOffset":34776,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.","ranges":[{"startOffset":34823,"endOffset":35222,"count":0}],"isBlockCoverage":false},{"functionName":"createAsyncIterator","ranges":[{"startOffset":35227,"endOffset":36579,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":36784,"endOffset":37181,"count":472},{"startOffset":37129,"endOffset":37147,"count":471},{"startOffset":37148,"endOffset":37173,"count":471}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":37188,"endOffset":37323,"count":2}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":37394,"endOffset":37462,"count":24}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":37526,"endOffset":37610,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37675,"endOffset":37737,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":37749,"endOffset":37862,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":37921,"endOffset":37977,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":38040,"endOffset":38130,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":38191,"endOffset":38278,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":38332,"endOffset":38471,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":38478,"endOffset":38777,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":38835,"endOffset":38925,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":39052,"endOffset":39099,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":39162,"endOffset":39215,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":39222,"endOffset":39273,"count":0}],"isBlockCoverage":false},{"functionName":"fromList","ranges":[{"startOffset":39588,"endOffset":40173,"count":28},{"startOffset":39674,"endOffset":39686,"count":0},{"startOffset":39731,"endOffset":39758,"count":0},{"startOffset":39796,"endOffset":40063,"count":23},{"startOffset":39869,"endOffset":39897,"count":0},{"startOffset":39973,"endOffset":40031,"count":0},{"startOffset":40063,"endOffset":40153,"count":5}],"isBlockCoverage":true},{"functionName":"endReadable","ranges":[{"startOffset":40177,"endOffset":40406,"count":93},{"startOffset":40319,"endOffset":40403,"count":91}],"isBlockCoverage":true},{"functionName":"endReadableNT","ranges":[{"startOffset":40410,"endOffset":41369,"count":91},{"startOffset":40638,"endOffset":40659,"count":71},{"startOffset":40661,"endOffset":41366,"count":71},{"startOffset":40745,"endOffset":40778,"count":0},{"startOffset":40780,"endOffset":40843,"count":0},{"startOffset":40872,"endOffset":41361,"count":45},{"startOffset":41251,"endOffset":41279,"count":18},{"startOffset":41317,"endOffset":41354,"count":27}],"isBlockCoverage":true},{"functionName":"endWritableNT","ranges":[{"startOffset":41373,"endOffset":41546,"count":0}],"isBlockCoverage":false},{"functionName":"Readable.from","ranges":[{"startOffset":41566,"endOffset":41717,"count":0}],"isBlockCoverage":false}]},{"scriptId":"83","url":"internal/streams/buffer_list.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3975,"count":1}],"isBlockCoverage":false},{"functionName":"BufferList","ranges":[{"startOffset":215,"endOffset":303,"count":95}],"isBlockCoverage":true},{"functionName":"push","ranges":[{"startOffset":309,"endOffset":504,"count":28},{"startOffset":396,"endOffset":419,"count":5},{"startOffset":419,"endOffset":455,"count":23}],"isBlockCoverage":true},{"functionName":"unshift","ranges":[{"startOffset":510,"endOffset":674,"count":0}],"isBlockCoverage":false},{"functionName":"shift","ranges":[{"startOffset":680,"endOffset":917,"count":5},{"startOffset":725,"endOffset":732,"count":0},{"startOffset":801,"endOffset":830,"count":0}],"isBlockCoverage":true},{"functionName":"clear","ranges":[{"startOffset":923,"endOffset":994,"count":23}],"isBlockCoverage":true},{"functionName":"join","ranges":[{"startOffset":1000,"endOffset":1179,"count":0}],"isBlockCoverage":false},{"functionName":"concat","ranges":[{"startOffset":1185,"endOffset":1460,"count":0}],"isBlockCoverage":false},{"functionName":"consume","ranges":[{"startOffset":1547,"endOffset":2015,"count":5},{"startOffset":1632,"endOffset":1794,"count":0},{"startOffset":1901,"endOffset":1988,"count":0},{"startOffset":1989,"endOffset":2009,"count":0}],"isBlockCoverage":true},{"functionName":"first","ranges":[{"startOffset":2021,"endOffset":2063,"count":51}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":2069,"endOffset":2169,"count":0}],"isBlockCoverage":false},{"functionName":"_getString","ranges":[{"startOffset":2247,"endOffset":2870,"count":0}],"isBlockCoverage":false},{"functionName":"_getBuffer","ranges":[{"startOffset":2943,"endOffset":3682,"count":0}],"isBlockCoverage":false},{"functionName":"module.exports","ranges":[{"startOffset":3766,"endOffset":3969,"count":0}],"isBlockCoverage":false}]},{"scriptId":"84","url":"internal/streams/state.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":917,"count":1}],"isBlockCoverage":false},{"functionName":"highWaterMarkFrom","ranges":[{"startOffset":151,"endOffset":321,"count":120},{"startOffset":250,"endOffset":273,"count":24},{"startOffset":274,"endOffset":317,"count":96},{"startOffset":311,"endOffset":317,"count":0}],"isBlockCoverage":true},{"functionName":"getDefaultHighWaterMark","ranges":[{"startOffset":325,"endOffset":413,"count":143},{"startOffset":393,"endOffset":397,"count":0}],"isBlockCoverage":true},{"functionName":"getHighWaterMark","ranges":[{"startOffset":417,"endOffset":841,"count":120},{"startOffset":566,"endOffset":763,"count":24},{"startOffset":611,"endOffset":730,"count":0},{"startOffset":763,"endOffset":840,"count":96}],"isBlockCoverage":true}]},{"scriptId":"85","url":"internal/streams/writable.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":23395,"count":1}],"isBlockCoverage":false},{"functionName":"nop","ranges":[{"startOffset":2287,"endOffset":2304,"count":718}],"isBlockCoverage":true},{"functionName":"WritableState","ranges":[{"startOffset":2308,"endOffset":6583,"count":71},{"startOffset":2710,"endOffset":2753,"count":0},{"startOffset":2887,"endOffset":2908,"count":48},{"startOffset":2990,"endOffset":3019,"count":48},{"startOffset":3244,"endOffset":3317,"count":48},{"startOffset":3318,"endOffset":3355,"count":23},{"startOffset":3926,"endOffset":3960,"count":48},{"startOffset":4233,"endOffset":4259,"count":48},{"startOffset":6084,"endOffset":6114,"count":48},{"startOffset":6223,"endOffset":6255,"count":48}],"isBlockCoverage":true},{"functionName":"resetBuffer","ranges":[{"startOffset":6587,"endOffset":6724,"count":133}],"isBlockCoverage":true},{"functionName":"getBuffer","ranges":[{"startOffset":6764,"endOffset":6840,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6920,"endOffset":6987,"count":0}],"isBlockCoverage":false},{"functionName":"value","ranges":[{"startOffset":7323,"endOffset":7544,"count":0}],"isBlockCoverage":false},{"functionName":"realHasInstance","ranges":[{"startOffset":7583,"endOffset":7642,"count":0}],"isBlockCoverage":false},{"functionName":"Writable","ranges":[{"startOffset":7650,"endOffset":8855,"count":71},{"startOffset":8304,"endOffset":8344,"count":0},{"startOffset":8351,"endOffset":8380,"count":0},{"startOffset":8470,"endOffset":8819,"count":48},{"startOffset":8525,"endOffset":8553,"count":0},{"startOffset":8610,"endOffset":8640,"count":0},{"startOffset":8698,"endOffset":8730,"count":0},{"startOffset":8786,"endOffset":8814,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.pipe","ranges":[{"startOffset":8954,"endOffset":9024,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.write","ranges":[{"startOffset":9056,"endOffset":10311,"count":836},{"startOffset":9167,"endOffset":9232,"count":94},{"startOffset":9232,"endOffset":9357,"count":742},{"startOffset":9267,"endOffset":9300,"count":713},{"startOffset":9343,"endOffset":9352,"count":718},{"startOffset":9383,"endOffset":9430,"count":0},{"startOffset":9497,"endOffset":9635,"count":123},{"startOffset":9541,"endOffset":9628,"count":0},{"startOffset":9635,"endOffset":9946,"count":713},{"startOffset":9706,"endOffset":9946,"count":0},{"startOffset":9987,"endOffset":10038,"count":0},{"startOffset":10065,"endOffset":10117,"count":0},{"startOffset":10132,"endOffset":10227,"count":0}],"isBlockCoverage":true},{"functionName":"Writable.cork","ranges":[{"startOffset":10342,"endOffset":10390,"count":24}],"isBlockCoverage":true},{"functionName":"Writable.uncork","ranges":[{"startOffset":10423,"endOffset":10587,"count":24}],"isBlockCoverage":true},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":10632,"endOffset":10951,"count":0}],"isBlockCoverage":false},{"functionName":"writeOrBuffer","ranges":[{"startOffset":11146,"endOffset":12168,"count":836},{"startOffset":11245,"endOffset":11248,"count":0},{"startOffset":11475,"endOffset":11498,"count":4},{"startOffset":11522,"endOffset":11537,"count":532},{"startOffset":11538,"endOffset":11554,"count":498},{"startOffset":11556,"endOffset":11796,"count":338},{"startOffset":11641,"endOffset":11665,"count":328},{"startOffset":11667,"endOffset":11708,"count":24},{"startOffset":11753,"endOffset":11791,"count":24},{"startOffset":11796,"endOffset":11994,"count":498},{"startOffset":12127,"endOffset":12144,"count":832},{"startOffset":12145,"endOffset":12164,"count":832}],"isBlockCoverage":true},{"functionName":"doWrite","ranges":[{"startOffset":12172,"endOffset":12562,"count":328},{"startOffset":12364,"endOffset":12413,"count":0},{"startOffset":12439,"endOffset":12476,"count":5},{"startOffset":12476,"endOffset":12536,"count":323}],"isBlockCoverage":true},{"functionName":"onwriteError","ranges":[{"startOffset":12566,"endOffset":12997,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":13001,"endOffset":14650,"count":826},{"startOffset":13164,"endOffset":13241,"count":0},{"startOffset":13366,"endOffset":13896,"count":0},{"startOffset":13958,"endOffset":14001,"count":304},{"startOffset":14019,"endOffset":14587,"count":453},{"startOffset":14323,"endOffset":14371,"count":209},{"startOffset":14373,"endOffset":14426,"count":209},{"startOffset":14426,"endOffset":14580,"count":244},{"startOffset":14587,"endOffset":14642,"count":373}],"isBlockCoverage":true},{"functionName":"afterWriteTick","ranges":[{"startOffset":14654,"endOffset":14796,"count":242}],"isBlockCoverage":true},{"functionName":"afterWrite","ranges":[{"startOffset":14800,"endOffset":15228,"count":615},{"startOffset":14883,"endOffset":14903,"count":499},{"startOffset":14904,"endOffset":14925,"count":499},{"startOffset":14926,"endOffset":14949,"count":284},{"startOffset":14969,"endOffset":15032,"count":4},{"startOffset":15058,"endOffset":15099,"count":823},{"startOffset":15126,"endOffset":15192,"count":0}],"isBlockCoverage":true},{"functionName":"errorBuffer","ranges":[{"startOffset":15303,"endOffset":15637,"count":0}],"isBlockCoverage":false},{"functionName":"clearBuffer","ranges":[{"startOffset":15706,"endOffset":17188,"count":328},{"startOffset":15810,"endOffset":15829,"count":0},{"startOffset":15975,"endOffset":15994,"count":0},{"startOffset":16085,"endOffset":16102,"count":271},{"startOffset":16104,"endOffset":16662,"count":5},{"startOffset":16188,"endOffset":16193,"count":0},{"startOffset":16472,"endOffset":16482,"count":0},{"startOffset":16483,"endOffset":16493,"count":0},{"startOffset":16662,"endOffset":17150,"count":323},{"startOffset":16797,"endOffset":16800,"count":0},{"startOffset":16921,"endOffset":16938,"count":266},{"startOffset":16975,"endOffset":17010,"count":57},{"startOffset":17010,"endOffset":17145,"count":266},{"startOffset":17029,"endOffset":17099,"count":0}],"isBlockCoverage":true},{"functionName":"callback","ranges":[{"startOffset":16196,"endOffset":16309,"count":5},{"startOffset":16256,"endOffset":16302,"count":15}],"isBlockCoverage":true},{"functionName":"Writable._write","ranges":[{"startOffset":17220,"endOffset":17395,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.end","ranges":[{"startOffset":17463,"endOffset":18691,"count":68},{"startOffset":17571,"endOffset":17635,"count":0},{"startOffset":17677,"endOffset":17725,"count":0},{"startOffset":17779,"endOffset":17807,"count":0},{"startOffset":17859,"endOffset":17908,"count":0},{"startOffset":18363,"endOffset":18523,"count":0},{"startOffset":18559,"endOffset":18670,"count":0}],"isBlockCoverage":true},{"functionName":"needFinish","ranges":[{"startOffset":18696,"endOffset":18916,"count":706},{"startOffset":18749,"endOffset":18781,"count":207},{"startOffset":18782,"endOffset":18810,"count":96},{"startOffset":18811,"endOffset":18852,"count":96},{"startOffset":18853,"endOffset":18882,"count":96},{"startOffset":18883,"endOffset":18911,"count":96}],"isBlockCoverage":true},{"functionName":"callFinal","ranges":[{"startOffset":18920,"endOffset":19191,"count":23}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":18973,"endOffset":19186,"count":23},{"startOffset":19022,"endOffset":19066,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":19195,"endOffset":19554,"count":96},{"startOffset":19257,"endOffset":19278,"count":68},{"startOffset":19280,"endOffset":19551,"count":68},{"startOffset":19327,"endOffset":19346,"count":23},{"startOffset":19348,"endOffset":19466,"count":23},{"startOffset":19466,"endOffset":19546,"count":45}],"isBlockCoverage":true},{"functionName":"finishMaybe","ranges":[{"startOffset":19558,"endOffset":19899,"count":706},{"startOffset":19650,"endOffset":19880,"count":96},{"startOffset":19715,"endOffset":19875,"count":68},{"startOffset":19760,"endOffset":19820,"count":18},{"startOffset":19820,"endOffset":19868,"count":50}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":19903,"endOffset":20543,"count":68},{"startOffset":19990,"endOffset":19997,"count":0},{"startOffset":20080,"endOffset":20540,"count":45},{"startOffset":20442,"endOffset":20470,"count":27},{"startOffset":20502,"endOffset":20535,"count":18}],"isBlockCoverage":true},{"functionName":"onFinished","ranges":[{"startOffset":20612,"endOffset":21093,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21165,"endOffset":21254,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":21261,"endOffset":21448,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":21477,"endOffset":21877,"count":240},{"startOffset":21822,"endOffset":21835,"count":188},{"startOffset":21836,"endOffset":21857,"count":188},{"startOffset":21858,"endOffset":21869,"count":118}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":21884,"endOffset":22023,"count":24}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":22060,"endOffset":22148,"count":23},{"startOffset":22133,"endOffset":22140,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":22187,"endOffset":22277,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22312,"endOffset":22396,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22430,"endOffset":22516,"count":371},{"startOffset":22501,"endOffset":22508,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":22558,"endOffset":22644,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22679,"endOffset":22761,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":22796,"endOffset":22875,"count":113}],"isBlockCoverage":true},{"functionName":"Writable.destroy","ranges":[{"startOffset":22956,"endOffset":23174,"count":0}],"isBlockCoverage":false},{"functionName":"Writable._destroy","ranges":[{"startOffset":23265,"endOffset":23299,"count":0}],"isBlockCoverage":false},{"functionName":"Writable.","ranges":[{"startOffset":23352,"endOffset":23392,"count":0}],"isBlockCoverage":false}]},{"scriptId":"86","url":"internal/streams/duplex.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3769,"count":1}],"isBlockCoverage":false},{"functionName":"Duplex","ranges":[{"startOffset":1987,"endOffset":2430,"count":71},{"startOffset":2053,"endOffset":2080,"count":0},{"startOffset":2197,"endOffset":2427,"count":48},{"startOffset":2243,"endOffset":2265,"count":2},{"startOffset":2312,"endOffset":2334,"count":0},{"startOffset":2379,"endOffset":2422,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":3264,"endOffset":3482,"count":1731},{"startOffset":3364,"endOffset":3397,"count":0},{"startOffset":3442,"endOffset":3474,"count":25}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3489,"endOffset":3757,"count":0}],"isBlockCoverage":false}]},{"scriptId":"87","url":"internal/streams/transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8452,"count":1}],"isBlockCoverage":false},{"functionName":"afterTransform","ranges":[{"startOffset":4118,"endOffset":4659,"count":708},{"startOffset":4269,"endOffset":4336,"count":0},{"startOffset":4469,"endOffset":4485,"count":359},{"startOffset":4582,"endOffset":4613,"count":27}],"isBlockCoverage":true},{"functionName":"Transform","ranges":[{"startOffset":4665,"endOffset":5524,"count":45},{"startOffset":4737,"endOffset":4767,"count":0},{"startOffset":5225,"endOffset":5409,"count":22},{"startOffset":5284,"endOffset":5320,"count":0},{"startOffset":5376,"endOffset":5404,"count":0}],"isBlockCoverage":true},{"functionName":"prefinish","ranges":[{"startOffset":5528,"endOffset":5748,"count":45},{"startOffset":5592,"endOffset":5625,"count":22},{"startOffset":5627,"endOffset":5704,"count":22},{"startOffset":5704,"endOffset":5745,"count":23}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5646,"endOffset":5697,"count":22}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5846,"endOffset":5898,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5996,"endOffset":6050,"count":0}],"isBlockCoverage":false},{"functionName":"Transform.push","ranges":[{"startOffset":6151,"endOffset":6290,"count":822}],"isBlockCoverage":true},{"functionName":"Transform._transform","ranges":[{"startOffset":6785,"endOffset":6876,"count":0}],"isBlockCoverage":false},{"functionName":"Transform._write","ranges":[{"startOffset":6910,"endOffset":7261,"count":708},{"startOffset":7147,"endOffset":7174,"count":347},{"startOffset":7175,"endOffset":7215,"count":43}],"isBlockCoverage":true},{"functionName":"Transform._read","ranges":[{"startOffset":7438,"endOffset":7823,"count":2079},{"startOffset":7521,"endOffset":7540,"count":1411},{"startOffset":7542,"endOffset":7651,"count":708},{"startOffset":7651,"endOffset":7820,"count":1371}],"isBlockCoverage":true},{"functionName":"Transform._destroy","ranges":[{"startOffset":7861,"endOffset":7962,"count":23}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7926,"endOffset":7957,"count":23}],"isBlockCoverage":true},{"functionName":"done","ranges":[{"startOffset":7969,"endOffset":8450,"count":45},{"startOffset":8019,"endOffset":8051,"count":0},{"startOffset":8135,"endOffset":8153,"count":0},{"startOffset":8278,"endOffset":8318,"count":0},{"startOffset":8371,"endOffset":8418,"count":0}],"isBlockCoverage":true}]},{"scriptId":"88","url":"internal/streams/passthrough.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1809,"count":1}],"isBlockCoverage":false},{"functionName":"PassThrough","ranges":[{"startOffset":1566,"endOffset":1713,"count":23},{"startOffset":1642,"endOffset":1674,"count":0}],"isBlockCoverage":true},{"functionName":"PassThrough._transform","ranges":[{"startOffset":1752,"endOffset":1806,"count":359}],"isBlockCoverage":true}]},{"scriptId":"89","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/store.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5747,"count":1}],"isBlockCoverage":true},{"functionName":"testStore","ranges":[{"startOffset":214,"endOffset":3016,"count":4},{"startOffset":2460,"endOffset":2899,"count":3},{"startOffset":2908,"endOffset":2977,"count":0}],"isBlockCoverage":true},{"functionName":"storeShouldFailToInit","ranges":[{"startOffset":3048,"endOffset":3658,"count":4},{"startOffset":3303,"endOffset":3411,"count":0},{"startOffset":3491,"endOffset":3572,"count":0}],"isBlockCoverage":true},{"functionName":"expectNoStore","ranges":[{"startOffset":3682,"endOffset":4283,"count":1},{"startOffset":3892,"endOffset":4000,"count":0},{"startOffset":4140,"endOffset":4221,"count":0}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":4305,"endOffset":5694,"count":1}],"isBlockCoverage":true}]},{"scriptId":"90","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/image.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":888,"count":1}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":305,"endOffset":835,"count":1},{"startOffset":563,"endOffset":711,"count":0},{"startOffset":720,"endOffset":789,"count":0}],"isBlockCoverage":true}]},{"scriptId":"91","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/address.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3789,"count":1}],"isBlockCoverage":true},{"functionName":"testAddress","ranges":[{"startOffset":308,"endOffset":793,"count":9},{"startOffset":683,"endOffset":752,"count":0}],"isBlockCoverage":true},{"functionName":"validateAddress","ranges":[{"startOffset":819,"endOffset":1754,"count":9},{"startOffset":1111,"endOffset":1751,"count":21}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":1774,"endOffset":3736,"count":1}],"isBlockCoverage":true}]},{"scriptId":"92","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/nearbyStore.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2489,"count":1}],"isBlockCoverage":true},{"functionName":"testNearbyStores","ranges":[{"startOffset":174,"endOffset":778,"count":4},{"startOffset":670,"endOffset":739,"count":0}],"isBlockCoverage":true},{"functionName":"expectNoNearbyStores","ranges":[{"startOffset":809,"endOffset":1408,"count":1},{"startOffset":1300,"endOffset":1369,"count":0}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":1426,"endOffset":2436,"count":1}],"isBlockCoverage":true}]},{"scriptId":"93","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/casingTest.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":805,"count":1}],"isBlockCoverage":true},{"functionName":"testToCase","ranges":[{"startOffset":76,"endOffset":657,"count":1},{"startOffset":549,"endOffset":618,"count":0}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":677,"endOffset":752,"count":1}],"isBlockCoverage":true}]},{"scriptId":"94","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/tracking.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":744,"count":1}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":148,"endOffset":691,"count":1},{"startOffset":583,"endOffset":652,"count":0}],"isBlockCoverage":true}]},{"scriptId":"95","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/payment.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2844,"count":1}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":395,"endOffset":2791,"count":1},{"startOffset":1968,"endOffset":2667,"count":7},{"startOffset":2676,"endOffset":2745,"count":0}],"isBlockCoverage":true}]},{"scriptId":"96","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/item.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1287,"count":1}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":223,"endOffset":1234,"count":1},{"startOffset":495,"endOffset":605,"count":0},{"startOffset":710,"endOffset":1110,"count":5},{"startOffset":791,"endOffset":800,"count":1},{"startOffset":800,"endOffset":814,"count":4},{"startOffset":911,"endOffset":1099,"count":0},{"startOffset":1119,"endOffset":1188,"count":0}],"isBlockCoverage":true}]},{"scriptId":"97","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/customer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1783,"count":1}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":569,"endOffset":1730,"count":1},{"startOffset":1527,"endOffset":1606,"count":0},{"startOffset":1615,"endOffset":1684,"count":0}],"isBlockCoverage":true}]},{"scriptId":"98","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/international.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1185,"count":1}],"isBlockCoverage":true},{"functionName":"confirmUSADefault","ranges":[{"startOffset":130,"endOffset":473,"count":1},{"startOffset":251,"endOffset":352,"count":0},{"startOffset":365,"endOffset":434,"count":0}],"isBlockCoverage":true},{"functionName":"testCountry","ranges":[{"startOffset":495,"endOffset":952,"count":2},{"startOffset":723,"endOffset":835,"count":0},{"startOffset":844,"endOffset":913,"count":0}],"isBlockCoverage":true},{"functionName":"runTest","ranges":[{"startOffset":972,"endOffset":1132,"count":1}],"isBlockCoverage":true}]},{"scriptId":"99","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/test/tests/order.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10982,"count":1}],"isBlockCoverage":true},{"functionName":"defaultRequired","ranges":[{"startOffset":854,"endOffset":1321,"count":1},{"startOffset":1194,"endOffset":1275,"count":0}],"isBlockCoverage":true},{"functionName":"initWithCustomer","ranges":[{"startOffset":1348,"endOffset":2913,"count":1},{"startOffset":2717,"endOffset":2796,"count":0},{"startOffset":2805,"endOffset":2874,"count":0}],"isBlockCoverage":true},{"functionName":"addAndRemoveCoupons","ranges":[{"startOffset":2943,"endOffset":3503,"count":1},{"startOffset":3217,"endOffset":3255,"count":0},{"startOffset":3348,"endOffset":3386,"count":0},{"startOffset":3395,"endOffset":3464,"count":0}],"isBlockCoverage":true},{"functionName":"addAndRemoveItems","ranges":[{"startOffset":3531,"endOffset":4076,"count":1},{"startOffset":3781,"endOffset":3819,"count":0},{"startOffset":3921,"endOffset":3959,"count":0},{"startOffset":3968,"endOffset":4037,"count":0}],"isBlockCoverage":true},{"functionName":"failValidateCheesePizza","ranges":[{"startOffset":4110,"endOffset":4777,"count":1},{"startOffset":4461,"endOffset":4541,"count":0},{"startOffset":4650,"endOffset":4731,"count":0}],"isBlockCoverage":true},{"functionName":"validateCheesePizza","ranges":[{"startOffset":4807,"endOffset":7880,"count":1},{"startOffset":7665,"endOffset":7763,"count":0},{"startOffset":7772,"endOffset":7841,"count":0}],"isBlockCoverage":true},{"functionName":"priceCheesePizza","ranges":[{"startOffset":7907,"endOffset":8662,"count":1},{"startOffset":8498,"endOffset":8535,"count":0},{"startOffset":8554,"endOffset":8623,"count":0}],"isBlockCoverage":true},{"functionName":"failOrderBadAddress","ranges":[{"startOffset":8692,"endOffset":9220,"count":1},{"startOffset":8945,"endOffset":8986,"count":0},{"startOffset":9093,"endOffset":9174,"count":0}],"isBlockCoverage":true},{"functionName":"failOrderCheesePizza","ranges":[{"startOffset":9251,"endOffset":10374,"count":1},{"startOffset":10096,"endOffset":10137,"count":0},{"startOffset":10247,"endOffset":10328,"count":0}],"isBlockCoverage":true},{"functionName":"name","ranges":[{"startOffset":10389,"endOffset":10572,"count":0}],"isBlockCoverage":false},{"functionName":"runTest","ranges":[{"startOffset":10592,"endOffset":10929,"count":1}],"isBlockCoverage":true}]},{"scriptId":"100","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/ansi-colors-es6/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5741,"count":1}],"isBlockCoverage":true},{"functionName":"isObject","ranges":[{"startOffset":32,"endOffset":101,"count":0}],"isBlockCoverage":false},{"functionName":"identity","ranges":[{"startOffset":120,"endOffset":130,"count":0}],"isBlockCoverage":false},{"functionName":"create","ranges":[{"startOffset":409,"endOffset":5674,"count":1}],"isBlockCoverage":true},{"functionName":"ansi","ranges":[{"startOffset":506,"endOffset":1172,"count":42}],"isBlockCoverage":true},{"functionName":"style.wrap","ranges":[{"startOffset":729,"endOffset":1149,"count":213},{"startOffset":784,"endOffset":827,"count":1},{"startOffset":1086,"endOffset":1133,"count":128},{"startOffset":1134,"endOffset":1142,"count":85}],"isBlockCoverage":true},{"functionName":"wrap","ranges":[{"startOffset":1190,"endOffset":1306,"count":213},{"startOffset":1258,"endOffset":1272,"count":0}],"isBlockCoverage":true},{"functionName":"style","ranges":[{"startOffset":1325,"endOffset":1771,"count":129},{"startOffset":1384,"endOffset":1394,"count":0},{"startOffset":1429,"endOffset":1442,"count":0},{"startOffset":1477,"endOffset":1487,"count":0},{"startOffset":1617,"endOffset":1685,"count":0},{"startOffset":1706,"endOffset":1751,"count":213}],"isBlockCoverage":true},{"functionName":"define","ranges":[{"startOffset":1791,"endOffset":2332,"count":42},{"startOffset":1898,"endOffset":1925,"count":5}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":2048,"endOffset":2103,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2111,"endOffset":2320,"count":213},{"startOffset":2255,"endOffset":2280,"count":84},{"startOffset":2281,"endOffset":2289,"count":129}],"isBlockCoverage":true},{"functionName":"color","ranges":[{"startOffset":2139,"endOffset":2173,"count":129}],"isBlockCoverage":true},{"functionName":"colors.hasColor.colors.hasAnsi","ranges":[{"startOffset":4172,"endOffset":4300,"count":0}],"isBlockCoverage":false},{"functionName":"colors.alias","ranges":[{"startOffset":4320,"endOffset":5084,"count":2},{"startOffset":4378,"endOffset":4393,"count":0},{"startOffset":4438,"endOffset":4549,"count":0}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":4794,"endOffset":4849,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":4857,"endOffset":5072,"count":2},{"startOffset":5001,"endOffset":5030,"count":0}],"isBlockCoverage":true},{"functionName":"color","ranges":[{"startOffset":4885,"endOffset":4919,"count":0}],"isBlockCoverage":false},{"functionName":"colors.theme","ranges":[{"startOffset":5104,"endOffset":5310,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5339,"endOffset":5507,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5534,"endOffset":5544,"count":0}],"isBlockCoverage":false}]},{"scriptId":"101","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/NearbyStores.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1591,"count":1}],"isBlockCoverage":true},{"functionName":"NearbyStores","ranges":[{"startOffset":279,"endOffset":455,"count":6}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":463,"endOffset":739,"count":6}],"isBlockCoverage":true},{"functionName":"get dominosAPIResponse","ranges":[{"startOffset":512,"endOffset":587,"count":0}],"isBlockCoverage":false},{"functionName":"set dominosAPIResponse","ranges":[{"startOffset":595,"endOffset":709,"count":6}],"isBlockCoverage":true},{"functionName":"#getStores","ranges":[{"startOffset":747,"endOffset":1521,"count":6}],"isBlockCoverage":true}]},{"scriptId":"102","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/utils/DominosTypes.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2395,"count":1}],"isBlockCoverage":true},{"functionName":"test","ranges":[{"startOffset":664,"endOffset":738,"count":19}],"isBlockCoverage":true},{"functionName":"address","ranges":[{"startOffset":746,"endOffset":819,"count":347}],"isBlockCoverage":true},{"functionName":"amountsBreakdown","ranges":[{"startOffset":827,"endOffset":918,"count":164}],"isBlockCoverage":true},{"functionName":"nearbyStores","ranges":[{"startOffset":926,"endOffset":1009,"count":5}],"isBlockCoverage":true},{"functionName":"menu","ranges":[{"startOffset":1017,"endOffset":1084,"count":4}],"isBlockCoverage":true},{"functionName":"store","ranges":[{"startOffset":1092,"endOffset":1161,"count":4}],"isBlockCoverage":true},{"functionName":"item","ranges":[{"startOffset":1169,"endOffset":1236,"count":8}],"isBlockCoverage":true},{"functionName":"customer","ranges":[{"startOffset":1244,"endOffset":1319,"count":10}],"isBlockCoverage":true},{"functionName":"image","ranges":[{"startOffset":1327,"endOffset":1396,"count":1}],"isBlockCoverage":true},{"functionName":"payment","ranges":[{"startOffset":1404,"endOffset":1477,"count":6}],"isBlockCoverage":true},{"functionName":"tracking","ranges":[{"startOffset":1485,"endOffset":1560,"count":1}],"isBlockCoverage":true},{"functionName":"validationError","ranges":[{"startOffset":1568,"endOffset":1664,"count":0}],"isBlockCoverage":false},{"functionName":"priceError","ranges":[{"startOffset":1672,"endOffset":1758,"count":0}],"isBlockCoverage":false},{"functionName":"placeOrderError","ranges":[{"startOffset":1766,"endOffset":1862,"count":1}],"isBlockCoverage":true},{"functionName":"addressError","ranges":[{"startOffset":1870,"endOffset":1960,"count":1}],"isBlockCoverage":true},{"functionName":"dateError","ranges":[{"startOffset":1968,"endOffset":2052,"count":0}],"isBlockCoverage":false},{"functionName":"storeError","ranges":[{"startOffset":2060,"endOffset":2146,"count":1}],"isBlockCoverage":true},{"functionName":"productsError","ranges":[{"startOffset":2154,"endOffset":2246,"count":0}],"isBlockCoverage":false},{"functionName":"fetchError","ranges":[{"startOffset":2254,"endOffset":2333,"count":1}],"isBlockCoverage":true}]},{"scriptId":"103","url":"internal/deps/cjs-module-lexer/dist/lexer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":31679,"count":1}],"isBlockCoverage":true},{"functionName":"parse","ranges":[{"startOffset":231,"endOffset":903,"count":3},{"startOffset":261,"endOffset":296,"count":0},{"startOffset":337,"endOffset":352,"count":0},{"startOffset":388,"endOffset":423,"count":1},{"startOffset":447,"endOffset":449,"count":0},{"startOffset":521,"endOffset":668,"count":0},{"startOffset":716,"endOffset":748,"count":1},{"startOffset":761,"endOffset":791,"count":0},{"startOffset":804,"endOffset":863,"count":9}],"isBlockCoverage":true},{"functionName":"E","ranges":[{"startOffset":903,"endOffset":1004,"count":0}],"isBlockCoverage":false},{"functionName":"C","ranges":[{"startOffset":1004,"endOffset":1078,"count":3},{"startOffset":1055,"endOffset":1077,"count":41704}],"isBlockCoverage":true},{"functionName":"init","ranges":[{"startOffset":1084,"endOffset":31679,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1114,"endOffset":31674,"count":1},{"startOffset":31543,"endOffset":31587,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":31568,"endOffset":31586,"count":0}],"isBlockCoverage":false}]},{"scriptId":"104","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/strong-type/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6934,"count":1}],"isBlockCoverage":true},{"functionName":"Is","ranges":[{"startOffset":115,"endOffset":176,"count":27}],"isBlockCoverage":true},{"functionName":"throw","ranges":[{"startOffset":196,"endOffset":426,"count":88447},{"startOffset":360,"endOffset":399,"count":88446},{"startOffset":399,"endOffset":425,"count":1}],"isBlockCoverage":true},{"functionName":"typeCheck","ranges":[{"startOffset":434,"endOffset":583,"count":123644},{"startOffset":491,"endOffset":529,"count":81456},{"startOffset":529,"endOffset":582,"count":42188}],"isBlockCoverage":true},{"functionName":"instanceCheck","ranges":[{"startOffset":591,"endOffset":832,"count":47607},{"startOffset":728,"endOffset":766,"count":1348},{"startOffset":766,"endOffset":831,"count":46259}],"isBlockCoverage":true},{"functionName":"symbolStringCheck","ranges":[{"startOffset":840,"endOffset":1074,"count":0}],"isBlockCoverage":false},{"functionName":"compare","ranges":[{"startOffset":1082,"endOffset":1247,"count":69},{"startOffset":1188,"endOffset":1246,"count":0}],"isBlockCoverage":true},{"functionName":"finite","ranges":[{"startOffset":1276,"endOffset":1416,"count":0}],"isBlockCoverage":false},{"functionName":"NaN","ranges":[{"startOffset":1424,"endOffset":1644,"count":0}],"isBlockCoverage":false},{"functionName":"null","ranges":[{"startOffset":1652,"endOffset":1720,"count":0}],"isBlockCoverage":false},{"functionName":"array","ranges":[{"startOffset":1748,"endOffset":1817,"count":47029}],"isBlockCoverage":true},{"functionName":"boolean","ranges":[{"startOffset":1825,"endOffset":1896,"count":42}],"isBlockCoverage":true},{"functionName":"bigint","ranges":[{"startOffset":1904,"endOffset":1973,"count":0}],"isBlockCoverage":false},{"functionName":"date","ranges":[{"startOffset":1981,"endOffset":2048,"count":0}],"isBlockCoverage":false},{"functionName":"generator","ranges":[{"startOffset":2060,"endOffset":2143,"count":0}],"isBlockCoverage":false},{"functionName":"asyncGenerator","ranges":[{"startOffset":2151,"endOffset":2244,"count":0}],"isBlockCoverage":false},{"functionName":"globalThis","ranges":[{"startOffset":2252,"endOffset":2378,"count":0}],"isBlockCoverage":false},{"functionName":"infinity","ranges":[{"startOffset":2386,"endOffset":2466,"count":0}],"isBlockCoverage":false},{"functionName":"map","ranges":[{"startOffset":2474,"endOffset":2539,"count":0}],"isBlockCoverage":false},{"functionName":"weakMap","ranges":[{"startOffset":2547,"endOffset":2620,"count":0}],"isBlockCoverage":false},{"functionName":"number","ranges":[{"startOffset":2628,"endOffset":2697,"count":11}],"isBlockCoverage":true},{"functionName":"object","ranges":[{"startOffset":2705,"endOffset":2774,"count":52465}],"isBlockCoverage":true},{"functionName":"promise","ranges":[{"startOffset":2782,"endOffset":2855,"count":0}],"isBlockCoverage":false},{"functionName":"regExp","ranges":[{"startOffset":2863,"endOffset":2934,"count":0}],"isBlockCoverage":false},{"functionName":"undefined","ranges":[{"startOffset":2946,"endOffset":3021,"count":1}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":3029,"endOffset":3094,"count":0}],"isBlockCoverage":false},{"functionName":"weakSet","ranges":[{"startOffset":3102,"endOffset":3175,"count":0}],"isBlockCoverage":false},{"functionName":"string","ranges":[{"startOffset":3187,"endOffset":3256,"count":71125}],"isBlockCoverage":true},{"functionName":"symbol","ranges":[{"startOffset":3264,"endOffset":3333,"count":0}],"isBlockCoverage":false},{"functionName":"function","ranges":[{"startOffset":3358,"endOffset":3431,"count":0}],"isBlockCoverage":false},{"functionName":"asyncFunction","ranges":[{"startOffset":3439,"endOffset":3530,"count":0}],"isBlockCoverage":false},{"functionName":"generatorFunction","ranges":[{"startOffset":3538,"endOffset":3637,"count":0}],"isBlockCoverage":false},{"functionName":"asyncGeneratorFunction","ranges":[{"startOffset":3645,"endOffset":3754,"count":0}],"isBlockCoverage":false},{"functionName":"error","ranges":[{"startOffset":3781,"endOffset":3850,"count":0}],"isBlockCoverage":false},{"functionName":"evalError","ranges":[{"startOffset":3858,"endOffset":3935,"count":0}],"isBlockCoverage":false},{"functionName":"rangeError","ranges":[{"startOffset":3943,"endOffset":4022,"count":0}],"isBlockCoverage":false},{"functionName":"referenceError","ranges":[{"startOffset":4030,"endOffset":4117,"count":4}],"isBlockCoverage":true},{"functionName":"syntaxError","ranges":[{"startOffset":4125,"endOffset":4206,"count":0}],"isBlockCoverage":false},{"functionName":"typeError","ranges":[{"startOffset":4214,"endOffset":4291,"count":1}],"isBlockCoverage":true},{"functionName":"URIError","ranges":[{"startOffset":4299,"endOffset":4374,"count":0}],"isBlockCoverage":false},{"functionName":"bigInt64Array","ranges":[{"startOffset":4411,"endOffset":4496,"count":0}],"isBlockCoverage":false},{"functionName":"bigUint64Array","ranges":[{"startOffset":4504,"endOffset":4591,"count":0}],"isBlockCoverage":false},{"functionName":"float32Array","ranges":[{"startOffset":4599,"endOffset":4682,"count":0}],"isBlockCoverage":false},{"functionName":"float64Array","ranges":[{"startOffset":4690,"endOffset":4773,"count":0}],"isBlockCoverage":false},{"functionName":"int8Array","ranges":[{"startOffset":4781,"endOffset":4858,"count":0}],"isBlockCoverage":false},{"functionName":"int16Array","ranges":[{"startOffset":4866,"endOffset":4945,"count":0}],"isBlockCoverage":false},{"functionName":"int32Array","ranges":[{"startOffset":4953,"endOffset":5032,"count":0}],"isBlockCoverage":false},{"functionName":"uint8Array","ranges":[{"startOffset":5040,"endOffset":5119,"count":0}],"isBlockCoverage":false},{"functionName":"uint8ClampedArray","ranges":[{"startOffset":5127,"endOffset":5220,"count":0}],"isBlockCoverage":false},{"functionName":"uint16Array","ranges":[{"startOffset":5232,"endOffset":5313,"count":0}],"isBlockCoverage":false},{"functionName":"uint32Array","ranges":[{"startOffset":5321,"endOffset":5402,"count":0}],"isBlockCoverage":false},{"functionName":"arrayBuffer","ranges":[{"startOffset":5425,"endOffset":5506,"count":0}],"isBlockCoverage":false},{"functionName":"dataView","ranges":[{"startOffset":5514,"endOffset":5589,"count":0}],"isBlockCoverage":false},{"functionName":"sharedArrayBuffer","ranges":[{"startOffset":5597,"endOffset":5737,"count":0}],"isBlockCoverage":false},{"functionName":"intlDateTimeFormat","ranges":[{"startOffset":5788,"endOffset":5884,"count":0}],"isBlockCoverage":false},{"functionName":"intlCollator","ranges":[{"startOffset":5892,"endOffset":5976,"count":0}],"isBlockCoverage":false},{"functionName":"intlDisplayNames","ranges":[{"startOffset":5984,"endOffset":6076,"count":0}],"isBlockCoverage":false},{"functionName":"intlListFormat","ranges":[{"startOffset":6084,"endOffset":6172,"count":0}],"isBlockCoverage":false},{"functionName":"intlLocale","ranges":[{"startOffset":6180,"endOffset":6260,"count":0}],"isBlockCoverage":false},{"functionName":"intlNumberFormat","ranges":[{"startOffset":6268,"endOffset":6360,"count":0}],"isBlockCoverage":false},{"functionName":"intlPluralRules","ranges":[{"startOffset":6368,"endOffset":6458,"count":0}],"isBlockCoverage":false},{"functionName":"intlRelativeTimeFormat","ranges":[{"startOffset":6466,"endOffset":6570,"count":0}],"isBlockCoverage":false},{"functionName":"intlRelativeTimeFormat","ranges":[{"startOffset":6578,"endOffset":6682,"count":0}],"isBlockCoverage":false},{"functionName":"finalizationRegistry","ranges":[{"startOffset":6720,"endOffset":6819,"count":0}],"isBlockCoverage":false},{"functionName":"weakRef","ranges":[{"startOffset":6827,"endOffset":6900,"count":0}],"isBlockCoverage":false}]},{"scriptId":"105","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":990,"count":1}],"isBlockCoverage":true}]},{"scriptId":"106","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/utils/toCase.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":955,"count":1}],"isBlockCoverage":true},{"functionName":"toCamel","ranges":[{"startOffset":67,"endOffset":152,"count":70479}],"isBlockCoverage":true},{"functionName":"toPascal","ranges":[{"startOffset":171,"endOffset":256,"count":499}],"isBlockCoverage":true},{"functionName":"pascalObjectKeys","ranges":[{"startOffset":283,"endOffset":521,"count":30},{"startOffset":392,"endOffset":490,"count":465}],"isBlockCoverage":true},{"functionName":"camelObjectKeys","ranges":[{"startOffset":547,"endOffset":779,"count":18},{"startOffset":655,"endOffset":749,"count":220}],"isBlockCoverage":true}]},{"scriptId":"107","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Store.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":877,"count":1}],"isBlockCoverage":true},{"functionName":"Store","ranges":[{"startOffset":294,"endOffset":616,"count":9},{"startOffset":406,"endOffset":426,"count":5},{"startOffset":427,"endOffset":544,"count":4},{"startOffset":544,"endOffset":615,"count":5}],"isBlockCoverage":true},{"functionName":"#init","ranges":[{"startOffset":624,"endOffset":822,"count":5},{"startOffset":745,"endOffset":821,"count":4}],"isBlockCoverage":true}]},{"scriptId":"108","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Order.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7909,"count":1}],"isBlockCoverage":true},{"functionName":"Order","ranges":[{"startOffset":449,"endOffset":543,"count":9},{"startOffset":536,"endOffset":542,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":551,"endOffset":4098,"count":9}],"isBlockCoverage":true},{"functionName":"orderInFuture","ranges":[{"startOffset":1489,"endOffset":1826,"count":0}],"isBlockCoverage":false},{"functionName":"orderNow","ranges":[{"startOffset":1834,"endOffset":1890,"count":0}],"isBlockCoverage":false},{"functionName":"addCustomer","ranges":[{"startOffset":1898,"endOffset":2049,"count":9}],"isBlockCoverage":true},{"functionName":"addCoupon","ranges":[{"startOffset":2057,"endOffset":2209,"count":1}],"isBlockCoverage":true},{"functionName":"removeCoupon","ranges":[{"startOffset":2217,"endOffset":2356,"count":1}],"isBlockCoverage":true},{"functionName":"addItem","ranges":[{"startOffset":2364,"endOffset":2487,"count":6}],"isBlockCoverage":true},{"functionName":"removeItem","ranges":[{"startOffset":2495,"endOffset":2603,"count":1}],"isBlockCoverage":true},{"functionName":"get payload","ranges":[{"startOffset":2611,"endOffset":3286,"count":6},{"startOffset":2789,"endOffset":2852,"count":5},{"startOffset":2919,"endOffset":2985,"count":1}],"isBlockCoverage":true},{"functionName":"get formatted","ranges":[{"startOffset":3366,"endOffset":3422,"count":6}],"isBlockCoverage":true},{"functionName":"get validationResponse","ranges":[{"startOffset":3430,"endOffset":3505,"count":8}],"isBlockCoverage":true},{"functionName":"set validationResponse","ranges":[{"startOffset":3513,"endOffset":3634,"count":2}],"isBlockCoverage":true},{"functionName":"get priceResponse","ranges":[{"startOffset":3642,"endOffset":3707,"count":4}],"isBlockCoverage":true},{"functionName":"set priceResponse","ranges":[{"startOffset":3715,"endOffset":3826,"count":2}],"isBlockCoverage":true},{"functionName":"get placeResponse","ranges":[{"startOffset":3834,"endOffset":3899,"count":2}],"isBlockCoverage":true},{"functionName":"set placeResponse","ranges":[{"startOffset":3907,"endOffset":4018,"count":1}],"isBlockCoverage":true},{"functionName":"#remove","ranges":[{"startOffset":4110,"endOffset":4285,"count":2}],"isBlockCoverage":true},{"functionName":"validate","ranges":[{"startOffset":4293,"endOffset":4906,"count":3},{"startOffset":4340,"endOffset":4442,"count":1},{"startOffset":4442,"endOffset":4752,"count":2},{"startOffset":4753,"endOffset":4837,"count":0},{"startOffset":4837,"endOffset":4905,"count":2}],"isBlockCoverage":true},{"functionName":"price","ranges":[{"startOffset":4914,"endOffset":5735,"count":2},{"startOffset":4956,"endOffset":5079,"count":0},{"startOffset":5118,"endOffset":5248,"count":0},{"startOffset":5597,"endOffset":5671,"count":0}],"isBlockCoverage":true},{"functionName":"place","ranges":[{"startOffset":5743,"endOffset":6801,"count":2},{"startOffset":5785,"endOffset":5908,"count":0},{"startOffset":5947,"endOffset":6077,"count":0},{"startOffset":6121,"endOffset":6620,"count":1},{"startOffset":6620,"endOffset":6652,"count":0},{"startOffset":6653,"endOffset":6732,"count":1},{"startOffset":6732,"endOffset":6800,"count":0}],"isBlockCoverage":true},{"functionName":"set formatted","ranges":[{"startOffset":6810,"endOffset":7851,"count":4},{"startOffset":7120,"endOffset":7182,"count":12},{"startOffset":7408,"endOffset":7820,"count":164},{"startOffset":7641,"endOffset":7669,"count":116},{"startOffset":7684,"endOffset":7770,"count":116}],"isBlockCoverage":true}]},{"scriptId":"109","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/utils/urls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6484,"count":1}],"isBlockCoverage":true},{"functionName":"useInternational","ranges":[{"startOffset":6277,"endOffset":6389,"count":2}],"isBlockCoverage":true}]},{"scriptId":"110","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Item.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":662,"count":1}],"isBlockCoverage":true},{"functionName":"Item","ranges":[{"startOffset":152,"endOffset":257,"count":2},{"startOffset":250,"endOffset":256,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":265,"endOffset":328,"count":2}],"isBlockCoverage":true},{"functionName":"get formatted","ranges":[{"startOffset":339,"endOffset":536,"count":6}],"isBlockCoverage":true},{"functionName":"set formatted","ranges":[{"startOffset":544,"endOffset":611,"count":4}],"isBlockCoverage":true}]},{"scriptId":"111","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Customer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":594,"count":1}],"isBlockCoverage":true},{"functionName":"Customer","ranges":[{"startOffset":182,"endOffset":390,"count":3},{"startOffset":383,"endOffset":389,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":398,"endOffset":527,"count":3}],"isBlockCoverage":true}]},{"scriptId":"112","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Payment.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2201,"count":1}],"isBlockCoverage":true},{"functionName":"Payment","ranges":[{"startOffset":144,"endOffset":957,"count":7},{"startOffset":380,"endOffset":434,"count":2},{"startOffset":911,"endOffset":914,"count":5},{"startOffset":950,"endOffset":956,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":969,"endOffset":1091,"count":7}],"isBlockCoverage":true},{"functionName":"#digitsOnly","ranges":[{"startOffset":1102,"endOffset":1171,"count":14}],"isBlockCoverage":true},{"functionName":"#validate","ranges":[{"startOffset":1179,"endOffset":2145,"count":7},{"startOffset":1654,"endOffset":1676,"count":2},{"startOffset":1676,"endOffset":1681,"count":5},{"startOffset":1726,"endOffset":1754,"count":1},{"startOffset":1754,"endOffset":1759,"count":6},{"startOffset":1798,"endOffset":1820,"count":1},{"startOffset":1820,"endOffset":1825,"count":6},{"startOffset":1866,"endOffset":1890,"count":1},{"startOffset":1890,"endOffset":1895,"count":6},{"startOffset":1938,"endOffset":1964,"count":1},{"startOffset":1964,"endOffset":1969,"count":6},{"startOffset":2007,"endOffset":2028,"count":1},{"startOffset":2028,"endOffset":2033,"count":6},{"startOffset":2075,"endOffset":2100,"count":0}],"isBlockCoverage":true}]},{"scriptId":"113","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Address.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1903,"count":1}],"isBlockCoverage":true},{"functionName":"Address","ranges":[{"startOffset":155,"endOffset":358,"count":34},{"startOffset":269,"endOffset":319,"count":13},{"startOffset":351,"endOffset":357,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":366,"endOffset":557,"count":34}],"isBlockCoverage":true},{"functionName":"get addressLines","ranges":[{"startOffset":565,"endOffset":1018,"count":12},{"startOffset":634,"endOffset":713,"count":8},{"startOffset":727,"endOffset":731,"count":0},{"startOffset":797,"endOffset":801,"count":8},{"startOffset":842,"endOffset":846,"count":8}],"isBlockCoverage":true},{"functionName":"#parse","ranges":[{"startOffset":1026,"endOffset":1113,"count":13}],"isBlockCoverage":true},{"functionName":"parseAddress","ranges":[{"startOffset":1142,"endOffset":1847,"count":13},{"startOffset":1256,"endOffset":1315,"count":31},{"startOffset":1486,"endOffset":1555,"count":4},{"startOffset":1565,"endOffset":1690,"count":4},{"startOffset":1700,"endOffset":1837,"count":2}],"isBlockCoverage":true}]},{"scriptId":"115","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/DominosErrors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2989,"count":1}],"isBlockCoverage":true},{"functionName":"DominosValidationError","ranges":[{"startOffset":155,"endOffset":419,"count":0}],"isBlockCoverage":false},{"functionName":"DominosPriceError","ranges":[{"startOffset":471,"endOffset":724,"count":0}],"isBlockCoverage":false},{"functionName":"DominosPlaceOrderError","ranges":[{"startOffset":781,"endOffset":1032,"count":1},{"startOffset":1025,"endOffset":1031,"count":0}],"isBlockCoverage":true},{"functionName":"DominosAddressError","ranges":[{"startOffset":1086,"endOffset":1244,"count":1},{"startOffset":1237,"endOffset":1243,"count":0}],"isBlockCoverage":true},{"functionName":"DominosDateError","ranges":[{"startOffset":1295,"endOffset":1450,"count":0}],"isBlockCoverage":false},{"functionName":"DominosStoreError","ranges":[{"startOffset":1502,"endOffset":1658,"count":1},{"startOffset":1651,"endOffset":1657,"count":0}],"isBlockCoverage":true},{"functionName":"DominosProductsError","ranges":[{"startOffset":1713,"endOffset":1872,"count":0}],"isBlockCoverage":false},{"functionName":"createErrorMessage","ranges":[{"startOffset":1905,"endOffset":2644,"count":1},{"startOffset":2162,"endOffset":2252,"count":2},{"startOffset":2410,"endOffset":2471,"count":3}],"isBlockCoverage":true}]},{"scriptId":"116","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/utils/api-json.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1605,"count":1}],"isBlockCoverage":true},{"functionName":"post","ranges":[{"startOffset":122,"endOffset":569,"count":5}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":585,"endOffset":998,"count":16}],"isBlockCoverage":true},{"functionName":"getSoap","ranges":[{"startOffset":1018,"endOffset":1503,"count":1}],"isBlockCoverage":true}]},{"scriptId":"117","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Menu.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6641,"count":1}],"isBlockCoverage":true},{"functionName":"Menu","ranges":[{"startOffset":225,"endOffset":309,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":317,"endOffset":1093,"count":5}],"isBlockCoverage":true},{"functionName":"get dominosAPIResponse","ranges":[{"startOffset":866,"endOffset":941,"count":119}],"isBlockCoverage":true},{"functionName":"set dominosAPIResponse","ranges":[{"startOffset":949,"endOffset":1063,"count":5}],"isBlockCoverage":true},{"functionName":"#getMenu","ranges":[{"startOffset":1101,"endOffset":1387,"count":5}],"isBlockCoverage":true},{"functionName":"#parse","ranges":[{"startOffset":1396,"endOffset":3493,"count":5},{"startOffset":1575,"endOffset":1801,"count":20}],"isBlockCoverage":true},{"functionName":"#defineCategories","ranges":[{"startOffset":3501,"endOffset":4907,"count":40},{"startOffset":3585,"endOffset":4900,"count":200},{"startOffset":3849,"endOffset":3920,"count":140},{"startOffset":3920,"endOffset":4063,"count":60},{"startOffset":4114,"endOffset":4199,"count":65},{"startOffset":4310,"endOffset":4599,"count":20},{"startOffset":4703,"endOffset":4835,"count":149}],"isBlockCoverage":true},{"functionName":"#camelCaseKeys","ranges":[{"startOffset":4919,"endOffset":5105,"count":3628},{"startOffset":5007,"endOffset":5098,"count":19303}],"isBlockCoverage":true},{"functionName":"#allDescendantsToCamel","ranges":[{"startOffset":5117,"endOffset":5723,"count":6408},{"startOffset":5254,"endOffset":5705,"count":46908},{"startOffset":5317,"endOffset":5362,"count":45650},{"startOffset":5381,"endOffset":5479,"count":43300},{"startOffset":5479,"endOffset":5705,"count":3608}],"isBlockCoverage":true},{"functionName":"#allGrandDescendantsToCamel","ranges":[{"startOffset":5735,"endOffset":6083,"count":135},{"startOffset":5911,"endOffset":6065,"count":2790}],"isBlockCoverage":true},{"functionName":"#allParentAndGrandDescendantsToCamel","ranges":[{"startOffset":6095,"endOffset":6584,"count":20},{"startOffset":6377,"endOffset":6551,"count":90}],"isBlockCoverage":true}]},{"scriptId":"118","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/AmountsBreakdown.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":537,"count":1}],"isBlockCoverage":true},{"functionName":"AmountsBreakdown","ranges":[{"startOffset":101,"endOffset":195,"count":9},{"startOffset":188,"endOffset":194,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":203,"endOffset":453,"count":9}],"isBlockCoverage":true}]},{"scriptId":"119","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Image.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":534,"count":1}],"isBlockCoverage":true},{"functionName":"Image","ranges":[{"startOffset":172,"endOffset":361,"count":1},{"startOffset":354,"endOffset":360,"count":0}],"isBlockCoverage":true},{"functionName":"#fetchImage","ranges":[{"startOffset":370,"endOffset":481,"count":1}],"isBlockCoverage":true}]},{"scriptId":"120","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/Tracking.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1276,"count":1}],"isBlockCoverage":true},{"functionName":"Tracking","ranges":[{"startOffset":161,"endOffset":206,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":218,"endOffset":266,"count":1}],"isBlockCoverage":true},{"functionName":"byPhone","ranges":[{"startOffset":274,"endOffset":401,"count":1}],"isBlockCoverage":true},{"functionName":"byID","ranges":[{"startOffset":409,"endOffset":543,"count":0}],"isBlockCoverage":false},{"functionName":"byURL","ranges":[{"startOffset":551,"endOffset":1218,"count":1}],"isBlockCoverage":true}]},{"scriptId":"121","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/DominosFormat.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":957,"count":1}],"isBlockCoverage":true},{"functionName":"DominosFormat","ranges":[{"startOffset":155,"endOffset":208,"count":64}],"isBlockCoverage":true},{"functionName":"set init","ranges":[{"startOffset":216,"endOffset":330,"count":48}],"isBlockCoverage":true},{"functionName":"get formatted","ranges":[{"startOffset":338,"endOffset":485,"count":30}],"isBlockCoverage":true},{"functionName":"set formatted","ranges":[{"startOffset":493,"endOffset":654,"count":18}],"isBlockCoverage":true},{"functionName":"get dominosAPIResponse","ranges":[{"startOffset":662,"endOffset":737,"count":0}],"isBlockCoverage":false},{"functionName":"set dominosAPIResponse","ranges":[{"startOffset":745,"endOffset":859,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":867,"endOffset":889,"count":64}],"isBlockCoverage":true}]},{"scriptId":"122","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/js-base64-file/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2225,"count":1}],"isBlockCoverage":true},{"functionName":"Base64File","ranges":[{"startOffset":178,"endOffset":201,"count":1}],"isBlockCoverage":true},{"functionName":"load","ranges":[{"startOffset":209,"endOffset":665,"count":0}],"isBlockCoverage":false},{"functionName":"loadSync","ranges":[{"startOffset":673,"endOffset":863,"count":0}],"isBlockCoverage":false},{"functionName":"save","ranges":[{"startOffset":871,"endOffset":1216,"count":0}],"isBlockCoverage":false},{"functionName":"saveSync","ranges":[{"startOffset":1224,"endOffset":1482,"count":0}],"isBlockCoverage":false},{"functionName":"loadRemote","ranges":[{"startOffset":1490,"endOffset":2160,"count":1}],"isBlockCoverage":true}]},{"scriptId":"123","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/modules/defaultParameters.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":453,"count":1}],"isBlockCoverage":true},{"functionName":"defaultParameters","ranges":[{"startOffset":24,"endOffset":380,"count":48},{"startOffset":92,"endOffset":234,"count":35},{"startOffset":234,"endOffset":379,"count":13}],"isBlockCoverage":true}]},{"scriptId":"124","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/node-fetch/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":41559,"count":1},{"startOffset":4166,"endOffset":4178,"count":0}],"isBlockCoverage":true},{"functionName":"_interopDefault","ranges":[{"startOffset":79,"endOffset":193,"count":5},{"startOffset":150,"endOffset":168,"count":4},{"startOffset":170,"endOffset":185,"count":0}],"isBlockCoverage":true},{"functionName":"Blob","ranges":[{"startOffset":702,"endOffset":1724,"count":0}],"isBlockCoverage":false},{"functionName":"get size","ranges":[{"startOffset":1726,"endOffset":1771,"count":0}],"isBlockCoverage":false},{"functionName":"get type","ranges":[{"startOffset":1773,"endOffset":1809,"count":0}],"isBlockCoverage":false},{"functionName":"text","ranges":[{"startOffset":1811,"endOffset":1873,"count":0}],"isBlockCoverage":false},{"functionName":"arrayBuffer","ranges":[{"startOffset":1875,"endOffset":2031,"count":0}],"isBlockCoverage":false},{"functionName":"stream","ranges":[{"startOffset":2033,"endOffset":2189,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":2191,"endOffset":2232,"count":0}],"isBlockCoverage":false},{"functionName":"slice","ranges":[{"startOffset":2234,"endOffset":2976,"count":0}],"isBlockCoverage":false},{"functionName":"FetchError","ranges":[{"startOffset":3577,"endOffset":3958,"count":1},{"startOffset":3791,"endOffset":3843,"count":0}],"isBlockCoverage":true},{"functionName":"Body","ranges":[{"startOffset":4510,"endOffset":5843,"count":48},{"startOffset":4630,"endOffset":4634,"count":0},{"startOffset":4701,"endOffset":4704,"count":0},{"startOffset":4794,"endOffset":4797,"count":0},{"startOffset":4834,"endOffset":4884,"count":20},{"startOffset":4884,"endOffset":5460,"count":28},{"startOffset":4919,"endOffset":4993,"count":0},{"startOffset":5017,"endOffset":5018,"count":0},{"startOffset":5051,"endOffset":5052,"count":0},{"startOffset":5127,"endOffset":5184,"count":0},{"startOffset":5220,"endOffset":5322,"count":0},{"startOffset":5356,"endOffset":5357,"count":23},{"startOffset":5357,"endOffset":5460,"count":5},{"startOffset":5602,"endOffset":5841,"count":23}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5623,"endOffset":5836,"count":0}],"isBlockCoverage":false},{"functionName":"get body","ranges":[{"startOffset":5865,"endOffset":5911,"count":104}],"isBlockCoverage":true},{"functionName":"get bodyUsed","ranges":[{"startOffset":5915,"endOffset":5970,"count":0}],"isBlockCoverage":false},{"functionName":"arrayBuffer","ranges":[{"startOffset":6044,"endOffset":6199,"count":0}],"isBlockCoverage":false},{"functionName":"blob","ranges":[{"startOffset":6269,"endOffset":6533,"count":0}],"isBlockCoverage":false},{"functionName":"json","ranges":[{"startOffset":6600,"endOffset":6905,"count":21}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6668,"endOffset":6900,"count":21},{"startOffset":6744,"endOffset":6896,"count":1}],"isBlockCoverage":true},{"functionName":"text","ranges":[{"startOffset":6972,"endOffset":7075,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7018,"endOffset":7070,"count":1}],"isBlockCoverage":true},{"functionName":"buffer","ranges":[{"startOffset":7159,"endOffset":7205,"count":1}],"isBlockCoverage":true},{"functionName":"textConverted","ranges":[{"startOffset":7365,"endOffset":7517,"count":0}],"isBlockCoverage":false},{"functionName":"Body.mixIn","ranges":[{"startOffset":7813,"endOffset":8088,"count":2},{"startOffset":7896,"endOffset":8086,"count":16}],"isBlockCoverage":true},{"functionName":"consumeBody","ranges":[{"startOffset":8241,"endOffset":10527,"count":23},{"startOffset":8319,"endOffset":8406,"count":0},{"startOffset":8472,"endOffset":8529,"count":0},{"startOffset":8592,"endOffset":8644,"count":0},{"startOffset":8682,"endOffset":8710,"count":0},{"startOffset":8759,"endOffset":8800,"count":0},{"startOffset":8878,"endOffset":8930,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9078,"endOffset":10523,"count":23},{"startOffset":9189,"endOffset":9403,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":9218,"endOffset":9381,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9450,"endOffset":9792,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9814,"endOffset":10142,"count":428},{"startOffset":9865,"endOffset":9883,"count":0},{"startOffset":9904,"endOffset":9946,"count":0},{"startOffset":9948,"endOffset":10084,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10163,"endOffset":10518,"count":23},{"startOffset":10191,"endOffset":10209,"count":0},{"startOffset":10302,"endOffset":10514,"count":0}],"isBlockCoverage":true},{"functionName":"convertBody","ranges":[{"startOffset":10808,"endOffset":12120,"count":0}],"isBlockCoverage":false},{"functionName":"isURLSearchParams","ranges":[{"startOffset":12328,"endOffset":12883,"count":28},{"startOffset":12433,"endOffset":12468,"count":23},{"startOffset":12469,"endOffset":12504,"count":0},{"startOffset":12505,"endOffset":12537,"count":0},{"startOffset":12538,"endOffset":12573,"count":0},{"startOffset":12574,"endOffset":12606,"count":0},{"startOffset":12607,"endOffset":12639,"count":0},{"startOffset":12661,"endOffset":12846,"count":0},{"startOffset":12847,"endOffset":12880,"count":0}],"isBlockCoverage":true},{"functionName":"isBlob","ranges":[{"startOffset":13003,"endOffset":13349,"count":61},{"startOffset":13058,"endOffset":13098,"count":56},{"startOffset":13099,"endOffset":13130,"count":0},{"startOffset":13131,"endOffset":13166,"count":0},{"startOffset":13167,"endOffset":13207,"count":0},{"startOffset":13208,"endOffset":13251,"count":0},{"startOffset":13252,"endOffset":13297,"count":0},{"startOffset":13298,"endOffset":13346,"count":0}],"isBlockCoverage":true},{"functionName":"clone","ranges":[{"startOffset":13475,"endOffset":14117,"count":0}],"isBlockCoverage":false},{"functionName":"extractContentType","ranges":[{"startOffset":14411,"endOffset":15460,"count":0}],"isBlockCoverage":false},{"functionName":"getTotalBytes","ranges":[{"startOffset":15798,"endOffset":16394,"count":5},{"startOffset":15884,"endOffset":15918,"count":0},{"startOffset":15942,"endOffset":15966,"count":0},{"startOffset":16045,"endOffset":16392,"count":0}],"isBlockCoverage":true},{"functionName":"writeToStream","ranges":[{"startOffset":16544,"endOffset":16870,"count":24},{"startOffset":16636,"endOffset":16672,"count":19},{"startOffset":16672,"endOffset":16868,"count":5},{"startOffset":16696,"endOffset":16728,"count":0},{"startOffset":16819,"endOffset":16868,"count":0}],"isBlockCoverage":true},{"functionName":"validateName","ranges":[{"startOffset":17109,"endOffset":17280,"count":697},{"startOffset":17208,"endOffset":17278,"count":0}],"isBlockCoverage":true},{"functionName":"validateValue","ranges":[{"startOffset":17282,"endOffset":17450,"count":549},{"startOffset":17376,"endOffset":17448,"count":0}],"isBlockCoverage":true},{"functionName":"find","ranges":[{"startOffset":17623,"endOffset":17782,"count":721},{"startOffset":17702,"endOffset":17761,"count":3577},{"startOffset":17738,"endOffset":17758,"count":74},{"startOffset":17761,"endOffset":17781,"count":647}],"isBlockCoverage":true},{"functionName":"Headers","ranges":[{"startOffset":17925,"endOffset":19464,"count":97},{"startOffset":17975,"endOffset":18004,"count":73},{"startOffset":18005,"endOffset":18019,"count":73},{"startOffset":18020,"endOffset":18031,"count":24},{"startOffset":18101,"endOffset":18342,"count":50},{"startOffset":18227,"endOffset":18326,"count":405},{"startOffset":18277,"endOffset":18321,"count":406},{"startOffset":18342,"endOffset":18458,"count":47},{"startOffset":18458,"endOffset":18459,"count":24},{"startOffset":18459,"endOffset":19461,"count":23},{"startOffset":18561,"endOffset":19221,"count":0},{"startOffset":19308,"endOffset":19375,"count":64},{"startOffset":19384,"endOffset":19461,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":19583,"endOffset":19760,"count":24},{"startOffset":19699,"endOffset":19720,"count":1},{"startOffset":19720,"endOffset":19759,"count":23}],"isBlockCoverage":true},{"functionName":"forEach","ranges":[{"startOffset":19989,"endOffset":20356,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":20511,"endOffset":20712,"count":79},{"startOffset":20685,"endOffset":20690,"count":0}],"isBlockCoverage":true},{"functionName":"append","ranges":[{"startOffset":20868,"endOffset":21120,"count":470},{"startOffset":21040,"endOffset":21076,"count":1},{"startOffset":21076,"endOffset":21117,"count":469}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":21234,"endOffset":21336,"count":124}],"isBlockCoverage":true},{"functionName":"delete","ranges":[{"startOffset":21450,"endOffset":21603,"count":0}],"isBlockCoverage":false},{"functionName":"raw","ranges":[{"startOffset":21678,"endOffset":21708,"count":50}],"isBlockCoverage":true},{"functionName":"keys","ranges":[{"startOffset":21776,"endOffset":21832,"count":0}],"isBlockCoverage":false},{"functionName":"values","ranges":[{"startOffset":21902,"endOffset":21962,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":22093,"endOffset":22168,"count":0}],"isBlockCoverage":false},{"functionName":"getHeaders","ranges":[{"startOffset":22700,"endOffset":23106,"count":0}],"isBlockCoverage":false},{"functionName":"createHeadersIterator","ranges":[{"startOffset":23146,"endOffset":23328,"count":0}],"isBlockCoverage":false},{"functionName":"next","ranges":[{"startOffset":23388,"endOffset":23952,"count":0}],"isBlockCoverage":false},{"functionName":"exportNodeCompatibleHeaders","ranges":[{"startOffset":24311,"endOffset":24690,"count":24},{"startOffset":24624,"endOffset":24674,"count":0}],"isBlockCoverage":true},{"functionName":"createHeadersLenient","ranges":[{"startOffset":24887,"endOffset":25438,"count":24},{"startOffset":24994,"endOffset":25419,"count":333},{"startOffset":25032,"endOffset":25050,"count":0},{"startOffset":25083,"endOffset":25323,"count":1},{"startOffset":25117,"endOffset":25319,"count":2},{"startOffset":25161,"endOffset":25183,"count":0},{"startOffset":25226,"endOffset":25314,"count":1},{"startOffset":25323,"endOffset":25416,"count":332}],"isBlockCoverage":true},{"functionName":"Response","ranges":[{"startOffset":25753,"endOffset":26394,"count":23},{"startOffset":25848,"endOffset":25854,"count":0},{"startOffset":25935,"endOffset":25939,"count":0},{"startOffset":26003,"endOffset":26009,"count":0},{"startOffset":26109,"endOffset":26239,"count":0},{"startOffset":26325,"endOffset":26348,"count":0}],"isBlockCoverage":true},{"functionName":"get url","ranges":[{"startOffset":26397,"endOffset":26449,"count":1},{"startOffset":26440,"endOffset":26445,"count":0}],"isBlockCoverage":true},{"functionName":"get status","ranges":[{"startOffset":26452,"endOffset":26504,"count":0}],"isBlockCoverage":false},{"functionName":"get ok","ranges":[{"startOffset":26585,"endOffset":26674,"count":0}],"isBlockCoverage":false},{"functionName":"get redirected","ranges":[{"startOffset":26677,"endOffset":26738,"count":0}],"isBlockCoverage":false},{"functionName":"get statusText","ranges":[{"startOffset":26741,"endOffset":26801,"count":0}],"isBlockCoverage":false},{"functionName":"get headers","ranges":[{"startOffset":26804,"endOffset":26858,"count":0}],"isBlockCoverage":false},{"functionName":"clone","ranges":[{"startOffset":26921,"endOffset":27123,"count":0}],"isBlockCoverage":false},{"functionName":"isRequest","ranges":[{"startOffset":27941,"endOffset":28047,"count":90},{"startOffset":28003,"endOffset":28044,"count":66}],"isBlockCoverage":true},{"functionName":"isAbortSignal","ranges":[{"startOffset":28049,"endOffset":28232,"count":0}],"isBlockCoverage":false},{"functionName":"Request","ranges":[{"startOffset":28389,"endOffset":30497,"count":25},{"startOffset":28474,"endOffset":28488,"count":24},{"startOffset":28489,"endOffset":28493,"count":1},{"startOffset":28560,"endOffset":28949,"count":24},{"startOffset":28590,"endOffset":28820,"count":0},{"startOffset":28949,"endOffset":28997,"count":1},{"startOffset":29026,"endOffset":29041,"count":1},{"startOffset":29042,"endOffset":29050,"count":0},{"startOffset":29111,"endOffset":29153,"count":20},{"startOffset":29131,"endOffset":29153,"count":1},{"startOffset":29155,"endOffset":29197,"count":5},{"startOffset":29199,"endOffset":29277,"count":0},{"startOffset":29315,"endOffset":29326,"count":5},{"startOffset":29327,"endOffset":29390,"count":20},{"startOffset":29346,"endOffset":29368,"count":1},{"startOffset":29369,"endOffset":29383,"count":0},{"startOffset":29560,"endOffset":29576,"count":1},{"startOffset":29577,"endOffset":29582,"count":0},{"startOffset":29610,"endOffset":29641,"count":5},{"startOffset":29643,"endOffset":29778,"count":0},{"startOffset":29812,"endOffset":29826,"count":1},{"startOffset":29827,"endOffset":29833,"count":24},{"startOffset":29859,"endOffset":29880,"count":1},{"startOffset":29903,"endOffset":29928,"count":0},{"startOffset":29930,"endOffset":30010,"count":0},{"startOffset":30092,"endOffset":30103,"count":24},{"startOffset":30218,"endOffset":30231,"count":1},{"startOffset":30232,"endOffset":30280,"count":24},{"startOffset":30261,"endOffset":30275,"count":1},{"startOffset":30276,"endOffset":30280,"count":23},{"startOffset":30328,"endOffset":30343,"count":1},{"startOffset":30344,"endOffset":30398,"count":24},{"startOffset":30375,"endOffset":30391,"count":1},{"startOffset":30392,"endOffset":30398,"count":23},{"startOffset":30430,"endOffset":30446,"count":24},{"startOffset":30447,"endOffset":30451,"count":23}],"isBlockCoverage":true},{"functionName":"get method","ranges":[{"startOffset":30500,"endOffset":30552,"count":69}],"isBlockCoverage":true},{"functionName":"get url","ranges":[{"startOffset":30555,"endOffset":30619,"count":25}],"isBlockCoverage":true},{"functionName":"get headers","ranges":[{"startOffset":30622,"endOffset":30676,"count":2}],"isBlockCoverage":true},{"functionName":"get redirect","ranges":[{"startOffset":30679,"endOffset":30735,"count":2}],"isBlockCoverage":true},{"functionName":"get signal","ranges":[{"startOffset":30738,"endOffset":30790,"count":50}],"isBlockCoverage":true},{"functionName":"clone","ranges":[{"startOffset":30851,"endOffset":30891,"count":0}],"isBlockCoverage":false},{"functionName":"getNodeRequestOptions","ranges":[{"startOffset":31480,"endOffset":33304,"count":24},{"startOffset":31682,"endOffset":31718,"count":2},{"startOffset":31785,"endOffset":31848,"count":0},{"startOffset":31894,"endOffset":31961,"count":0},{"startOffset":31983,"endOffset":32025,"count":0},{"startOffset":32026,"endOffset":32056,"count":0},{"startOffset":32058,"endOffset":32164,"count":0},{"startOffset":32270,"endOffset":32309,"count":19},{"startOffset":32311,"endOffset":32343,"count":0},{"startOffset":32371,"endOffset":32508,"count":5},{"startOffset":32534,"endOffset":32591,"count":5},{"startOffset":32979,"endOffset":33011,"count":0}],"isBlockCoverage":true},{"functionName":"AbortError","ranges":[{"startOffset":33508,"endOffset":33734,"count":0}],"isBlockCoverage":false},{"functionName":"fetch","ranges":[{"startOffset":34189,"endOffset":41044,"count":24},{"startOffset":34264,"endOffset":34361,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":34454,"endOffset":41040,"count":24},{"startOffset":34656,"endOffset":34662,"count":0},{"startOffset":35052,"endOffset":35069,"count":0},{"startOffset":35071,"endOffset":35099,"count":0},{"startOffset":35271,"endOffset":35331,"count":0},{"startOffset":35500,"endOffset":35724,"count":0}],"isBlockCoverage":true},{"functionName":"abort","ranges":[{"startOffset":34747,"endOffset":35036,"count":0}],"isBlockCoverage":false},{"functionName":"abortAndFinalize","ranges":[{"startOffset":35128,"endOffset":35188,"count":0}],"isBlockCoverage":false},{"functionName":"finalize","ranges":[{"startOffset":35335,"endOffset":35475,"count":1},{"startOffset":35388,"endOffset":35442,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":35524,"endOffset":35718,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":35744,"endOffset":35881,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":35906,"endOffset":41003,"count":24},{"startOffset":36073,"endOffset":38488,"count":1},{"startOffset":36218,"endOffset":36224,"count":0},{"startOffset":36328,"endOffset":36507,"count":0},{"startOffset":36513,"endOffset":36985,"count":0},{"startOffset":37074,"endOffset":37097,"count":0},{"startOffset":37180,"endOffset":37317,"count":0},{"startOffset":37862,"endOffset":37896,"count":0},{"startOffset":37898,"endOffset":38056,"count":0},{"startOffset":38212,"endOffset":38346,"count":0},{"startOffset":38483,"endOffset":38488,"count":0},{"startOffset":38488,"endOffset":39344,"count":23},{"startOffset":39345,"endOffset":39364,"count":23},{"startOffset":39365,"endOffset":39390,"count":22},{"startOffset":39391,"endOffset":39416,"count":22},{"startOffset":39418,"endOffset":39512,"count":1},{"startOffset":39512,"endOffset":39890,"count":22},{"startOffset":39890,"endOffset":39912,"count":0},{"startOffset":39914,"endOffset":40062,"count":22},{"startOffset":40062,"endOffset":40135,"count":0},{"startOffset":40137,"endOffset":40739,"count":0},{"startOffset":40741,"endOffset":41002,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":38532,"endOffset":38621,"count":23},{"startOffset":38562,"endOffset":38616,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":40317,"endOffset":40630,"count":0}],"isBlockCoverage":false},{"functionName":"fetch.isRedirect","ranges":[{"startOffset":41160,"endOffset":41265,"count":24},{"startOffset":41215,"endOffset":41230,"count":23},{"startOffset":41231,"endOffset":41246,"count":23},{"startOffset":41247,"endOffset":41262,"count":23}],"isBlockCoverage":true}]},{"scriptId":"125","url":"http.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2801,"count":1}],"isBlockCoverage":false},{"functionName":"createServer","ranges":[{"startOffset":1661,"endOffset":1755,"count":0}],"isBlockCoverage":false},{"functionName":"request","ranges":[{"startOffset":1759,"endOffset":1845,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":1849,"endOffset":1955,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":2363,"endOffset":2579,"count":2},{"startOffset":2409,"endOffset":2545,"count":1}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2689,"endOffset":2736,"count":2}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":2741,"endOffset":2794,"count":0}],"isBlockCoverage":false}]},{"scriptId":"126","url":"_http_agent.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":16098,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1418,"endOffset":1445,"count":1}],"isBlockCoverage":true},{"functionName":"ReusedHandle","ranges":[{"startOffset":2488,"endOffset":2570,"count":0}],"isBlockCoverage":false},{"functionName":"freeSocketErrorListener","ranges":[{"startOffset":2577,"endOffset":2761,"count":0}],"isBlockCoverage":false},{"functionName":"Agent","ranges":[{"startOffset":2765,"endOffset":6097,"count":2},{"startOffset":2829,"endOffset":2855,"count":0},{"startOffset":3665,"endOffset":3923,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3995,"endOffset":5976,"count":0}],"isBlockCoverage":false},{"functionName":"maybeEnableKeylog","ranges":[{"startOffset":6209,"endOffset":6703,"count":0}],"isBlockCoverage":false},{"functionName":"getName","ranges":[{"startOffset":6883,"endOffset":7386,"count":72},{"startOffset":6938,"endOffset":6952,"count":0},{"startOffset":7072,"endOffset":7101,"count":0},{"startOffset":7268,"endOffset":7297,"count":0},{"startOffset":7332,"endOffset":7365,"count":0}],"isBlockCoverage":true},{"functionName":"addRequest","ranges":[{"startOffset":7420,"endOffset":9571,"count":24},{"startOffset":7646,"endOffset":7732,"count":0},{"startOffset":7813,"endOffset":7847,"count":0},{"startOffset":8158,"endOffset":8427,"count":0},{"startOffset":8461,"endOffset":8481,"count":0},{"startOffset":8560,"endOffset":8743,"count":0},{"startOffset":9123,"endOffset":9568,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":8981,"endOffset":9116,"count":24},{"startOffset":9025,"endOffset":9051,"count":0}],"isBlockCoverage":true},{"functionName":"createSocket","ranges":[{"startOffset":9607,"endOffset":10501,"count":24},{"startOffset":9727,"endOffset":9761,"count":0},{"startOffset":9791,"endOffset":9819,"count":0},{"startOffset":9826,"endOffset":9881,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10054,"endOffset":10381,"count":24},{"startOffset":10089,"endOffset":10104,"count":0},{"startOffset":10135,"endOffset":10175,"count":0}],"isBlockCoverage":true},{"functionName":"calculateServerName","ranges":[{"startOffset":10506,"endOffset":11404,"count":24},{"startOffset":10692,"endOffset":10823,"count":0},{"startOffset":10951,"endOffset":11207,"count":0},{"startOffset":11363,"endOffset":11379,"count":0}],"isBlockCoverage":true},{"functionName":"installListeners","ranges":[{"startOffset":11408,"endOffset":12862,"count":24},{"startOffset":12814,"endOffset":12859,"count":0}],"isBlockCoverage":true},{"functionName":"onFree","ranges":[{"startOffset":11458,"endOffset":11555,"count":0}],"isBlockCoverage":false},{"functionName":"onClose","ranges":[{"startOffset":11586,"endOffset":11885,"count":24}],"isBlockCoverage":true},{"functionName":"onTimeout","ranges":[{"startOffset":11918,"endOffset":12254,"count":0}],"isBlockCoverage":false},{"functionName":"onRemove","ranges":[{"startOffset":12291,"endOffset":12752,"count":0}],"isBlockCoverage":false},{"functionName":"removeSocket","ranges":[{"startOffset":12897,"endOffset":14619,"count":24},{"startOffset":13222,"endOffset":13516,"count":48},{"startOffset":13248,"endOffset":13511,"count":24},{"startOffset":13558,"endOffset":13587,"count":0},{"startOffset":13589,"endOffset":13689,"count":0},{"startOffset":13971,"endOffset":14303,"count":0},{"startOffset":14322,"endOffset":14332,"count":0},{"startOffset":14334,"endOffset":14614,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":14488,"endOffset":14607,"count":0}],"isBlockCoverage":false},{"functionName":"keepSocketAlive","ranges":[{"startOffset":14658,"endOffset":14921,"count":0}],"isBlockCoverage":false},{"functionName":"reuseSocket","ranges":[{"startOffset":14956,"endOffset":15129,"count":0}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":15160,"endOffset":15372,"count":0}],"isBlockCoverage":false},{"functionName":"setRequestSocket","ranges":[{"startOffset":15377,"endOffset":15625,"count":24},{"startOffset":15535,"endOffset":15566,"count":0},{"startOffset":15587,"endOffset":15624,"count":0}],"isBlockCoverage":true},{"functionName":"asyncResetHandle","ranges":[{"startOffset":15629,"endOffset":16032,"count":0}],"isBlockCoverage":false}]},{"scriptId":"127","url":"net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":48872,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1485,"endOffset":1512,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3513,"endOffset":3531,"count":0}],"isBlockCoverage":false},{"functionName":"getFlags","ranges":[{"startOffset":3535,"endOffset":3631,"count":0}],"isBlockCoverage":false},{"functionName":"createHandle","ranges":[{"startOffset":3635,"endOffset":4032,"count":0}],"isBlockCoverage":false},{"functionName":"getNewAsyncId","ranges":[{"startOffset":4038,"endOffset":4179,"count":52},{"startOffset":4134,"endOffset":4153,"count":0}],"isBlockCoverage":true},{"functionName":"isPipeName","ranges":[{"startOffset":4185,"endOffset":4270,"count":0}],"isBlockCoverage":false},{"functionName":"createServer","ranges":[{"startOffset":4274,"endOffset":4380,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":4618,"endOffset":4920,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeArgs","ranges":[{"startOffset":5428,"endOffset":6187,"count":48},{"startOffset":5499,"endOffset":5584,"count":0},{"startOffset":5739,"endOffset":5996,"count":0},{"startOffset":6074,"endOffset":6130,"count":24}],"isBlockCoverage":true},{"functionName":"initSocketHandle","ranges":[{"startOffset":6263,"endOffset":6888,"count":26},{"startOffset":6630,"endOffset":6880,"count":0}],"isBlockCoverage":true},{"functionName":"Socket","ranges":[{"startOffset":7030,"endOffset":10972,"count":26},{"startOffset":7091,"endOffset":7118,"count":0},{"startOffset":7687,"endOffset":7713,"count":0},{"startOffset":8386,"endOffset":10168,"count":0},{"startOffset":10536,"endOffset":10810,"count":24},{"startOffset":10570,"endOffset":10744,"count":0},{"startOffset":10776,"endOffset":10805,"count":0}],"isBlockCoverage":true},{"functionName":"_unrefTimer","ranges":[{"startOffset":11150,"endOffset":11285,"count":440},{"startOffset":11255,"endOffset":11277,"count":0}],"isBlockCoverage":true},{"functionName":"Socket._final","ranges":[{"startOffset":11410,"endOffset":12080,"count":23},{"startOffset":11526,"endOffset":11630,"count":0},{"startOffset":11660,"endOffset":11672,"count":0},{"startOffset":11961,"endOffset":11995,"count":0},{"startOffset":12024,"endOffset":12077,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11602,"endOffset":11623,"count":0}],"isBlockCoverage":false},{"functionName":"afterShutdown","ranges":[{"startOffset":12087,"endOffset":12482,"count":23},{"startOffset":12357,"endOffset":12403,"count":0},{"startOffset":12405,"endOffset":12479,"count":0}],"isBlockCoverage":true},{"functionName":"writeAfterFIN","ranges":[{"startOffset":12694,"endOffset":13165,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._onTimeout","ranges":[{"startOffset":13252,"endOffset":13771,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setNoDelay","ranges":[{"startOffset":13808,"endOffset":14272,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.setKeepAlive","ranges":[{"startOffset":14311,"endOffset":14568,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.address","ranges":[{"startOffset":14602,"endOffset":14648,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14719,"endOffset":14765,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":14829,"endOffset":14887,"count":23}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":14984,"endOffset":15310,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":15384,"endOffset":15468,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":15540,"endOffset":15587,"count":250}],"isBlockCoverage":true},{"functionName":"tryReadStart","ranges":[{"startOffset":15598,"endOffset":15851,"count":24},{"startOffset":15804,"endOffset":15848,"count":0}],"isBlockCoverage":true},{"functionName":"Socket._read","ranges":[{"startOffset":15946,"endOffset":16184,"count":271},{"startOffset":16004,"endOffset":16020,"count":247},{"startOffset":16022,"endOffset":16117,"count":24},{"startOffset":16117,"endOffset":16181,"count":247},{"startOffset":16150,"endOffset":16181,"count":24}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":16091,"endOffset":16110,"count":24}],"isBlockCoverage":true},{"functionName":"Socket.end","ranges":[{"startOffset":16214,"endOffset":16370,"count":23}],"isBlockCoverage":true},{"functionName":"Socket.pause","ranges":[{"startOffset":16402,"endOffset":16747,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.resume","ranges":[{"startOffset":16780,"endOffset":16970,"count":247},{"startOffset":16814,"endOffset":16833,"count":0},{"startOffset":16834,"endOffset":16849,"count":0},{"startOffset":16850,"endOffset":16881,"count":0},{"startOffset":16883,"endOffset":16914,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.read","ranges":[{"startOffset":17001,"endOffset":17193,"count":324},{"startOffset":17036,"endOffset":17055,"count":0},{"startOffset":17056,"endOffset":17071,"count":0},{"startOffset":17072,"endOffset":17103,"count":0},{"startOffset":17105,"endOffset":17136,"count":0}],"isBlockCoverage":true},{"functionName":"onReadableStreamEnd","ranges":[{"startOffset":17244,"endOffset":17538,"count":2},{"startOffset":17371,"endOffset":17382,"count":0},{"startOffset":17446,"endOffset":17535,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.destroySoon","ranges":[{"startOffset":17575,"endOffset":17730,"count":23},{"startOffset":17664,"endOffset":17679,"count":0}],"isBlockCoverage":true},{"functionName":"Socket._destroy","ranges":[{"startOffset":17765,"endOffset":18757,"count":24},{"startOffset":18075,"endOffset":18081,"count":0},{"startOffset":18495,"endOffset":18569,"count":0},{"startOffset":18593,"endOffset":18754,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":18299,"endOffset":18381,"count":24}],"isBlockCoverage":true},{"functionName":"Socket._getpeername","ranges":[{"startOffset":18794,"endOffset":19096,"count":0}],"isBlockCoverage":false},{"functionName":"protoGetter","ranges":[{"startOffset":19101,"endOffset":19267,"count":8}],"isBlockCoverage":true},{"functionName":"bytesRead","ranges":[{"startOffset":19296,"endOffset":19389,"count":0}],"isBlockCoverage":false},{"functionName":"remoteAddress","ranges":[{"startOffset":19424,"endOffset":19492,"count":0}],"isBlockCoverage":false},{"functionName":"remoteFamily","ranges":[{"startOffset":19526,"endOffset":19592,"count":0}],"isBlockCoverage":false},{"functionName":"remotePort","ranges":[{"startOffset":19624,"endOffset":19686,"count":0}],"isBlockCoverage":false},{"functionName":"Socket._getsockname","ranges":[{"startOffset":19726,"endOffset":20022,"count":0}],"isBlockCoverage":false},{"functionName":"localAddress","ranges":[{"startOffset":20057,"endOffset":20124,"count":0}],"isBlockCoverage":false},{"functionName":"localPort","ranges":[{"startOffset":20157,"endOffset":20218,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.","ranges":[{"startOffset":20263,"endOffset":20312,"count":24}],"isBlockCoverage":true},{"functionName":"Socket._writeGeneric","ranges":[{"startOffset":20350,"endOffset":21140,"count":142},{"startOffset":20576,"endOffset":20776,"count":24},{"startOffset":20776,"endOffset":20861,"count":118},{"startOffset":20861,"endOffset":20920,"count":0},{"startOffset":20920,"endOffset":20980,"count":118},{"startOffset":20980,"endOffset":21016,"count":5},{"startOffset":21016,"endOffset":21075,"count":113},{"startOffset":21075,"endOffset":21099,"count":118},{"startOffset":21099,"endOffset":21137,"count":24}],"isBlockCoverage":true},{"functionName":"connect","ranges":[{"startOffset":20674,"endOffset":20756,"count":24}],"isBlockCoverage":true},{"functionName":"Socket._writev","ranges":[{"startOffset":21174,"endOffset":21244,"count":5}],"isBlockCoverage":true},{"functionName":"Socket._write","ranges":[{"startOffset":21277,"endOffset":21360,"count":113}],"isBlockCoverage":true},{"functionName":"_bytesDispatched","ranges":[{"startOffset":21558,"endOffset":21664,"count":0}],"isBlockCoverage":false},{"functionName":"bytesWritten","ranges":[{"startOffset":21698,"endOffset":22661,"count":0}],"isBlockCoverage":false},{"functionName":"checkBindError","ranges":[{"startOffset":22669,"endOffset":23486,"count":0}],"isBlockCoverage":false},{"functionName":"internalConnect","ranges":[{"startOffset":23492,"endOffset":25256,"count":24},{"startOffset":23756,"endOffset":24399,"count":0},{"startOffset":24730,"endOffset":24796,"count":0},{"startOffset":24801,"endOffset":24980,"count":0},{"startOffset":24995,"endOffset":25253,"count":0}],"isBlockCoverage":true},{"functionName":"Socket.connect","ranges":[{"startOffset":25289,"endOffset":26645,"count":24},{"startOffset":25639,"endOffset":25671,"count":0},{"startOffset":25673,"endOffset":25706,"count":0},{"startOffset":25874,"endOffset":25910,"count":0},{"startOffset":25936,"endOffset":26024,"count":0},{"startOffset":26134,"endOffset":26273,"count":0},{"startOffset":26428,"endOffset":26576,"count":0}],"isBlockCoverage":true},{"functionName":"lookupAndConnect","ranges":[{"startOffset":26652,"endOffset":29769,"count":24},{"startOffset":26772,"endOffset":26786,"count":0},{"startOffset":26837,"endOffset":26859,"count":0},{"startOffset":26861,"endOffset":26920,"count":0},{"startOffset":26940,"endOffset":26972,"count":0},{"startOffset":26974,"endOffset":27059,"count":0},{"startOffset":27134,"endOffset":27161,"count":0},{"startOffset":27163,"endOffset":27292,"count":0},{"startOffset":27443,"endOffset":27757,"count":0},{"startOffset":27782,"endOffset":27821,"count":0},{"startOffset":27828,"endOffset":27941,"count":0},{"startOffset":27972,"endOffset":27993,"count":1},{"startOffset":28101,"endOffset":28131,"count":0},{"startOffset":28132,"endOffset":28162,"count":0},{"startOffset":28163,"endOffset":28192,"count":0},{"startOffset":28194,"endOffset":28237,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":27518,"endOffset":27737,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":28444,"endOffset":29764,"count":24}],"isBlockCoverage":true},{"functionName":"emitLookup","ranges":[{"startOffset":28484,"endOffset":29757,"count":24},{"startOffset":28778,"endOffset":28785,"count":0},{"startOffset":28804,"endOffset":29104,"count":0},{"startOffset":29125,"endOffset":29236,"count":0},{"startOffset":29264,"endOffset":29284,"count":0},{"startOffset":29286,"endOffset":29530,"count":0}],"isBlockCoverage":true},{"functionName":"connectErrorNT","ranges":[{"startOffset":29775,"endOffset":29836,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.ref","ranges":[{"startOffset":29865,"endOffset":30063,"count":0}],"isBlockCoverage":false},{"functionName":"Socket.unref","ranges":[{"startOffset":30095,"endOffset":30299,"count":0}],"isBlockCoverage":false},{"functionName":"afterConnect","ranges":[{"startOffset":30306,"endOffset":31603,"count":24},{"startOffset":30480,"endOffset":30499,"count":0},{"startOffset":30674,"endOffset":30726,"count":0},{"startOffset":30764,"endOffset":30791,"count":0},{"startOffset":31058,"endOffset":31600,"count":0}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":31609,"endOffset":32983,"count":0}],"isBlockCoverage":false},{"functionName":"toNumber","ranges":[{"startOffset":33099,"endOffset":33164,"count":0}],"isBlockCoverage":false},{"functionName":"createServerHandle","ranges":[{"startOffset":33235,"endOffset":34743,"count":0}],"isBlockCoverage":false},{"functionName":"setupListenHandle","ranges":[{"startOffset":34747,"endOffset":37167,"count":0}],"isBlockCoverage":false},{"functionName":"emitErrorNT","ranges":[{"startOffset":37238,"endOffset":37302,"count":0}],"isBlockCoverage":false},{"functionName":"emitListeningNT","ranges":[{"startOffset":37308,"endOffset":37427,"count":0}],"isBlockCoverage":false},{"functionName":"listenInCluster","ranges":[{"startOffset":37433,"endOffset":38690,"count":0}],"isBlockCoverage":false},{"functionName":"Server.listen","ranges":[{"startOffset":38722,"endOffset":42316,"count":0}],"isBlockCoverage":false},{"functionName":"lookupAndListen","ranges":[{"startOffset":42321,"endOffset":42744,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":42810,"endOffset":42855,"count":0}],"isBlockCoverage":false},{"functionName":"Server.address","ranges":[{"startOffset":42935,"endOffset":43236,"count":0}],"isBlockCoverage":false},{"functionName":"onconnection","ranges":[{"startOffset":43241,"endOffset":43932,"count":0}],"isBlockCoverage":false},{"functionName":"Server.getConnections","ranges":[{"startOffset":43972,"endOffset":44760,"count":0}],"isBlockCoverage":false},{"functionName":"Server.close","ranges":[{"startOffset":44792,"endOffset":45696,"count":0}],"isBlockCoverage":false},{"functionName":"Server._emitCloseIfDrained","ranges":[{"startOffset":45740,"endOffset":46139,"count":0}],"isBlockCoverage":false},{"functionName":"emitCloseNT","ranges":[{"startOffset":46146,"endOffset":46232,"count":0}],"isBlockCoverage":false},{"functionName":"Server.","ranges":[{"startOffset":46294,"endOffset":46466,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":46675,"endOffset":46711,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":46716,"endOffset":46757,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":46821,"endOffset":46852,"count":1563}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":46857,"endOffset":46893,"count":50}],"isBlockCoverage":true},{"functionName":"Server._setupWorker","ranges":[{"startOffset":46934,"endOffset":47167,"count":0}],"isBlockCoverage":false},{"functionName":"Server.ref","ranges":[{"startOffset":47195,"endOffset":47300,"count":0}],"isBlockCoverage":false},{"functionName":"Server.unref","ranges":[{"startOffset":47330,"endOffset":47436,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":47586,"endOffset":48275,"count":0}],"isBlockCoverage":false},{"functionName":"_setSimultaneousAccepts","ranges":[{"startOffset":48316,"endOffset":48564,"count":0}],"isBlockCoverage":false}]},{"scriptId":"128","url":"internal/net.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1762,"count":1}],"isBlockCoverage":false},{"functionName":"isIPv4","ranges":[{"startOffset":1003,"endOffset":1053,"count":147}],"isBlockCoverage":true},{"functionName":"isIPv6","ranges":[{"startOffset":1057,"endOffset":1107,"count":99}],"isBlockCoverage":true},{"functionName":"isIP","ranges":[{"startOffset":1111,"endOffset":1201,"count":147},{"startOffset":1148,"endOffset":1157,"count":48},{"startOffset":1157,"endOffset":1176,"count":99},{"startOffset":1176,"endOffset":1185,"count":0},{"startOffset":1185,"endOffset":1200,"count":99}],"isBlockCoverage":true},{"functionName":"makeSyncWrite","ranges":[{"startOffset":1205,"endOffset":1635,"count":0}],"isBlockCoverage":false}]},{"scriptId":"129","url":"internal/stream_base_commons.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7409,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1026,"endOffset":1053,"count":1}],"isBlockCoverage":true},{"functionName":"handleWriteReq","ranges":[{"startOffset":1177,"endOffset":2065,"count":113},{"startOffset":1281,"endOffset":1454,"count":0},{"startOffset":1460,"endOffset":1474,"count":19},{"startOffset":1480,"endOffset":1545,"count":19},{"startOffset":1551,"endOffset":1563,"count":94},{"startOffset":1569,"endOffset":1631,"count":94},{"startOffset":1637,"endOffset":1700,"count":0},{"startOffset":1706,"endOffset":1718,"count":0},{"startOffset":1724,"endOffset":1737,"count":0},{"startOffset":1743,"endOffset":1758,"count":0},{"startOffset":1764,"endOffset":1829,"count":0},{"startOffset":1835,"endOffset":2057,"count":0}],"isBlockCoverage":true},{"functionName":"onWriteComplete","ranges":[{"startOffset":2069,"endOffset":2601,"count":24},{"startOffset":2227,"endOffset":2320,"count":0},{"startOffset":2342,"endOffset":2462,"count":0}],"isBlockCoverage":true},{"functionName":"createWriteWrap","ranges":[{"startOffset":2605,"endOffset":2816,"count":118}],"isBlockCoverage":true},{"functionName":"writevGeneric","ranges":[{"startOffset":2820,"endOffset":3484,"count":5},{"startOffset":2981,"endOffset":3082,"count":0},{"startOffset":3176,"endOffset":3293,"count":15}],"isBlockCoverage":true},{"functionName":"writeGeneric","ranges":[{"startOffset":3488,"endOffset":3701,"count":113}],"isBlockCoverage":true},{"functionName":"afterWriteDispatched","ranges":[{"startOffset":3705,"endOffset":4026,"count":118},{"startOffset":3883,"endOffset":3948,"count":0},{"startOffset":3970,"endOffset":3987,"count":94},{"startOffset":3987,"endOffset":4023,"count":24}],"isBlockCoverage":true},{"functionName":"onStreamRead","ranges":[{"startOffset":4030,"endOffset":6231,"count":226},{"startOffset":4232,"endOffset":4252,"count":224},{"startOffset":4254,"endOffset":5017,"count":224},{"startOffset":4343,"endOffset":4610,"count":0},{"startOffset":4799,"endOffset":4993,"count":0},{"startOffset":5017,"endOffset":5040,"count":2},{"startOffset":5040,"endOffset":5059,"count":0},{"startOffset":5059,"endOffset":5087,"count":2},{"startOffset":5087,"endOffset":5281,"count":0},{"startOffset":5281,"endOffset":5369,"count":2},{"startOffset":5369,"endOffset":5439,"count":0},{"startOffset":5439,"endOffset":6228,"count":2},{"startOffset":5486,"endOffset":5526,"count":0},{"startOffset":5820,"endOffset":6032,"count":0}],"isBlockCoverage":true},{"functionName":"setStreamTimeout","ranges":[{"startOffset":6235,"endOffset":7167,"count":0}],"isBlockCoverage":false}]},{"scriptId":"130","url":"internal/dtrace.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":589,"count":1}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_REQUEST","ranges":[{"startOffset":102,"endOffset":110,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_CLIENT_RESPONSE","ranges":[{"startOffset":145,"endOffset":153,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_REQUEST","ranges":[{"startOffset":187,"endOffset":195,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_HTTP_SERVER_RESPONSE","ranges":[{"startOffset":230,"endOffset":238,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_NET_SERVER_CONNECTION","ranges":[{"startOffset":274,"endOffset":282,"count":0}],"isBlockCoverage":false},{"functionName":"DTRACE_NET_STREAM_END","ranges":[{"startOffset":311,"endOffset":319,"count":0}],"isBlockCoverage":false}]},{"scriptId":"131","url":"async_hooks.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9850,"count":1}],"isBlockCoverage":false},{"functionName":"AsyncHook","ranges":[{"startOffset":1481,"endOffset":2332,"count":1},{"startOffset":1611,"endOffset":1653,"count":0},{"startOffset":1684,"endOffset":1715,"count":0},{"startOffset":1724,"endOffset":1768,"count":0},{"startOffset":1798,"endOffset":1828,"count":0},{"startOffset":1837,"endOffset":1880,"count":0},{"startOffset":1912,"endOffset":1944,"count":0},{"startOffset":1953,"endOffset":1998,"count":0},{"startOffset":2037,"endOffset":2076,"count":0},{"startOffset":2085,"endOffset":2137,"count":0}],"isBlockCoverage":true},{"functionName":"enable","ranges":[{"startOffset":2338,"endOffset":3606,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":3612,"endOffset":4410,"count":0}],"isBlockCoverage":false},{"functionName":"createHook","ranges":[{"startOffset":4419,"endOffset":4478,"count":1}],"isBlockCoverage":true},{"functionName":"AsyncResource","ranges":[{"startOffset":4579,"endOffset":5801,"count":0}],"isBlockCoverage":false},{"functionName":"runInAsyncScope","ranges":[{"startOffset":5807,"endOffset":6183,"count":0}],"isBlockCoverage":false},{"functionName":"emitDestroy","ranges":[{"startOffset":6189,"endOffset":6370,"count":0}],"isBlockCoverage":false},{"functionName":"asyncId","ranges":[{"startOffset":6376,"endOffset":6427,"count":0}],"isBlockCoverage":false},{"functionName":"triggerAsyncId","ranges":[{"startOffset":6433,"endOffset":6499,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":6505,"endOffset":7026,"count":0}],"isBlockCoverage":false},{"functionName":"bind","ranges":[{"startOffset":7039,"endOffset":7161,"count":0}],"isBlockCoverage":false},{"functionName":"init","ranges":[{"startOffset":7229,"endOffset":7517,"count":0}],"isBlockCoverage":false},{"functionName":"AsyncLocalStorage","ranges":[{"startOffset":7619,"endOffset":7719,"count":0}],"isBlockCoverage":false},{"functionName":"disable","ranges":[{"startOffset":7725,"endOffset":8060,"count":0}],"isBlockCoverage":false},{"functionName":"_enable","ranges":[{"startOffset":8066,"endOffset":8218,"count":0}],"isBlockCoverage":false},{"functionName":"_propagate","ranges":[{"startOffset":8290,"endOffset":8469,"count":0}],"isBlockCoverage":false},{"functionName":"enterWith","ranges":[{"startOffset":8475,"endOffset":8611,"count":0}],"isBlockCoverage":false},{"functionName":"run","ranges":[{"startOffset":8617,"endOffset":9206,"count":0}],"isBlockCoverage":false},{"functionName":"exit","ranges":[{"startOffset":9212,"endOffset":9420,"count":0}],"isBlockCoverage":false},{"functionName":"getStore","ranges":[{"startOffset":9426,"endOffset":9570,"count":0}],"isBlockCoverage":false}]},{"scriptId":"132","url":"_http_client.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":26831,"count":1}],"isBlockCoverage":false},{"functionName":"validateHost","ranges":[{"startOffset":2475,"endOffset":2775,"count":24},{"startOffset":2583,"endOffset":2756,"count":0}],"isBlockCoverage":true},{"functionName":"HTTPClientAsyncResource","ranges":[{"startOffset":2814,"endOffset":2887,"count":24}],"isBlockCoverage":true},{"functionName":"ClientRequest","ranges":[{"startOffset":2926,"endOffset":10493,"count":24},{"startOffset":3038,"endOffset":3566,"count":0},{"startOffset":3611,"endOffset":3673,"count":0},{"startOffset":3675,"endOffset":3740,"count":0},{"startOffset":3853,"endOffset":3906,"count":0},{"startOffset":4048,"endOffset":4068,"count":0},{"startOffset":4094,"endOffset":4145,"count":0},{"startOffset":4411,"endOffset":4645,"count":0},{"startOffset":4708,"endOffset":4732,"count":0},{"startOffset":4982,"endOffset":5033,"count":0},{"startOffset":5079,"endOffset":5150,"count":0},{"startOffset":5321,"endOffset":5326,"count":0},{"startOffset":5402,"endOffset":5468,"count":0},{"startOffset":5469,"endOffset":5483,"count":0},{"startOffset":5537,"endOffset":5564,"count":0},{"startOffset":5655,"endOffset":5715,"count":0},{"startOffset":5873,"endOffset":5952,"count":0},{"startOffset":6026,"endOffset":6093,"count":0},{"startOffset":6148,"endOffset":6195,"count":0},{"startOffset":6287,"endOffset":6338,"count":0},{"startOffset":6478,"endOffset":6527,"count":0},{"startOffset":6529,"endOffset":6641,"count":0},{"startOffset":6721,"endOffset":6727,"count":0},{"startOffset":6740,"endOffset":6778,"count":0},{"startOffset":6805,"endOffset":6832,"count":5},{"startOffset":6833,"endOffset":6862,"count":5},{"startOffset":6863,"endOffset":6893,"count":5},{"startOffset":6894,"endOffset":6922,"count":5},{"startOffset":6923,"endOffset":6953,"count":5},{"startOffset":6955,"endOffset":7008,"count":19},{"startOffset":7008,"endOffset":7066,"count":5},{"startOffset":7810,"endOffset":7887,"count":0},{"startOffset":8208,"endOffset":8300,"count":146},{"startOffset":8663,"endOffset":8715,"count":0},{"startOffset":8716,"endOffset":8761,"count":0},{"startOffset":8772,"endOffset":8823,"count":0},{"startOffset":8868,"endOffset":8913,"count":0},{"startOffset":8988,"endOffset":9023,"count":0},{"startOffset":9025,"endOffset":9152,"count":0},{"startOffset":9190,"endOffset":9407,"count":0},{"startOffset":9412,"endOffset":9537,"count":0},{"startOffset":9915,"endOffset":10430,"count":0}],"isBlockCoverage":true},{"functionName":"oncreate","ranges":[{"startOffset":9560,"endOffset":9817,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":10469,"endOffset":10488,"count":24}],"isBlockCoverage":true},{"functionName":"_finish","ranges":[{"startOffset":10661,"endOffset":10783,"count":24}],"isBlockCoverage":true},{"functionName":"_implicitHeader","ranges":[{"startOffset":10830,"endOffset":11048,"count":24},{"startOffset":10880,"endOffset":10934,"count":0}],"isBlockCoverage":true},{"functionName":"abort","ranges":[{"startOffset":11085,"endOffset":11230,"count":1},{"startOffset":11125,"endOffset":11144,"count":0}],"isBlockCoverage":true},{"functionName":"destroy","ranges":[{"startOffset":11269,"endOffset":11740,"count":1},{"startOffset":11316,"endOffset":11340,"count":0},{"startOffset":11673,"endOffset":11719,"count":0}],"isBlockCoverage":true},{"functionName":"_destroy","ranges":[{"startOffset":11745,"endOffset":12309,"count":1},{"startOffset":12071,"endOffset":12306,"count":0}],"isBlockCoverage":true},{"functionName":"emitAbortNT","ranges":[{"startOffset":12313,"endOffset":12365,"count":1}],"isBlockCoverage":true},{"functionName":"ondrain","ranges":[{"startOffset":12369,"endOffset":12535,"count":0}],"isBlockCoverage":false},{"functionName":"socketCloseListener","ranges":[{"startOffset":12539,"endOffset":13998,"count":24},{"startOffset":13123,"endOffset":13186,"count":0},{"startOffset":13250,"endOffset":13355,"count":0},{"startOffset":13400,"endOffset":13712,"count":0},{"startOffset":13929,"endOffset":13995,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":13273,"endOffset":13323,"count":0}],"isBlockCoverage":false},{"functionName":"socketErrorListener","ranges":[{"startOffset":14002,"endOffset":14665,"count":0}],"isBlockCoverage":false},{"functionName":"socketOnEnd","ranges":[{"startOffset":14669,"endOffset":15171,"count":0}],"isBlockCoverage":false},{"functionName":"socketOnData","ranges":[{"startOffset":15175,"endOffset":17451,"count":224},{"startOffset":15405,"endOffset":15602,"count":0},{"startOffset":15656,"endOffset":16805,"count":0},{"startOffset":16859,"endOffset":17258,"count":24},{"startOffset":17260,"endOffset":17448,"count":24}],"isBlockCoverage":true},{"functionName":"statusIsInformational","ranges":[{"startOffset":17455,"endOffset":17696,"count":48},{"startOffset":17657,"endOffset":17673,"count":0},{"startOffset":17674,"endOffset":17691,"count":0}],"isBlockCoverage":true},{"functionName":"parserOnIncomingClient","ranges":[{"startOffset":17711,"endOffset":20211,"count":24},{"startOffset":17892,"endOffset":18059,"count":0},{"startOffset":18143,"endOffset":18152,"count":0},{"startOffset":18272,"endOffset":18354,"count":0},{"startOffset":18403,"endOffset":19125,"count":0},{"startOffset":19155,"endOffset":19174,"count":0},{"startOffset":19175,"endOffset":19199,"count":0},{"startOffset":19201,"endOffset":19424,"count":0},{"startOffset":19954,"endOffset":19966,"count":0},{"startOffset":20000,"endOffset":20009,"count":0},{"startOffset":20085,"endOffset":20167,"count":0}],"isBlockCoverage":true},{"functionName":"responseKeepAlive","ranges":[{"startOffset":20226,"endOffset":21355,"count":0}],"isBlockCoverage":false},{"functionName":"responseOnEnd","ranges":[{"startOffset":21359,"endOffset":22288,"count":24},{"startOffset":21484,"endOffset":21537,"count":0},{"startOffset":21684,"endOffset":21855,"count":23},{"startOffset":21813,"endOffset":21848,"count":0},{"startOffset":21891,"endOffset":22285,"count":0}],"isBlockCoverage":true},{"functionName":"responseOnTimeout","ranges":[{"startOffset":22292,"endOffset":22449,"count":0}],"isBlockCoverage":false},{"functionName":"requestOnPrefinish","ranges":[{"startOffset":22453,"endOffset":22581,"count":0}],"isBlockCoverage":false},{"functionName":"emitFreeNT","ranges":[{"startOffset":22585,"endOffset":22745,"count":0}],"isBlockCoverage":false},{"functionName":"tickOnSocket","ranges":[{"startOffset":22749,"endOffset":23890,"count":24},{"startOffset":23105,"endOffset":23129,"count":0},{"startOffset":23402,"endOffset":23463,"count":0},{"startOffset":23819,"endOffset":23856,"count":0}],"isBlockCoverage":true},{"functionName":"emitRequestTimeout","ranges":[{"startOffset":23894,"endOffset":24007,"count":0}],"isBlockCoverage":false},{"functionName":"listenSocketTimeout","ranges":[{"startOffset":24011,"endOffset":24416,"count":0}],"isBlockCoverage":false},{"functionName":"onSocket","ranges":[{"startOffset":24455,"endOffset":24630,"count":24}],"isBlockCoverage":true},{"functionName":"onSocketNT","ranges":[{"startOffset":24635,"endOffset":24870,"count":24},{"startOffset":24697,"endOffset":24744,"count":0},{"startOffset":24759,"endOffset":24823,"count":0}],"isBlockCoverage":true},{"functionName":"_deferToConnect","ranges":[{"startOffset":24934,"endOffset":25757,"count":24},{"startOffset":25725,"endOffset":25754,"count":0}],"isBlockCoverage":true},{"functionName":"callSocketMethod","ranges":[{"startOffset":25349,"endOffset":25487,"count":24},{"startOffset":25381,"endOffset":25432,"count":0}],"isBlockCoverage":true},{"functionName":"onSocket","ranges":[{"startOffset":25511,"endOffset":25658,"count":24},{"startOffset":25585,"endOffset":25653,"count":0}],"isBlockCoverage":true},{"functionName":"setTimeout","ranges":[{"startOffset":25798,"endOffset":26179,"count":0}],"isBlockCoverage":false},{"functionName":"setSocketTimeout","ranges":[{"startOffset":26184,"endOffset":26378,"count":0}],"isBlockCoverage":false},{"functionName":"setNoDelay","ranges":[{"startOffset":26419,"endOffset":26502,"count":0}],"isBlockCoverage":false},{"functionName":"setSocketKeepAlive","ranges":[{"startOffset":26557,"endOffset":26684,"count":0}],"isBlockCoverage":false},{"functionName":"clearTimeout","ranges":[{"startOffset":26728,"endOffset":26785,"count":0}],"isBlockCoverage":false}]},{"scriptId":"133","url":"_http_common.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8598,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1691,"endOffset":1718,"count":1}],"isBlockCoverage":true},{"functionName":"parserOnHeaders","ranges":[{"startOffset":2421,"endOffset":2690,"count":0}],"isBlockCoverage":false},{"functionName":"parserOnHeadersComplete","ranges":[{"startOffset":2909,"endOffset":4543,"count":24},{"startOffset":3201,"endOffset":3266,"count":0},{"startOffset":3450,"endOffset":3518,"count":0},{"startOffset":4300,"endOffset":4366,"count":0}],"isBlockCoverage":true},{"functionName":"parserOnBody","ranges":[{"startOffset":4547,"endOffset":4952,"count":359},{"startOffset":4710,"endOffset":4717,"count":0},{"startOffset":4922,"endOffset":4944,"count":0}],"isBlockCoverage":true},{"functionName":"parserOnMessageComplete","ranges":[{"startOffset":4956,"endOffset":5463,"count":24},{"startOffset":5207,"endOffset":5325,"count":0}],"isBlockCoverage":true},{"functionName":"parsersCb","ranges":[{"startOffset":5515,"endOffset":5814,"count":1}],"isBlockCoverage":true},{"functionName":"closeParserInstance","ranges":[{"startOffset":5820,"endOffset":5876,"count":0}],"isBlockCoverage":false},{"functionName":"freeParser","ranges":[{"startOffset":6208,"endOffset":6833,"count":24},{"startOffset":6302,"endOffset":6321,"count":0},{"startOffset":6389,"endOffset":6571,"count":0}],"isBlockCoverage":true},{"functionName":"checkIsHttpToken","ranges":[{"startOffset":7053,"endOffset":7121,"count":194}],"isBlockCoverage":true},{"functionName":"checkInvalidHeaderChar","ranges":[{"startOffset":7392,"endOffset":7470,"count":170}],"isBlockCoverage":true},{"functionName":"cleanParser","ranges":[{"startOffset":7474,"endOffset":7795,"count":25}],"isBlockCoverage":true},{"functionName":"prepareError","ranges":[{"startOffset":7799,"endOffset":7996,"count":0}],"isBlockCoverage":false},{"functionName":"isLenient","ranges":[{"startOffset":8030,"endOffset":8221,"count":24},{"startOffset":8079,"endOffset":8096,"count":0},{"startOffset":8098,"endOffset":8188,"count":0}],"isBlockCoverage":true}]},{"scriptId":"134","url":"internal/freelist.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":506,"count":1}],"isBlockCoverage":false},{"functionName":"FreeList","ranges":[{"startOffset":83,"endOffset":206,"count":1}],"isBlockCoverage":true},{"functionName":"alloc","ranges":[{"startOffset":212,"endOffset":335,"count":24},{"startOffset":255,"endOffset":279,"count":23},{"startOffset":280,"endOffset":329,"count":1}],"isBlockCoverage":true},{"functionName":"free","ranges":[{"startOffset":341,"endOffset":471,"count":24},{"startOffset":447,"endOffset":470,"count":0}],"isBlockCoverage":true}]},{"scriptId":"135","url":"_http_incoming.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10683,"count":1}],"isBlockCoverage":false},{"functionName":"readStart","ranges":[{"startOffset":1288,"endOffset":1394,"count":224},{"startOffset":1375,"endOffset":1391,"count":223}],"isBlockCoverage":true},{"functionName":"readStop","ranges":[{"startOffset":1398,"endOffset":1464,"count":0}],"isBlockCoverage":false},{"functionName":"IncomingMessage","ranges":[{"startOffset":1533,"endOffset":2491,"count":24}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":2701,"endOffset":2743,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":2753,"endOffset":2797,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout","ranges":[{"startOffset":2845,"endOffset":2988,"count":0}],"isBlockCoverage":false},{"functionName":"_read","ranges":[{"startOffset":3029,"endOffset":3417,"count":200},{"startOffset":3074,"endOffset":3155,"count":18}],"isBlockCoverage":true},{"functionName":"destroy","ranges":[{"startOffset":3666,"endOffset":3763,"count":0}],"isBlockCoverage":false},{"functionName":"_addHeaderLines","ranges":[{"startOffset":3832,"endOffset":4211,"count":24},{"startOffset":3946,"endOffset":4018,"count":0},{"startOffset":4133,"endOffset":4203,"count":334}],"isBlockCoverage":true},{"functionName":"matchKnownFields","ranges":[{"startOffset":4946,"endOffset":8921,"count":476},{"startOffset":5025,"endOffset":5107,"count":0},{"startOffset":5113,"endOffset":5466,"count":47},{"startOffset":5170,"endOffset":5184,"count":0},{"startOffset":5234,"endOffset":5248,"count":0},{"startOffset":5277,"endOffset":5296,"count":45},{"startOffset":5298,"endOffset":5312,"count":2},{"startOffset":5312,"endOffset":5341,"count":45},{"startOffset":5341,"endOffset":5360,"count":22},{"startOffset":5362,"endOffset":5382,"count":23},{"startOffset":5382,"endOffset":5411,"count":22},{"startOffset":5411,"endOffset":5430,"count":0},{"startOffset":5432,"endOffset":5452,"count":22},{"startOffset":5452,"endOffset":5466,"count":0},{"startOffset":5472,"endOffset":5867,"count":24},{"startOffset":5510,"endOffset":5531,"count":0},{"startOffset":5549,"endOffset":5601,"count":0},{"startOffset":5603,"endOffset":5677,"count":0},{"startOffset":5679,"endOffset":5753,"count":0},{"startOffset":5755,"endOffset":5829,"count":0},{"startOffset":5831,"endOffset":5867,"count":0},{"startOffset":5873,"endOffset":6119,"count":44},{"startOffset":5936,"endOffset":5953,"count":0},{"startOffset":5985,"endOffset":6007,"count":42},{"startOffset":6009,"endOffset":6026,"count":2},{"startOffset":6026,"endOffset":6080,"count":42},{"startOffset":6082,"endOffset":6105,"count":0},{"startOffset":6105,"endOffset":6119,"count":42},{"startOffset":6125,"endOffset":6322,"count":1},{"startOffset":6165,"endOffset":6188,"count":0},{"startOffset":6217,"endOffset":6273,"count":0},{"startOffset":6284,"endOffset":6322,"count":0},{"startOffset":6328,"endOffset":6625,"count":26},{"startOffset":6407,"endOffset":6427,"count":0},{"startOffset":6462,"endOffset":6487,"count":24},{"startOffset":6498,"endOffset":6514,"count":2},{"startOffset":6514,"endOffset":6549,"count":24},{"startOffset":6549,"endOffset":6574,"count":0},{"startOffset":6585,"endOffset":6611,"count":24},{"startOffset":6611,"endOffset":6625,"count":0},{"startOffset":6631,"endOffset":6747,"count":0},{"startOffset":6753,"endOffset":6969,"count":25},{"startOffset":6798,"endOffset":6825,"count":2},{"startOffset":6836,"endOffset":6858,"count":23},{"startOffset":6858,"endOffset":6922,"count":2},{"startOffset":6933,"endOffset":6955,"count":0},{"startOffset":6955,"endOffset":6969,"count":2},{"startOffset":6975,"endOffset":7409,"count":25},{"startOffset":7060,"endOffset":7083,"count":0},{"startOffset":7121,"endOffset":7149,"count":24},{"startOffset":7160,"endOffset":7183,"count":1},{"startOffset":7183,"endOffset":7221,"count":24},{"startOffset":7221,"endOffset":7249,"count":2},{"startOffset":7260,"endOffset":7289,"count":22},{"startOffset":7289,"endOffset":7355,"count":2},{"startOffset":7366,"endOffset":7395,"count":0},{"startOffset":7395,"endOffset":7409,"count":2},{"startOffset":7415,"endOffset":7540,"count":10},{"startOffset":7462,"endOffset":7491,"count":0},{"startOffset":7526,"endOffset":7540,"count":0},{"startOffset":7546,"endOffset":7904,"count":44},{"startOffset":7635,"endOffset":7666,"count":0},{"startOffset":7747,"endOffset":7778,"count":0},{"startOffset":7859,"endOffset":7890,"count":0},{"startOffset":7910,"endOffset":8162,"count":32},{"startOffset":7959,"endOffset":7990,"count":10},{"startOffset":8001,"endOffset":8033,"count":22},{"startOffset":8033,"endOffset":8105,"count":10},{"startOffset":8116,"endOffset":8148,"count":0},{"startOffset":8148,"endOffset":8162,"count":10},{"startOffset":8168,"endOffset":8538,"count":14},{"startOffset":8261,"endOffset":8288,"count":0},{"startOffset":8330,"endOffset":8362,"count":0},{"startOffset":8406,"endOffset":8480,"count":0},{"startOffset":8491,"endOffset":8538,"count":0},{"startOffset":8544,"endOffset":8802,"count":0},{"startOffset":8807,"endOffset":8827,"count":284},{"startOffset":8827,"endOffset":8920,"count":142}],"isBlockCoverage":true},{"functionName":"_addHeaderLine","ranges":[{"startOffset":9543,"endOffset":10231,"count":334},{"startOffset":9680,"endOffset":9693,"count":65},{"startOffset":9695,"endOffset":9911,"count":269},{"startOffset":9798,"endOffset":9864,"count":0},{"startOffset":9911,"endOffset":10228,"count":65},{"startOffset":9933,"endOffset":10135,"count":2},{"startOffset":10032,"endOffset":10130,"count":1},{"startOffset":10135,"endOffset":10228,"count":63}],"isBlockCoverage":true},{"functionName":"_dump","ranges":[{"startOffset":10359,"endOffset":10608,"count":1}],"isBlockCoverage":true}]},{"scriptId":"136","url":"_http_outgoing.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":28099,"count":1}],"isBlockCoverage":false},{"functionName":"isCookieField","ranges":[{"startOffset":2912,"endOffset":3000,"count":0}],"isBlockCoverage":false},{"functionName":"noopPendingOutput","ranges":[{"startOffset":3004,"endOffset":3041,"count":58}],"isBlockCoverage":true},{"functionName":"OutgoingMessage","ranges":[{"startOffset":3045,"endOffset":4294,"count":24}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":4487,"endOffset":4635,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":4719,"endOffset":4750,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":4830,"endOffset":4920,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5007,"endOffset":5098,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":5178,"endOffset":5292,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5394,"endOffset":5442,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5539,"endOffset":6023,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":6168,"endOffset":6210,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":6220,"endOffset":6264,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6370,"endOffset":6841,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6942,"endOffset":7406,"count":0}],"isBlockCoverage":false},{"functionName":"_renderHeaders","ranges":[{"startOffset":7528,"endOffset":8050,"count":0}],"isBlockCoverage":false},{"functionName":"OutgoingMessage.cork","ranges":[{"startOffset":8088,"endOffset":8189,"count":0}],"isBlockCoverage":false},{"functionName":"OutgoingMessage.uncork","ranges":[{"startOffset":8229,"endOffset":8351,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout","ranges":[{"startOffset":8395,"endOffset":8703,"count":0}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":8952,"endOffset":9252,"count":0}],"isBlockCoverage":false},{"functionName":"_send","ranges":[{"startOffset":9366,"endOffset":10134,"count":29},{"startOffset":9638,"endOffset":10079,"count":24},{"startOffset":9674,"endOffset":9745,"count":19},{"startOffset":9732,"endOffset":9744,"count":0},{"startOffset":9747,"endOffset":9790,"count":19},{"startOffset":9790,"endOffset":10044,"count":5}],"isBlockCoverage":true},{"functionName":"_writeRaw","ranges":[{"startOffset":10191,"endOffset":11056,"count":29},{"startOffset":10279,"endOffset":10296,"count":0},{"startOffset":10298,"endOffset":10449,"count":0},{"startOffset":10491,"endOffset":10545,"count":0},{"startOffset":10560,"endOffset":10589,"count":0},{"startOffset":10590,"endOffset":10606,"count":0},{"startOffset":10608,"endOffset":10835,"count":0}],"isBlockCoverage":true},{"functionName":"_storeHeader","ranges":[{"startOffset":11118,"endOffset":15538,"count":24},{"startOffset":11559,"endOffset":11670,"count":170},{"startOffset":11677,"endOffset":12371,"count":0},{"startOffset":12447,"endOffset":12461,"count":0},{"startOffset":12463,"endOffset":12513,"count":0},{"startOffset":13120,"endOffset":13207,"count":0},{"startOffset":13209,"endOffset":13397,"count":0},{"startOffset":13455,"endOffset":13520,"count":0},{"startOffset":13549,"endOffset":14066,"count":0},{"startOffset":14091,"endOffset":14103,"count":19},{"startOffset":14105,"endOffset":14938,"count":19},{"startOffset":14132,"endOffset":14251,"count":0},{"startOffset":14330,"endOffset":14933,"count":0},{"startOffset":15265,"endOffset":15314,"count":0},{"startOffset":15520,"endOffset":15535,"count":0}],"isBlockCoverage":true},{"functionName":"processHeader","ranges":[{"startOffset":15542,"endOffset":16060,"count":170},{"startOffset":15624,"endOffset":15648,"count":0},{"startOffset":15677,"endOffset":16006,"count":146},{"startOffset":15705,"endOffset":15727,"count":0},{"startOffset":15970,"endOffset":16006,"count":0},{"startOffset":16006,"endOffset":16059,"count":24}],"isBlockCoverage":true},{"functionName":"storeHeader","ranges":[{"startOffset":16064,"endOffset":16266,"count":170},{"startOffset":16144,"endOffset":16176,"count":0}],"isBlockCoverage":true},{"functionName":"matchHeader","ranges":[{"startOffset":16270,"endOffset":17118,"count":170},{"startOffset":16371,"endOffset":16378,"count":0},{"startOffset":16436,"endOffset":16656,"count":24},{"startOffset":16592,"endOffset":16642,"count":0},{"startOffset":16662,"endOffset":16824,"count":0},{"startOffset":16830,"endOffset":16932,"count":5},{"startOffset":16938,"endOffset":16950,"count":0},{"startOffset":16956,"endOffset":16970,"count":0},{"startOffset":16976,"endOffset":17033,"count":0},{"startOffset":17039,"endOffset":17110,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17165,"endOffset":17315,"count":170},{"startOffset":17246,"endOffset":17312,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":17365,"endOffset":17643,"count":170},{"startOffset":17412,"endOffset":17477,"count":0},{"startOffset":17516,"endOffset":17640,"count":0}],"isBlockCoverage":true},{"functionName":"setHeader","ranges":[{"startOffset":17687,"endOffset":18030,"count":170},{"startOffset":17742,"endOffset":17793,"count":0},{"startOffset":17928,"endOffset":17977,"count":24}],"isBlockCoverage":true},{"functionName":"getHeader","ranges":[{"startOffset":18075,"endOffset":18292,"count":72},{"startOffset":18205,"endOffset":18212,"count":0},{"startOffset":18277,"endOffset":18288,"count":24}],"isBlockCoverage":true},{"functionName":"getHeaderNames","ranges":[{"startOffset":18409,"endOffset":18514,"count":0}],"isBlockCoverage":false},{"functionName":"getHeaders","ranges":[{"startOffset":18620,"endOffset":19043,"count":0}],"isBlockCoverage":false},{"functionName":"hasHeader","ranges":[{"startOffset":19088,"endOffset":19236,"count":0}],"isBlockCoverage":false},{"functionName":"removeHeader","ranges":[{"startOffset":19284,"endOffset":19862,"count":0}],"isBlockCoverage":false},{"functionName":"_implicitHeader","ranges":[{"startOffset":19913,"endOffset":20006,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20128,"endOffset":20165,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20249,"endOffset":20285,"count":0}],"isBlockCoverage":false},{"functionName":"write","ranges":[{"startOffset":20369,"endOffset":20536,"count":5},{"startOffset":20494,"endOffset":20518,"count":0}],"isBlockCoverage":true},{"functionName":"writeAfterEnd","ranges":[{"startOffset":20541,"endOffset":20964,"count":0}],"isBlockCoverage":false},{"functionName":"write_","ranges":[{"startOffset":20968,"endOffset":22219,"count":5},{"startOffset":21048,"endOffset":21107,"count":0},{"startOffset":21190,"endOffset":21360,"count":0},{"startOffset":21435,"endOffset":21575,"count":0},{"startOffset":21608,"endOffset":21637,"count":0},{"startOffset":21639,"endOffset":21722,"count":0},{"startOffset":21764,"endOffset":21785,"count":0},{"startOffset":21787,"endOffset":22106,"count":0}],"isBlockCoverage":true},{"functionName":"writeAfterEndNT","ranges":[{"startOffset":22225,"endOffset":22333,"count":0}],"isBlockCoverage":false},{"functionName":"connectionCorkNT","ranges":[{"startOffset":22339,"endOffset":22393,"count":0}],"isBlockCoverage":false},{"functionName":"addTrailers","ranges":[{"startOffset":22439,"endOffset":23310,"count":0}],"isBlockCoverage":false},{"functionName":"onFinish","ranges":[{"startOffset":23315,"endOffset":23438,"count":24},{"startOffset":23402,"endOffset":23409,"count":0}],"isBlockCoverage":true},{"functionName":"end","ranges":[{"startOffset":23474,"endOffset":25427,"count":24},{"startOffset":23552,"endOffset":23600,"count":0},{"startOffset":23642,"endOffset":23696,"count":0},{"startOffset":23719,"endOffset":23750,"count":0},{"startOffset":23767,"endOffset":24263,"count":0},{"startOffset":24288,"endOffset":24521,"count":0},{"startOffset":24546,"endOffset":24611,"count":19},{"startOffset":24658,"endOffset":24688,"count":0},{"startOffset":24789,"endOffset":24864,"count":0},{"startOffset":24967,"endOffset":25086,"count":0},{"startOffset":25312,"endOffset":25333,"count":0},{"startOffset":25334,"endOffset":25377,"count":0},{"startOffset":25379,"endOffset":25406,"count":0}],"isBlockCoverage":true},{"functionName":"_finish","ranges":[{"startOffset":25470,"endOffset":25544,"count":24}],"isBlockCoverage":true},{"functionName":"_flush","ranges":[{"startOffset":26367,"endOffset":26812,"count":24},{"startOffset":26701,"endOffset":26804,"count":0}],"isBlockCoverage":true},{"functionName":"_flushOutput","ranges":[{"startOffset":26858,"endOffset":27527,"count":24},{"startOffset":26915,"endOffset":26963,"count":0},{"startOffset":27045,"endOffset":27062,"count":0},{"startOffset":27280,"endOffset":27394,"count":34}],"isBlockCoverage":true},{"functionName":"flushHeaders","ranges":[{"startOffset":27575,"endOffset":27713,"count":0}],"isBlockCoverage":false},{"functionName":"pipe","ranges":[{"startOffset":27751,"endOffset":27896,"count":0}],"isBlockCoverage":false},{"functionName":"OutgoingMessage.","ranges":[{"startOffset":27957,"endOffset":28004,"count":0}],"isBlockCoverage":false}]},{"scriptId":"137","url":"internal/http.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1228,"count":1}],"isBlockCoverage":false},{"functionName":"nowDate","ranges":[{"startOffset":218,"endOffset":288,"count":0}],"isBlockCoverage":false},{"functionName":"utcDate","ranges":[{"startOffset":292,"endOffset":362,"count":0}],"isBlockCoverage":false},{"functionName":"cache","ranges":[{"startOffset":366,"endOffset":530,"count":0}],"isBlockCoverage":false},{"functionName":"resetCache","ranges":[{"startOffset":534,"endOffset":610,"count":0}],"isBlockCoverage":false},{"functionName":"HttpRequestTiming","ranges":[{"startOffset":668,"endOffset":981,"count":0}],"isBlockCoverage":false},{"functionName":"emitStatistics","ranges":[{"startOffset":988,"endOffset":1082,"count":0}],"isBlockCoverage":false}]},{"scriptId":"138","url":"_http_server.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":31483,"count":1}],"isBlockCoverage":false},{"functionName":"HTTPServerAsyncResource","ranges":[{"startOffset":6441,"endOffset":6523,"count":0}],"isBlockCoverage":false},{"functionName":"ServerResponse","ranges":[{"startOffset":6530,"endOffset":7121,"count":0}],"isBlockCoverage":false},{"functionName":"_finish","ranges":[{"startOffset":7292,"endOffset":7524,"count":0}],"isBlockCoverage":false},{"functionName":"onServerResponseClose","ranges":[{"startOffset":7630,"endOffset":8627,"count":0}],"isBlockCoverage":false},{"functionName":"assignSocket","ranges":[{"startOffset":8671,"endOffset":8890,"count":0}],"isBlockCoverage":false},{"functionName":"detachSocket","ranges":[{"startOffset":8935,"endOffset":9122,"count":0}],"isBlockCoverage":false},{"functionName":"writeContinue","ranges":[{"startOffset":9168,"endOffset":9295,"count":0}],"isBlockCoverage":false},{"functionName":"writeProcessing","ranges":[{"startOffset":9343,"endOffset":9449,"count":0}],"isBlockCoverage":false},{"functionName":"_implicitHeader","ranges":[{"startOffset":9497,"endOffset":9564,"count":0}],"isBlockCoverage":false},{"functionName":"writeHead","ranges":[{"startOffset":9618,"endOffset":12297,"count":0}],"isBlockCoverage":false},{"functionName":"Server","ranges":[{"startOffset":12413,"endOffset":13960,"count":0}],"isBlockCoverage":false},{"functionName":"setTimeout","ranges":[{"startOffset":14102,"endOffset":14236,"count":0}],"isBlockCoverage":false},{"functionName":"Server.","ranges":[{"startOffset":14287,"endOffset":14827,"count":0}],"isBlockCoverage":false},{"functionName":"connectionListener","ranges":[{"startOffset":14832,"endOffset":14980,"count":0}],"isBlockCoverage":false},{"functionName":"connectionListenerInternal","ranges":[{"startOffset":14984,"endOffset":18583,"count":0}],"isBlockCoverage":false},{"functionName":"updateOutgoingData","ranges":[{"startOffset":18587,"endOffset":18706,"count":0}],"isBlockCoverage":false},{"functionName":"socketOnDrain","ranges":[{"startOffset":18710,"endOffset":19180,"count":0}],"isBlockCoverage":false},{"functionName":"socketOnTimeout","ranges":[{"startOffset":19184,"endOffset":19566,"count":0}],"isBlockCoverage":false},{"functionName":"socketOnClose","ranges":[{"startOffset":19570,"endOffset":19791,"count":0}],"isBlockCoverage":false},{"functionName":"abortIncoming","ranges":[{"startOffset":19795,"endOffset":20010,"count":0}],"isBlockCoverage":false},{"functionName":"socketOnEnd","ranges":[{"startOffset":20014,"endOffset":20565,"count":0}],"isBlockCoverage":false},{"functionName":"socketOnData","ranges":[{"startOffset":20569,"endOffset":20804,"count":0}],"isBlockCoverage":false},{"functionName":"onRequestTimeout","ranges":[{"startOffset":20808,"endOffset":20949,"count":0}],"isBlockCoverage":false},{"functionName":"onParserExecute","ranges":[{"startOffset":20953,"endOffset":21460,"count":0}],"isBlockCoverage":false},{"functionName":"onParserTimeout","ranges":[{"startOffset":21464,"endOffset":21614,"count":0}],"isBlockCoverage":false},{"functionName":"noop","ranges":[{"startOffset":21631,"endOffset":21639,"count":0}],"isBlockCoverage":false},{"functionName":"socketOnError","ranges":[{"startOffset":22080,"endOffset":22740,"count":0}],"isBlockCoverage":false},{"functionName":"onParserExecuteCommon","ranges":[{"startOffset":22744,"endOffset":24669,"count":0}],"isBlockCoverage":false},{"functionName":"clearIncoming","ranges":[{"startOffset":24673,"endOffset":25084,"count":0}],"isBlockCoverage":false},{"functionName":"setRequestTimeout","ranges":[{"startOffset":25088,"endOffset":25430,"count":0}],"isBlockCoverage":false},{"functionName":"clearRequestTimeout","ranges":[{"startOffset":25434,"endOffset":25681,"count":0}],"isBlockCoverage":false},{"functionName":"resOnFinish","ranges":[{"startOffset":25685,"endOffset":27224,"count":0}],"isBlockCoverage":false},{"functionName":"emitCloseNT","ranges":[{"startOffset":27228,"endOffset":27282,"count":0}],"isBlockCoverage":false},{"functionName":"parserOnIncoming","ranges":[{"startOffset":27453,"endOffset":29684,"count":0}],"isBlockCoverage":false},{"functionName":"resetSocketTimeout","ranges":[{"startOffset":29688,"endOffset":29874,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketResume","ranges":[{"startOffset":29878,"endOffset":30416,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketPause","ranges":[{"startOffset":30420,"endOffset":30566,"count":0}],"isBlockCoverage":false},{"functionName":"unconsume","ranges":[{"startOffset":30570,"endOffset":30830,"count":0}],"isBlockCoverage":false},{"functionName":"generateSocketListenerWrapper","ranges":[{"startOffset":30834,"endOffset":31345,"count":0}],"isBlockCoverage":false}]},{"scriptId":"139","url":"https.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8782,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1620,"endOffset":1647,"count":1}],"isBlockCoverage":true},{"functionName":"Server","ranges":[{"startOffset":1846,"endOffset":2980,"count":0}],"isBlockCoverage":false},{"functionName":"createServer","ranges":[{"startOffset":3156,"endOffset":3250,"count":0}],"isBlockCoverage":false},{"functionName":"createConnection","ranges":[{"startOffset":3276,"endOffset":4421,"count":24},{"startOffset":3402,"endOffset":3616,"count":0},{"startOffset":3652,"endOffset":3684,"count":0},{"startOffset":3720,"endOffset":3752,"count":0},{"startOffset":3900,"endOffset":4032,"count":21}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4172,"endOffset":4248,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4310,"endOffset":4391,"count":24},{"startOffset":4346,"endOffset":4384,"count":0}],"isBlockCoverage":true},{"functionName":"Agent","ranges":[{"startOffset":4427,"endOffset":4814,"count":1},{"startOffset":4491,"endOffset":4517,"count":0}],"isBlockCoverage":true},{"functionName":"getName","ranges":[{"startOffset":5000,"endOffset":6500,"count":72},{"startOffset":5133,"endOffset":5152,"count":0},{"startOffset":5197,"endOffset":5218,"count":0},{"startOffset":5275,"endOffset":5308,"count":0},{"startOffset":5356,"endOffset":5380,"count":0},{"startOffset":5424,"endOffset":5444,"count":0},{"startOffset":5488,"endOffset":5508,"count":0},{"startOffset":5581,"endOffset":5616,"count":0},{"startOffset":5706,"endOffset":5733,"count":0},{"startOffset":5784,"endOffset":5811,"count":0},{"startOffset":5862,"endOffset":5889,"count":0},{"startOffset":5944,"endOffset":5975,"count":0},{"startOffset":6019,"endOffset":6039,"count":0},{"startOffset":6110,"endOffset":6143,"count":0},{"startOffset":6193,"endOffset":6219,"count":0},{"startOffset":6267,"endOffset":6291,"count":0},{"startOffset":6359,"endOffset":6389,"count":0},{"startOffset":6446,"endOffset":6479,"count":0}],"isBlockCoverage":true},{"functionName":"_getSession","ranges":[{"startOffset":6535,"endOffset":6604,"count":24}],"isBlockCoverage":true},{"functionName":"_cacheSession","ranges":[{"startOffset":6641,"endOffset":7206,"count":3},{"startOffset":6746,"endOffset":6753,"count":0},{"startOffset":6832,"endOffset":6895,"count":0},{"startOffset":6983,"endOffset":7121,"count":0}],"isBlockCoverage":true},{"functionName":"_evictSession","ranges":[{"startOffset":7243,"endOffset":7450,"count":0}],"isBlockCoverage":false},{"functionName":"request","ranges":[{"startOffset":7523,"endOffset":8567,"count":24},{"startOffset":7610,"endOffset":8152,"count":0},{"startOffset":8201,"endOffset":8265,"count":0},{"startOffset":8267,"endOffset":8341,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":8571,"endOffset":8681,"count":0}],"isBlockCoverage":false}]},{"scriptId":"140","url":"tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11286,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3304,"endOffset":3368,"count":0}],"isBlockCoverage":false},{"functionName":"cacheRootCertificates","ranges":[{"startOffset":3401,"endOffset":3497,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":3606,"endOffset":3761,"count":0}],"isBlockCoverage":false},{"functionName":"convertProtocols","ranges":[{"startOffset":3876,"endOffset":4493,"count":0}],"isBlockCoverage":false},{"functionName":"convertALPNProtocols","ranges":[{"startOffset":4528,"endOffset":4873,"count":0}],"isBlockCoverage":false},{"functionName":"unfqdn","ranges":[{"startOffset":4878,"endOffset":4940,"count":14}],"isBlockCoverage":true},{"functionName":"toLowerCase","ranges":[{"startOffset":5052,"endOffset":5148,"count":0}],"isBlockCoverage":false},{"functionName":"splitHost","ranges":[{"startOffset":5152,"endOffset":5294,"count":11}],"isBlockCoverage":true},{"functionName":"check","ranges":[{"startOffset":5298,"endOffset":7221,"count":8},{"startOffset":5424,"endOffset":5437,"count":0},{"startOffset":5540,"endOffset":5553,"count":2},{"startOffset":5553,"endOffset":5656,"count":6},{"startOffset":5656,"endOffset":5669,"count":0},{"startOffset":5669,"endOffset":6032,"count":6},{"startOffset":6032,"endOffset":6045,"count":0},{"startOffset":6045,"endOffset":6150,"count":6},{"startOffset":6150,"endOffset":6220,"count":12},{"startOffset":6202,"endOffset":6215,"count":0},{"startOffset":6220,"endOffset":6615,"count":6},{"startOffset":6615,"endOffset":6651,"count":0},{"startOffset":6658,"endOffset":6700,"count":6},{"startOffset":6700,"endOffset":7220,"count":0}],"isBlockCoverage":true},{"functionName":"isBad","ranges":[{"startOffset":5958,"endOffset":5992,"count":18}],"isBlockCoverage":true},{"functionName":"checkServerIdentity","ranges":[{"startOffset":7287,"endOffset":9821,"count":3},{"startOffset":7573,"endOffset":8431,"count":15},{"startOffset":7660,"endOffset":8424,"count":0},{"startOffset":8545,"endOffset":8562,"count":0},{"startOffset":8563,"endOffset":8585,"count":0},{"startOffset":8694,"endOffset":8918,"count":0},{"startOffset":8940,"endOffset":8950,"count":0},{"startOffset":9204,"endOffset":9232,"count":0},{"startOffset":9262,"endOffset":9346,"count":0},{"startOffset":9353,"endOffset":9676,"count":0},{"startOffset":9681,"endOffset":9724,"count":0},{"startOffset":9742,"endOffset":9818,"count":0}],"isBlockCoverage":true},{"functionName":"wildcard","ranges":[{"startOffset":9020,"endOffset":9064,"count":8}],"isBlockCoverage":true},{"functionName":"noWildcard","ranges":[{"startOffset":9118,"endOffset":9163,"count":0}],"isBlockCoverage":false},{"functionName":"SecurePair","ranges":[{"startOffset":9871,"endOffset":10487,"count":0}],"isBlockCoverage":false},{"functionName":"destroy","ranges":[{"startOffset":10493,"endOffset":10571,"count":0}],"isBlockCoverage":false},{"functionName":"createSecurePair","ranges":[{"startOffset":11107,"endOffset":11185,"count":0}],"isBlockCoverage":false}]},{"scriptId":"141","url":"internal/tls.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":703,"count":1}],"isBlockCoverage":false},{"functionName":"parseCertString","ranges":[{"startOffset":173,"endOffset":656,"count":24},{"startOffset":275,"endOffset":638,"count":132},{"startOffset":457,"endOffset":583,"count":21},{"startOffset":583,"endOffset":626,"count":111}],"isBlockCoverage":true}]},{"scriptId":"142","url":"internal/streams/duplexpair.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1026,"count":1}],"isBlockCoverage":false},{"functionName":"DuplexSocket","ranges":[{"startOffset":215,"endOffset":308,"count":0}],"isBlockCoverage":false},{"functionName":"_read","ranges":[{"startOffset":314,"endOffset":445,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":451,"endOffset":662,"count":0}],"isBlockCoverage":false},{"functionName":"_final","ranges":[{"startOffset":668,"endOffset":768,"count":0}],"isBlockCoverage":false},{"functionName":"DuplexPair","ranges":[{"startOffset":797,"endOffset":989,"count":0}],"isBlockCoverage":false}]},{"scriptId":"143","url":"_tls_common.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11489,"count":1}],"isBlockCoverage":false},{"functionName":"toV","ranges":[{"startOffset":1827,"endOffset":2127,"count":48},{"startOffset":1906,"endOffset":1926,"count":0},{"startOffset":1951,"endOffset":1973,"count":0},{"startOffset":1998,"endOffset":2067,"count":24},{"startOffset":2067,"endOffset":2126,"count":0}],"isBlockCoverage":true},{"functionName":"SecureContext","ranges":[{"startOffset":2206,"endOffset":2999,"count":24},{"startOffset":2327,"endOffset":2449,"count":0},{"startOffset":2475,"endOffset":2699,"count":0},{"startOffset":2957,"endOffset":2996,"count":0}],"isBlockCoverage":true},{"functionName":"validateKeyOrCertOption","ranges":[{"startOffset":3003,"endOffset":3262,"count":0}],"isBlockCoverage":false},{"functionName":"createSecureContext","ranges":[{"startOffset":3340,"endOffset":10505,"count":24},{"startOffset":3397,"endOffset":3410,"count":0},{"startOffset":3497,"endOffset":3546,"count":0},{"startOffset":3806,"endOffset":4056,"count":0},{"startOffset":4144,"endOffset":4402,"count":0},{"startOffset":4713,"endOffset":5131,"count":0},{"startOffset":5200,"endOffset":5464,"count":0},{"startOffset":5573,"endOffset":6775,"count":0},{"startOffset":6841,"endOffset":6938,"count":0},{"startOffset":7271,"endOffset":7293,"count":0},{"startOffset":7538,"endOffset":7558,"count":0},{"startOffset":7560,"endOffset":7756,"count":0},{"startOffset":7869,"endOffset":7912,"count":0},{"startOffset":7913,"endOffset":7963,"count":0},{"startOffset":7970,"endOffset":8008,"count":0},{"startOffset":8036,"endOffset":8079,"count":0},{"startOffset":8080,"endOffset":8130,"count":0},{"startOffset":8137,"endOffset":8175,"count":0},{"startOffset":8270,"endOffset":8349,"count":0},{"startOffset":8376,"endOffset":8516,"count":0},{"startOffset":8539,"endOffset":8723,"count":0},{"startOffset":8759,"endOffset":8827,"count":0},{"startOffset":8850,"endOffset":9559,"count":0},{"startOffset":9878,"endOffset":10057,"count":0},{"startOffset":10101,"endOffset":10303,"count":0},{"startOffset":10333,"endOffset":10389,"count":0},{"startOffset":10423,"endOffset":10487,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7344,"endOffset":7421,"count":576},{"startOffset":7369,"endOffset":7421,"count":504}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7473,"endOffset":7496,"count":576}],"isBlockCoverage":true},{"functionName":"translatePeerCertificate","ranges":[{"startOffset":10785,"endOffset":11486,"count":12},{"startOffset":10840,"endOffset":10852,"count":0},{"startOffset":10983,"endOffset":11063,"count":9},{"startOffset":11159,"endOffset":11470,"count":9}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":11318,"endOffset":11463,"count":12},{"startOffset":11380,"endOffset":11408,"count":0}],"isBlockCoverage":true}]},{"scriptId":"144","url":"_tls_wrap.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":49149,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1811,"endOffset":1838,"count":1}],"isBlockCoverage":true},{"functionName":"noop","ranges":[{"startOffset":3626,"endOffset":3634,"count":24}],"isBlockCoverage":true},{"functionName":"onhandshakestart","ranges":[{"startOffset":3817,"endOffset":4629,"count":0}],"isBlockCoverage":false},{"functionName":"onhandshakedone","ranges":[{"startOffset":4633,"endOffset":4939,"count":0}],"isBlockCoverage":false},{"functionName":"loadSession","ranges":[{"startOffset":4945,"endOffset":6185,"count":0}],"isBlockCoverage":false},{"functionName":"loadSNI","ranges":[{"startOffset":6191,"endOffset":6868,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSP","ranges":[{"startOffset":6874,"endOffset":8243,"count":0}],"isBlockCoverage":false},{"functionName":"requestOCSPDone","ranges":[{"startOffset":8247,"endOffset":8450,"count":0}],"isBlockCoverage":false},{"functionName":"onnewsessionclient","ranges":[{"startOffset":8454,"endOffset":8698,"count":3},{"startOffset":8601,"endOffset":8644,"count":0}],"isBlockCoverage":true},{"functionName":"onnewsession","ranges":[{"startOffset":8702,"endOffset":9569,"count":0}],"isBlockCoverage":false},{"functionName":"onPskServerCallback","ranges":[{"startOffset":9573,"endOffset":10251,"count":0}],"isBlockCoverage":false},{"functionName":"onPskClientCallback","ranges":[{"startOffset":10255,"endOffset":11047,"count":0}],"isBlockCoverage":false},{"functionName":"onkeylog","ranges":[{"startOffset":11051,"endOffset":11145,"count":0}],"isBlockCoverage":false},{"functionName":"onocspresponse","ranges":[{"startOffset":11149,"endOffset":11268,"count":0}],"isBlockCoverage":false},{"functionName":"onerror","ranges":[{"startOffset":11272,"endOffset":12073,"count":0}],"isBlockCoverage":false},{"functionName":"initRead","ranges":[{"startOffset":12221,"endOffset":12785,"count":24},{"startOffset":12324,"endOffset":12334,"count":0},{"startOffset":12419,"endOffset":12443,"count":0},{"startOffset":12538,"endOffset":12545,"count":0},{"startOffset":12629,"endOffset":12653,"count":0},{"startOffset":12655,"endOffset":12758,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket","ranges":[{"startOffset":12869,"endOffset":15228,"count":24},{"startOffset":13068,"endOffset":13088,"count":0},{"startOffset":13090,"endOffset":13262,"count":0},{"startOffset":13267,"endOffset":13409,"count":0},{"startOffset":13450,"endOffset":13513,"count":0},{"startOffset":14006,"endOffset":14023,"count":0},{"startOffset":14159,"endOffset":14487,"count":0},{"startOffset":14706,"endOffset":14728,"count":0},{"startOffset":15059,"endOffset":15074,"count":0},{"startOffset":15081,"endOffset":15108,"count":0}],"isBlockCoverage":true},{"functionName":"makeMethodProxy","ranges":[{"startOffset":15686,"endOffset":15858,"count":15}],"isBlockCoverage":true},{"functionName":"methodProxy","ranges":[{"startOffset":15729,"endOffset":15854,"count":24}],"isBlockCoverage":true},{"functionName":"close","ranges":[{"startOffset":16031,"endOffset":16750,"count":24},{"startOffset":16576,"endOffset":16620,"count":0},{"startOffset":16622,"endOffset":16711,"count":0}],"isBlockCoverage":true},{"functionName":"done","ranges":[{"startOffset":16321,"endOffset":16548,"count":24}],"isBlockCoverage":true},{"functionName":"disableRenegotiation","ranges":[{"startOffset":16798,"endOffset":16873,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._wrapHandle","ranges":[{"startOffset":16912,"endOffset":17948,"count":24},{"startOffset":16964,"endOffset":16986,"count":0},{"startOffset":17071,"endOffset":17110,"count":0},{"startOffset":17259,"endOffset":17300,"count":0},{"startOffset":17301,"endOffset":17355,"count":0},{"startOffset":17478,"endOffset":17535,"count":0}],"isBlockCoverage":true},{"functionName":"defineHandleReading","ranges":[{"startOffset":18091,"endOffset":18321,"count":24}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":18193,"endOffset":18243,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":18255,"endOffset":18311,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketCloseDestroySSL","ranges":[{"startOffset":18325,"endOffset":18476,"count":24}],"isBlockCoverage":true},{"functionName":"destroySSL","ranges":[{"startOffset":18480,"endOffset":18533,"count":24}],"isBlockCoverage":true},{"functionName":"_destroySSL","ranges":[{"startOffset":18571,"endOffset":18873,"count":24},{"startOffset":18621,"endOffset":18872,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._init","ranges":[{"startOffset":19017,"endOffset":24004,"count":24},{"startOffset":19190,"endOffset":19200,"count":0},{"startOffset":19409,"endOffset":19429,"count":0},{"startOffset":19598,"endOffset":19619,"count":0},{"startOffset":20083,"endOffset":20693,"count":0},{"startOffset":20922,"endOffset":20954,"count":21},{"startOffset":21384,"endOffset":21942,"count":0},{"startOffset":22132,"endOffset":22161,"count":0},{"startOffset":22162,"endOffset":22272,"count":0},{"startOffset":22274,"endOffset":22407,"count":0},{"startOffset":22440,"endOffset":22620,"count":0},{"startOffset":22650,"endOffset":22674,"count":0},{"startOffset":22676,"endOffset":23398,"count":0},{"startOffset":23445,"endOffset":23508,"count":0},{"startOffset":23548,"endOffset":23830,"count":0},{"startOffset":23875,"endOffset":23938,"count":0}],"isBlockCoverage":true},{"functionName":"keylogNewListener","ranges":[{"startOffset":19816,"endOffset":20055,"count":455},{"startOffset":19895,"endOffset":20054,"count":0}],"isBlockCoverage":true},{"functionName":"ssl.onhandshakedone","ranges":[{"startOffset":20762,"endOffset":20843,"count":24}],"isBlockCoverage":true},{"functionName":"newListener","ranges":[{"startOffset":21116,"endOffset":21358,"count":96},{"startOffset":21187,"endOffset":21194,"count":72},{"startOffset":21194,"endOffset":21357,"count":24}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":21623,"endOffset":21935,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":23748,"endOffset":23823,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":23899,"endOffset":23931,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.renegotiate","ranges":[{"startOffset":24043,"endOffset":25450,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket.exportKeyingMaterial","ranges":[{"startOffset":25498,"endOffset":25830,"count":0}],"isBlockCoverage":false},{"functionName":"setMaxSendFragment","ranges":[{"startOffset":25876,"endOffset":25969,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._handleTimeout","ranges":[{"startOffset":26011,"endOffset":26082,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._emitTLSError","ranges":[{"startOffset":26123,"endOffset":26213,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._tlsError","ranges":[{"startOffset":26250,"endOffset":26363,"count":0}],"isBlockCoverage":false},{"functionName":"TLSSocket._releaseControl","ranges":[{"startOffset":26406,"endOffset":26568,"count":24},{"startOffset":26454,"endOffset":26467,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._finishInit","ranges":[{"startOffset":26607,"endOffset":27693,"count":24},{"startOffset":27096,"endOffset":27103,"count":0},{"startOffset":27402,"endOffset":27412,"count":0},{"startOffset":27626,"endOffset":27666,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket._start","ranges":[{"startOffset":27727,"endOffset":28245,"count":24},{"startOffset":27797,"endOffset":27807,"count":0},{"startOffset":27984,"endOffset":28043,"count":0},{"startOffset":28138,"endOffset":28145,"count":0},{"startOffset":28190,"endOffset":28217,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.setServername","ranges":[{"startOffset":28286,"endOffset":28462,"count":24},{"startOffset":28372,"endOffset":28420,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.setSession","ranges":[{"startOffset":28500,"endOffset":28642,"count":21},{"startOffset":28561,"endOffset":28602,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.getPeerCertificate","ranges":[{"startOffset":28688,"endOffset":28859,"count":3},{"startOffset":28827,"endOffset":28832,"count":0},{"startOffset":28838,"endOffset":28858,"count":0}],"isBlockCoverage":true},{"functionName":"TLSSocket.getCertificate","ranges":[{"startOffset":28901,"endOffset":29115,"count":0}],"isBlockCoverage":false},{"functionName":"makeSocketMethodProxy","ranges":[{"startOffset":29155,"endOffset":29351,"count":10}],"isBlockCoverage":true},{"functionName":"socketMethodProxy","ranges":[{"startOffset":29204,"endOffset":29347,"count":48},{"startOffset":29324,"endOffset":29346,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":29567,"endOffset":29647,"count":10}],"isBlockCoverage":true},{"functionName":"onServerSocketSecure","ranges":[{"startOffset":29694,"endOffset":30207,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketTLSError","ranges":[{"startOffset":30211,"endOffset":30453,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketKeylog","ranges":[{"startOffset":30457,"endOffset":30546,"count":0}],"isBlockCoverage":false},{"functionName":"onSocketClose","ranges":[{"startOffset":30550,"endOffset":30914,"count":0}],"isBlockCoverage":false},{"functionName":"tlsConnectionListener","ranges":[{"startOffset":30918,"endOffset":31792,"count":0}],"isBlockCoverage":false},{"functionName":"Server","ranges":[{"startOffset":34625,"endOffset":36594,"count":0}],"isBlockCoverage":false},{"functionName":"createServer","ranges":[{"startOffset":36753,"endOffset":36839,"count":0}],"isBlockCoverage":false},{"functionName":"Server.setSecureContext","ranges":[{"startOffset":36882,"endOffset":39821,"count":0}],"isBlockCoverage":false},{"functionName":"Server._getServerData","ranges":[{"startOffset":39862,"endOffset":39949,"count":0}],"isBlockCoverage":false},{"functionName":"Server._setServerData","ranges":[{"startOffset":39990,"endOffset":40069,"count":0}],"isBlockCoverage":false},{"functionName":"getTicketKeys","ranges":[{"startOffset":40109,"endOffset":40191,"count":0}],"isBlockCoverage":false},{"functionName":"setTicketKeys","ranges":[{"startOffset":40231,"endOffset":40314,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":40361,"endOffset":42248,"count":0}],"isBlockCoverage":false},{"functionName":"Server.addContext","ranges":[{"startOffset":42374,"endOffset":42749,"count":0}],"isBlockCoverage":false},{"functionName":"Server.","ranges":[{"startOffset":42800,"endOffset":43045,"count":0}],"isBlockCoverage":false},{"functionName":"SNICallback","ranges":[{"startOffset":43050,"endOffset":43304,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeConnectArgs","ranges":[{"startOffset":43554,"endOffset":44299,"count":24},{"startOffset":44091,"endOffset":44138,"count":0},{"startOffset":44205,"endOffset":44252,"count":0},{"startOffset":44268,"endOffset":44283,"count":0}],"isBlockCoverage":true},{"functionName":"onConnectSecure","ranges":[{"startOffset":44303,"endOffset":46121,"count":24},{"startOffset":44546,"endOffset":44582,"count":0},{"startOffset":44584,"endOffset":44746,"count":0},{"startOffset":44970,"endOffset":45266,"count":3},{"startOffset":45013,"endOffset":45048,"count":0},{"startOffset":45049,"endOffset":45112,"count":0},{"startOffset":45113,"endOffset":45147,"count":0},{"startOffset":45289,"endOffset":45732,"count":0},{"startOffset":46041,"endOffset":46071,"count":3}],"isBlockCoverage":true},{"functionName":"onConnectEnd","ranges":[{"startOffset":46125,"endOffset":46688,"count":0}],"isBlockCoverage":false},{"functionName":"connect","ranges":[{"startOffset":46757,"endOffset":49146,"count":24},{"startOffset":48123,"endOffset":48157,"count":0},{"startOffset":48356,"endOffset":48408,"count":0},{"startOffset":48526,"endOffset":48562,"count":21},{"startOffset":48656,"endOffset":48928,"count":0},{"startOffset":49012,"endOffset":49029,"count":0}],"isBlockCoverage":true}]},{"scriptId":"145","url":"crypto.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7614,"count":1}],"isBlockCoverage":false},{"functionName":"createHash","ranges":[{"startOffset":3236,"endOffset":3320,"count":0}],"isBlockCoverage":false},{"functionName":"createCipher","ranges":[{"startOffset":3324,"endOffset":3426,"count":0}],"isBlockCoverage":false},{"functionName":"createCipheriv","ranges":[{"startOffset":3430,"endOffset":3534,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipher","ranges":[{"startOffset":3538,"endOffset":3644,"count":0}],"isBlockCoverage":false},{"functionName":"createDecipheriv","ranges":[{"startOffset":3648,"endOffset":3756,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellman","ranges":[{"startOffset":3760,"endOffset":3918,"count":0}],"isBlockCoverage":false},{"functionName":"createDiffieHellmanGroup","ranges":[{"startOffset":3922,"endOffset":4006,"count":0}],"isBlockCoverage":false},{"functionName":"createECDH","ranges":[{"startOffset":4010,"endOffset":4068,"count":0}],"isBlockCoverage":false},{"functionName":"createHmac","ranges":[{"startOffset":4072,"endOffset":4156,"count":0}],"isBlockCoverage":false},{"functionName":"createSign","ranges":[{"startOffset":4160,"endOffset":4244,"count":0}],"isBlockCoverage":false},{"functionName":"createVerify","ranges":[{"startOffset":4248,"endOffset":4336,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsDisabled","ranges":[{"startOffset":5402,"endOffset":5477,"count":0}],"isBlockCoverage":false},{"functionName":"setFipsForced","ranges":[{"startOffset":5481,"endOffset":5572,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsDisabled","ranges":[{"startOffset":5576,"endOffset":5620,"count":0}],"isBlockCoverage":false},{"functionName":"getFipsForced","ranges":[{"startOffset":5624,"endOffset":5666,"count":0}],"isBlockCoverage":false}]},{"scriptId":"146","url":"internal/crypto/random.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5933,"count":1}],"isBlockCoverage":false},{"functionName":"assertOffset","ranges":[{"startOffset":662,"endOffset":1038,"count":0}],"isBlockCoverage":false},{"functionName":"assertSize","ranges":[{"startOffset":1042,"endOffset":1517,"count":0}],"isBlockCoverage":false},{"functionName":"randomBytes","ranges":[{"startOffset":1521,"endOffset":2091,"count":0}],"isBlockCoverage":false},{"functionName":"randomFillSync","ranges":[{"startOffset":2095,"endOffset":2586,"count":0}],"isBlockCoverage":false},{"functionName":"randomFill","ranges":[{"startOffset":2590,"endOffset":3600,"count":0}],"isBlockCoverage":false},{"functionName":"randomInt","ranges":[{"startOffset":3846,"endOffset":5768,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":5772,"endOffset":5842,"count":0}],"isBlockCoverage":false}]},{"scriptId":"147","url":"internal/crypto/pbkdf2.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2450,"count":1}],"isBlockCoverage":false},{"functionName":"pbkdf2","ranges":[{"startOffset":488,"endOffset":1383,"count":0}],"isBlockCoverage":false},{"functionName":"pbkdf2Sync","ranges":[{"startOffset":1387,"endOffset":1806,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":1810,"endOffset":2223,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":2227,"endOffset":2397,"count":0}],"isBlockCoverage":false}]},{"scriptId":"148","url":"internal/crypto/util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2439,"count":1}],"isBlockCoverage":false},{"functionName":"setDefaultEncoding","ranges":[{"startOffset":742,"endOffset":805,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultEncoding","ranges":[{"startOffset":809,"endOffset":870,"count":0}],"isBlockCoverage":false},{"functionName":"toBuf","ranges":[{"startOffset":1050,"endOffset":1236,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1272,"endOffset":1315,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1350,"endOffset":1392,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1427,"endOffset":1469,"count":0}],"isBlockCoverage":false},{"functionName":"setEngine","ranges":[{"startOffset":1475,"endOffset":1853,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1900,"endOffset":2262,"count":0}],"isBlockCoverage":false}]},{"scriptId":"149","url":"internal/crypto/scrypt.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3817,"count":1}],"isBlockCoverage":false},{"functionName":"scrypt","ranges":[{"startOffset":610,"endOffset":1471,"count":0}],"isBlockCoverage":false},{"functionName":"scryptSync","ranges":[{"startOffset":1475,"endOffset":1909,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":1913,"endOffset":2163,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":2167,"endOffset":3771,"count":0}],"isBlockCoverage":false}]},{"scriptId":"150","url":"internal/crypto/keygen.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10395,"count":1}],"isBlockCoverage":false},{"functionName":"wrapKey","ranges":[{"startOffset":995,"endOffset":1127,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPair","ranges":[{"startOffset":1131,"endOffset":1807,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeyPairSync","ranges":[{"startOffset":1940,"endOffset":2057,"count":0}],"isBlockCoverage":false},{"functionName":"handleError","ranges":[{"startOffset":2061,"endOffset":2417,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":2421,"endOffset":3579,"count":0}],"isBlockCoverage":false},{"functionName":"check","ranges":[{"startOffset":3583,"endOffset":10331,"count":0}],"isBlockCoverage":false}]},{"scriptId":"151","url":"internal/crypto/keys.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":11523,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":1568,"endOffset":3618,"count":1}],"isBlockCoverage":true},{"functionName":"KeyObject","ranges":[{"startOffset":1681,"endOffset":2213,"count":0}],"isBlockCoverage":false},{"functionName":"get type","ranges":[{"startOffset":2221,"endOffset":2270,"count":0}],"isBlockCoverage":false},{"functionName":"SecretKeyObject","ranges":[{"startOffset":2328,"endOffset":2388,"count":0}],"isBlockCoverage":false},{"functionName":"get symmetricKeySize","ranges":[{"startOffset":2396,"endOffset":2478,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2486,"endOffset":2541,"count":0}],"isBlockCoverage":false},{"functionName":"get asymmetricKeyType","ranges":[{"startOffset":2665,"endOffset":2820,"count":0}],"isBlockCoverage":false},{"functionName":"PublicKeyObject","ranges":[{"startOffset":2888,"endOffset":2948,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":2956,"endOffset":3146,"count":0}],"isBlockCoverage":false},{"functionName":"PrivateKeyObject","ranges":[{"startOffset":3215,"endOffset":3276,"count":0}],"isBlockCoverage":false},{"functionName":"export","ranges":[{"startOffset":3284,"endOffset":3533,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormat","ranges":[{"startOffset":3624,"endOffset":3959,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyType","ranges":[{"startOffset":3963,"endOffset":4837,"count":0}],"isBlockCoverage":false},{"functionName":"option","ranges":[{"startOffset":4841,"endOffset":4939,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyFormatAndType","ranges":[{"startOffset":4943,"endOffset":5552,"count":0}],"isBlockCoverage":false},{"functionName":"isStringOrBuffer","ranges":[{"startOffset":5556,"endOffset":5652,"count":0}],"isBlockCoverage":false},{"functionName":"parseKeyEncoding","ranges":[{"startOffset":5656,"endOffset":6995,"count":0}],"isBlockCoverage":false},{"functionName":"parsePublicKeyEncoding","ranges":[{"startOffset":7199,"endOffset":7337,"count":0}],"isBlockCoverage":false},{"functionName":"parsePrivateKeyEncoding","ranges":[{"startOffset":7542,"endOffset":7660,"count":0}],"isBlockCoverage":false},{"functionName":"getKeyObjectHandle","ranges":[{"startOffset":7664,"endOffset":8245,"count":0}],"isBlockCoverage":false},{"functionName":"prepareAsymmetricKey","ranges":[{"startOffset":8249,"endOffset":9527,"count":0}],"isBlockCoverage":false},{"functionName":"preparePrivateKey","ranges":[{"startOffset":9531,"endOffset":9621,"count":0}],"isBlockCoverage":false},{"functionName":"preparePublicOrPrivateKey","ranges":[{"startOffset":9625,"endOffset":9722,"count":0}],"isBlockCoverage":false},{"functionName":"prepareSecretKey","ranges":[{"startOffset":9726,"endOffset":10231,"count":0}],"isBlockCoverage":false},{"functionName":"createSecretKey","ranges":[{"startOffset":10235,"endOffset":10527,"count":0}],"isBlockCoverage":false},{"functionName":"createPublicKey","ranges":[{"startOffset":10531,"endOffset":10773,"count":0}],"isBlockCoverage":false},{"functionName":"createPrivateKey","ranges":[{"startOffset":10777,"endOffset":11052,"count":0}],"isBlockCoverage":false},{"functionName":"isKeyObject","ranges":[{"startOffset":11056,"endOffset":11122,"count":0}],"isBlockCoverage":false}]},{"scriptId":"152","url":"internal/crypto/diffiehellman.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8420,"count":1}],"isBlockCoverage":false},{"functionName":"DiffieHellman","ranges":[{"startOffset":1012,"endOffset":2626,"count":0}],"isBlockCoverage":false},{"functionName":"DiffieHellmanGroup","ranges":[{"startOffset":2632,"endOffset":2945,"count":0}],"isBlockCoverage":false},{"functionName":"dhGenerateKeys","ranges":[{"startOffset":3063,"endOffset":3229,"count":0}],"isBlockCoverage":false},{"functionName":"dhComputeSecret","ranges":[{"startOffset":3350,"endOffset":3682,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrime","ranges":[{"startOffset":3788,"endOffset":3948,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetGenerator","ranges":[{"startOffset":4066,"endOffset":4242,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPublicKey","ranges":[{"startOffset":4360,"endOffset":4524,"count":0}],"isBlockCoverage":false},{"functionName":"dhGetPrivateKey","ranges":[{"startOffset":4645,"endOffset":4811,"count":0}],"isBlockCoverage":false},{"functionName":"setPublicKey","ranges":[{"startOffset":4856,"endOffset":5014,"count":0}],"isBlockCoverage":false},{"functionName":"setPrivateKey","ranges":[{"startOffset":5061,"endOffset":5221,"count":0}],"isBlockCoverage":false},{"functionName":"ECDH","ranges":[{"startOffset":5228,"endOffset":5388,"count":0}],"isBlockCoverage":false},{"functionName":"generateKeys","ranges":[{"startOffset":5706,"endOffset":5832,"count":0}],"isBlockCoverage":false},{"functionName":"getPublicKey","ranges":[{"startOffset":5867,"endOffset":6070,"count":0}],"isBlockCoverage":false},{"functionName":"convertKey","ranges":[{"startOffset":6093,"endOffset":6628,"count":0}],"isBlockCoverage":false},{"functionName":"encode","ranges":[{"startOffset":6633,"endOffset":6772,"count":0}],"isBlockCoverage":false},{"functionName":"getFormat","ranges":[{"startOffset":6776,"endOffset":7109,"count":0}],"isBlockCoverage":false},{"functionName":"diffieHellman","ranges":[{"startOffset":7183,"endOffset":8325,"count":0}],"isBlockCoverage":false}]},{"scriptId":"153","url":"internal/crypto/cipher.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8753,"count":1}],"isBlockCoverage":false},{"functionName":"rsaFunctionFor","ranges":[{"startOffset":1101,"endOffset":1979,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1170,"endOffset":1975,"count":0}],"isBlockCoverage":false},{"functionName":"getDecoder","ranges":[{"startOffset":2491,"endOffset":2815,"count":0}],"isBlockCoverage":false},{"functionName":"getUIntOption","ranges":[{"startOffset":2819,"endOffset":3048,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherBase","ranges":[{"startOffset":3052,"endOffset":3473,"count":0}],"isBlockCoverage":false},{"functionName":"createCipher","ranges":[{"startOffset":3477,"endOffset":3704,"count":0}],"isBlockCoverage":false},{"functionName":"createCipherWithIV","ranges":[{"startOffset":3708,"endOffset":3972,"count":0}],"isBlockCoverage":false},{"functionName":"Cipher","ranges":[{"startOffset":3976,"endOffset":4171,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":4319,"endOffset":4438,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":4469,"endOffset":4615,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":4646,"endOffset":5316,"count":0}],"isBlockCoverage":false},{"functionName":"final","ranges":[{"startOffset":5348,"endOffset":5661,"count":0}],"isBlockCoverage":false},{"functionName":"setAutoPadding","ranges":[{"startOffset":5702,"endOffset":5853,"count":0}],"isBlockCoverage":false},{"functionName":"getAuthTag","ranges":[{"startOffset":5888,"endOffset":6053,"count":0}],"isBlockCoverage":false},{"functionName":"setAuthTag","ranges":[{"startOffset":6060,"endOffset":6412,"count":0}],"isBlockCoverage":false},{"functionName":"setAAD","ranges":[{"startOffset":6442,"endOffset":6880,"count":0}],"isBlockCoverage":false},{"functionName":"Cipheriv","ranges":[{"startOffset":6885,"endOffset":7089,"count":0}],"isBlockCoverage":false},{"functionName":"addCipherPrototypeFunctions","ranges":[{"startOffset":7093,"endOffset":7696,"count":3},{"startOffset":7495,"endOffset":7570,"count":1},{"startOffset":7570,"endOffset":7634,"count":2}],"isBlockCoverage":true},{"functionName":"Decipher","ranges":[{"startOffset":7858,"endOffset":8060,"count":0}],"isBlockCoverage":false},{"functionName":"Decipheriv","ranges":[{"startOffset":8224,"endOffset":8435,"count":0}],"isBlockCoverage":false}]},{"scriptId":"154","url":"internal/streams/lazy_transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1738,"count":1}],"isBlockCoverage":false},{"functionName":"LazyTransform","ranges":[{"startOffset":487,"endOffset":551,"count":0}],"isBlockCoverage":false},{"functionName":"makeGetter","ranges":[{"startOffset":687,"endOffset":1006,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":725,"endOffset":1002,"count":0}],"isBlockCoverage":false},{"functionName":"makeSetter","ranges":[{"startOffset":1010,"endOffset":1214,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":1048,"endOffset":1210,"count":0}],"isBlockCoverage":false}]},{"scriptId":"155","url":"internal/crypto/sig.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6181,"count":1}],"isBlockCoverage":false},{"functionName":"Sign","ranges":[{"startOffset":761,"endOffset":1017,"count":0}],"isBlockCoverage":false},{"functionName":"_write","ranges":[{"startOffset":1145,"endOffset":1240,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1269,"endOffset":1642,"count":0}],"isBlockCoverage":false},{"functionName":"getPadding","ranges":[{"startOffset":1647,"endOffset":1724,"count":0}],"isBlockCoverage":false},{"functionName":"getSaltLength","ranges":[{"startOffset":1728,"endOffset":1811,"count":0}],"isBlockCoverage":false},{"functionName":"getDSASignatureEncoding","ranges":[{"startOffset":1815,"endOffset":2170,"count":0}],"isBlockCoverage":false},{"functionName":"getIntOption","ranges":[{"startOffset":2174,"endOffset":2415,"count":0}],"isBlockCoverage":false},{"functionName":"sign","ranges":[{"startOffset":2441,"endOffset":3125,"count":0}],"isBlockCoverage":false},{"functionName":"signOneShot","ranges":[{"startOffset":3130,"endOffset":3959,"count":0}],"isBlockCoverage":false},{"functionName":"Verify","ranges":[{"startOffset":3963,"endOffset":4227,"count":0}],"isBlockCoverage":false},{"functionName":"verify","ranges":[{"startOffset":4463,"endOffset":5118,"count":0}],"isBlockCoverage":false},{"functionName":"verifyOneShot","ranges":[{"startOffset":5123,"endOffset":6100,"count":0}],"isBlockCoverage":false}]},{"scriptId":"156","url":"internal/crypto/hash.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3947,"count":1}],"isBlockCoverage":false},{"functionName":"Hash","ranges":[{"startOffset":800,"endOffset":1322,"count":0}],"isBlockCoverage":false},{"functionName":"copy","ranges":[{"startOffset":1458,"endOffset":1632,"count":0}],"isBlockCoverage":false},{"functionName":"_transform","ranges":[{"startOffset":1665,"endOffset":1773,"count":0}],"isBlockCoverage":false},{"functionName":"_flush","ranges":[{"startOffset":1802,"endOffset":1885,"count":0}],"isBlockCoverage":false},{"functionName":"update","ranges":[{"startOffset":1914,"endOffset":2443,"count":0}],"isBlockCoverage":false},{"functionName":"digest","ranges":[{"startOffset":2474,"endOffset":2829,"count":0}],"isBlockCoverage":false},{"functionName":"Hmac","ranges":[{"startOffset":2836,"endOffset":3175,"count":0}],"isBlockCoverage":false},{"functionName":"digest","ranges":[{"startOffset":3363,"endOffset":3795,"count":0}],"isBlockCoverage":false}]},{"scriptId":"157","url":"internal/crypto/certificate.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1167,"count":1}],"isBlockCoverage":false},{"functionName":"verifySpkac","ranges":[{"startOffset":262,"endOffset":363,"count":0}],"isBlockCoverage":false},{"functionName":"exportPublicKey","ranges":[{"startOffset":367,"endOffset":500,"count":0}],"isBlockCoverage":false},{"functionName":"exportChallenge","ranges":[{"startOffset":504,"endOffset":637,"count":0}],"isBlockCoverage":false},{"functionName":"Certificate","ranges":[{"startOffset":729,"endOffset":826,"count":0}],"isBlockCoverage":false}]},{"scriptId":"158","url":"internal/js_stream_socket.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7690,"count":1}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":348,"endOffset":379,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":717,"endOffset":780,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstart","ranges":[{"startOffset":784,"endOffset":849,"count":0}],"isBlockCoverage":false},{"functionName":"onreadstop","ranges":[{"startOffset":853,"endOffset":916,"count":0}],"isBlockCoverage":false},{"functionName":"onshutdown","ranges":[{"startOffset":920,"endOffset":991,"count":0}],"isBlockCoverage":false},{"functionName":"onwrite","ranges":[{"startOffset":995,"endOffset":1072,"count":0}],"isBlockCoverage":false},{"functionName":"JSStreamSocket","ranges":[{"startOffset":1847,"endOffset":3596,"count":0}],"isBlockCoverage":false},{"functionName":"get StreamWrap","ranges":[{"startOffset":3740,"endOffset":3791,"count":0}],"isBlockCoverage":false},{"functionName":"isClosing","ranges":[{"startOffset":3797,"endOffset":3861,"count":0}],"isBlockCoverage":false},{"functionName":"readStart","ranges":[{"startOffset":3867,"endOffset":3927,"count":0}],"isBlockCoverage":false},{"functionName":"readStop","ranges":[{"startOffset":3933,"endOffset":3991,"count":0}],"isBlockCoverage":false},{"functionName":"doShutdown","ranges":[{"startOffset":3997,"endOffset":5020,"count":0}],"isBlockCoverage":false},{"functionName":"finishShutdown","ranges":[{"startOffset":5091,"endOffset":5390,"count":0}],"isBlockCoverage":false},{"functionName":"doWrite","ranges":[{"startOffset":5396,"endOffset":6355,"count":0}],"isBlockCoverage":false},{"functionName":"finishWrite","ranges":[{"startOffset":6426,"endOffset":6882,"count":0}],"isBlockCoverage":false},{"functionName":"doClose","ranges":[{"startOffset":6888,"endOffset":7649,"count":0}],"isBlockCoverage":false}]},{"scriptId":"159","url":"zlib.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":29425,"count":1}],"isBlockCoverage":false},{"functionName":"zlibBuffer","ranges":[{"startOffset":3396,"endOffset":4137,"count":0}],"isBlockCoverage":false},{"functionName":"zlibBufferOnData","ranges":[{"startOffset":4141,"endOffset":4468,"count":0}],"isBlockCoverage":false},{"functionName":"zlibBufferOnError","ranges":[{"startOffset":4472,"endOffset":4560,"count":0}],"isBlockCoverage":false},{"functionName":"zlibBufferOnEnd","ranges":[{"startOffset":4564,"endOffset":4907,"count":0}],"isBlockCoverage":false},{"functionName":"zlibBufferSync","ranges":[{"startOffset":4911,"endOffset":5469,"count":0}],"isBlockCoverage":false},{"functionName":"zlibOnError","ranges":[{"startOffset":5473,"endOffset":5825,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":6056,"endOffset":6504,"count":154},{"startOffset":6123,"endOffset":6148,"count":110},{"startOffset":6148,"endOffset":6227,"count":44},{"startOffset":6227,"endOffset":6503,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":6815,"endOffset":7115,"count":132},{"startOffset":6897,"endOffset":6924,"count":88},{"startOffset":6924,"endOffset":6966,"count":44},{"startOffset":6968,"endOffset":7090,"count":0},{"startOffset":7090,"endOffset":7114,"count":44}],"isBlockCoverage":true},{"functionName":"ZlibBase","ranges":[{"startOffset":7170,"endOffset":8993,"count":22},{"startOffset":7665,"endOffset":7830,"count":0},{"startOffset":8292,"endOffset":8428,"count":0}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":9206,"endOffset":9245,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9678,"endOffset":9726,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":9875,"endOffset":9929,"count":0}],"isBlockCoverage":false},{"functionName":"ZlibBase.reset","ranges":[{"startOffset":10073,"endOffset":10185,"count":0}],"isBlockCoverage":false},{"functionName":"ZlibBase._flush","ranges":[{"startOffset":10335,"endOffset":10409,"count":22}],"isBlockCoverage":true},{"functionName":"maxFlush","ranges":[{"startOffset":11024,"endOffset":11101,"count":39},{"startOffset":11090,"endOffset":11093,"count":0}],"isBlockCoverage":true},{"functionName":"ZlibBase.flush","ranges":[{"startOffset":11556,"endOffset":11973,"count":0}],"isBlockCoverage":false},{"functionName":"ZlibBase.close","ranges":[{"startOffset":12005,"endOffset":12090,"count":0}],"isBlockCoverage":false},{"functionName":"ZlibBase._destroy","ranges":[{"startOffset":12125,"endOffset":12188,"count":22}],"isBlockCoverage":true},{"functionName":"ZlibBase._transform","ranges":[{"startOffset":12225,"endOffset":12772,"count":371},{"startOffset":12484,"endOffset":12526,"count":0},{"startOffset":12612,"endOffset":12655,"count":111},{"startOffset":12657,"endOffset":12724,"count":39}],"isBlockCoverage":true},{"functionName":"ZlibBase._processChunk","ranges":[{"startOffset":12812,"endOffset":13047,"count":0}],"isBlockCoverage":false},{"functionName":"processChunkSync","ranges":[{"startOffset":13052,"endOffset":15407,"count":0}],"isBlockCoverage":false},{"functionName":"processChunk","ranges":[{"startOffset":15411,"endOffset":16019,"count":371},{"startOffset":15511,"endOffset":15539,"count":0}],"isBlockCoverage":true},{"functionName":"processCallback","ranges":[{"startOffset":16023,"endOffset":18397,"count":445},{"startOffset":16393,"endOffset":16453,"count":0},{"startOffset":16690,"endOffset":16828,"count":418},{"startOffset":16828,"endOffset":16892,"count":27},{"startOffset":16918,"endOffset":16953,"count":0},{"startOffset":17058,"endOffset":17095,"count":371},{"startOffset":17097,"endOffset":17235,"count":74},{"startOffset":17266,"endOffset":17867,"count":74},{"startOffset":17867,"endOffset":17895,"count":371},{"startOffset":17895,"endOffset":18324,"count":0},{"startOffset":18324,"endOffset":18396,"count":371}],"isBlockCoverage":true},{"functionName":"_close","ranges":[{"startOffset":18401,"endOffset":18598,"count":22},{"startOffset":18533,"endOffset":18540,"count":0}],"isBlockCoverage":true},{"functionName":"Zlib","ranges":[{"startOffset":18803,"endOffset":21176,"count":22},{"startOffset":19290,"endOffset":19314,"count":0},{"startOffset":19375,"endOffset":19402,"count":0},{"startOffset":19436,"endOffset":19726,"count":0},{"startOffset":20218,"endOffset":20251,"count":0},{"startOffset":20253,"endOffset":20548,"count":0}],"isBlockCoverage":true},{"functionName":"paramsAfterFlushCallback","ranges":[{"startOffset":21534,"endOffset":21808,"count":0}],"isBlockCoverage":false},{"functionName":"params","ranges":[{"startOffset":21836,"endOffset":22258,"count":0}],"isBlockCoverage":false},{"functionName":"Deflate","ranges":[{"startOffset":22306,"endOffset":22434,"count":0}],"isBlockCoverage":false},{"functionName":"Inflate","ranges":[{"startOffset":22534,"endOffset":22662,"count":0}],"isBlockCoverage":false},{"functionName":"Gzip","ranges":[{"startOffset":22762,"endOffset":22878,"count":0}],"isBlockCoverage":false},{"functionName":"Gunzip","ranges":[{"startOffset":22972,"endOffset":23096,"count":22},{"startOffset":23035,"endOffset":23059,"count":0}],"isBlockCoverage":true},{"functionName":"DeflateRaw","ranges":[{"startOffset":23194,"endOffset":23393,"count":0}],"isBlockCoverage":false},{"functionName":"InflateRaw","ranges":[{"startOffset":23499,"endOffset":23639,"count":0}],"isBlockCoverage":false},{"functionName":"Unzip","ranges":[{"startOffset":23745,"endOffset":23865,"count":0}],"isBlockCoverage":false},{"functionName":"createConvenienceMethod","ranges":[{"startOffset":23961,"endOffset":24363,"count":18},{"startOffset":24021,"endOffset":24362,"count":9}],"isBlockCoverage":true},{"functionName":"syncBufferWrapper","ranges":[{"startOffset":24035,"endOffset":24138,"count":0}],"isBlockCoverage":false},{"functionName":"asyncBufferWrapper","ranges":[{"startOffset":24155,"endOffset":24359,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":24428,"endOffset":24505,"count":107},{"startOffset":24481,"endOffset":24497,"count":9},{"startOffset":24498,"endOffset":24501,"count":98}],"isBlockCoverage":true},{"functionName":"Brotli","ranges":[{"startOffset":24730,"endOffset":26063,"count":0}],"isBlockCoverage":false},{"functionName":"BrotliCompress","ranges":[{"startOffset":26161,"endOffset":26318,"count":0}],"isBlockCoverage":false},{"functionName":"BrotliDecompress","ranges":[{"startOffset":26436,"endOffset":26599,"count":0}],"isBlockCoverage":false},{"functionName":"createProperty","ranges":[{"startOffset":26723,"endOffset":26895,"count":9}],"isBlockCoverage":true},{"functionName":"value","ranges":[{"startOffset":26827,"endOffset":26886,"count":22}],"isBlockCoverage":true},{"functionName":"get","ranges":[{"startOffset":27110,"endOffset":27146,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":27151,"endOffset":27192,"count":0}],"isBlockCoverage":false}]},{"scriptId":"160","url":"_stream_transform.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":146,"count":1}],"isBlockCoverage":false}]},{"scriptId":"161","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/encoding/lib/encoding.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3148,"count":1}],"isBlockCoverage":true},{"functionName":"convert","ranges":[{"startOffset":621,"endOffset":1671,"count":0}],"isBlockCoverage":false},{"functionName":"convertIconv","ranges":[{"startOffset":1949,"endOffset":2152,"count":0}],"isBlockCoverage":false},{"functionName":"convertIconvLite","ranges":[{"startOffset":2414,"endOffset":2690,"count":0}],"isBlockCoverage":false},{"functionName":"checkEncoding","ranges":[{"startOffset":2815,"endOffset":3147,"count":0}],"isBlockCoverage":false}]},{"scriptId":"162","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/iconv-lite/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5120,"count":1},{"startOffset":4754,"endOffset":4776,"count":0},{"startOffset":4924,"endOffset":5119,"count":0}],"isBlockCoverage":true},{"functionName":"encode","ranges":[{"startOffset":585,"endOffset":877,"count":0}],"isBlockCoverage":false},{"functionName":"decode","ranges":[{"startOffset":894,"endOffset":1476,"count":0}],"isBlockCoverage":false},{"functionName":"encodingExists","ranges":[{"startOffset":1501,"endOffset":1639,"count":0}],"isBlockCoverage":false},{"functionName":"getCodec","ranges":[{"startOffset":1879,"endOffset":3589,"count":0}],"isBlockCoverage":false},{"functionName":"iconv._canonicalizeEncoding","ranges":[{"startOffset":3621,"endOffset":3804,"count":0}],"isBlockCoverage":false},{"functionName":"getEncoder","ranges":[{"startOffset":3825,"endOffset":4101,"count":0}],"isBlockCoverage":false},{"functionName":"getDecoder","ranges":[{"startOffset":4122,"endOffset":4411,"count":0}],"isBlockCoverage":false}]},{"scriptId":"163","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/safer-buffer/safer.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2110,"count":1},{"startOffset":163,"endOffset":294,"count":7},{"startOffset":200,"endOffset":208,"count":0},{"startOffset":236,"endOffset":255,"count":6},{"startOffset":257,"endOffset":265,"count":2},{"startOffset":265,"endOffset":294,"count":5},{"startOffset":346,"endOffset":487,"count":11},{"startOffset":383,"endOffset":391,"count":0},{"startOffset":420,"endOffset":448,"count":10},{"startOffset":450,"endOffset":458,"count":2},{"startOffset":458,"endOffset":487,"count":9},{"startOffset":583,"endOffset":1070,"count":0},{"startOffset":1090,"endOffset":1642,"count":0},{"startOffset":1673,"endOffset":1900,"count":0},{"startOffset":1924,"endOffset":2085,"count":0}],"isBlockCoverage":true},{"functionName":"Safer.from","ranges":[{"startOffset":600,"endOffset":1068,"count":0}],"isBlockCoverage":false},{"functionName":"Safer.alloc","ranges":[{"startOffset":1108,"endOffset":1640,"count":0}],"isBlockCoverage":false}]},{"scriptId":"164","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/iconv-lite/lib/bom-handling.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1109,"count":1}],"isBlockCoverage":true},{"functionName":"PrependBOMWrapper","ranges":[{"startOffset":79,"endOffset":179,"count":0}],"isBlockCoverage":false},{"functionName":"PrependBOMWrapper.write","ranges":[{"startOffset":217,"endOffset":358,"count":0}],"isBlockCoverage":false},{"functionName":"PrependBOMWrapper.end","ranges":[{"startOffset":394,"endOffset":439,"count":0}],"isBlockCoverage":false},{"functionName":"StripBOMWrapper","ranges":[{"startOffset":560,"endOffset":691,"count":0}],"isBlockCoverage":false},{"functionName":"StripBOMWrapper.write","ranges":[{"startOffset":727,"endOffset":1028,"count":0}],"isBlockCoverage":false},{"functionName":"StripBOMWrapper.end","ranges":[{"startOffset":1062,"endOffset":1107,"count":0}],"isBlockCoverage":false}]},{"scriptId":"165","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/iconv-lite/lib/streams.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3387,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":199,"endOffset":824,"count":1}],"isBlockCoverage":true},{"functionName":"encodeStream","ranges":[{"startOffset":277,"endOffset":414,"count":0}],"isBlockCoverage":false},{"functionName":"decodeStream","ranges":[{"startOffset":441,"endOffset":578,"count":0}],"isBlockCoverage":false},{"functionName":"IconvLiteEncoderStream","ranges":[{"startOffset":905,"endOffset":1136,"count":0}],"isBlockCoverage":false},{"functionName":"IconvLiteEncoderStream._transform","ranges":[{"startOffset":1312,"endOffset":1626,"count":0}],"isBlockCoverage":false},{"functionName":"IconvLiteEncoderStream._flush","ranges":[{"startOffset":1670,"endOffset":1841,"count":0}],"isBlockCoverage":false},{"functionName":"IconvLiteEncoderStream.collect","ranges":[{"startOffset":1886,"endOffset":2109,"count":0}],"isBlockCoverage":false},{"functionName":"IconvLiteDecoderStream","ranges":[{"startOffset":2189,"endOffset":2394,"count":0}],"isBlockCoverage":false},{"functionName":"IconvLiteDecoderStream._transform","ranges":[{"startOffset":2570,"endOffset":2898,"count":0}],"isBlockCoverage":false},{"functionName":"IconvLiteDecoderStream._flush","ranges":[{"startOffset":2942,"endOffset":3144,"count":0}],"isBlockCoverage":false},{"functionName":"IconvLiteDecoderStream.collect","ranges":[{"startOffset":3189,"endOffset":3385,"count":0}],"isBlockCoverage":false}]},{"scriptId":"166","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/iconv-lite/lib/extend-node.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8701,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":229,"endOffset":8700,"count":1},{"startOffset":564,"endOffset":602,"count":0}],"isBlockCoverage":true},{"functionName":"extendNodeEncodings","ranges":[{"startOffset":638,"endOffset":7624,"count":0}],"isBlockCoverage":false},{"functionName":"undoExtendNodeEncodings","ranges":[{"startOffset":7714,"endOffset":8698,"count":0}],"isBlockCoverage":false}]},{"scriptId":"167","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/encoding/lib/iconv-loader.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":274,"count":1}],"isBlockCoverage":true}]},{"scriptId":"168","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/xml2json/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":35,"count":1}],"isBlockCoverage":true}]},{"scriptId":"169","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/xml2json/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":110,"count":1}],"isBlockCoverage":true}]},{"scriptId":"170","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/xml2json/lib/xml2json.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5028,"count":1}],"isBlockCoverage":true},{"functionName":"startElement","ranges":[{"startOffset":306,"endOffset":1651,"count":8},{"startOffset":397,"endOffset":583,"count":0},{"startOffset":656,"endOffset":710,"count":0},{"startOffset":774,"endOffset":1196,"count":0},{"startOffset":1397,"endOffset":1546,"count":0}],"isBlockCoverage":true},{"functionName":"text","ranges":[{"startOffset":1653,"endOffset":1738,"count":24},{"startOffset":1722,"endOffset":1727,"count":7}],"isBlockCoverage":true},{"functionName":"endElement","ranges":[{"startOffset":1740,"endOffset":2682,"count":8},{"startOffset":1797,"endOffset":2092,"count":7},{"startOffset":1825,"endOffset":1897,"count":0},{"startOffset":1929,"endOffset":2021,"count":0},{"startOffset":2131,"endOffset":2174,"count":4},{"startOffset":2382,"endOffset":2425,"count":3},{"startOffset":2427,"endOffset":2643,"count":3},{"startOffset":2478,"endOffset":2558,"count":0}],"isBlockCoverage":true},{"functionName":"coerce","ranges":[{"startOffset":2684,"endOffset":3138,"count":7},{"startOffset":2737,"endOffset":2759,"count":0},{"startOffset":2790,"endOffset":3137,"count":0}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":3861,"endOffset":5026,"count":1},{"startOffset":3912,"endOffset":3917,"count":0},{"startOffset":4682,"endOffset":4773,"count":0},{"startOffset":4826,"endOffset":5025,"count":0}],"isBlockCoverage":true}]},{"scriptId":"171","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/node-expat/lib/node-expat.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2337,"count":1}],"isBlockCoverage":true},{"functionName":"Parser","ranges":[{"startOffset":139,"endOffset":317,"count":1}],"isBlockCoverage":true},{"functionName":"Parser._getNewParser","ranges":[{"startOffset":382,"endOffset":445,"count":1}],"isBlockCoverage":true},{"functionName":"Parser.parse","ranges":[{"startOffset":472,"endOffset":540,"count":1}],"isBlockCoverage":true},{"functionName":"Parser.setEncoding","ranges":[{"startOffset":573,"endOffset":671,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.setUnknownEncoding","ranges":[{"startOffset":711,"endOffset":792,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.getError","ranges":[{"startOffset":822,"endOffset":869,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.stop","ranges":[{"startOffset":894,"endOffset":937,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.pause","ranges":[{"startOffset":963,"endOffset":999,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.resume","ranges":[{"startOffset":1026,"endOffset":1071,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.destroy","ranges":[{"startOffset":1100,"endOffset":1149,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.destroySoon","ranges":[{"startOffset":1182,"endOffset":1214,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.write","ranges":[{"startOffset":1241,"endOffset":1495,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.end","ranges":[{"startOffset":1520,"endOffset":1802,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.reset","ranges":[{"startOffset":1829,"endOffset":1873,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.getCurrentLineNumber","ranges":[{"startOffset":1914,"endOffset":1973,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.getCurrentColumnNumber","ranges":[{"startOffset":2016,"endOffset":2077,"count":0}],"isBlockCoverage":false},{"functionName":"Parser.getCurrentByteIndex","ranges":[{"startOffset":2117,"endOffset":2175,"count":0}],"isBlockCoverage":false},{"functionName":"exports.createParser","ranges":[{"startOffset":2225,"endOffset":2336,"count":0}],"isBlockCoverage":false}]},{"scriptId":"172","url":"util.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":8381,"count":1}],"isBlockCoverage":false},{"functionName":"isBoolean","ranges":[{"startOffset":2141,"endOffset":2205,"count":0}],"isBlockCoverage":false},{"functionName":"isNull","ranges":[{"startOffset":2209,"endOffset":2258,"count":0}],"isBlockCoverage":false},{"functionName":"isNullOrUndefined","ranges":[{"startOffset":2262,"endOffset":2343,"count":0}],"isBlockCoverage":false},{"functionName":"isNumber","ranges":[{"startOffset":2347,"endOffset":2409,"count":0}],"isBlockCoverage":false},{"functionName":"isString","ranges":[{"startOffset":2413,"endOffset":2475,"count":0}],"isBlockCoverage":false},{"functionName":"isSymbol","ranges":[{"startOffset":2479,"endOffset":2541,"count":0}],"isBlockCoverage":false},{"functionName":"isUndefined","ranges":[{"startOffset":2545,"endOffset":2604,"count":0}],"isBlockCoverage":false},{"functionName":"isObject","ranges":[{"startOffset":2608,"endOffset":2686,"count":0}],"isBlockCoverage":false},{"functionName":"isError","ranges":[{"startOffset":2690,"endOffset":2795,"count":0}],"isBlockCoverage":false},{"functionName":"isFunction","ranges":[{"startOffset":2799,"endOffset":2865,"count":0}],"isBlockCoverage":false},{"functionName":"isPrimitive","ranges":[{"startOffset":2869,"endOffset":2991,"count":0}],"isBlockCoverage":false},{"functionName":"pad","ranges":[{"startOffset":2995,"endOffset":3056,"count":0}],"isBlockCoverage":false},{"functionName":"timestamp","ranges":[{"startOffset":3201,"endOffset":3437,"count":0}],"isBlockCoverage":false},{"functionName":"log","ranges":[{"startOffset":3527,"endOffset":3685,"count":0}],"isBlockCoverage":false},{"functionName":"inherits","ranges":[{"startOffset":4438,"endOffset":5072,"count":1},{"startOffset":4526,"endOffset":4583,"count":0},{"startOffset":4645,"endOffset":4712,"count":0},{"startOffset":4757,"endOffset":4890,"count":0}],"isBlockCoverage":true},{"functionName":"_extend","ranges":[{"startOffset":5076,"endOffset":5374,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5424,"endOffset":5858,"count":0}],"isBlockCoverage":false},{"functionName":"callbackify","ranges":[{"startOffset":5864,"endOffset":7277,"count":0}],"isBlockCoverage":false},{"functionName":"getSystemErrorName","ranges":[{"startOffset":7281,"endOffset":7503,"count":0}],"isBlockCoverage":false},{"functionName":"isDeepStrictEqual","ranges":[{"startOffset":7902,"endOffset":8113,"count":0}],"isBlockCoverage":false}]},{"scriptId":"173","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/bindings/bindings.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5984,"count":1},{"startOffset":363,"endOffset":383,"count":0},{"startOffset":384,"endOffset":406,"count":0}],"isBlockCoverage":true},{"functionName":"exists","ranges":[{"startOffset":215,"endOffset":361,"count":3},{"startOffset":287,"endOffset":332,"count":2},{"startOffset":332,"endOffset":360,"count":1}],"isBlockCoverage":true},{"functionName":"bindings","ranges":[{"startOffset":2304,"endOffset":3825,"count":1},{"startOffset":2419,"endOffset":2456,"count":0},{"startOffset":2994,"endOffset":3019,"count":0},{"startOffset":3137,"endOffset":3608,"count":3},{"startOffset":3301,"endOffset":3325,"count":0},{"startOffset":3366,"endOffset":3418,"count":1},{"startOffset":3418,"endOffset":3604,"count":2},{"startOffset":3470,"endOffset":3528,"count":0},{"startOffset":3529,"endOffset":3570,"count":0},{"startOffset":3572,"endOffset":3598,"count":0},{"startOffset":3608,"endOffset":3824,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":2526,"endOffset":2588,"count":8},{"startOffset":2562,"endOffset":2584,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3193,"endOffset":3243,"count":11},{"startOffset":3230,"endOffset":3234,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3707,"endOffset":3763,"count":0}],"isBlockCoverage":false},{"functionName":"getFileName","ranges":[{"startOffset":4112,"endOffset":4998,"count":1},{"startOffset":4931,"endOffset":4976,"count":0}],"isBlockCoverage":true},{"functionName":"Error.prepareStackTrace","ranges":[{"startOffset":4317,"endOffset":4624,"count":1},{"startOffset":4382,"endOffset":4620,"count":3},{"startOffset":4457,"endOffset":4614,"count":1},{"startOffset":4485,"endOffset":4571,"count":0}],"isBlockCoverage":true},{"functionName":"getRoot","ranges":[{"startOffset":5302,"endOffset":5982,"count":1},{"startOffset":5379,"endOffset":5980,"count":2},{"startOffset":5402,"endOffset":5498,"count":0},{"startOffset":5548,"endOffset":5590,"count":1},{"startOffset":5597,"endOffset":5718,"count":1},{"startOffset":5718,"endOffset":5902,"count":0},{"startOffset":5902,"endOffset":5980,"count":1}],"isBlockCoverage":true}]},{"scriptId":"174","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/file-uri-to-path/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1721,"count":1},{"startOffset":64,"endOffset":70,"count":0}],"isBlockCoverage":true},{"functionName":"fileUriToPath","ranges":[{"startOffset":239,"endOffset":1720,"count":0}],"isBlockCoverage":false}]},{"scriptId":"175","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/xml2json/lib/sanitize.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":969,"count":1}],"isBlockCoverage":true},{"functionName":"escapeRegExp","ranges":[{"startOffset":455,"endOffset":554,"count":0}],"isBlockCoverage":false},{"functionName":"sanitize","ranges":[{"startOffset":575,"endOffset":968,"count":0}],"isBlockCoverage":false}]},{"scriptId":"176","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":10402,"count":1}],"isBlockCoverage":true},{"functionName":"internals.root","ranges":[{"startOffset":559,"endOffset":10363,"count":1}],"isBlockCoverage":true},{"functionName":"root.any","ranges":[{"startOffset":647,"endOffset":687,"count":0}],"isBlockCoverage":false},{"functionName":"root.alternatives.root.alt","ranges":[{"startOffset":725,"endOffset":873,"count":1},{"startOffset":842,"endOffset":866,"count":0}],"isBlockCoverage":true},{"functionName":"root.array","ranges":[{"startOffset":893,"endOffset":945,"count":0}],"isBlockCoverage":false},{"functionName":"root.boolean.root.bool","ranges":[{"startOffset":979,"endOffset":1033,"count":16}],"isBlockCoverage":true},{"functionName":"root.binary","ranges":[{"startOffset":1054,"endOffset":1107,"count":0}],"isBlockCoverage":false},{"functionName":"root.date","ranges":[{"startOffset":1126,"endOffset":1177,"count":0}],"isBlockCoverage":false},{"functionName":"root.func","ranges":[{"startOffset":1196,"endOffset":1257,"count":0}],"isBlockCoverage":false},{"functionName":"root.number","ranges":[{"startOffset":1278,"endOffset":1331,"count":0}],"isBlockCoverage":false},{"functionName":"root.object","ranges":[{"startOffset":1352,"endOffset":1483,"count":6},{"startOffset":1399,"endOffset":1457,"count":2},{"startOffset":1458,"endOffset":1476,"count":4}],"isBlockCoverage":true},{"functionName":"root.string","ranges":[{"startOffset":1504,"endOffset":1557,"count":1}],"isBlockCoverage":true},{"functionName":"root.ref","ranges":[{"startOffset":1575,"endOffset":1645,"count":0}],"isBlockCoverage":false},{"functionName":"root.isRef","ranges":[{"startOffset":1665,"endOffset":1719,"count":0}],"isBlockCoverage":false},{"functionName":"root.validate","ranges":[{"startOffset":1742,"endOffset":2254,"count":1},{"startOffset":1905,"endOffset":1911,"count":0},{"startOffset":1972,"endOffset":1975,"count":0},{"startOffset":2007,"endOffset":2068,"count":0},{"startOffset":2106,"endOffset":2120,"count":0}],"isBlockCoverage":true},{"functionName":"root.describe","ranges":[{"startOffset":2277,"endOffset":2407,"count":0}],"isBlockCoverage":false},{"functionName":"root.compile","ranges":[{"startOffset":2429,"endOffset":2700,"count":1},{"startOffset":2522,"endOffset":2694,"count":0}],"isBlockCoverage":true},{"functionName":"root.assert","ranges":[{"startOffset":2721,"endOffset":2809,"count":0}],"isBlockCoverage":false},{"functionName":"root.attempt","ranges":[{"startOffset":2831,"endOffset":3329,"count":0}],"isBlockCoverage":false},{"functionName":"root.reach","ranges":[{"startOffset":3349,"endOffset":4010,"count":0}],"isBlockCoverage":false},{"functionName":"root.lazy","ranges":[{"startOffset":4029,"endOffset":4080,"count":0}],"isBlockCoverage":false},{"functionName":"root.extend","ranges":[{"startOffset":4101,"endOffset":9419,"count":0}],"isBlockCoverage":false}]},{"scriptId":"177","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/hoek/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":24467,"count":1}],"isBlockCoverage":true},{"functionName":"exports.clone","ranges":[{"startOffset":252,"endOffset":1761,"count":313},{"startOffset":308,"endOffset":331,"count":205},{"startOffset":333,"endOffset":361,"count":108},{"startOffset":361,"endOffset":379,"count":205},{"startOffset":379,"endOffset":391,"count":123},{"startOffset":444,"endOffset":474,"count":0},{"startOffset":474,"endOffset":549,"count":205},{"startOffset":549,"endOffset":1126,"count":123},{"startOffset":585,"endOffset":634,"count":0},{"startOffset":673,"endOffset":730,"count":0},{"startOffset":771,"endOffset":820,"count":0},{"startOffset":950,"endOffset":996,"count":0},{"startOffset":1126,"endOffset":1190,"count":82},{"startOffset":1190,"endOffset":1739,"count":205},{"startOffset":1341,"endOffset":1733,"count":176},{"startOffset":1549,"endOffset":1629,"count":0},{"startOffset":1739,"endOffset":1760,"count":205}],"isBlockCoverage":true},{"functionName":"exports.merge","ranges":[{"startOffset":1936,"endOffset":3997,"count":0}],"isBlockCoverage":false},{"functionName":"exports.applyToDefaults","ranges":[{"startOffset":4071,"endOffset":4749,"count":0}],"isBlockCoverage":false},{"functionName":"exports.cloneWithShallow","ranges":[{"startOffset":4852,"endOffset":5250,"count":0}],"isBlockCoverage":false},{"functionName":"internals.store","ranges":[{"startOffset":5272,"endOffset":5609,"count":0}],"isBlockCoverage":false},{"functionName":"internals.restore","ranges":[{"startOffset":5633,"endOffset":5896,"count":0}],"isBlockCoverage":false},{"functionName":"internals.reachSet","ranges":[{"startOffset":5921,"endOffset":6197,"count":0}],"isBlockCoverage":false},{"functionName":"exports.applyToDefaultsWithShallow","ranges":[{"startOffset":6348,"endOffset":7305,"count":0}],"isBlockCoverage":false},{"functionName":"exports.deepEqual","ranges":[{"startOffset":7365,"endOffset":10278,"count":0}],"isBlockCoverage":false},{"functionName":"exports.unique","ranges":[{"startOffset":10337,"endOffset":10749,"count":0}],"isBlockCoverage":false},{"functionName":"exports.mapToObject","ranges":[{"startOffset":10805,"endOffset":11143,"count":2},{"startOffset":10846,"endOffset":10874,"count":0},{"startOffset":10939,"endOffset":11124,"count":4},{"startOffset":10958,"endOffset":11059,"count":0}],"isBlockCoverage":true},{"functionName":"exports.intersect","ranges":[{"startOffset":11214,"endOffset":11743,"count":0}],"isBlockCoverage":false},{"functionName":"exports.contain","ranges":[{"startOffset":11811,"endOffset":15127,"count":0}],"isBlockCoverage":false},{"functionName":"exports.flatten","ranges":[{"startOffset":15167,"endOffset":15457,"count":13},{"startOffset":15221,"endOffset":15226,"count":9},{"startOffset":15272,"endOffset":15435,"count":22},{"startOffset":15311,"endOffset":15369,"count":4},{"startOffset":15369,"endOffset":15429,"count":18}],"isBlockCoverage":true},{"functionName":"exports.reach","ranges":[{"startOffset":15557,"endOffset":16747,"count":0}],"isBlockCoverage":false},{"functionName":"exports.reachTemplate","ranges":[{"startOffset":16775,"endOffset":17008,"count":0}],"isBlockCoverage":false},{"functionName":"exports.formatStack","ranges":[{"startOffset":17034,"endOffset":17312,"count":0}],"isBlockCoverage":false},{"functionName":"exports.formatTrace","ranges":[{"startOffset":17338,"endOffset":17593,"count":0}],"isBlockCoverage":false},{"functionName":"exports.callStack","ranges":[{"startOffset":17617,"endOffset":18159,"count":0}],"isBlockCoverage":false},{"functionName":"exports.displayStack","ranges":[{"startOffset":18186,"endOffset":18321,"count":0}],"isBlockCoverage":false},{"functionName":"exports.abort","ranges":[{"startOffset":18371,"endOffset":18717,"count":0}],"isBlockCoverage":false},{"functionName":"exports.assert","ranges":[{"startOffset":18738,"endOffset":19374,"count":194},{"startOffset":18828,"endOffset":18893,"count":0},{"startOffset":18895,"endOffset":19370,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":19188,"endOffset":19313,"count":0}],"isBlockCoverage":false},{"functionName":"exports.Timer","ranges":[{"startOffset":19394,"endOffset":19445,"count":0}],"isBlockCoverage":false},{"functionName":"exports.Timer.reset","ranges":[{"startOffset":19481,"endOffset":19523,"count":0}],"isBlockCoverage":false},{"functionName":"exports.Timer.elapsed","ranges":[{"startOffset":19561,"endOffset":19610,"count":0}],"isBlockCoverage":false},{"functionName":"exports.Bench","ranges":[{"startOffset":19630,"endOffset":19681,"count":0}],"isBlockCoverage":false},{"functionName":"exports.Bench.reset","ranges":[{"startOffset":19717,"endOffset":19768,"count":0}],"isBlockCoverage":false},{"functionName":"exports.Bench.elapsed","ranges":[{"startOffset":19806,"endOffset":19864,"count":0}],"isBlockCoverage":false},{"functionName":"exports.Bench.now","ranges":[{"startOffset":19888,"endOffset":19979,"count":0}],"isBlockCoverage":false},{"functionName":"exports.escapeRegex","ranges":[{"startOffset":20046,"endOffset":20185,"count":0}],"isBlockCoverage":false},{"functionName":"exports.base64urlEncode","ranges":[{"startOffset":20247,"endOffset":20571,"count":0}],"isBlockCoverage":false},{"functionName":"exports.base64urlDecode","ranges":[{"startOffset":20633,"endOffset":20972,"count":0}],"isBlockCoverage":false},{"functionName":"exports.escapeHeaderAttribute","ranges":[{"startOffset":21058,"endOffset":21444,"count":0}],"isBlockCoverage":false},{"functionName":"exports.escapeHtml","ranges":[{"startOffset":21469,"endOffset":21529,"count":0}],"isBlockCoverage":false},{"functionName":"exports.escapeJavaScript","ranges":[{"startOffset":21560,"endOffset":21626,"count":0}],"isBlockCoverage":false},{"functionName":"exports.escapeJson","ranges":[{"startOffset":21650,"endOffset":21710,"count":0}],"isBlockCoverage":false},{"functionName":"exports.nextTick","ranges":[{"startOffset":21732,"endOffset":21907,"count":0}],"isBlockCoverage":false},{"functionName":"exports.once","ranges":[{"startOffset":21926,"endOffset":22221,"count":0}],"isBlockCoverage":false},{"functionName":"exports.ignore","ranges":[{"startOffset":22286,"endOffset":22301,"count":0}],"isBlockCoverage":false},{"functionName":"exports.transform","ranges":[{"startOffset":22393,"endOffset":23658,"count":0}],"isBlockCoverage":false},{"functionName":"exports.uniqueFilename","ranges":[{"startOffset":23687,"endOffset":24029,"count":0}],"isBlockCoverage":false},{"functionName":"exports.stringify","ranges":[{"startOffset":24053,"endOffset":24226,"count":0}],"isBlockCoverage":false},{"functionName":"exports.shallow","ranges":[{"startOffset":24248,"endOffset":24465,"count":0}],"isBlockCoverage":false}]},{"scriptId":"178","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/hoek/lib/escape.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":3397,"count":1}],"isBlockCoverage":true},{"functionName":"exports.escapeJavaScript","ranges":[{"startOffset":88,"endOffset":471,"count":0}],"isBlockCoverage":false},{"functionName":"exports.escapeHtml","ranges":[{"startOffset":496,"endOffset":873,"count":0}],"isBlockCoverage":false},{"functionName":"exports.escapeJson","ranges":[{"startOffset":898,"endOffset":1591,"count":0}],"isBlockCoverage":false},{"functionName":"internals.escapeJavaScriptChar","ranges":[{"startOffset":1628,"endOffset":1886,"count":0}],"isBlockCoverage":false},{"functionName":"internals.escapeHtmlChar","ranges":[{"startOffset":1917,"endOffset":2295,"count":0}],"isBlockCoverage":false},{"functionName":"internals.padLeft","ranges":[{"startOffset":2319,"endOffset":2422,"count":0}],"isBlockCoverage":false},{"functionName":"internals.isSafe","ranges":[{"startOffset":2445,"endOffset":2540,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":2802,"endOffset":3392,"count":1},{"startOffset":2874,"endOffset":3372,"count":91},{"startOffset":2899,"endOffset":2960,"count":65},{"startOffset":2949,"endOffset":2959,"count":32},{"startOffset":2961,"endOffset":3011,"count":39},{"startOffset":3000,"endOffset":3010,"count":23},{"startOffset":3012,"endOffset":3050,"count":29},{"startOffset":3051,"endOffset":3103,"count":28},{"startOffset":3104,"endOffset":3152,"count":27},{"startOffset":3153,"endOffset":3201,"count":26},{"startOffset":3202,"endOffset":3250,"count":25},{"startOffset":3251,"endOffset":3299,"count":24},{"startOffset":3301,"endOffset":3366,"count":68}],"isBlockCoverage":true}]},{"scriptId":"179","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/any.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":26267,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports.internals.Any","ranges":[{"startOffset":579,"endOffset":1666,"count":11},{"startOffset":616,"endOffset":636,"count":1}],"isBlockCoverage":true},{"functionName":"createError","ranges":[{"startOffset":1672,"endOffset":1797,"count":0}],"isBlockCoverage":false},{"functionName":"checkOptions","ranges":[{"startOffset":1803,"endOffset":2037,"count":1},{"startOffset":1958,"endOffset":2031,"count":0}],"isBlockCoverage":true},{"functionName":"clone","ranges":[{"startOffset":2043,"endOffset":2998,"count":41},{"startOffset":2843,"endOffset":2971,"count":116},{"startOffset":2927,"endOffset":2953,"count":95},{"startOffset":2954,"endOffset":2960,"count":21}],"isBlockCoverage":true},{"functionName":"concat","ranges":[{"startOffset":3004,"endOffset":6066,"count":0}],"isBlockCoverage":false},{"functionName":"_test","ranges":[{"startOffset":6072,"endOffset":6221,"count":9}],"isBlockCoverage":true},{"functionName":"options","ranges":[{"startOffset":6227,"endOffset":6483,"count":0}],"isBlockCoverage":false},{"functionName":"strict","ranges":[{"startOffset":6489,"endOffset":6689,"count":2},{"startOffset":6651,"endOffset":6662,"count":0}],"isBlockCoverage":true},{"functionName":"raw","ranges":[{"startOffset":6695,"endOffset":6829,"count":0}],"isBlockCoverage":false},{"functionName":"error","ranges":[{"startOffset":6835,"endOffset":7028,"count":0}],"isBlockCoverage":false},{"functionName":"_allow","ranges":[{"startOffset":7034,"endOffset":7412,"count":1},{"startOffset":7170,"endOffset":7406,"count":4}],"isBlockCoverage":true},{"functionName":"allow","ranges":[{"startOffset":7418,"endOffset":7530,"count":1}],"isBlockCoverage":true},{"functionName":"valid","ranges":[{"startOffset":7536,"endOffset":7664,"count":1}],"isBlockCoverage":true},{"functionName":"invalid","ranges":[{"startOffset":7670,"endOffset":8101,"count":0}],"isBlockCoverage":false},{"functionName":"required","ranges":[{"startOffset":8107,"endOffset":8222,"count":2}],"isBlockCoverage":true},{"functionName":"optional","ranges":[{"startOffset":8228,"endOffset":8343,"count":0}],"isBlockCoverage":false},{"functionName":"forbidden","ranges":[{"startOffset":8350,"endOffset":8467,"count":0}],"isBlockCoverage":false},{"functionName":"strip","ranges":[{"startOffset":8474,"endOffset":8577,"count":0}],"isBlockCoverage":false},{"functionName":"applyFunctionToChildren","ranges":[{"startOffset":8583,"endOffset":9074,"count":0}],"isBlockCoverage":false},{"functionName":"default","ranges":[{"startOffset":9080,"endOffset":9680,"count":6},{"startOffset":9151,"endOffset":9183,"count":0},{"startOffset":9185,"endOffset":9547,"count":0}],"isBlockCoverage":true},{"functionName":"empty","ranges":[{"startOffset":9686,"endOffset":9845,"count":0}],"isBlockCoverage":false},{"functionName":"when","ranges":[{"startOffset":9851,"endOffset":10623,"count":0}],"isBlockCoverage":false},{"functionName":"description","ranges":[{"startOffset":10629,"endOffset":10840,"count":0}],"isBlockCoverage":false},{"functionName":"notes","ranges":[{"startOffset":10846,"endOffset":11097,"count":0}],"isBlockCoverage":false},{"functionName":"tags","ranges":[{"startOffset":11103,"endOffset":11345,"count":0}],"isBlockCoverage":false},{"functionName":"meta","ranges":[{"startOffset":11351,"endOffset":11538,"count":0}],"isBlockCoverage":false},{"functionName":"example","ranges":[{"startOffset":11544,"endOffset":11895,"count":0}],"isBlockCoverage":false},{"functionName":"unit","ranges":[{"startOffset":11901,"endOffset":12096,"count":0}],"isBlockCoverage":false},{"functionName":"_validate","ranges":[{"startOffset":12102,"endOffset":17812,"count":21},{"startOffset":12246,"endOffset":12295,"count":2},{"startOffset":12326,"endOffset":12410,"count":1},{"startOffset":13932,"endOffset":14295,"count":0},{"startOffset":14327,"endOffset":14398,"count":0},{"startOffset":14400,"endOffset":14442,"count":0},{"startOffset":14627,"endOffset":14948,"count":14},{"startOffset":14705,"endOffset":14741,"count":2},{"startOffset":14777,"endOffset":14803,"count":0},{"startOffset":14805,"endOffset":14856,"count":0},{"startOffset":14958,"endOffset":15409,"count":0},{"startOffset":15409,"endOffset":15558,"count":7},{"startOffset":15558,"endOffset":15598,"count":0},{"startOffset":15598,"endOffset":15680,"count":7},{"startOffset":15680,"endOffset":15980,"count":0},{"startOffset":15980,"endOffset":17008,"count":7},{"startOffset":16152,"endOffset":16350,"count":0},{"startOffset":16390,"endOffset":16998,"count":2},{"startOffset":16593,"endOffset":16649,"count":0},{"startOffset":16739,"endOffset":16984,"count":0},{"startOffset":17008,"endOffset":17087,"count":7},{"startOffset":17087,"endOffset":17318,"count":0},{"startOffset":17318,"endOffset":17407,"count":7},{"startOffset":17407,"endOffset":17780,"count":0},{"startOffset":17780,"endOffset":17811,"count":7}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":12460,"endOffset":13903,"count":21},{"startOffset":12577,"endOffset":12670,"count":7},{"startOffset":12628,"endOffset":12643,"count":0},{"startOffset":12670,"endOffset":13753,"count":14},{"startOffset":12716,"endOffset":12783,"count":0},{"startOffset":12841,"endOffset":12937,"count":0},{"startOffset":13005,"endOffset":13083,"count":0},{"startOffset":13085,"endOffset":13646,"count":0},{"startOffset":13863,"endOffset":13871,"count":0}],"isBlockCoverage":true},{"functionName":"_validateWithOptions","ranges":[{"startOffset":17818,"endOffset":18292,"count":2},{"startOffset":17889,"endOffset":17940,"count":1},{"startOffset":18168,"endOffset":18230,"count":0}],"isBlockCoverage":true},{"functionName":"validate","ranges":[{"startOffset":18298,"endOffset":18533,"count":1},{"startOffset":18379,"endOffset":18458,"count":0}],"isBlockCoverage":true},{"functionName":"describe","ranges":[{"startOffset":18539,"endOffset":22465,"count":0}],"isBlockCoverage":false},{"functionName":"label","ranges":[{"startOffset":22471,"endOffset":22675,"count":0}],"isBlockCoverage":false},{"functionName":"_getLabel","ranges":[{"startOffset":22681,"endOffset":22745,"count":0}],"isBlockCoverage":false},{"functionName":"internals._try","ranges":[{"startOffset":23140,"endOffset":23351,"count":0}],"isBlockCoverage":false},{"functionName":"internals.Set","ranges":[{"startOffset":23384,"endOffset":23430,"count":22}],"isBlockCoverage":true},{"functionName":"add","ranges":[{"startOffset":23436,"endOffset":23718,"count":7},{"startOffset":23525,"endOffset":23557,"count":0},{"startOffset":23591,"endOffset":23680,"count":4}],"isBlockCoverage":true},{"functionName":"merge","ranges":[{"startOffset":23724,"endOffset":23955,"count":0}],"isBlockCoverage":false},{"functionName":"remove","ranges":[{"startOffset":23961,"endOffset":24047,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":24015,"endOffset":24039,"count":4}],"isBlockCoverage":true},{"functionName":"has","ranges":[{"startOffset":24053,"endOffset":25198,"count":25},{"startOffset":24147,"endOffset":25169,"count":7},{"startOffset":24210,"endOffset":24229,"count":0},{"startOffset":24231,"endOffset":24390,"count":0},{"startOffset":24623,"endOffset":24672,"count":0},{"startOffset":24755,"endOffset":24778,"count":0},{"startOffset":24779,"endOffset":24816,"count":0},{"startOffset":24854,"endOffset":24882,"count":0},{"startOffset":24883,"endOffset":24928,"count":0},{"startOffset":24977,"endOffset":25001,"count":0},{"startOffset":25002,"endOffset":25033,"count":0},{"startOffset":25034,"endOffset":25089,"count":0},{"startOffset":25092,"endOffset":25145,"count":0}],"isBlockCoverage":true},{"functionName":"values","ranges":[{"startOffset":25204,"endOffset":25595,"count":0}],"isBlockCoverage":false},{"functionName":"internals.concatSettings","ranges":[{"startOffset":25629,"endOffset":26265,"count":44},{"startOffset":25712,"endOffset":25730,"count":41},{"startOffset":25732,"endOffset":25761,"count":41},{"startOffset":25761,"endOffset":25861,"count":3},{"startOffset":25861,"endOffset":26246,"count":2},{"startOffset":25953,"endOffset":26240,"count":1},{"startOffset":26024,"endOffset":26067,"count":0},{"startOffset":26125,"endOffset":26230,"count":0},{"startOffset":26246,"endOffset":26264,"count":3}],"isBlockCoverage":true}]},{"scriptId":"180","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/ref.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1117,"count":1}],"isBlockCoverage":true},{"functionName":"exports.create","ranges":[{"startOffset":127,"endOffset":887,"count":0}],"isBlockCoverage":false},{"functionName":"exports.isRef","ranges":[{"startOffset":907,"endOffset":977,"count":31},{"startOffset":962,"endOffset":974,"count":0}],"isBlockCoverage":true},{"functionName":"exports.push","ranges":[{"startOffset":996,"endOffset":1115,"count":10},{"startOffset":1048,"endOffset":1073,"count":0},{"startOffset":1075,"endOffset":1113,"count":0}],"isBlockCoverage":true}]},{"scriptId":"181","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/errors.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9221,"count":1}],"isBlockCoverage":true},{"functionName":"internals.stringify","ranges":[{"startOffset":171,"endOffset":875,"count":0}],"isBlockCoverage":false},{"functionName":"exports.Err","ranges":[{"startOffset":905,"endOffset":1184,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":1190,"endOffset":2448,"count":0}],"isBlockCoverage":false},{"functionName":"exports.create","ranges":[{"startOffset":2472,"endOffset":2590,"count":0}],"isBlockCoverage":false},{"functionName":"exports.process","ranges":[{"startOffset":2612,"endOffset":4164,"count":2},{"startOffset":2657,"endOffset":2674,"count":0},{"startOffset":2704,"endOffset":4163,"count":0}],"isBlockCoverage":true},{"functionName":"processErrors","ranges":[{"startOffset":2803,"endOffset":3850,"count":0}],"isBlockCoverage":false},{"functionName":"internals.getPath","ranges":[{"startOffset":4188,"endOffset":4250,"count":0}],"isBlockCoverage":false},{"functionName":"internals.safeStringify","ranges":[{"startOffset":4315,"endOffset":4406,"count":0}],"isBlockCoverage":false},{"functionName":"internals.serializer","ranges":[{"startOffset":4432,"endOffset":5965,"count":0}],"isBlockCoverage":false},{"functionName":"internals.annotate","ranges":[{"startOffset":5990,"endOffset":9219,"count":0}],"isBlockCoverage":false}]},{"scriptId":"182","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/language.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6431,"count":1}],"isBlockCoverage":true}]},{"scriptId":"183","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/cast.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1663,"count":1}],"isBlockCoverage":true},{"functionName":"exports.schema","ranges":[{"startOffset":402,"endOffset":1577,"count":44},{"startOffset":457,"endOffset":484,"count":1},{"startOffset":520,"endOffset":548,"count":1},{"startOffset":590,"endOffset":612,"count":1},{"startOffset":723,"endOffset":761,"count":40},{"startOffset":761,"endOffset":798,"count":4},{"startOffset":798,"endOffset":855,"count":3},{"startOffset":855,"endOffset":895,"count":1},{"startOffset":895,"endOffset":957,"count":0},{"startOffset":957,"endOffset":995,"count":1},{"startOffset":995,"endOffset":1055,"count":0},{"startOffset":1055,"endOffset":1108,"count":1},{"startOffset":1108,"endOffset":1576,"count":0}],"isBlockCoverage":true},{"functionName":"exports.ref","ranges":[{"startOffset":1595,"endOffset":1661,"count":0}],"isBlockCoverage":false}]},{"scriptId":"184","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/date.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5277,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":622,"endOffset":772,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":695,"endOffset":769,"count":0}],"isBlockCoverage":false},{"functionName":"internals.Date","ranges":[{"startOffset":820,"endOffset":888,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":894,"endOffset":1996,"count":0}],"isBlockCoverage":false},{"functionName":"toDate","ranges":[{"startOffset":2009,"endOffset":3119,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":3125,"endOffset":3380,"count":0}],"isBlockCoverage":false},{"functionName":"iso","ranges":[{"startOffset":3386,"endOffset":3501,"count":0}],"isBlockCoverage":false},{"functionName":"timestamp","ranges":[{"startOffset":3507,"endOffset":3876,"count":0}],"isBlockCoverage":false},{"functionName":"_isIsoDate","ranges":[{"startOffset":3882,"endOffset":3954,"count":0}],"isBlockCoverage":false},{"functionName":"internals.compare","ranges":[{"startOffset":3980,"endOffset":5056,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":4019,"endOffset":5053,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5114,"endOffset":5144,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":5203,"endOffset":5233,"count":0}],"isBlockCoverage":false}]},{"scriptId":"185","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/moment/moment.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":173902,"count":1}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":136,"endOffset":359,"count":1},{"startOffset":259,"endOffset":357,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":367,"endOffset":173897,"count":1},{"startOffset":3501,"endOffset":3841,"count":0},{"startOffset":11764,"endOffset":12025,"count":0},{"startOffset":25337,"endOffset":25605,"count":0},{"startOffset":148580,"endOffset":148632,"count":6},{"startOffset":148792,"endOffset":148838,"count":9}],"isBlockCoverage":true},{"functionName":"hooks","ranges":[{"startOffset":423,"endOffset":499,"count":0}],"isBlockCoverage":false},{"functionName":"setHookCallback","ranges":[{"startOffset":616,"endOffset":691,"count":1}],"isBlockCoverage":true},{"functionName":"isArray","ranges":[{"startOffset":697,"endOffset":865,"count":1}],"isBlockCoverage":true},{"functionName":"isObject","ranges":[{"startOffset":871,"endOffset":1129,"count":15},{"startOffset":1038,"endOffset":1112,"count":13}],"isBlockCoverage":true},{"functionName":"hasOwnProp","ranges":[{"startOffset":1135,"endOffset":1227,"count":122}],"isBlockCoverage":true},{"functionName":"isObjectEmpty","ranges":[{"startOffset":1233,"endOffset":1583,"count":0}],"isBlockCoverage":false},{"functionName":"isUndefined","ranges":[{"startOffset":1589,"endOffset":1657,"count":2}],"isBlockCoverage":true},{"functionName":"isNumber","ranges":[{"startOffset":1663,"endOffset":1836,"count":40},{"startOffset":1745,"endOffset":1819,"count":34}],"isBlockCoverage":true},{"functionName":"isDate","ranges":[{"startOffset":1842,"endOffset":2007,"count":0}],"isBlockCoverage":false},{"functionName":"map","ranges":[{"startOffset":2013,"endOffset":2189,"count":0}],"isBlockCoverage":false},{"functionName":"extend","ranges":[{"startOffset":2195,"endOffset":2534,"count":17},{"startOffset":2244,"endOffset":2334,"count":43},{"startOffset":2375,"endOffset":2423,"count":0},{"startOffset":2463,"endOffset":2509,"count":0}],"isBlockCoverage":true},{"functionName":"createUTC","ranges":[{"startOffset":2540,"endOffset":2673,"count":0}],"isBlockCoverage":false},{"functionName":"defaultParsingFlags","ranges":[{"startOffset":2679,"endOffset":3266,"count":0}],"isBlockCoverage":false},{"functionName":"getParsingFlags","ranges":[{"startOffset":3272,"endOffset":3411,"count":0}],"isBlockCoverage":false},{"functionName":"some","ranges":[{"startOffset":3524,"endOffset":3834,"count":0}],"isBlockCoverage":false},{"functionName":"isValid","ranges":[{"startOffset":3847,"endOffset":5095,"count":0}],"isBlockCoverage":false},{"functionName":"createInvalid","ranges":[{"startOffset":5101,"endOffset":5347,"count":0}],"isBlockCoverage":false},{"functionName":"copyConfig","ranges":[{"startOffset":5567,"endOffset":6833,"count":0}],"isBlockCoverage":false},{"functionName":"Moment","ranges":[{"startOffset":6870,"endOffset":7346,"count":0}],"isBlockCoverage":false},{"functionName":"isMoment","ranges":[{"startOffset":7352,"endOffset":7493,"count":0}],"isBlockCoverage":false},{"functionName":"warn","ranges":[{"startOffset":7499,"endOffset":7747,"count":0}],"isBlockCoverage":false},{"functionName":"deprecate","ranges":[{"startOffset":7753,"endOffset":9147,"count":12}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":7836,"endOffset":9135,"count":0}],"isBlockCoverage":false},{"functionName":"deprecateSimple","ranges":[{"startOffset":9181,"endOffset":9438,"count":0}],"isBlockCoverage":false},{"functionName":"isFunction","ranges":[{"startOffset":9529,"endOffset":9743,"count":87},{"startOffset":9650,"endOffset":9726,"count":72}],"isBlockCoverage":true},{"functionName":"set","ranges":[{"startOffset":9749,"endOffset":10539,"count":1},{"startOffset":9819,"endOffset":10080,"count":15},{"startOffset":9934,"endOffset":9989,"count":1},{"startOffset":9989,"endOffset":10056,"count":14},{"startOffset":10436,"endOffset":10464,"count":0}],"isBlockCoverage":true},{"functionName":"mergeConfigs","ranges":[{"startOffset":10545,"endOffset":11584,"count":1},{"startOffset":10692,"endOffset":11190,"count":4},{"startOffset":10792,"endOffset":10822,"count":0},{"startOffset":10824,"endOffset":10996,"count":0},{"startOffset":11103,"endOffset":11166,"count":0},{"startOffset":11226,"endOffset":11558,"count":13},{"startOffset":11342,"endOffset":11389,"count":11},{"startOffset":11404,"endOffset":11548,"count":4}],"isBlockCoverage":true},{"functionName":"Locale","ranges":[{"startOffset":11590,"endOffset":11691,"count":1}],"isBlockCoverage":true},{"functionName":"keys","ranges":[{"startOffset":11787,"endOffset":12018,"count":0}],"isBlockCoverage":false},{"functionName":"calendar","ranges":[{"startOffset":12274,"endOffset":12454,"count":0}],"isBlockCoverage":false},{"functionName":"zeroFill","ranges":[{"startOffset":12460,"endOffset":12832,"count":0}],"isBlockCoverage":false},{"functionName":"addFormatToken","ranges":[{"startOffset":13331,"endOffset":14088,"count":60},{"startOffset":13462,"endOffset":13562,"count":32},{"startOffset":13582,"endOffset":13641,"count":42},{"startOffset":13662,"endOffset":13832,"count":32},{"startOffset":13854,"endOffset":14082,"count":8}],"isBlockCoverage":true},{"functionName":"func","ranges":[{"startOffset":13483,"endOffset":13551,"count":0}],"isBlockCoverage":false},{"functionName":"formatTokenFunctions.","ranges":[{"startOffset":13710,"endOffset":13821,"count":0}],"isBlockCoverage":false},{"functionName":"formatTokenFunctions.","ranges":[{"startOffset":13900,"endOffset":14071,"count":0}],"isBlockCoverage":false},{"functionName":"removeFormattingTokens","ranges":[{"startOffset":14094,"endOffset":14280,"count":0}],"isBlockCoverage":false},{"functionName":"makeFormatFunction","ranges":[{"startOffset":14286,"endOffset":14998,"count":0}],"isBlockCoverage":false},{"functionName":"formatMoment","ranges":[{"startOffset":15048,"endOffset":15376,"count":0}],"isBlockCoverage":false},{"functionName":"expandFormat","ranges":[{"startOffset":15382,"endOffset":15916,"count":0}],"isBlockCoverage":false},{"functionName":"longDateFormat","ranges":[{"startOffset":16144,"endOffset":16845,"count":0}],"isBlockCoverage":false},{"functionName":"invalidDate","ranges":[{"startOffset":16897,"endOffset":16961,"count":0}],"isBlockCoverage":false},{"functionName":"ordinal","ranges":[{"startOffset":17050,"endOffset":17134,"count":0}],"isBlockCoverage":false},{"functionName":"relativeTime","ranges":[{"startOffset":17558,"endOffset":17818,"count":0}],"isBlockCoverage":false},{"functionName":"pastFuture","ranges":[{"startOffset":17824,"endOffset":18020,"count":0}],"isBlockCoverage":false},{"functionName":"addUnitAlias","ranges":[{"startOffset":18049,"endOffset":18222,"count":16}],"isBlockCoverage":true},{"functionName":"normalizeUnits","ranges":[{"startOffset":18228,"endOffset":18393,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeObjectUnits","ranges":[{"startOffset":18399,"endOffset":18856,"count":0}],"isBlockCoverage":false},{"functionName":"addUnitPriority","ranges":[{"startOffset":18888,"endOffset":18973,"count":16}],"isBlockCoverage":true},{"functionName":"getPrioritizedUnits","ranges":[{"startOffset":18979,"endOffset":19342,"count":0}],"isBlockCoverage":false},{"functionName":"isLeapYear","ranges":[{"startOffset":19348,"endOffset":19454,"count":0}],"isBlockCoverage":false},{"functionName":"absFloor","ranges":[{"startOffset":19460,"endOffset":19651,"count":0}],"isBlockCoverage":false},{"functionName":"toInt","ranges":[{"startOffset":19657,"endOffset":19914,"count":0}],"isBlockCoverage":false},{"functionName":"makeGetSet","ranges":[{"startOffset":19920,"endOffset":20239,"count":6}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":19973,"endOffset":20232,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":20245,"endOffset":20389,"count":0}],"isBlockCoverage":false},{"functionName":"set$1","ranges":[{"startOffset":20395,"endOffset":21019,"count":0}],"isBlockCoverage":false},{"functionName":"stringGet","ranges":[{"startOffset":21041,"endOffset":21217,"count":0}],"isBlockCoverage":false},{"functionName":"stringSet","ranges":[{"startOffset":21223,"endOffset":21761,"count":0}],"isBlockCoverage":false},{"functionName":"addRegexToken","ranges":[{"startOffset":23009,"endOffset":23266,"count":72},{"startOffset":23116,"endOffset":23123,"count":14},{"startOffset":23136,"endOffset":23259,"count":58}],"isBlockCoverage":true},{"functionName":"regexes.","ranges":[{"startOffset":23138,"endOffset":23259,"count":0}],"isBlockCoverage":false},{"functionName":"getParseRegexForToken","ranges":[{"startOffset":23272,"endOffset":23496,"count":0}],"isBlockCoverage":false},{"functionName":"unescapeFormat","ranges":[{"startOffset":23610,"endOffset":24019,"count":0}],"isBlockCoverage":false},{"functionName":"regexEscape","ranges":[{"startOffset":24025,"endOffset":24116,"count":0}],"isBlockCoverage":false},{"functionName":"addParseToken","ranges":[{"startOffset":24144,"endOffset":24559,"count":40},{"startOffset":24269,"endOffset":24309,"count":20},{"startOffset":24342,"endOffset":24461,"count":6},{"startOffset":24505,"endOffset":24553,"count":70}],"isBlockCoverage":true},{"functionName":"func","ranges":[{"startOffset":24363,"endOffset":24450,"count":0}],"isBlockCoverage":false},{"functionName":"addWeekParseToken","ranges":[{"startOffset":24565,"endOffset":24794,"count":5}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":24640,"endOffset":24786,"count":0}],"isBlockCoverage":false},{"functionName":"addTimeToArrayFromToken","ranges":[{"startOffset":24800,"endOffset":24990,"count":0}],"isBlockCoverage":false},{"functionName":"mod","ranges":[{"startOffset":25174,"endOffset":25234,"count":0}],"isBlockCoverage":false},{"functionName":"indexOf","ranges":[{"startOffset":25363,"endOffset":25598,"count":0}],"isBlockCoverage":false},{"functionName":"daysInMonth","ranges":[{"startOffset":25611,"endOffset":25953,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26015,"endOffset":26067,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26103,"endOffset":26188,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26225,"endOffset":26305,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26529,"endOffset":26614,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26643,"endOffset":26723,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26758,"endOffset":26830,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":26869,"endOffset":27210,"count":0}],"isBlockCoverage":false},{"functionName":"localeMonths","ranges":[{"startOffset":27651,"endOffset":28113,"count":0}],"isBlockCoverage":false},{"functionName":"localeMonthsShort","ranges":[{"startOffset":28119,"endOffset":28545,"count":0}],"isBlockCoverage":false},{"functionName":"handleStrictParse","ranges":[{"startOffset":28551,"endOffset":30154,"count":0}],"isBlockCoverage":false},{"functionName":"localeMonthsParse","ranges":[{"startOffset":30160,"endOffset":32004,"count":0}],"isBlockCoverage":false},{"functionName":"setMonth","ranges":[{"startOffset":32026,"endOffset":32713,"count":0}],"isBlockCoverage":false},{"functionName":"getSetMonth","ranges":[{"startOffset":32719,"endOffset":32953,"count":0}],"isBlockCoverage":false},{"functionName":"getDaysInMonth","ranges":[{"startOffset":32959,"endOffset":33047,"count":0}],"isBlockCoverage":false},{"functionName":"monthsShortRegex","ranges":[{"startOffset":33053,"endOffset":33725,"count":0}],"isBlockCoverage":false},{"functionName":"monthsRegex","ranges":[{"startOffset":33731,"endOffset":34358,"count":0}],"isBlockCoverage":false},{"functionName":"computeMonthsParse","ranges":[{"startOffset":34364,"endOffset":35839,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":35890,"endOffset":35991,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36031,"endOffset":36084,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36650,"endOffset":36783,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36810,"endOffset":36895,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":36921,"endOffset":36995,"count":0}],"isBlockCoverage":false},{"functionName":"daysInYear","ranges":[{"startOffset":37019,"endOffset":37097,"count":0}],"isBlockCoverage":false},{"functionName":"hooks.parseTwoDigitYear","ranges":[{"startOffset":37143,"endOffset":37232,"count":0}],"isBlockCoverage":false},{"functionName":"getIsLeapYear","ranges":[{"startOffset":37307,"endOffset":37379,"count":0}],"isBlockCoverage":false},{"functionName":"createDate","ranges":[{"startOffset":37385,"endOffset":37973,"count":0}],"isBlockCoverage":false},{"functionName":"createUTCDate","ranges":[{"startOffset":37979,"endOffset":38570,"count":0}],"isBlockCoverage":false},{"functionName":"firstWeekOffset","ranges":[{"startOffset":38619,"endOffset":38985,"count":0}],"isBlockCoverage":false},{"functionName":"dayOfYearFromWeeks","ranges":[{"startOffset":39103,"endOffset":39847,"count":0}],"isBlockCoverage":false},{"functionName":"weekOfYear","ranges":[{"startOffset":39853,"endOffset":40537,"count":0}],"isBlockCoverage":false},{"functionName":"weeksInYear","ranges":[{"startOffset":40543,"endOffset":40780,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":41295,"endOffset":41427,"count":0}],"isBlockCoverage":false},{"functionName":"localeWeek","ranges":[{"startOffset":41467,"endOffset":41568,"count":0}],"isBlockCoverage":false},{"functionName":"localeFirstDayOfWeek","ranges":[{"startOffset":41749,"endOffset":41819,"count":0}],"isBlockCoverage":false},{"functionName":"localeFirstDayOfYear","ranges":[{"startOffset":41825,"endOffset":41895,"count":0}],"isBlockCoverage":false},{"functionName":"getSetWeek","ranges":[{"startOffset":41917,"endOffset":42073,"count":0}],"isBlockCoverage":false},{"functionName":"getSetISOWeek","ranges":[{"startOffset":42079,"endOffset":42237,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":42331,"endOffset":42416,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":42452,"endOffset":42539,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":42576,"endOffset":42658,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43137,"endOffset":43222,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43250,"endOffset":43337,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43366,"endOffset":43448,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43497,"endOffset":43841,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":43884,"endOffset":43965,"count":0}],"isBlockCoverage":false},{"functionName":"parseWeekday","ranges":[{"startOffset":43989,"endOffset":44335,"count":0}],"isBlockCoverage":false},{"functionName":"parseIsoWeekday","ranges":[{"startOffset":44341,"endOffset":44540,"count":0}],"isBlockCoverage":false},{"functionName":"shiftWeekdays","ranges":[{"startOffset":44561,"endOffset":44652,"count":0}],"isBlockCoverage":false},{"functionName":"localeWeekdays","ranges":[{"startOffset":45067,"endOffset":45528,"count":0}],"isBlockCoverage":false},{"functionName":"localeWeekdaysShort","ranges":[{"startOffset":45534,"endOffset":45758,"count":0}],"isBlockCoverage":false},{"functionName":"localeWeekdaysMin","ranges":[{"startOffset":45764,"endOffset":45980,"count":0}],"isBlockCoverage":false},{"functionName":"handleStrictParse$1","ranges":[{"startOffset":45986,"endOffset":48621,"count":0}],"isBlockCoverage":false},{"functionName":"localeWeekdaysParse","ranges":[{"startOffset":48627,"endOffset":50915,"count":0}],"isBlockCoverage":false},{"functionName":"getSetDayOfWeek","ranges":[{"startOffset":50937,"endOffset":51323,"count":0}],"isBlockCoverage":false},{"functionName":"getSetLocaleDayOfWeek","ranges":[{"startOffset":51329,"endOffset":51609,"count":0}],"isBlockCoverage":false},{"functionName":"getSetISODayOfWeek","ranges":[{"startOffset":51615,"endOffset":52167,"count":0}],"isBlockCoverage":false},{"functionName":"weekdaysRegex","ranges":[{"startOffset":52173,"endOffset":52824,"count":0}],"isBlockCoverage":false},{"functionName":"weekdaysShortRegex","ranges":[{"startOffset":52830,"endOffset":53526,"count":0}],"isBlockCoverage":false},{"functionName":"weekdaysMinRegex","ranges":[{"startOffset":53532,"endOffset":54210,"count":0}],"isBlockCoverage":false},{"functionName":"computeWeekdaysParse","ranges":[{"startOffset":54216,"endOffset":55929,"count":0}],"isBlockCoverage":false},{"functionName":"hFormat","ranges":[{"startOffset":55954,"endOffset":56020,"count":0}],"isBlockCoverage":false},{"functionName":"kFormat","ranges":[{"startOffset":56026,"endOffset":56087,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":56265,"endOffset":56355,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":56393,"endOffset":56573,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":56609,"endOffset":56692,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":56730,"endOffset":56903,"count":0}],"isBlockCoverage":false},{"functionName":"meridiem","ranges":[{"startOffset":56911,"endOffset":57166,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":56985,"endOffset":57158,"count":0}],"isBlockCoverage":false},{"functionName":"matchMeridiem","ranges":[{"startOffset":57338,"endOffset":57424,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":57964,"endOffset":58088,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":58121,"endOffset":58245,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":58279,"endOffset":58402,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":58430,"endOffset":58654,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":58684,"endOffset":59002,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":59030,"endOffset":59206,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":59236,"endOffset":59506,"count":0}],"isBlockCoverage":false},{"functionName":"localeIsPM","ranges":[{"startOffset":59530,"endOffset":59767,"count":0}],"isBlockCoverage":false},{"functionName":"localeMeridiem","ranges":[{"startOffset":60140,"endOffset":60333,"count":0}],"isBlockCoverage":false},{"functionName":"commonPrefix","ranges":[{"startOffset":61065,"endOffset":61326,"count":0}],"isBlockCoverage":false},{"functionName":"normalizeLocale","ranges":[{"startOffset":61332,"endOffset":61433,"count":0}],"isBlockCoverage":false},{"functionName":"chooseLocale","ranges":[{"startOffset":61706,"endOffset":62625,"count":0}],"isBlockCoverage":false},{"functionName":"loadLocale","ranges":[{"startOffset":62631,"endOffset":63495,"count":1},{"startOffset":62850,"endOffset":62894,"count":0},{"startOffset":62895,"endOffset":62916,"count":0},{"startOffset":62917,"endOffset":62946,"count":0},{"startOffset":62957,"endOffset":63459,"count":0}],"isBlockCoverage":true},{"functionName":"getSetGlobalLocale","ranges":[{"startOffset":63670,"endOffset":64445,"count":2},{"startOffset":63787,"endOffset":63912,"count":1},{"startOffset":64056,"endOffset":64393,"count":0}],"isBlockCoverage":true},{"functionName":"defineLocale","ranges":[{"startOffset":64451,"endOffset":66655,"count":1},{"startOffset":64658,"endOffset":65164,"count":0},{"startOffset":65203,"endOffset":65984,"count":0},{"startOffset":66100,"endOffset":66247,"count":0},{"startOffset":66539,"endOffset":66649,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":66147,"endOffset":66231,"count":0}],"isBlockCoverage":false},{"functionName":"updateLocale","ranges":[{"startOffset":66661,"endOffset":68413,"count":0}],"isBlockCoverage":false},{"functionName":"getLocale","ranges":[{"startOffset":68446,"endOffset":68917,"count":1},{"startOffset":68524,"endOffset":68544,"count":0},{"startOffset":68546,"endOffset":68594,"count":0},{"startOffset":68614,"endOffset":68658,"count":0},{"startOffset":68841,"endOffset":68916,"count":0}],"isBlockCoverage":true},{"functionName":"listLocales","ranges":[{"startOffset":68923,"endOffset":68983,"count":0}],"isBlockCoverage":false},{"functionName":"checkOverflow","ranges":[{"startOffset":68989,"endOffset":70422,"count":0}],"isBlockCoverage":false},{"functionName":"configFromISO","ranges":[{"startOffset":72657,"endOffset":74453,"count":0}],"isBlockCoverage":false},{"functionName":"extractFromRFC2822Strings","ranges":[{"startOffset":74459,"endOffset":74956,"count":0}],"isBlockCoverage":false},{"functionName":"untruncateYear","ranges":[{"startOffset":74962,"endOffset":75199,"count":0}],"isBlockCoverage":false},{"functionName":"preprocessRFC2822","ranges":[{"startOffset":75205,"endOffset":75513,"count":0}],"isBlockCoverage":false},{"functionName":"checkWeekday","ranges":[{"startOffset":75519,"endOffset":76194,"count":0}],"isBlockCoverage":false},{"functionName":"calculateOffset","ranges":[{"startOffset":76200,"endOffset":76615,"count":0}],"isBlockCoverage":false},{"functionName":"configFromRFC2822","ranges":[{"startOffset":76663,"endOffset":77510,"count":0}],"isBlockCoverage":false},{"functionName":"configFromString","ranges":[{"startOffset":77622,"endOffset":78338,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":78726,"endOffset":78833,"count":0}],"isBlockCoverage":false},{"functionName":"defaults","ranges":[{"startOffset":78903,"endOffset":79069,"count":0}],"isBlockCoverage":false},{"functionName":"currentDateArray","ranges":[{"startOffset":79075,"endOffset":79498,"count":0}],"isBlockCoverage":false},{"functionName":"configFromArray","ranges":[{"startOffset":79751,"endOffset":82499,"count":0}],"isBlockCoverage":false},{"functionName":"dayOfYearFromWeekInfo","ranges":[{"startOffset":82505,"endOffset":84727,"count":0}],"isBlockCoverage":false},{"functionName":"hooks.ISO_8601","ranges":[{"startOffset":84798,"endOffset":84812,"count":0}],"isBlockCoverage":false},{"functionName":"hooks.RFC_2822","ranges":[{"startOffset":84885,"endOffset":84899,"count":0}],"isBlockCoverage":false},{"functionName":"configFromStringAndFormat","ranges":[{"startOffset":84948,"endOffset":88024,"count":0}],"isBlockCoverage":false},{"functionName":"meridiemFixWrap","ranges":[{"startOffset":88030,"endOffset":88690,"count":0}],"isBlockCoverage":false},{"functionName":"configFromStringAndArray","ranges":[{"startOffset":88748,"endOffset":90633,"count":0}],"isBlockCoverage":false},{"functionName":"configFromObject","ranges":[{"startOffset":90639,"endOffset":91094,"count":0}],"isBlockCoverage":false},{"functionName":"createFromConfig","ranges":[{"startOffset":91100,"endOffset":91384,"count":0}],"isBlockCoverage":false},{"functionName":"prepareConfig","ranges":[{"startOffset":91390,"endOffset":92284,"count":0}],"isBlockCoverage":false},{"functionName":"configFromInput","ranges":[{"startOffset":92290,"endOffset":93074,"count":0}],"isBlockCoverage":false},{"functionName":"createLocalOrUTC","ranges":[{"startOffset":93080,"endOffset":93908,"count":0}],"isBlockCoverage":false},{"functionName":"createLocal","ranges":[{"startOffset":93914,"endOffset":94044,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":94206,"endOffset":94497,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":94669,"endOffset":94960,"count":0}],"isBlockCoverage":false},{"functionName":"pickBy","ranges":[{"startOffset":95250,"endOffset":95699,"count":0}],"isBlockCoverage":false},{"functionName":"min","ranges":[{"startOffset":95739,"endOffset":95851,"count":0}],"isBlockCoverage":false},{"functionName":"max","ranges":[{"startOffset":95857,"endOffset":95968,"count":0}],"isBlockCoverage":false},{"functionName":"now","ranges":[{"startOffset":95984,"endOffset":96055,"count":0}],"isBlockCoverage":false},{"functionName":"isDurationValid","ranges":[{"startOffset":96249,"endOffset":97053,"count":0}],"isBlockCoverage":false},{"functionName":"isValid$1","ranges":[{"startOffset":97059,"endOffset":97117,"count":0}],"isBlockCoverage":false},{"functionName":"createInvalid$1","ranges":[{"startOffset":97123,"endOffset":97193,"count":0}],"isBlockCoverage":false},{"functionName":"Duration","ranges":[{"startOffset":97199,"endOffset":98676,"count":0}],"isBlockCoverage":false},{"functionName":"isDuration","ranges":[{"startOffset":98682,"endOffset":98754,"count":0}],"isBlockCoverage":false},{"functionName":"absRound","ranges":[{"startOffset":98760,"endOffset":98934,"count":0}],"isBlockCoverage":false},{"functionName":"compareArrays","ranges":[{"startOffset":99000,"endOffset":99506,"count":0}],"isBlockCoverage":false},{"functionName":"offset","ranges":[{"startOffset":99531,"endOffset":99988,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":99603,"endOffset":99980,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":100167,"endOffset":100302,"count":0}],"isBlockCoverage":false},{"functionName":"offsetFromString","ranges":[{"startOffset":100456,"endOffset":100931,"count":0}],"isBlockCoverage":false},{"functionName":"cloneWithOffset","ranges":[{"startOffset":101016,"endOffset":101585,"count":0}],"isBlockCoverage":false},{"functionName":"getDateOffset","ranges":[{"startOffset":101591,"endOffset":101806,"count":0}],"isBlockCoverage":false},{"functionName":"hooks.updateOffset","ranges":[{"startOffset":101981,"endOffset":101995,"count":0}],"isBlockCoverage":false},{"functionName":"getSetOffset","ranges":[{"startOffset":102629,"endOffset":104125,"count":0}],"isBlockCoverage":false},{"functionName":"getSetZone","ranges":[{"startOffset":104131,"endOffset":104442,"count":0}],"isBlockCoverage":false},{"functionName":"setOffsetToUTC","ranges":[{"startOffset":104448,"endOffset":104543,"count":0}],"isBlockCoverage":false},{"functionName":"setOffsetToLocal","ranges":[{"startOffset":104549,"endOffset":104839,"count":0}],"isBlockCoverage":false},{"functionName":"setOffsetToParsedOffset","ranges":[{"startOffset":104845,"endOffset":105265,"count":0}],"isBlockCoverage":false},{"functionName":"hasAlignedHourOffset","ranges":[{"startOffset":105271,"endOffset":105497,"count":0}],"isBlockCoverage":false},{"functionName":"isDaylightSavingTime","ranges":[{"startOffset":105503,"endOffset":105703,"count":0}],"isBlockCoverage":false},{"functionName":"isDaylightSavingTimeShifted","ranges":[{"startOffset":105709,"endOffset":106253,"count":0}],"isBlockCoverage":false},{"functionName":"isLocal","ranges":[{"startOffset":106259,"endOffset":106339,"count":0}],"isBlockCoverage":false},{"functionName":"isUtcOffset","ranges":[{"startOffset":106345,"endOffset":106428,"count":0}],"isBlockCoverage":false},{"functionName":"isUtc","ranges":[{"startOffset":106434,"endOffset":106533,"count":0}],"isBlockCoverage":false},{"functionName":"createDuration","ranges":[{"startOffset":107111,"endOffset":109484,"count":0}],"isBlockCoverage":false},{"functionName":"parseIso","ranges":[{"startOffset":109581,"endOffset":109937,"count":0}],"isBlockCoverage":false},{"functionName":"positiveMomentsDifference","ranges":[{"startOffset":109943,"endOffset":110314,"count":0}],"isBlockCoverage":false},{"functionName":"momentsDifference","ranges":[{"startOffset":110320,"endOffset":110832,"count":0}],"isBlockCoverage":false},{"functionName":"createAdder","ranges":[{"startOffset":110898,"endOffset":111758,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":110953,"endOffset":111751,"count":0}],"isBlockCoverage":false},{"functionName":"addSubtract","ranges":[{"startOffset":111764,"endOffset":112524,"count":0}],"isBlockCoverage":false},{"functionName":"isString","ranges":[{"startOffset":112616,"endOffset":112717,"count":0}],"isBlockCoverage":false},{"functionName":"isMomentInput","ranges":[{"startOffset":112851,"endOffset":113186,"count":0}],"isBlockCoverage":false},{"functionName":"isMomentInputObject","ranges":[{"startOffset":113192,"endOffset":114216,"count":0}],"isBlockCoverage":false},{"functionName":"isNumberOrStringArray","ranges":[{"startOffset":114222,"endOffset":114588,"count":0}],"isBlockCoverage":false},{"functionName":"isCalendarSpec","ranges":[{"startOffset":114594,"endOffset":115195,"count":0}],"isBlockCoverage":false},{"functionName":"getCalendarFormat","ranges":[{"startOffset":115201,"endOffset":115617,"count":0}],"isBlockCoverage":false},{"functionName":"calendar$1","ranges":[{"startOffset":115623,"endOffset":116797,"count":0}],"isBlockCoverage":false},{"functionName":"clone","ranges":[{"startOffset":116803,"endOffset":116860,"count":0}],"isBlockCoverage":false},{"functionName":"isAfter","ranges":[{"startOffset":116866,"endOffset":117329,"count":0}],"isBlockCoverage":false},{"functionName":"isBefore","ranges":[{"startOffset":117335,"endOffset":117797,"count":0}],"isBlockCoverage":false},{"functionName":"isBetween","ranges":[{"startOffset":117803,"endOffset":118442,"count":0}],"isBlockCoverage":false},{"functionName":"isSame","ranges":[{"startOffset":118448,"endOffset":119063,"count":0}],"isBlockCoverage":false},{"functionName":"isSameOrAfter","ranges":[{"startOffset":119069,"endOffset":119185,"count":0}],"isBlockCoverage":false},{"functionName":"isSameOrBefore","ranges":[{"startOffset":119191,"endOffset":119309,"count":0}],"isBlockCoverage":false},{"functionName":"diff","ranges":[{"startOffset":119315,"endOffset":120745,"count":0}],"isBlockCoverage":false},{"functionName":"monthDiff","ranges":[{"startOffset":120751,"endOffset":121762,"count":0}],"isBlockCoverage":false},{"functionName":"toString","ranges":[{"startOffset":121874,"endOffset":121986,"count":0}],"isBlockCoverage":false},{"functionName":"toISOString","ranges":[{"startOffset":121992,"endOffset":122990,"count":0}],"isBlockCoverage":false},{"functionName":"inspect","ranges":[{"startOffset":123252,"endOffset":123908,"count":0}],"isBlockCoverage":false},{"functionName":"format","ranges":[{"startOffset":123914,"endOffset":124214,"count":0}],"isBlockCoverage":false},{"functionName":"from","ranges":[{"startOffset":124220,"endOffset":124618,"count":0}],"isBlockCoverage":false},{"functionName":"fromNow","ranges":[{"startOffset":124624,"endOffset":124719,"count":0}],"isBlockCoverage":false},{"functionName":"to","ranges":[{"startOffset":124725,"endOffset":125121,"count":0}],"isBlockCoverage":false},{"functionName":"toNow","ranges":[{"startOffset":125127,"endOffset":125218,"count":0}],"isBlockCoverage":false},{"functionName":"locale","ranges":[{"startOffset":125392,"endOffset":125717,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":125908,"endOffset":126089,"count":0}],"isBlockCoverage":false},{"functionName":"localeData","ranges":[{"startOffset":126102,"endOffset":126160,"count":0}],"isBlockCoverage":false},{"functionName":"mod$1","ranges":[{"startOffset":126420,"endOffset":126520,"count":0}],"isBlockCoverage":false},{"functionName":"localStartOfDate","ranges":[{"startOffset":126526,"endOffset":126877,"count":0}],"isBlockCoverage":false},{"functionName":"utcStartOfDate","ranges":[{"startOffset":126883,"endOffset":127210,"count":0}],"isBlockCoverage":false},{"functionName":"startOf","ranges":[{"startOffset":127216,"endOffset":129207,"count":0}],"isBlockCoverage":false},{"functionName":"endOf","ranges":[{"startOffset":129213,"endOffset":131488,"count":0}],"isBlockCoverage":false},{"functionName":"valueOf","ranges":[{"startOffset":131494,"endOffset":131584,"count":0}],"isBlockCoverage":false},{"functionName":"unix","ranges":[{"startOffset":131590,"endOffset":131663,"count":0}],"isBlockCoverage":false},{"functionName":"toDate","ranges":[{"startOffset":131669,"endOffset":131735,"count":0}],"isBlockCoverage":false},{"functionName":"toArray","ranges":[{"startOffset":131741,"endOffset":131983,"count":0}],"isBlockCoverage":false},{"functionName":"toObject","ranges":[{"startOffset":131989,"endOffset":132296,"count":0}],"isBlockCoverage":false},{"functionName":"toJSON","ranges":[{"startOffset":132302,"endOffset":132429,"count":0}],"isBlockCoverage":false},{"functionName":"isValid$2","ranges":[{"startOffset":132435,"endOffset":132493,"count":0}],"isBlockCoverage":false},{"functionName":"parsingFlags","ranges":[{"startOffset":132499,"endOffset":132580,"count":0}],"isBlockCoverage":false},{"functionName":"invalidAt","ranges":[{"startOffset":132586,"endOffset":132661,"count":0}],"isBlockCoverage":false},{"functionName":"creationData","ranges":[{"startOffset":132667,"endOffset":132883,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":133572,"endOffset":133879,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":134171,"endOffset":134568,"count":0}],"isBlockCoverage":false},{"functionName":"localeEras","ranges":[{"startOffset":134576,"endOffset":135457,"count":0}],"isBlockCoverage":false},{"functionName":"localeErasParse","ranges":[{"startOffset":135463,"endOffset":136691,"count":0}],"isBlockCoverage":false},{"functionName":"localeErasConvertYear","ranges":[{"startOffset":136697,"endOffset":136975,"count":0}],"isBlockCoverage":false},{"functionName":"getEraName","ranges":[{"startOffset":136981,"endOffset":137500,"count":0}],"isBlockCoverage":false},{"functionName":"getEraNarrow","ranges":[{"startOffset":137506,"endOffset":138031,"count":0}],"isBlockCoverage":false},{"functionName":"getEraAbbr","ranges":[{"startOffset":138037,"endOffset":138556,"count":0}],"isBlockCoverage":false},{"functionName":"getEraYear","ranges":[{"startOffset":138562,"endOffset":139265,"count":0}],"isBlockCoverage":false},{"functionName":"erasNameRegex","ranges":[{"startOffset":139271,"endOffset":139478,"count":0}],"isBlockCoverage":false},{"functionName":"erasAbbrRegex","ranges":[{"startOffset":139484,"endOffset":139691,"count":0}],"isBlockCoverage":false},{"functionName":"erasNarrowRegex","ranges":[{"startOffset":139697,"endOffset":139910,"count":0}],"isBlockCoverage":false},{"functionName":"matchEraAbbr","ranges":[{"startOffset":139916,"endOffset":140010,"count":0}],"isBlockCoverage":false},{"functionName":"matchEraName","ranges":[{"startOffset":140016,"endOffset":140110,"count":0}],"isBlockCoverage":false},{"functionName":"matchEraNarrow","ranges":[{"startOffset":140116,"endOffset":140214,"count":0}],"isBlockCoverage":false},{"functionName":"matchEraYearOrdinal","ranges":[{"startOffset":140220,"endOffset":140335,"count":0}],"isBlockCoverage":false},{"functionName":"computeErasParse","ranges":[{"startOffset":140341,"endOffset":141329,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":141386,"endOffset":141443,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":141483,"endOffset":141543,"count":0}],"isBlockCoverage":false},{"functionName":"addWeekYearFormatToken","ranges":[{"startOffset":141551,"endOffset":141666,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":142477,"endOffset":142609,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":142649,"endOffset":142748,"count":0}],"isBlockCoverage":false},{"functionName":"getSetWeekYear","ranges":[{"startOffset":142772,"endOffset":143034,"count":0}],"isBlockCoverage":false},{"functionName":"getSetISOWeekYear","ranges":[{"startOffset":143040,"endOffset":143259,"count":0}],"isBlockCoverage":false},{"functionName":"getISOWeeksInYear","ranges":[{"startOffset":143265,"endOffset":143348,"count":0}],"isBlockCoverage":false},{"functionName":"getISOWeeksInISOWeekYear","ranges":[{"startOffset":143354,"endOffset":143451,"count":0}],"isBlockCoverage":false},{"functionName":"getWeeksInYear","ranges":[{"startOffset":143457,"endOffset":143607,"count":0}],"isBlockCoverage":false},{"functionName":"getWeeksInWeekYear","ranges":[{"startOffset":143613,"endOffset":143771,"count":0}],"isBlockCoverage":false},{"functionName":"getSetWeekYearHelper","ranges":[{"startOffset":143777,"endOffset":144197,"count":0}],"isBlockCoverage":false},{"functionName":"setWeekAll","ranges":[{"startOffset":144203,"endOffset":144572,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":144814,"endOffset":144892,"count":0}],"isBlockCoverage":false},{"functionName":"getSetQuarter","ranges":[{"startOffset":144916,"endOffset":145094,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":145382,"endOffset":145634,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":145700,"endOffset":145787,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":146174,"endOffset":146255,"count":0}],"isBlockCoverage":false},{"functionName":"getSetDayOfYear","ranges":[{"startOffset":146295,"endOffset":146563,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":147370,"endOffset":147434,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":147474,"endOffset":147537,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":147632,"endOffset":147691,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":147733,"endOffset":147793,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":147836,"endOffset":147897,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":147941,"endOffset":148003,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":148048,"endOffset":148111,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":148157,"endOffset":148221,"count":0}],"isBlockCoverage":false},{"functionName":"parseMs","ranges":[{"startOffset":148638,"endOffset":148735,"count":0}],"isBlockCoverage":false},{"functionName":"getZoneAbbr","ranges":[{"startOffset":149027,"endOffset":149098,"count":0}],"isBlockCoverage":false},{"functionName":"getZoneName","ranges":[{"startOffset":149104,"endOffset":149198,"count":0}],"isBlockCoverage":false},{"functionName":"proto.","ranges":[{"startOffset":150325,"endOffset":150400,"count":0}],"isBlockCoverage":false},{"functionName":"createUnix","ranges":[{"startOffset":152808,"endOffset":152884,"count":0}],"isBlockCoverage":false},{"functionName":"createInZone","ranges":[{"startOffset":152890,"endOffset":152984,"count":0}],"isBlockCoverage":false},{"functionName":"preParsePostFormat","ranges":[{"startOffset":152990,"endOffset":153056,"count":0}],"isBlockCoverage":false},{"functionName":"get$1","ranges":[{"startOffset":154442,"endOffset":154621,"count":0}],"isBlockCoverage":false},{"functionName":"listMonthsImpl","ranges":[{"startOffset":154627,"endOffset":155069,"count":0}],"isBlockCoverage":false},{"functionName":"listWeekdaysImpl","ranges":[{"startOffset":155197,"endOffset":156118,"count":0}],"isBlockCoverage":false},{"functionName":"listMonths","ranges":[{"startOffset":156124,"endOffset":156222,"count":0}],"isBlockCoverage":false},{"functionName":"listMonthsShort","ranges":[{"startOffset":156228,"endOffset":156336,"count":0}],"isBlockCoverage":false},{"functionName":"listWeekdays","ranges":[{"startOffset":156342,"endOffset":156474,"count":0}],"isBlockCoverage":false},{"functionName":"listWeekdaysShort","ranges":[{"startOffset":156480,"endOffset":156622,"count":0}],"isBlockCoverage":false},{"functionName":"listWeekdaysMin","ranges":[{"startOffset":156628,"endOffset":156766,"count":0}],"isBlockCoverage":false},{"functionName":"ordinal","ranges":[{"startOffset":157345,"endOffset":157779,"count":0}],"isBlockCoverage":false},{"functionName":"abs","ranges":[{"startOffset":158109,"endOffset":158608,"count":0}],"isBlockCoverage":false},{"functionName":"addSubtract$1","ranges":[{"startOffset":158614,"endOffset":158939,"count":0}],"isBlockCoverage":false},{"functionName":"add$1","ranges":[{"startOffset":159005,"endOffset":159094,"count":0}],"isBlockCoverage":false},{"functionName":"subtract$1","ranges":[{"startOffset":159170,"endOffset":159265,"count":0}],"isBlockCoverage":false},{"functionName":"absCeil","ranges":[{"startOffset":159271,"endOffset":159433,"count":0}],"isBlockCoverage":false},{"functionName":"bubble","ranges":[{"startOffset":159439,"endOffset":160990,"count":0}],"isBlockCoverage":false},{"functionName":"daysToMonths","ranges":[{"startOffset":160996,"endOffset":161191,"count":0}],"isBlockCoverage":false},{"functionName":"monthsToDays","ranges":[{"startOffset":161197,"endOffset":161314,"count":0}],"isBlockCoverage":false},{"functionName":"as","ranges":[{"startOffset":161320,"endOffset":162922,"count":0}],"isBlockCoverage":false},{"functionName":"valueOf$1","ranges":[{"startOffset":162960,"endOffset":163237,"count":0}],"isBlockCoverage":false},{"functionName":"makeAs","ranges":[{"startOffset":163243,"endOffset":163348,"count":9}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":163283,"endOffset":163341,"count":0}],"isBlockCoverage":false},{"functionName":"clone$1","ranges":[{"startOffset":163649,"endOffset":163712,"count":0}],"isBlockCoverage":false},{"functionName":"get$2","ranges":[{"startOffset":163718,"endOffset":163845,"count":0}],"isBlockCoverage":false},{"functionName":"makeGetter","ranges":[{"startOffset":163851,"endOffset":163984,"count":7}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":163894,"endOffset":163977,"count":0}],"isBlockCoverage":false},{"functionName":"weeks","ranges":[{"startOffset":164272,"endOffset":164338,"count":0}],"isBlockCoverage":false},{"functionName":"substituteTimeAgo","ranges":[{"startOffset":164779,"endOffset":164946,"count":0}],"isBlockCoverage":false},{"functionName":"relativeTime$1","ranges":[{"startOffset":164952,"endOffset":166343,"count":0}],"isBlockCoverage":false},{"functionName":"getSetRelativeTimeRounding","ranges":[{"startOffset":166436,"endOffset":166728,"count":0}],"isBlockCoverage":false},{"functionName":"getSetRelativeTimeThreshold","ranges":[{"startOffset":166811,"endOffset":167189,"count":0}],"isBlockCoverage":false},{"functionName":"humanize","ranges":[{"startOffset":167195,"endOffset":168171,"count":0}],"isBlockCoverage":false},{"functionName":"sign","ranges":[{"startOffset":168204,"endOffset":168268,"count":0}],"isBlockCoverage":false},{"functionName":"toISOString$1","ranges":[{"startOffset":168274,"endOffset":170442,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":171901,"endOffset":171996,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":172022,"endOffset":172105,"count":0}],"isBlockCoverage":false}]},{"scriptId":"186","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/string.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":17280,"count":1}],"isBlockCoverage":true},{"functionName":"internals.String","ranges":[{"startOffset":493,"endOffset":595,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":601,"endOffset":1791,"count":0}],"isBlockCoverage":false},{"functionName":"insensitive","ranges":[{"startOffset":1797,"endOffset":1912,"count":0}],"isBlockCoverage":false},{"functionName":"creditCard","ranges":[{"startOffset":1918,"endOffset":2458,"count":0}],"isBlockCoverage":false},{"functionName":"regex","ranges":[{"startOffset":2464,"endOffset":3041,"count":0}],"isBlockCoverage":false},{"functionName":"alphanum","ranges":[{"startOffset":3047,"endOffset":3339,"count":0}],"isBlockCoverage":false},{"functionName":"token","ranges":[{"startOffset":3345,"endOffset":3619,"count":0}],"isBlockCoverage":false},{"functionName":"email","ranges":[{"startOffset":3625,"endOffset":5041,"count":0}],"isBlockCoverage":false},{"functionName":"ip","ranges":[{"startOffset":5047,"endOffset":7369,"count":0}],"isBlockCoverage":false},{"functionName":"uri","ranges":[{"startOffset":7375,"endOffset":9849,"count":0}],"isBlockCoverage":false},{"functionName":"isoDate","ranges":[{"startOffset":9855,"endOffset":10141,"count":0}],"isBlockCoverage":false},{"functionName":"guid","ranges":[{"startOffset":10147,"endOffset":12679,"count":0}],"isBlockCoverage":false},{"functionName":"hex","ranges":[{"startOffset":12685,"endOffset":12986,"count":0}],"isBlockCoverage":false},{"functionName":"hostname","ranges":[{"startOffset":12992,"endOffset":13470,"count":0}],"isBlockCoverage":false},{"functionName":"lowercase","ranges":[{"startOffset":13476,"endOffset":13875,"count":0}],"isBlockCoverage":false},{"functionName":"uppercase","ranges":[{"startOffset":13881,"endOffset":14280,"count":0}],"isBlockCoverage":false},{"functionName":"trim","ranges":[{"startOffset":14286,"endOffset":14654,"count":0}],"isBlockCoverage":false},{"functionName":"replace","ranges":[{"startOffset":14660,"endOffset":15368,"count":0}],"isBlockCoverage":false},{"functionName":"truncate","ranges":[{"startOffset":15374,"endOffset":15526,"count":0}],"isBlockCoverage":false},{"functionName":"internals.compare","ranges":[{"startOffset":15552,"endOffset":16537,"count":3}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":15591,"endOffset":16534,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":16599,"endOffset":16740,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":16803,"endOffset":16944,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":17013,"endOffset":17155,"count":0}],"isBlockCoverage":false}]},{"scriptId":"187","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/isemail/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":60809,"count":1},{"startOffset":2927,"endOffset":3001,"count":0}],"isBlockCoverage":true},{"functionName":"internals.defer","ranges":[{"startOffset":2933,"endOffset":3001,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":3047,"endOffset":3488,"count":1},{"startOffset":3283,"endOffset":3317,"count":256},{"startOffset":3365,"endOffset":3419,"count":13}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3432,"endOffset":3485,"count":0}],"isBlockCoverage":false},{"functionName":"internals.checkIpV6","ranges":[{"startOffset":3659,"endOffset":3749,"count":0}],"isBlockCoverage":false},{"functionName":"internals.validDomain","ranges":[{"startOffset":3777,"endOffset":4257,"count":0}],"isBlockCoverage":false},{"functionName":"exports.validate.internals.validate","ranges":[{"startOffset":5372,"endOffset":60517,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":60573,"endOffset":60804,"count":1},{"startOffset":60702,"endOffset":60784,"count":54}],"isBlockCoverage":true}]},{"scriptId":"188","url":"dns.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":9629,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":2083,"endOffset":2289,"count":24},{"startOffset":2131,"endOffset":2213,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupall","ranges":[{"startOffset":2295,"endOffset":2674,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2750,"endOffset":4473,"count":24},{"startOffset":2953,"endOffset":3028,"count":0},{"startOffset":3069,"endOffset":3117,"count":0},{"startOffset":3159,"endOffset":3212,"count":0},{"startOffset":3452,"endOffset":3493,"count":0},{"startOffset":3569,"endOffset":3785,"count":0},{"startOffset":3851,"endOffset":4075,"count":0},{"startOffset":4223,"endOffset":4236,"count":0},{"startOffset":4356,"endOffset":4455,"count":0}],"isBlockCoverage":true},{"functionName":"onlookupservice","ranges":[{"startOffset":4608,"endOffset":4794,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":4800,"endOffset":5454,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":5598,"endOffset":5872,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":5876,"endOffset":6647,"count":12}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":5912,"endOffset":6563,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":7583,"endOffset":8059,"count":0}],"isBlockCoverage":false},{"functionName":"defaultResolverSetServers","ranges":[{"startOffset":8063,"endOffset":8368,"count":0}],"isBlockCoverage":false},{"functionName":"get","ranges":[{"startOffset":9426,"endOffset":9617,"count":2},{"startOffset":9464,"endOffset":9586,"count":1}],"isBlockCoverage":true}]},{"scriptId":"189","url":"internal/dns/utils.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4534,"count":1}],"isBlockCoverage":false},{"functionName":"validateTimeout","ranges":[{"startOffset":639,"endOffset":803,"count":1}],"isBlockCoverage":true},{"functionName":"Resolver","ranges":[{"startOffset":885,"endOffset":1017,"count":1}],"isBlockCoverage":true},{"functionName":"cancel","ranges":[{"startOffset":1023,"endOffset":1066,"count":0}],"isBlockCoverage":false},{"functionName":"getServers","ranges":[{"startOffset":1072,"endOffset":1327,"count":0}],"isBlockCoverage":false},{"functionName":"setServers","ranges":[{"startOffset":1333,"endOffset":3187,"count":0}],"isBlockCoverage":false},{"functionName":"getDefaultResolver","ranges":[{"startOffset":3493,"endOffset":3554,"count":1}],"isBlockCoverage":true},{"functionName":"setDefaultResolver","ranges":[{"startOffset":3558,"endOffset":3631,"count":0}],"isBlockCoverage":false},{"functionName":"bindDefaultResolver","ranges":[{"startOffset":3635,"endOffset":3780,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3706,"endOffset":3775,"count":28}],"isBlockCoverage":true},{"functionName":"validateHints","ranges":[{"startOffset":3784,"endOffset":3943,"count":24},{"startOffset":3880,"endOffset":3940,"count":0}],"isBlockCoverage":true},{"functionName":"emitInvalidHostnameWarning","ranges":[{"startOffset":3993,"endOffset":4354,"count":0}],"isBlockCoverage":false}]},{"scriptId":"190","url":"internal/dns/promises.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6822,"count":1}],"isBlockCoverage":false},{"functionName":"onlookup","ranges":[{"startOffset":770,"endOffset":1027,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupall","ranges":[{"startOffset":1031,"endOffset":1424,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupPromise","ranges":[{"startOffset":1428,"endOffset":2302,"count":0}],"isBlockCoverage":false},{"functionName":"lookup","ranges":[{"startOffset":2306,"endOffset":2986,"count":0}],"isBlockCoverage":false},{"functionName":"onlookupservice","ranges":[{"startOffset":2992,"endOffset":3182,"count":0}],"isBlockCoverage":false},{"functionName":"createLookupServicePromise","ranges":[{"startOffset":3186,"endOffset":3612,"count":0}],"isBlockCoverage":false},{"functionName":"lookupService","ranges":[{"startOffset":3616,"endOffset":3910,"count":0}],"isBlockCoverage":false},{"functionName":"onresolve","ranges":[{"startOffset":3916,"endOffset":4193,"count":0}],"isBlockCoverage":false},{"functionName":"createResolverPromise","ranges":[{"startOffset":4197,"endOffset":4681,"count":0}],"isBlockCoverage":false},{"functionName":"resolver","ranges":[{"startOffset":4685,"endOffset":4990,"count":12}],"isBlockCoverage":true},{"functionName":"query","ranges":[{"startOffset":4721,"endOffset":4904,"count":0}],"isBlockCoverage":false},{"functionName":"Resolver","ranges":[{"startOffset":5116,"endOffset":5248,"count":0}],"isBlockCoverage":false},{"functionName":"resolve","ranges":[{"startOffset":6277,"endOffset":6702,"count":0}],"isBlockCoverage":false}]},{"scriptId":"191","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/string/uri.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1091,"count":1}],"isBlockCoverage":true},{"functionName":"createUriRegex","ranges":[{"startOffset":149,"endOffset":1047,"count":1},{"startOffset":344,"endOffset":504,"count":0},{"startOffset":625,"endOffset":679,"count":0}],"isBlockCoverage":true}]},{"scriptId":"192","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/string/rfc3986.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6985,"count":1}],"isBlockCoverage":true},{"functionName":"internals.generate","ranges":[{"startOffset":117,"endOffset":6922,"count":1}],"isBlockCoverage":true}]},{"scriptId":"193","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/string/ip.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":873,"count":1}],"isBlockCoverage":true},{"functionName":"internals.Ip.createIpRegex","ranges":[{"startOffset":478,"endOffset":839,"count":1},{"startOffset":568,"endOffset":767,"count":3},{"startOffset":627,"endOffset":699,"count":1}],"isBlockCoverage":true}]},{"scriptId":"194","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/number.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4950,"count":1}],"isBlockCoverage":true},{"functionName":"internals.Number","ranges":[{"startOffset":267,"endOffset":414,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":420,"endOffset":1273,"count":0}],"isBlockCoverage":false},{"functionName":"multiple","ranges":[{"startOffset":1279,"endOffset":2078,"count":0}],"isBlockCoverage":false},{"functionName":"integer","ranges":[{"startOffset":2084,"endOffset":2312,"count":0}],"isBlockCoverage":false},{"functionName":"negative","ranges":[{"startOffset":2318,"endOffset":2591,"count":0}],"isBlockCoverage":false},{"functionName":"positive","ranges":[{"startOffset":2597,"endOffset":2870,"count":0}],"isBlockCoverage":false},{"functionName":"precision","ranges":[{"startOffset":2876,"endOffset":3578,"count":0}],"isBlockCoverage":false},{"functionName":"internals.compare","ranges":[{"startOffset":3605,"endOffset":4523,"count":4}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":3644,"endOffset":4520,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4585,"endOffset":4617,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4678,"endOffset":4710,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4779,"endOffset":4810,"count":0}],"isBlockCoverage":false},{"functionName":"","ranges":[{"startOffset":4873,"endOffset":4904,"count":0}],"isBlockCoverage":false}]},{"scriptId":"195","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/boolean.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1095,"count":1}],"isBlockCoverage":true},{"functionName":"internals.Boolean","ranges":[{"startOffset":154,"endOffset":225,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":231,"endOffset":1047,"count":4},{"startOffset":356,"endOffset":386,"count":0},{"startOffset":388,"endOffset":707,"count":0},{"startOffset":747,"endOffset":777,"count":0},{"startOffset":779,"endOffset":892,"count":0},{"startOffset":961,"endOffset":1017,"count":0}],"isBlockCoverage":true}]},{"scriptId":"196","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/lazy.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":1004,"count":1}],"isBlockCoverage":true},{"functionName":"internals.Lazy","ranges":[{"startOffset":182,"endOffset":250,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":256,"endOffset":756,"count":0}],"isBlockCoverage":false},{"functionName":"set","ranges":[{"startOffset":762,"endOffset":959,"count":0}],"isBlockCoverage":false}]},{"scriptId":"197","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/alternatives.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":4968,"count":1}],"isBlockCoverage":true},{"functionName":"internals.Alternatives","ranges":[{"startOffset":252,"endOffset":399,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":405,"endOffset":1751,"count":1},{"startOffset":549,"endOffset":575,"count":0},{"startOffset":731,"endOffset":1394,"count":0},{"startOffset":1569,"endOffset":1680,"count":0},{"startOffset":1681,"endOffset":1742,"count":0}],"isBlockCoverage":true},{"functionName":"try","ranges":[{"startOffset":1757,"endOffset":2291,"count":4},{"startOffset":2039,"endOffset":2264,"count":8},{"startOffset":2126,"endOffset":2199,"count":0}],"isBlockCoverage":true},{"functionName":"when","ranges":[{"startOffset":2297,"endOffset":3993,"count":0}],"isBlockCoverage":false},{"functionName":"describe","ranges":[{"startOffset":3999,"endOffset":4914,"count":0}],"isBlockCoverage":false}]},{"scriptId":"198","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/array.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":17387,"count":1}],"isBlockCoverage":true},{"functionName":"internals.fastSplice","ranges":[{"startOffset":195,"endOffset":321,"count":0}],"isBlockCoverage":false},{"functionName":"internals.Array","ranges":[{"startOffset":368,"endOffset":650,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":656,"endOffset":2394,"count":0}],"isBlockCoverage":false},{"functionName":"_checkItems","ranges":[{"startOffset":2400,"endOffset":10083,"count":0}],"isBlockCoverage":false},{"functionName":"describe","ranges":[{"startOffset":10089,"endOffset":10703,"count":0}],"isBlockCoverage":false},{"functionName":"items","ranges":[{"startOffset":10709,"endOffset":11706,"count":2}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10823,"endOffset":11677,"count":2},{"startOffset":10929,"endOffset":11287,"count":0},{"startOffset":11384,"endOffset":11448,"count":0},{"startOffset":11508,"endOffset":11584,"count":0}],"isBlockCoverage":true},{"functionName":"ordered","ranges":[{"startOffset":11712,"endOffset":12375,"count":0}],"isBlockCoverage":false},{"functionName":"min","ranges":[{"startOffset":12381,"endOffset":12753,"count":0}],"isBlockCoverage":false},{"functionName":"max","ranges":[{"startOffset":12759,"endOffset":13131,"count":0}],"isBlockCoverage":false},{"functionName":"length","ranges":[{"startOffset":13137,"endOffset":13519,"count":0}],"isBlockCoverage":false},{"functionName":"unique","ranges":[{"startOffset":13525,"endOffset":15338,"count":0}],"isBlockCoverage":false},{"functionName":"sparse","ranges":[{"startOffset":15344,"endOffset":15492,"count":0}],"isBlockCoverage":false},{"functionName":"single","ranges":[{"startOffset":15498,"endOffset":15646,"count":0}],"isBlockCoverage":false},{"functionName":"_fillMissedErrors","ranges":[{"startOffset":15652,"endOffset":16629,"count":0}],"isBlockCoverage":false},{"functionName":"_fillOrderedErrors","ranges":[{"startOffset":16636,"endOffset":17118,"count":0}],"isBlockCoverage":false},{"functionName":"internals.safeParse","ranges":[{"startOffset":17147,"endOffset":17343,"count":0}],"isBlockCoverage":false}]},{"scriptId":"199","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/binary.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2123,"count":1}],"isBlockCoverage":true},{"functionName":"internals.Binary","ranges":[{"startOffset":184,"endOffset":254,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":260,"endOffset":719,"count":0}],"isBlockCoverage":false},{"functionName":"encoding","ranges":[{"startOffset":725,"endOffset":928,"count":0}],"isBlockCoverage":false},{"functionName":"min","ranges":[{"startOffset":934,"endOffset":1307,"count":0}],"isBlockCoverage":false},{"functionName":"max","ranges":[{"startOffset":1313,"endOffset":1686,"count":0}],"isBlockCoverage":false},{"functionName":"length","ranges":[{"startOffset":1692,"endOffset":2075,"count":0}],"isBlockCoverage":false}]},{"scriptId":"200","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/object.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":24298,"count":1}],"isBlockCoverage":true},{"functionName":"internals.Object","ranges":[{"startOffset":312,"endOffset":527,"count":1}],"isBlockCoverage":true},{"functionName":"_base","ranges":[{"startOffset":533,"endOffset":8416,"count":2},{"startOffset":823,"endOffset":853,"count":0},{"startOffset":855,"endOffset":915,"count":0},{"startOffset":955,"endOffset":967,"count":0},{"startOffset":1073,"endOffset":1195,"count":0},{"startOffset":1375,"endOffset":1461,"count":0},{"startOffset":1463,"endOffset":1532,"count":0},{"startOffset":1753,"endOffset":1967,"count":0},{"startOffset":2074,"endOffset":2149,"count":4},{"startOffset":2159,"endOffset":2212,"count":0},{"startOffset":2327,"endOffset":3577,"count":0},{"startOffset":3641,"endOffset":3719,"count":0},{"startOffset":3720,"endOffset":3767,"count":0},{"startOffset":3769,"endOffset":3810,"count":0},{"startOffset":3982,"endOffset":5018,"count":18},{"startOffset":4244,"endOffset":4250,"count":0},{"startOffset":4251,"endOffset":4256,"count":0},{"startOffset":4433,"endOffset":4718,"count":0},{"startOffset":4797,"endOffset":4821,"count":12},{"startOffset":4824,"endOffset":4883,"count":0},{"startOffset":4937,"endOffset":5004,"count":6},{"startOffset":5146,"endOffset":5188,"count":0},{"startOffset":5190,"endOffset":6440,"count":0},{"startOffset":6476,"endOffset":6506,"count":0},{"startOffset":6535,"endOffset":7830,"count":0},{"startOffset":7932,"endOffset":8384,"count":0}],"isBlockCoverage":true},{"functionName":"finish","ranges":[{"startOffset":643,"endOffset":782,"count":2},{"startOffset":742,"endOffset":750,"count":0}],"isBlockCoverage":true},{"functionName":"target","ranges":[{"startOffset":1798,"endOffset":1887,"count":0}],"isBlockCoverage":false},{"functionName":"_func","ranges":[{"startOffset":8422,"endOffset":8524,"count":6}],"isBlockCoverage":true},{"functionName":"keys","ranges":[{"startOffset":8530,"endOffset":10169,"count":5},{"startOffset":8833,"endOffset":8908,"count":0},{"startOffset":8987,"endOffset":9060,"count":0},{"startOffset":9128,"endOffset":9506,"count":0},{"startOffset":9558,"endOffset":10099,"count":32},{"startOffset":9813,"endOffset":10089,"count":0}],"isBlockCoverage":true},{"functionName":"unknown","ranges":[{"startOffset":10175,"endOffset":10305,"count":0}],"isBlockCoverage":false},{"functionName":"length","ranges":[{"startOffset":10311,"endOffset":10700,"count":0}],"isBlockCoverage":false},{"functionName":"arity","ranges":[{"startOffset":10706,"endOffset":11053,"count":6}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":10839,"endOffset":11045,"count":0}],"isBlockCoverage":false},{"functionName":"minArity","ranges":[{"startOffset":11059,"endOffset":11420,"count":0}],"isBlockCoverage":false},{"functionName":"maxArity","ranges":[{"startOffset":11426,"endOffset":11781,"count":0}],"isBlockCoverage":false},{"functionName":"min","ranges":[{"startOffset":11787,"endOffset":12166,"count":0}],"isBlockCoverage":false},{"functionName":"max","ranges":[{"startOffset":12172,"endOffset":12551,"count":0}],"isBlockCoverage":false},{"functionName":"pattern","ranges":[{"startOffset":12557,"endOffset":13288,"count":1},{"startOffset":12787,"endOffset":12792,"count":0},{"startOffset":12961,"endOffset":13158,"count":0}],"isBlockCoverage":true},{"functionName":"schema","ranges":[{"startOffset":13294,"endOffset":13562,"count":0}],"isBlockCoverage":false},{"functionName":"with","ranges":[{"startOffset":13568,"endOffset":13646,"count":0}],"isBlockCoverage":false},{"functionName":"without","ranges":[{"startOffset":13652,"endOffset":13736,"count":0}],"isBlockCoverage":false},{"functionName":"xor","ranges":[{"startOffset":13742,"endOffset":13884,"count":0}],"isBlockCoverage":false},{"functionName":"or","ranges":[{"startOffset":13890,"endOffset":14030,"count":2}],"isBlockCoverage":true},{"functionName":"and","ranges":[{"startOffset":14036,"endOffset":14178,"count":0}],"isBlockCoverage":false},{"functionName":"nand","ranges":[{"startOffset":14184,"endOffset":14328,"count":0}],"isBlockCoverage":false},{"functionName":"requiredKeys","ranges":[{"startOffset":14334,"endOffset":14504,"count":0}],"isBlockCoverage":false},{"functionName":"optionalKeys","ranges":[{"startOffset":14510,"endOffset":14680,"count":0}],"isBlockCoverage":false},{"functionName":"rename","ranges":[{"startOffset":14686,"endOffset":15359,"count":0}],"isBlockCoverage":false},{"functionName":"applyFunctionToChildren","ranges":[{"startOffset":15365,"endOffset":16625,"count":0}],"isBlockCoverage":false},{"functionName":"_dependency","ranges":[{"startOffset":16631,"endOffset":16984,"count":2},{"startOffset":16745,"endOffset":16863,"count":4}],"isBlockCoverage":true},{"functionName":"describe","ranges":[{"startOffset":16990,"endOffset":18581,"count":0}],"isBlockCoverage":false},{"functionName":"assert","ranges":[{"startOffset":18587,"endOffset":19704,"count":0}],"isBlockCoverage":false},{"functionName":"type","ranges":[{"startOffset":19710,"endOffset":20144,"count":3},{"startOffset":19852,"endOffset":19871,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":19914,"endOffset":20136,"count":0}],"isBlockCoverage":false},{"functionName":"ref","ranges":[{"startOffset":20150,"endOffset":20407,"count":0}],"isBlockCoverage":false},{"functionName":"internals.safeParse","ranges":[{"startOffset":20434,"endOffset":20548,"count":0}],"isBlockCoverage":false},{"functionName":"internals.groupChildren","ranges":[{"startOffset":20829,"endOffset":21257,"count":0}],"isBlockCoverage":false},{"functionName":"internals.with","ranges":[{"startOffset":21278,"endOffset":21689,"count":0}],"isBlockCoverage":false},{"functionName":"internals.without","ranges":[{"startOffset":21713,"endOffset":22126,"count":0}],"isBlockCoverage":false},{"functionName":"internals.xor","ranges":[{"startOffset":22146,"endOffset":22704,"count":0}],"isBlockCoverage":false},{"functionName":"internals.or","ranges":[{"startOffset":22723,"endOffset":23076,"count":0}],"isBlockCoverage":false},{"functionName":"internals.and","ranges":[{"startOffset":23096,"endOffset":23680,"count":0}],"isBlockCoverage":false},{"functionName":"internals.nand","ranges":[{"startOffset":23701,"endOffset":24253,"count":0}],"isBlockCoverage":false}]},{"scriptId":"201","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/topo/lib/index.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6025,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports.internals.Topo","ranges":[{"startOffset":154,"endOffset":213,"count":5}],"isBlockCoverage":true},{"functionName":"internals.Topo.add","ranges":[{"startOffset":248,"endOffset":1391,"count":32},{"startOffset":299,"endOffset":304,"count":0},{"startOffset":424,"endOffset":429,"count":0},{"startOffset":464,"endOffset":470,"count":0},{"startOffset":1326,"endOffset":1330,"count":0}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":940,"endOffset":1192,"count":32}],"isBlockCoverage":true},{"functionName":"internals.Topo.merge","ranges":[{"startOffset":1428,"endOffset":2044,"count":0}],"isBlockCoverage":false},{"functionName":"internals.mergeSort","ranges":[{"startOffset":2070,"endOffset":2153,"count":0}],"isBlockCoverage":false},{"functionName":"internals.Topo._sort","ranges":[{"startOffset":2190,"endOffset":6023,"count":32},{"startOffset":2439,"endOffset":3023,"count":145},{"startOffset":2927,"endOffset":3017,"count":0},{"startOffset":3148,"endOffset":3628,"count":145},{"startOffset":3335,"endOffset":3584,"count":0},{"startOffset":3795,"endOffset":4071,"count":0},{"startOffset":4228,"endOffset":4448,"count":145},{"startOffset":4349,"endOffset":4442,"count":0},{"startOffset":4565,"endOffset":5536,"count":145},{"startOffset":4616,"endOffset":5335,"count":0},{"startOffset":5584,"endOffset":5641,"count":0},{"startOffset":5717,"endOffset":5796,"count":145}],"isBlockCoverage":true},{"functionName":"","ranges":[{"startOffset":5855,"endOffset":5988,"count":145}],"isBlockCoverage":true}]},{"scriptId":"202","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/xml2json/lib/json2xml.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":2854,"count":1}],"isBlockCoverage":true},{"functionName":"module.exports","ranges":[{"startOffset":59,"endOffset":478,"count":0}],"isBlockCoverage":false},{"functionName":"ToXml.parse","ranges":[{"startOffset":504,"endOffset":1927,"count":0}],"isBlockCoverage":false},{"functionName":"ToXml.openTag","ranges":[{"startOffset":1956,"endOffset":2055,"count":0}],"isBlockCoverage":false},{"functionName":"ToXml.addAttr","ranges":[{"startOffset":2082,"endOffset":2227,"count":0}],"isBlockCoverage":false},{"functionName":"ToXml.addTextContent","ranges":[{"startOffset":2261,"endOffset":2325,"count":0}],"isBlockCoverage":false},{"functionName":"ToXml.closeTag","ranges":[{"startOffset":2353,"endOffset":2428,"count":0}],"isBlockCoverage":false},{"functionName":"ToXml.completeTag","ranges":[{"startOffset":2459,"endOffset":2570,"count":0}],"isBlockCoverage":false},{"functionName":"ToXml","ranges":[{"startOffset":2571,"endOffset":2853,"count":0}],"isBlockCoverage":false}]},{"scriptId":"203","url":"tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":5192,"count":1}],"isBlockCoverage":false},{"functionName":"isatty","ranges":[{"startOffset":1575,"endOffset":1654,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream","ranges":[{"startOffset":1658,"endOffset":2164,"count":0}],"isBlockCoverage":false},{"functionName":"ReadStream.setRawMode","ranges":[{"startOffset":2318,"endOffset":2543,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream","ranges":[{"startOffset":2548,"endOffset":3545,"count":2},{"startOffset":2619,"endOffset":2646,"count":0},{"startOffset":2685,"endOffset":2714,"count":0},{"startOffset":2807,"endOffset":2854,"count":0}],"isBlockCoverage":true},{"functionName":"WriteStream._refreshSize","ranges":[{"startOffset":3847,"endOffset":4290,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.cursorTo","ranges":[{"startOffset":4349,"endOffset":4492,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.moveCursor","ranges":[{"startOffset":4530,"endOffset":4679,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearLine","ranges":[{"startOffset":4716,"endOffset":4858,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.clearScreenDown","ranges":[{"startOffset":4901,"endOffset":5039,"count":0}],"isBlockCoverage":false},{"functionName":"WriteStream.getWindowSize","ranges":[{"startOffset":5080,"endOffset":5132,"count":0}],"isBlockCoverage":false}]},{"scriptId":"204","url":"internal/tty.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":6521,"count":1}],"isBlockCoverage":false},{"functionName":"warnOnDeactivatedColors","ranges":[{"startOffset":2527,"endOffset":2999,"count":0}],"isBlockCoverage":false},{"functionName":"getColorDepth","ranges":[{"startOffset":3162,"endOffset":6020,"count":103},{"startOffset":3369,"endOffset":3743,"count":0},{"startOffset":4092,"endOffset":4120,"count":0},{"startOffset":4239,"endOffset":4330,"count":1},{"startOffset":4628,"endOffset":4683,"count":0},{"startOffset":4690,"endOffset":5336,"count":0},{"startOffset":5342,"endOffset":5359,"count":0},{"startOffset":5365,"endOffset":5406,"count":0},{"startOffset":5412,"endOffset":5460,"count":0},{"startOffset":5465,"endOffset":5533,"count":0},{"startOffset":5535,"endOffset":6019,"count":0}],"isBlockCoverage":true},{"functionName":"hasColors","ranges":[{"startOffset":6024,"endOffset":6462,"count":0}],"isBlockCoverage":false}]},{"scriptId":"205","url":"os.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":7829,"count":1}],"isBlockCoverage":false},{"functionName":"getCheckedFunction","ranges":[{"startOffset":1969,"endOffset":2219,"count":3}],"isBlockCoverage":true},{"functionName":"checkError","ranges":[{"startOffset":2029,"endOffset":2214,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease","ranges":[{"startOffset":2508,"endOffset":2521,"count":1}],"isBlockCoverage":true},{"functionName":"getOSType","ranges":[{"startOffset":2542,"endOffset":2552,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion","ranges":[{"startOffset":2576,"endOffset":2589,"count":0}],"isBlockCoverage":false},{"functionName":"getFreeMem.","ranges":[{"startOffset":2626,"endOffset":2644,"count":0}],"isBlockCoverage":false},{"functionName":"getHostname.","ranges":[{"startOffset":2680,"endOffset":2699,"count":0}],"isBlockCoverage":false},{"functionName":"getOSVersion.","ranges":[{"startOffset":2736,"endOffset":2756,"count":0}],"isBlockCoverage":false},{"functionName":"getOSType.","ranges":[{"startOffset":2790,"endOffset":2807,"count":0}],"isBlockCoverage":false},{"functionName":"getOSRelease.","ranges":[{"startOffset":2844,"endOffset":2864,"count":0}],"isBlockCoverage":false},{"functionName":"getHomeDirectory.","ranges":[{"startOffset":2905,"endOffset":2929,"count":0}],"isBlockCoverage":false},{"functionName":"getTotalMem.","ranges":[{"startOffset":2965,"endOffset":2984,"count":0}],"isBlockCoverage":false},{"functionName":"getUptime.","ranges":[{"startOffset":3018,"endOffset":3035,"count":0}],"isBlockCoverage":false},{"functionName":"loadavg","ranges":[{"startOffset":3132,"endOffset":3235,"count":0}],"isBlockCoverage":false},{"functionName":"cpus","ranges":[{"startOffset":3239,"endOffset":3670,"count":0}],"isBlockCoverage":false},{"functionName":"arch","ranges":[{"startOffset":3674,"endOffset":3718,"count":0}],"isBlockCoverage":false},{"functionName":"arch.","ranges":[{"startOffset":3746,"endOffset":3764,"count":0}],"isBlockCoverage":false},{"functionName":"platform","ranges":[{"startOffset":3769,"endOffset":3821,"count":0}],"isBlockCoverage":false},{"functionName":"platform.","ranges":[{"startOffset":3853,"endOffset":3875,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir","ranges":[{"startOffset":3880,"endOffset":4415,"count":0}],"isBlockCoverage":false},{"functionName":"tmpdir.","ranges":[{"startOffset":4445,"endOffset":4459,"count":0}],"isBlockCoverage":false},{"functionName":"endianness","ranges":[{"startOffset":4464,"endOffset":4513,"count":0}],"isBlockCoverage":false},{"functionName":"endianness.","ranges":[{"startOffset":4547,"endOffset":4564,"count":0}],"isBlockCoverage":false},{"functionName":"countBinaryOnes","ranges":[{"startOffset":4656,"endOffset":4914,"count":0}],"isBlockCoverage":false},{"functionName":"getCIDR","ranges":[{"startOffset":4918,"endOffset":5671,"count":0}],"isBlockCoverage":false},{"functionName":"networkInterfaces","ranges":[{"startOffset":5675,"endOffset":6380,"count":0}],"isBlockCoverage":false},{"functionName":"setPriority","ranges":[{"startOffset":6384,"endOffset":6686,"count":0}],"isBlockCoverage":false},{"functionName":"getPriority","ranges":[{"startOffset":6690,"endOffset":6958,"count":0}],"isBlockCoverage":false},{"functionName":"userInfo","ranges":[{"startOffset":6962,"endOffset":7199,"count":0}],"isBlockCoverage":false}]},{"scriptId":"207","url":"file:///C:/Users/brand/git/node-dominos-pizza-api/node_modules/joi/lib/schemas.js","functions":[{"functionName":"","ranges":[{"startOffset":0,"endOffset":639,"count":1}],"isBlockCoverage":true}]}],"timestamp":23275.739828} \ No newline at end of file diff --git a/coverage/utils/index.html b/coverage/utils/index.html new file mode 100644 index 0000000..cdf4736 --- /dev/null +++ b/coverage/utils/index.html @@ -0,0 +1,111 @@ + + + + + + Code coverage report for utils + + + + + + + + + +
+
+

All files utils

+
+ +
+ 100% + Statements + 20/20 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 20/20 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
urls.js +
+
100%20/20100%1/1100%0/0100%20/20
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/coverage/utils/urls.js.html b/coverage/utils/urls.js.html new file mode 100644 index 0000000..8e027c0 --- /dev/null +++ b/coverage/utils/urls.js.html @@ -0,0 +1,140 @@ + + + + + + Code coverage report for utils/urls.js + + + + + + + + + +
+
+

All files / utils urls.js

+
+ +
+ 100% + Statements + 20/20 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 20/20 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +211x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
const urls={
+  referer : "https://order.dominos.com/en/pages/order/",
+  sourceUri : "order.dominos.com",
+  store : {
+    find : "https://order.dominos.com/power/store-locator?s=${line1}&c=${line2}&type=${type}",
+    info : "https://order.dominos.com/power/store/${storeID}/profile",
+    menu : "https://order.dominos.com/power/store/${storeID}/menu?lang=${lang}&structured=true"
+  },
+  order: {
+    validate: "https://order.dominos.com/power/validate-order",
+    price: "https://order.dominos.com/power/price-order",
+    place: "https://order.dominos.com/power/place-order"
+  },
+  track: "https://order.dominos.com/orderstorage/GetTrackerData?"
+};
+ 
+export {
+    urls as default,
+    urls
+}
+ 
+ +
+
+ + + + + + + + + \ No newline at end of file diff --git a/docs/Address.md b/docs/Address.md new file mode 100644 index 0000000..9fedf9e --- /dev/null +++ b/docs/Address.md @@ -0,0 +1,134 @@ +Address +==== +This is the primary Address Class used for all things Domnio's. + +If you have cloned this repo, you can run the example with this command: +`node ./example/address.js` + +extends `DominosFormat` class, see more in [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) + +Constructor +==== + +`new Address({...})` + +|argument|type |required|description| +|--------|------ |--------|-------| +|address |`AddressObject`/`AddressString` |true |the instance table below shows all the useable `AddressObject` fields | + +Instance +==== + +Also check the [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) as this class extends it. + +|member/method|type |description| +|-------------|------|------- | +|.street |String|street address (most commonly used to combine street number, name and apt number)| +|.streetName |String|street name| +|.streetNumber|String|street number| +|.unitType |String|unit type, suite, apt etc.| +|.unitNumber |String|apartment number| +|.city |String|address city| +|.region |String|in the US this would be the state. In other countries it may be the province or prefecture| +|.postalCode |String|address postal or zip code| +|.deliveryInstructions|String|This is for special injstructions, like ring the bell, or please don't give the Pizza to the old lady out front, she is not my Grandma, and always steals my food deliverys.| + + +#### AddressObject + +Instead of passing an address string when initing the Address class (which needs to be parsed and can be comlicated), you can instead collect the address information and format it into an AddressObject. Dominos will try to figure the address out from any combination of address parts. None of these fields are required, but you should atleast provide enough information for Dominos to figure out the general location. + +```js + + const addressObject={ + street:'900 Clark Ave Apt. 2B', + city:'St. Louis', + region:'MO', + postalCode:'63102', + deliveryInstructions:'please dont give the Pizza to the old lady out front, she is not my Grandma.' + } + +``` + +#### Full and Partial Address Instantiation + +The Address class will do its best to parse an AddressString into an AddressObject, and/or massage the AddressObject into a dominos api formatted Address. + +```js + + import {Address} from 'dominos'; + + //full address examples + const address = new Address( + { + street:'900 Clark Ave', + city:'St. Louis', + region:'MO', + postalCode:'63102' + } + ); + + const address=new Address('900 Clark Ave, St. Louis, MO, 63102'); + + + + //partial address examples + const address = new Address( + { + street:'900 Clark Ave', + city:'St. Louis', + postalCode:'63102' + } + ); + + const address=new Address('900 Clark Ave, St. Louis, 63102'); + + + + //street and zip only examples + const fullAddressObject = new Address( + { + street:'900 Clark Ave', + postalCode:'63102' + } + ); + + const address=new Address('900 Clark Ave, 63102'); + + //zip only examples + const fullAddressObject = new Address( + { + postalCode:'63102' + } + ); + + const onlyZip = new Address('63102'); + +``` + +#### `address.formatted` Dominos API Formatted Address + +Dominos API uses pascal case for the Address object, we convert the values set to the other members of the address object to conform to the Dominos spec here. + +```js + + import {Address} from 'dominos'; + + const address=new Address('900 Clark Ave, St. Louis, MO, 63102'); + + console.log(address.formatted); + +``` + +This outputs the dominos style address object. + +```js + + { + Street:'900 Clark Ave', + City:'St. Louis', + Region:'MO', + PostalCode:'63102' + } + +``` diff --git a/docs/AmountsBreakdown.md b/docs/AmountsBreakdown.md new file mode 100644 index 0000000..e05cb98 --- /dev/null +++ b/docs/AmountsBreakdown.md @@ -0,0 +1,79 @@ +AmountsBreakdown +==== +This is the primary AmountsBreakdown Class used for all things Domnio's. + +Really unless you are working on the core of this module you don't need to understand this class as it is not used outside of the internals of the [Order Class](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/Order.md) itself. + +extends `DominosFormat` class, see more in [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) + +Constructor +==== + +`new AmountsBreakdown(params)` + +|params. |type |required| +|-------- |------|--------| +|.foodAndBeverage |String|no | +|.adjustment |String|no | +|.surcharge |String|no | +|.deliveryFee |String|no | +|.tax |Number|no | +|.tax1 |Number|no | +|.tax2 |Number|no | +|.tax3 |Number|no | +|.tax4 |Number|no | +|.tax5 |Number|no | +|.bottle |Number|no | +|.customer |Number|no | +|.roundingAdjustment|Number|no | +|.cash |Number|no | +|.savings |String|no | + +Instance +==== + +Also check the [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) as this class extends it. + +|member/method|type |description| +|-------------|------|------- | +|.foodAndBeverage |String|cost of the food and beverage.| +|.adjustment |String|? maybe related to coupons ?| +|.surcharge |String|?| +|.deliveryFee |String|delivery fee| +|.tax |Number|tax| +|.tax1 |Number|main tax| +|.tax2 |Number|?| +|.tax3 |Number|?| +|.tax4 |Number|?| +|.tax5 |Number|?| +|.bottle |Number|? maybe a recycling crv?| +|.customer |Number|Total order price for the customer| +|.roundingAdjustment|Number|?| +|.cash |Number|?| +|.savings |String|? maybe related to coupons ?| + + + +```js + + //this is a sample AmountsBreakdown from a dominos order + + AmountsBreakdown { + foodAndBeverage: '31.98', + adjustment: '0.00', + surcharge: '0.00', + deliveryFee: '0.00', + tax: 2.96, + tax1: 2.96, + tax2: 0, + tax3: 0, + tax4: 0, + tax5: 0, + bottle: 0, + customer: 34.94, + roundingAdjustment: 0, + cash: 0, + savings: '0.00' + } + +``` \ No newline at end of file diff --git a/docs/Customer.md b/docs/Customer.md new file mode 100644 index 0000000..0237545 --- /dev/null +++ b/docs/Customer.md @@ -0,0 +1,75 @@ +Customer +==== +The customer class is used to create a customer instance for a Domino's Pizza Order. + +If you have cloned this repo, you can run the example with this command: +`node ./example/customer.js` + +extends `DominosFormat` class, see more in [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) + +Constructor +==== + +`new Customer({...})` + +|params.argument|type |required|description| +|--------|------|--------|-------| +|address |[Address](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/Address.md), AddressObject, AddressString|yes|customers Address. See more info on what is an acceptable Address/AddressObject or AddressString in the [Address.md doc](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/Address.md)| +|firstName |String|yes|| +|lastName |String|yes|| +|email |String|yes|| +|phone |String|yes|| + +Instance +==== + +Also check the [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) as this class extends it. + +|member/method|type |description| +|-------------|------|------- | +|.address |[Address](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/Address.md)|customers Address| +|.firstName |String| | +|.lastName |String|| +|.email |String|| +|.phone |String|| + + + + +```js + +import {Customer} from 'dominos'; + +const customer = new Customer( + { + address: '900 Clark Ave, 63102', + firstName: 'Barack', + lastName: 'Obama', + phone: '1-800-555-2368', + email: 'chief@us.gov' + } +); + +console.dir(customer); + +//logs out +Customer { + firstName: 'Barack', + lastName: 'Obama', + email: 'chief@us.gov', + address: Address { + street: '900 Clark Ave', + streetNumber: '', + streetName: '', + unitType: '', + unitNumber: '', + city: '', + region: '', + postalCode: '63102', + deliveryInstructions: '' + }, + phone: '1-800-555-2368' +} + + +``` \ No newline at end of file diff --git a/docs/DominosAPIResponse.md b/docs/DominosAPIResponse.md new file mode 100644 index 0000000..0c50244 --- /dev/null +++ b/docs/DominosAPIResponse.md @@ -0,0 +1,47 @@ +Dominos API Response information +==== + +Not all responses actually follow this format, some will throw a `FetchError` because the Domino's API is inconsistant with how it handles errors. Sometimes it follows the below JSON, and other times it returns SOAP and yet others HTML Error Pages. It is best to wrap things in `try catch` if you want to have error handling for invalid requests. + + +Good response +==== + +```js + + dominosAPIResponse: { + Status: 0 + } + +``` + + +Bad Response +==== + +```js + + { + Status: -1, + StatusItems: [ { Code: 'MissingCityRegionOrPostalCode' } ] + } + +``` + +Non JSON response +==== + +It is a shame that the API is not consistant. + +```js + +FetchError: invalid json response body at https://www.dominos.com/ reason: Unexpected token < in JSON at position 0 + at C:\Users\brand\git\node-dominos-pizza-api\node_modules\node-fetch\lib\index.js:272:32 + at processTicksAndRejections (internal/process/task_queues.js:93:5) + at async get (file:///~/git/node-dominos-pizza-api/utils/api-json.js:67:18) + at async Store.#init (file:///~/git/node-dominos-pizza-api/modules/Store.js:25:19) + at async file:///~/git/node-dominos-pizza-api/example/api-examples/dominos-store-data.js:6:13 { + type: 'invalid-json' + + +``` \ No newline at end of file diff --git a/docs/DominosErrors.md b/docs/DominosErrors.md new file mode 100644 index 0000000..7cb9cf9 --- /dev/null +++ b/docs/DominosErrors.md @@ -0,0 +1,33 @@ +# Global DominosErrors + +These custom errors are added to the global object for use in your code and the `dominos` api. You can use them to validate errors or even throw your own if you are making a module ontop of this one. + +|error |parameters |description| +|----- |---------- |-----------| +|DominosValidationError |`.validationResponse`|this error is thrown when a dominos validation request fails| +|DominosPriceError |`.priceResponse` |this error is thrown when a dominos price request fails| +|DominosPlaceOrderError |`.placeOrderResponse`|this error is thrown when a dominos place request fails| +|DominosAddressError |message string |this error is thrown when an issue is detected with a dominos address| +|DominosDateError |message string |this error is thrown when an issue is detected with a date being used for a dominos order| +|DominosStoreError |message string |this error is thrown when an issue is detected with a store being used for a dominos order| +|DominosProductsError |message string |this error is thrown when an issue is detected with an orders product list| + + +```js + +throw new DominosValidationError(order.validationResponse); + +throw new DominosPriceError(order.priceResponse); + +throw new DominosPlaceOrderError(order.placeResponse); + +throw new DominosAddressError('before you place an order, you must insure `order.address.region` is set'); + +throw new DominosDateError('Order dates must be in the future.'); + +throw new DominosStoreError('`order.storeID` must be specified before placing order.'); + +throw new DominosProductsError('`order.products` must contain atleast one item before placing order.'); + + +``` \ No newline at end of file diff --git a/docs/DominosFormat.md b/docs/DominosFormat.md new file mode 100644 index 0000000..f2c1658 --- /dev/null +++ b/docs/DominosFormat.md @@ -0,0 +1,5 @@ +important to document + +get .formatted returns dominos format PascalCase from the camelCase instance + +set .formatted updates the instance FROM a dominos format PascalCase TO the standard camelCase diff --git a/docs/DominosMenu.md b/docs/DominosMenu.md new file mode 100644 index 0000000..bd9c533 --- /dev/null +++ b/docs/DominosMenu.md @@ -0,0 +1,1070 @@ +# Dominos menu + +The `menu.domniosAPIResponse` object is ***HUGE***! It contains the actual dominos menu response with information on everything you could imagine for a Store's Menu. We parse this information and provide a simpler to use menu in `menu.menu`. + +If you want to see the easy to use parsed `.menu` object and documentation, check out the [parsed Dominos Pizza Menu.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/Menu.md), it is designed to be much easier to use. + + +## menu.domniosAPIResponse + +|member |type |description| +|------ |---- |-----------| +|.Misc |Object|Contains general information about the API andmenu request to Dominos. Below you will find specific information for this request, and you can see some core information about the requests in the [Domino's API Response Doc](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosAPIResponse.md).| +|.Categorization |Object|This contains categories of products. Each Category includes Sub categories and all the available products in that sub category for a specific store menu.| +|.Coupons |Object|| +|.Flavors |Object|| +|.Products |Object|| +|.Sides |Object|| +|.Toppings |Object|| +|.Varients |Object|| +|.PreconfiguredProducts |Object|| +|.ShortProductDescriptions|Object|| +|.ShortCouponDescriptions |Object|| +|.CouponTiers |Object|| +|.UnsupportedProducts |Object|| +|.CookingInstructions |Object|| +|.CookingInstructionGroups|Object|| + + +```js + + menu: { + Misc: [Object], + Categorization: [Object], + Coupons: [Object], + Flavors: [Object], + Products: [Object], + Sides: [Object], + Sizes: [Object], + Toppings: [Object], + Variants: [Object], + PreconfiguredProducts: [Object], + ShortProductDescriptions: [Object], + ShortCouponDescriptions: [Object], + CouponTiers: [Object], + UnsupportedProducts: [Object], + UnsupportedOptions: [Object], + CookingInstructions: [Object], + CookingInstructionGroups: [Object] + } + +``` + + +# menu.domniosAPIResponse.Misc + +The `menu.domniosAPIResponse.Misc` object contains a little bit of useful information like the `StoreID` and date and time at the stores location. You can see some core information about the requests in the [Domino's API Response Doc](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosAPIResponse.md). + +```js + + Misc: { + //core + "Status": 0, + "StatusItems": [], + + //specific to this request + "StoreID": "4332", + "BusinessDate": "2021-01-10", + "StoreAsOfTime": "2021-01-10 14:51:21", + "LanguageCode": "en", + "Version": "1.001", + "ExpiresOn": "" + }, + +``` + +--- + +# menu.domniosAPIResponse.Categorization + +A short example of the `menu.domniosAPIResponse.Categorization` object. This object contains a lot of information. It starts with categories such as `Food` and `Drink`. Inside of each category is an array of sub categories such as `Pizza`, or `Pasta`. + +|member |type |description| +|------ |------|-----------| +|.Food |Object|Food related categories| +|.Coupons |Object|Coupon related categories| +|.CouponsByProduct |Object|Coupons sorted into product related categories| +|.PreconfiguredProducts |Object|Products that are allready defined, like a large Cheese Pizza for example| + + +```js + + Categorization: { + Food: [Object], + Coupons: [Object], + CouponsByProduct: [Object], + PreconfiguredProducts: [Object] + }, + +``` + +# Categories + +Each category is formattes as follows. The product information is contained actually contained deeper within the children of the nested `.categories` array. + +|member |type |description| +|------ |------|-----------| +|.Categories |Array |list of the various sub categories of this category| +|.Code |String|Code for this category| +|.Description |String|Description of the category| +|.Products |Array |Products contained in this category, which is generally none as products are in the sub categories mostly| +|.Name |String|Name of this category| +|.Tags |Object|| + + +## .Food + +`menu.domniosAPIResponse.Categorization.Food` + + +```js + + Food: { + Categories: [ + [Object], [Object], + [Object], [Object], + [Object], [Object], + [Object], [Object], + [Object], [Object] + ], + Code: 'Food', + Description: 'Food Items', + Products: [], + Name: 'Food', + Tags: {} + }, + +``` + +### .Food.Categories + +|member |type |description| +|------ |------|-----------| +|.Categories |Array |list of the various sub categories of this sub category| +|.Code |String|Code for this category| +|.Description |String|Description of the category| +|.Products |Array |Products contained in this category, which is none if it contains sub categories, as the products will be in the deepest sub category only| +|.Name |String|Name of this category. This is usuially the same as `.Code`, but sometimes `.Name` is empty. This makes it unrelable, so we reccomend using `.Code`| +|.Tags |Object|| + +List of `.Food` catgories and if they have products or sub categories. You will notice a patter where, if there ***are*** sub categories, there will in turn be no products. If there ***are not*** any sub categories, there will be products. + +|category Name|has products |has sub categories| +|-------------|------------ |------------------| +|Pizza |no |yes| +|Sandwich |no |no| +|Pasta |yes |no| +|Wings |yes |no| +|Bread |yes |no| +|GSalad |yes |no| +|Chips |no |yes| +|Drinks |yes |no| +|Dessert |yes |no| +|Sides |yes |no| + +```js + + Categories: [ + { + //sub categories for Pizza + Categories: [Array], + Code: 'Pizza', + Description: '', + //no products because there are sub categories + Products: [], + Name: 'Pizza', + Tags: [Object] + }, + { + //no sub categories for drinks + Categories: [], + Code: 'Pasta', + Description: '', + //since no sub category, + //there are products + Products: [Array], + Name: 'Pasta', + Tags: [Object] + }, + ... + +``` + +### Category Products + +In each Category that contains no further Sub Categories, there will be a `.Products` Array which contains a list of product codes that are avauilable in this category. These product codes need to be looked up in the `menu.domniosAPIResponse.Procucts` Object. + +```js + +Products : [ + 'S_SCCBT', 'S_SCCHB', + 'S_SCSJP', 'S_SCSBBQ', + 'S_HOTWINGS', 'S_BBQW', + 'S_MILDWING', 'S_PLNWINGS', + 'S_SMANG', 'S_GPRMWING', + 'S_BONELESS' + ] + + +``` + + +## .Coupons + +`menu.domniosAPIResponse.Categorization.Coupons` + + +```js + + Coupons: { + Categories: [ [Object], [Object], [Object], [Object], [Object], [Object] ], + Code: 'Coupons', + Description: 'Coupon Items', + Products: [], + Name: 'Coupons', + Tags: {} + }, + +``` + + +## .CouponsByProduct + +`menu.domniosAPIResponse.Categorization.CouponsByProduct` + + +```js + +CouponsByProduct: { + Categories: [ + [Object], [Object], + [Object], [Object], + [Object], [Object], + [Object], [Object], + [Object] + ], + Code: 'CouponsByProduct', + Description: 'Coupon Items by Product', + Products: [], + Name: 'Coupons by Product', + Tags: {} + }, + +``` + + +## .PreconfiguredProducts + +`menu.domniosAPIResponse.Categorization.PreconfiguredProducts` + + +```js + +PreconfiguredProducts: { + Categories: [ [Object], [Object] ], + Code: 'PreconfiguredProducts', + Description: 'Preconfigured Products', + Products: [], + Name: 'Preconfigured Products', + Tags: {} + } + +``` + +--- + + + + +# Full menu example response + +Here is a full example from store `4332`. Enjoy perusing the available data. + +```js + +{ + + "Misc": { + "Status": 0, + "StoreID": "4332", + "BusinessDate": "2021-01-10", + "StoreAsOfTime": "2021-01-10 14:51:21", + "LanguageCode": "en", + "Version": "1.001", + "ExpiresOn": "" + }, + + "Categorization": { + + "Food": { + + "Categories": [ + { + + "Categories": [ + + { + "Categories": [], + "Code": "BuildYourOwn", + "Description": "", + "Products": [ + "S_PIZZA" + ], + "Name": "Build Your Own", + "Tags": {} + }, + ... + + ], + + "Code": "Pizza", + "Description": "", + "Products": [], + "Name": "Pizza", + "Tags": { + "PartCount": "2", + "OptionQtys": "0:0.5:1:1.5:2", + "MaxOptionQty": "10", + "DefaultSpecialtyCode": "PIZZA", + "PageTags": "Specialty", + "NeedsCustomization": true, + "CouponTier": "MultiplePizza:MultiplePizzaB:MultiplePizzaC:MultiplePizzaD", + "IsDisplayedOnMakeline": true + } + }, + + { + + "Categories": [], + + "Code": "Pasta", + "Description": "", + "Products": [ + "S_ALFR", + "S_MARIN", + ... + ], + "Name": "Pasta", + "Tags": { + "OptionQtys": "0:1", + "MaxOptionQty": "3", + "IsDisplayedOnMakeline": true + } + }, + ... + ] + }, + + "Coupons": { + "Categories": [ + { + "Categories": [], + "Code": "Feeds1To2", + "Description": "", + "Products": [ + "5940", + "3715", + ... + ], + "Name": "Feeds 1-2", + "Tags": {} + }, + ... + }, + + + "CouponsByProduct": { + + "Categories": [ + { + "Categories": [], + "Code": "CouponPizza", + "Description": "", + "Products": [ + "2013", + "3715", + ... + ], + "Name": "", + "Tags": {} + }, + ... + + ], + + "Code": "CouponsByProduct", + "Description": "Coupon Items by Product", + "Products": [], + "Name": "Coupons by Product", + "Tags": {} + }, + + "PreconfiguredProducts": { + + "Categories": [ + + { + "Categories": [ + + { + "Categories": [], + "Code": "GroupOrderingPizza", + "Description": "Pizza", + "Products": [ + "14SCREEN", + "P_14SCREEN", + ... + ], + "Name": "Pizza", + "Tags": {} + }, + ... + + ], + "Code": "GroupOrdering", + "Description": "Group Ordering", + "Products": [], + "Name": "Group Ordering", + "Tags": {} + }, + + { + "Categories": [ + { + "Categories": [], + "Code": "PopularItemsPizza", + "Description": "Pizza", + "Products": [ + "XC_14SCREEN", + "PXC_14SCREEN", + ... + ], + "Name": "Pizza", + "Tags": {} + }, + ... + + ], + "Code": "PopularItems", + "Description": "Popular Items", + "Products": [], + "Name": "Popular Items", + "Tags": {} + } + ], + "Code": "PreconfiguredProducts", + "Description": "Preconfigured Products", + "Products": [], + "Name": "Preconfigured Products", + "Tags": {} + } + }, + + + "Coupons": { + "2013": { + "Code": "2013", + "ImageCode": "2T-GFC", + "Description": "", + "Name": "Small Gluten Free Crust Pizza with up to 3 Toppings", + "Price": "9.99", + "Tags": { + "ValidServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "EffectiveOn": "2013-09-24", + "MultiSame": true, + "Combine": "Complementary" + }, + "Local": true, + "Bundle": false + }, + ... + + }, + + "Flavors": { + "Pasta": { + "PASTA": { + "Code": "PASTA", + "Description": "Pasta served in a dish.", + "Local": false, + "Name": "Dish", + "SortSeq": "01" + }, + ... + + }, + + "Pizza": { + "HANDTOSS": { + "Code": "HANDTOSS", + "Description": "Garlic-seasoned crust with a rich, buttery taste.", + "Local": false, + "Name": "Hand Tossed", + "SortSeq": "01" + }, + ... + + }, + + "Wings": { + "BACTOM": { + "Code": "BACTOM", + "Description": "Tender bites of lightly breaded, 100% whole breast white meat chicken, topped with garlic parmesan white sauce, a blend of cheese made with mozzarella and cheddar, crispy bacon and tomato.", + "Local": false, + "Name": "Specialty Chicken – Crispy Bacon & Tomato", + "SortSeq": "01" + }, + ... + + } + }, + + + "Products": { + ... + + "F_COKE": { + "AvailableToppings": "", + "AvailableSides": "", + "Code": "F_COKE", + "DefaultToppings": "", + "DefaultSides": "", + "Description": "The authentic cola sensation that is a refreshing part of sharing life's enjoyable moments.", + "ImageCode": "F_COKE", + "Local": false, + "Name": "Coke®", + "ProductType": "Drinks", + "Tags": {}, + "Variants": [ + "20BCOKE", + "2LCOKE" + ] + }, + + ... + + "S_BUILD": { + "AvailableToppings": "Xf=0:1,Xm=0:1,P,S,B,Pm,H,K,Du,C,E,Fe,Cs,Cp,F,G,J,M,N,O,R,Rr,Si,Td,Z", + "AvailableSides": "", + "Code": "S_BUILD", + "DefaultToppings": "Xf=1", + "DefaultSides": "", + "Description": "Choose a sauce and up to 3 ingredients from more than a dozen meat or vegetable toppings.", + "ImageCode": "S_BUILD", + "Local": false, + "Name": "Build Your Own Pasta", + "ProductType": "Pasta", + "Tags": { + "OptionQtys": [ + "0", + "1" + ], + "MaxOptionQty": "3", + "IsDisplayedOnMakeline": true, + "SauceRequired": true + }, + "Variants": [ + "PINPASBD", + "PINBBLBD" + ] + }, + + ... + + "S_PIZZA": { + "AvailableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "AvailableSides": "", + "Code": "S_PIZZA", + "DefaultToppings": "X=1,C=1", + "DefaultSides": "", + "Description": "A custom pizza made to order. Choose from any of our delicious crust styles, including Handmade Pan.", + "ImageCode": "S_PIZZA", + "Local": false, + "Name": "Pizza", + "ProductType": "Pizza", + "Tags": { + "OptionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "MaxOptionQty": "10", + "PartCount": "2", + "NeedsCustomization": true, + "CouponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "IsDisplayedOnMakeline": true, + "sodiumWarningEnabled": true + }, + "Variants": [ + "10SCREEN", + "12SCREEN", + ... + + ] + }, + + ... + + }, + + + "Sides": { + "Bread": { + "SIDMAR": { + "Availability": [], + "Code": "SIDMAR", + "Description": "A sweet tomato sauce blended with garlic, basil and oregano", + "Local": false, + "Name": "Marinara", + "Tags": { + "Side": true + } + }, + ... + + }, + + + "Dessert": { + "SIDICE": { + "Availability": [], + "Code": "SIDICE", + "Description": "", + "Local": false, + "Name": "Icing", + "Tags": { + "Side": true + } + } + }, + + + "GSalad": { + "CAESAR": { + "Availability": [], + "Code": "CAESAR", + "Description": "A subtle combination of Parmesan cheese, olive oil, lemon, garlic, onion and black pepper.", + "Local": false, + "Name": "Caesar", + "Tags": { + "Side": true + } + }, + ... + + }, + + + "Wings": { + "HOTCUP": { + "Availability": [], + "Code": "HOTCUP", + "Description": "Domino's own spicy buffalo sauce.", + "Local": false, + "Name": "Hot Buffalo Dipping Cup", + "Tags": { + "Side": true + } + }, + ... + + } + }, + + "Sizes": { + "Bread": { + "BRD8": { + "Code": "BRD8", + "Description": "", + "Local": false, + "Name": "8-Piece", + "SortSeq": "02" + }, + ... + + }, + "CHARGES": { + "CHGONE": { + "Code": "CHGONE", + "Description": "", + "Local": false, + "Name": "Each", + "SortSeq": "01" + } + }, + "Dessert": { + "DRT2": { + "Code": "DRT2", + "Description": "", + "Local": false, + "Name": "2-Piece", + "SortSeq": "02" + }, + ... + + }, + "Drinks": { + "2LTB": { + "Code": "2LTB", + "Description": "", + "Local": false, + "Name": "2-Liter Bottle", + "SortSeq": "01" + }, + ... + + }, + "Pizza": { + "10": { + "Code": "10", + "Description": "", + "Local": false, + "Name": "Small (10\")", + "SortSeq": "03" + }, + ... + + }, + "Wings": { + "8PCW": { + "Code": "8PCW", + "Description": "", + "Local": false, + "Name": "8-Piece", + "SortSeq": "12" + }, + ... + + } + }, + "Toppings": { + "Bread": { + "K": { + "Availability": [], + "Code": "K", + "Description": "", + "Local": false, + "Name": "Bacon", + "Tags": { + "Meat": true + } + }, + ... + + }, + "Pasta": { + "Xf": { + "Availability": [], + "Code": "Xf", + "Description": "", + "Local": false, + "Name": "Alfredo Sauce", + "Tags": { + "WholeOnly": true, + "IgnoreQty": true, + "ExclusiveGroup": "Sauce", + "Sauce": true, + "NonMeat": true + } + }, + ... + + }, + "Pizza": { + "X": { + "Availability": [], + "Code": "X", + "Description": "", + "Local": false, + "Name": "Robust Inspired Tomato Sauce", + "Tags": { + "WholeOnly": true, + "IgnoreQty": true, + "ExclusiveGroup": "Sauce", + "Sauce": true, + "NonMeat": true + } + }, + ... + + }, + "Sandwich": { + "X": { + "Availability": [], + "Code": "X", + "Description": "", + "Local": false, + "Name": "Pizza Sauce", + "Tags": { + "WholeOnly": true, + "IgnoreQty": true, + "Sauce": true, + "NonMeat": true + } + }, + ... + + } + }, + + + "Variants": { + + ... + + "20BSPRITE": { + "Code": "20BSPRITE", + "FlavorCode": "", + "ImageCode": "20BSPRITE", + "Local": false, + "Name": "20oz Bottle Sprite®", + "Price": "2.09", + "ProductCode": "F_SPRITE", + "SizeCode": "20OZB", + "Tags": { + "DefaultSides": "", + "DefaultToppings": "" + }, + "AllowedCookingInstructions": "", + "DefaultCookingInstructions": "", + "Prepared": true, + "Pricing": { + "Price2-4": "2.09", + "Price1-0": "2.09", + "Price1-3": "2.09", + "Price2-3": "2.09", + "Price1-4": "2.09", + "Price2-2": "2.09", + "Price1-1": "2.09", + "Price2-1": "2.09", + "Price1-2": "2.09", + "Price2-0": "2.09" + }, + "Surcharge": "0" + }, + + ... + + "P12IREPV": { + "Code": "P12IREPV", + "FlavorCode": "HANDTOSS", + "ImageCode": "P12IREPV", + "Local": false, + "Name": "Medium (12\") Hand Tossed Pacific Veggie", + "Price": "14.99", + "ProductCode": "S_PIZPV", + "SizeCode": "12", + "Tags": { + "Specialty": true, + "DefaultSides": "", + "DefaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "AllowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "DefaultCookingInstructions": "NB,PIECT,GO", + "Prepared": true, + "Pricing": { + "Price2-4": "21.75", + "Price1-0": "14.99", + ... + + }, + "Surcharge": "0" + }, + + ... + + "14SCREEN": { + "Code": "14SCREEN", + "FlavorCode": "HANDTOSS", + "ImageCode": "14SCREEN", + "Local": false, + "Name": "Large (14\") Hand Tossed Pizza", + "Price": "13.99", + "ProductCode": "S_PIZZA", + "SizeCode": "14", + "Tags": { + "sodiumWarningEnabled": true, + "DefaultSides": "", + "DefaultToppings": "X=1,C=1" + }, + "AllowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "DefaultCookingInstructions": "NB,PIECT,GO", + "Prepared": true, + "Pricing": { + "Price2-4": "21.55", + "Price1-0": "13.99", + ... + + }, + "Surcharge": "0" + }, + + ... + + "P16IBKCZ": { + "Code": "P16IBKCZ", + "FlavorCode": "BK", + "ImageCode": "P16IBKCZ", + "Local": true, + "Name": "X-Large (16\") Brooklyn Wisconsin 6 Cheese Pizza", + "Price": "19.99", + "ProductCode": "S_PIZCZ", + "SizeCode": "16", + "Tags": { + "Specialty": true, + "HideOption": "Cp", + "DisabledToppings": "C", + "DefaultSides": "", + "DefaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "AllowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "DefaultCookingInstructions": "NB,PIECT", + "Prepared": true, + "Pricing": { + "Price2-4": "27.95", + "Price1-0": "19.99", + ... + + }, + "Surcharge": "0" + }, + ... + + }, + + + "PreconfiguredProducts": { + + "14SCREEN": { + "Code": "14SCREEN", + "Description": "Cheese made with 100% real mozzarella on top of our garlic-seasoned crust with a rich, buttery taste.", + "Name": "Hand Tossed Large Cheese", + "Size": "Large (14\")", + "Options": "", + "ReferencedProductCode": "14SCREEN", + "Tags": { + "Banner": "vegetarian" + } + }, + + "P_14SCREEN": { + "Code": "P_14SCREEN", + "Description": "Pepperoni and cheese made with 100% real mozzarella on top of our garlic-seasoned crust with a rich, buttery taste.", + "Name": "Hand Tossed Pepperoni", + "Size": "Large (14\")", + "Options": "P=1", + "ReferencedProductCode": "14SCREEN", + "Tags": {} + }, + + ... + + }, + "ShortProductDescriptions": { + + ... + + "2LCOKE": { + "Code": "2LCOKE", + "Description": "The authentic cola sensation that is a refreshing part of sharing life's enjoyable moments." + }, + + ... + + "PSANSAPH": { + "Code": "PSANSAPH", + "Description": "Experience delicious slices of steak topped with American and provolone cheese, fresh onions, green peppers and mushrooms. Oven-baked to perfection." + }, + + ... + + }, + + + "ShortCouponDescriptions": { + "8223": { + "Code": "8223", + "Description": "Four 20oz Coke Bundle" + }, + ... + + }, + + + "CouponTiers": { + + "MultiplePizzaC": { + "Code": "MultiplePizzaC", + "Coupons": { + "8651C": { + "Code": "8651C", + "CouponTierThreshold": 7, + "CouponTierPercentOff": 15, + "Name": "15% off all pizzas", + "Description": "15% de descuento todas las pizzas ", + "ServiceMethod": "" + }, + ... + + } + }, + ... + + }, + + + "UnsupportedProducts": { + "CEARVI": { + "PulseCode": "CEARVI", + "Description": "Each Raspberry Vinaigrette" + }, + + ... + + "PSANSAEP": { + "PulseCode": "PSANSAEP", + "Description": "Sandwich Bread Xtra Meat Philly Sandwich" + }, + ... + + }, + "UnsupportedOptions": { + "Bd": { + "PulseCode": "Bd", + "Description": "Blue Cheese Dip Cup" + }, + ... + + }, + + + "CookingInstructions": { + "WD": { + "Code": "WD", + "Name": "Well Done", + "Description": "", + "Group": "BAKE" + }, + "NB": { + "Code": "NB", + "Name": "Normal Bake", + "Description": "", + "Group": "BAKE" + }, + ... + + } +} + +``` \ No newline at end of file diff --git a/docs/DominosTypes.md b/docs/DominosTypes.md new file mode 100644 index 0000000..529ade6 --- /dev/null +++ b/docs/DominosTypes.md @@ -0,0 +1,120 @@ +# Dominos Custom Type Checking + +This class extends [`strong-type`](https://github.com/RIAEvangelist/strong-type) to allow strong and weak type checking of dominos specific types, errors and classes. It is used a lot in the `dominos` module to ensure correct types of arguments and errors. The `strong-type` module is really cool. + +See the [`strong-type` documentation](https://github.com/RIAEvangelist/strong-type) for more detailed information on how to use this. There are lots of cool features inherited into `IsDominos` like weak or non-strict type checking, which will just return true or false instead of throwing. + +# Example + +```js + +import {IsDominos,Address} from 'dominos' + +isDominos=new IsDominos; + +let address='bob'; + +//address is a string so this will throw an Error +try{ + isDominos.address(address); +}catch(err){ + console.trace(err); +} + +address=new Address('1 alvarado st, 93940'); + +//will not throw because this is an Address instance +isDominos.address(address); + + +``` + + +# Available Types + +```js + +import Is from 'strong-type'; +import VanillaTest from 'vanilla-test'; + +//imports all the various DOminos classes and Errors + +class IsDominos extends Is{ + test(value){ + return this.instanceCheck(value,VanillaTest); + } + + address(value){ + return this.instanceCheck(value,Address); + } + + amountsBreakdown(value){ + return this.instanceCheck(value,AmountsBreakdown); + } + + nearbyStores(value){ + return this.instanceCheck(value,NearbyStores); + } + + menu(value){ + return this.instanceCheck(value,Menu); + } + + store(value){ + return this.instanceCheck(value,Store); + } + + item(value){ + return this.instanceCheck(value,Item); + } + + customer(value){ + return this.instanceCheck(value,Customer); + } + + image(value){ + return this.instanceCheck(value,Image); + } + + payment(value){ + return this.instanceCheck(value,Payment); + } + + tracking(value){ + return this.instanceCheck(value,Tracking); + } + + validationError(value){ + return this.instanceCheck(value,DominosValidationError); + } + + priceError(value){ + return this.instanceCheck(value,DominosPriceError); + } + + placeOrderError(value){ + return this.instanceCheck(value,DominosPlaceOrderError); + } + + addressError(value){ + return this.instanceCheck(value,DominosAddressError); + } + + dateError(value){ + return this.instanceCheck(value,DominosDateError); + } + + storeError(value){ + return this.instanceCheck(value,DominosStoreError); + } + + productsError(value){ + return this.instanceCheck(value,DominosProductsError); + } + + fetchError(value){ + return this.instanceCheck(value,FetchError); + } +} + +``` \ No newline at end of file diff --git a/docs/Image.md b/docs/Image.md new file mode 100644 index 0000000..8db5d36 --- /dev/null +++ b/docs/Image.md @@ -0,0 +1,47 @@ +Image +=== +The Image class will grab the image for a product code and base 64 encode it. It extends the [`js-base64-file` class](https://github.com/RIAEvangelist/js-base64-file). + +![Pizza image](https://cache.dominos.com/olo/6_47_2/assets/build/market/US/_en/images/img/products/larges/S_PIZPX.jpg) + +If you have cloned this repo, you can run the example with this command: +`node ./example/image.js` + +Constructor +==== + +```js +new Image('S_PIZPX') +``` + +|params |type |required|description| +|-------- |------|--------|-------| +|productCode|string|yes |product code from the menu| + +Instance +==== + +This extends the [`js-base64-file` class](https://github.com/RIAEvangelist/js-base64-file). See its documentation for the inherited class members and methods. + +|member/method |type |description| +|------------- |------|------- | +|base64Image |string|base64 encoded dominos image| + +```js + +import {Image} from 'dominos'; + +const productCode='S_PIZPX'; +const savePath='./'; + +const pepperoniPizza=await new Image(productCode); +console.log(pepperoniPizza.base64Image); + +//you could pass this to a user via sms, web socket, http, tcp, make an ascii art for the terminal, OR save it to disk or a database +//here we just save it to disk as an example. +//this is part of the js-base64-file class refrence, there is a link at the top of this file +pepperoniPizza.saveSync(pepperoniPizza.base64Image,savePath,productCode+'.jpg'); + + +``` + diff --git a/docs/InternationalSupport.md b/docs/InternationalSupport.md new file mode 100644 index 0000000..0dc5209 --- /dev/null +++ b/docs/InternationalSupport.md @@ -0,0 +1,56 @@ +# International Support + +Provided a country uses the same api as the US, you can just update the URL endpoints from the url ESM. + +If you have cloned this repo, you can run the example with this command: +`node ./example/international.js` + +Canada +==== + +```js + + import {urls} from 'dominos'; + import {useInternational,canada} from 'dominos/utils/urls.js'; + useInternational(canada); + + console.dir(urls); + +``` + +Custom +==== + +If you getthings working for your country this way, ***PLEASE SHARE*** your custom url object so we can make it a part of the core URLS module. ***Thank you :)*** + +```js + + import {urls} from 'dominos'; + import {useInternational,canada} from 'dominos/utils/urls.js'; + + const myCountriesURLs={ + referer :"https://order.dominos.nz/en/pages/order/", + sourceUri :"order.dominos.nz", + location:{ + find:urls.location.find + }, + store : { + find : "https://order.dominos.nz/power/store-locator?s=${line1}&c=${line2}&type=${type}", + info : "https://order.dominos.nz/power/store/${storeID}/profile", + menu : "https://order.dominos.nz/power/store/${storeID}/menu?lang=${lang}&structured=true" + }, + order : { + validate: "https://order.dominos.nz/power/validate-order", + price : "https://order.dominos.nz/power/price-order", + place : "https://order.dominos.nz/power/place-order" + }, + track : "https://order.dominos.nz/orderstorage/GetTrackerData?" + } + + + useInternational(myCountriesURLs); + + console.log('MY COUSTOM FAKE NZ ENDPOINTS'); + console.dir(urls); + +``` \ No newline at end of file diff --git a/docs/Item.md b/docs/Item.md new file mode 100644 index 0000000..d1bae39 --- /dev/null +++ b/docs/Item.md @@ -0,0 +1,64 @@ +Item +==== +Items are used to track what products, quantities, and options a customer would like to Order. + +If you have cloned this repo, you can run the example with this command: +`node ./example/item.js` + +extends `DominosFormat` class, see more in [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) + +Constructor +==== + +`new Item({...})` + +|params.argument|type |required|description| +|-------- |------|--------|-------| +|.iD |Number|no|this number will auto increment with each item created, you do not need to do anything unless you want specific ids on your items. The casind is weird to support dominos format| +|.code |String|yes|the product code, like `14SCREEN` for a 14' cheese pizza| +|.qty |Number|no|the quantity of the item to order, ***defaults to 1*** if not specified| +|.options |Object|no|the special options for these items, options supported for various products can be found in the menu entries for the item| +|.isNew |Bool |no|suggested you do not modify this. tells the dominos api if this is a new item. If set to false, dominos will not return duplicate information for this item| + +Instance +==== + +Also check the [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) as this class extends it. + +|member/method|type |description| +|-------------|------|------- | +|.iD |Number|unique id for each item, autogenerated if not provided upon init| +|.code |String|the product code, like `14SCREEN` for a 14' cheese pizza| +|.qty |Number|the quantity of the item to order| +|.options |Object|the special options for these items, options supported for various products can be found in the menu entries for the item. Poke around in the menu to get an idea about them.| +|.isNew |Bool |suggested you do not modify this. tells the dominos api if this is a new item. If set to false, dominos will not return duplicate information for this item| + +```js +import {Item} from 'dominos'; + +const cheesePizza=new Item( + { + ID:1, + code:'14SCREEN', + options: + // this says, for the whole pizza put sauce on it + X: {'1/1' : '1'}, + + //this says for the whole pizza put double cheese + C: {'1/1' : '2'} + } +); + +console.dir(cheesePizza); + +//outputs +Item { + code: 'P_14SCREEN', + qty: 1, + options: { + X: {'1/1' : '1'}, + C: {'1/1' : '2'} + } +} + +``` \ No newline at end of file diff --git a/docs/Menu.md b/docs/Menu.md new file mode 100644 index 0000000..32463a0 --- /dev/null +++ b/docs/Menu.md @@ -0,0 +1,12057 @@ +# Dominos Menu +Menu is constructed `async`, so when you instantiate it, you should await it, like this : ` const menu = await new Menu(...)` this will work in your main node code without wrapping it in an anonymous async function. + +`.menu` provides ***HUGE*** amounts of well formatted menu data parsed from the `menu.dominosAPIResponse` object. This information is parsed from the dominos api when the instance is instantiated. + +If you want to see the ***RAW*** `menu.dominosAPIResponse` object and documentation, check out the [RAW DominosMenu.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosMenu.md) instead. That object is huge and a little difficult to use which is why we provide this parsed menu. + +If you have cloned this repo, you can run the example with this command: +`node ./example/menu.js` + +Constructor +==== + +`await new Menu(4337)` + +|argument|type |required|default| +|--------|------ |--------|-------| +|storeID |Number/String |true | | +|lang |String |false |en | + + +```js + +import {Menu} from 'dominos'; + +const menu=await new Menu(4337); + +console.dir(menu,{depth:1}); + +``` + +Instance +==== + +|member/method |type |description| +|------------- |------ |------- | +|.menu |object |parsed and more friendly menu for the store documented below.| +|.dominosAPIResponse|API response object|see more info in the [RAW DominosMenu.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosMenu.md)| + + +# .menu + +|member |type |description| +|------ |---- |-----------| +|.categories |Object|categorized products| +|.coupons |Object|coupons details that can be used for discounts| +|.flavors |Object|types of flavors and sauces for different foods| +|.products |Object|a list of various products you can order. This does not include all of the same products from the `.categories` member sadly.| +|.sides |Object|side dishes and side orders| +|.sizes |Object|various order sizes and pice counts for products| +|.toppings |Object|toppings that can be applied to various dishes and pizzas| +|.variants |Object|customized or special versions of popular dishes| +|.preconfiguredProducts |Object|a selection of preconfigured products to order. There are more items like, sorted into categories like `popularItems` in the preconfigured category in `.categories`| +|.shortProductDescriptions |Object|a strange object which contains a seeminly random set of short description for just a few products.| +|.unsupported |Object|unsupported products and options. This may be store specific.| +|.cooking |Object|cooking instrictions and options| + + + +```js + + { + categories: [Object], + coupons: [Object], + flavors: [Object], + products: [Object], + sides: [Object], + sizes: [Object], + toppings: [Object], + variants: [Object], + preconfiguredProducts: [Object], + shortProductDescriptions: [Object], + unsupported: [Object], + cooking: [Object] + } + +``` + + +# .menu.categories + +|member |type |description| +|------ |---- |-----------| +|.food |Object|various types of food product categories| +|.coupons |Object|coupon categories| +|.couponsByProduct |Object|coupons sorted by product| +|.preconfiguredProducts |Object|categories of preconfigured products, including items that are popular| + + +```js + +{ + food: { + pizza: [Object], + sandwich: [Object], + pasta: [Object], + wings: [Object], + bread: [Object], + gSalad: [Object], + chips: [Object], + drinks: [Object], + dessert: [Object], + sides: [Object] + }, + coupons: { + feeds1To2: [Object], + feeds3To5: [Object], + feeds6Plus: [Object], + lunchOffers: [Object], + all: [Object], + allStoreCoupons: [Object] + }, + couponsByProduct: { + couponPizza: [Object], + couponDessert: [Object], + couponDrinks: [Object], + couponBread: [Object], + couponWings: [Object], + couponSandwich: [Object], + couponPasta: [Object], + couponGSalad: [Object], + couponSides: [Object] + }, + preconfiguredProducts: { + groupOrdering: [Object], + popularItems: [Object] + } +} + +``` + + + + +# Detailed Menu.menu inspection + +```js + +{ + "categories": { + "food": { + "pizza": { + "code": "Pizza", + "name": "Pizza", + "hasSubCategories": true, + "subCategories": { + "buildYourOwn": { + "code": "BuildYourOwn", + "name": "Build Your Own", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "S_PIZZA" + ], + "hasTags": false + }, + "artisan": { + "code": "Artisan", + "name": "Artisan", + "hasSubCategories": false, + "hasProducts": false, + "hasTags": false + }, + "specialty": { + "code": "Specialty", + "name": "Specialty Pizzas", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "S_PZTACO", + "S_PZBRGR", + "S_ZZ", + "S_MX", + "S_PIZPH", + "S_PIZPV", + "S_PIZUH", + "S_DX", + "S_PIZCR", + "S_PIZBP", + "S_PIZPX", + "S_PIZCK", + "S_PIZCZ", + "S_PISPF" + ], + "hasTags": false + } + }, + "hasProducts": false, + "hasTags": false + }, + "sandwich": { + "code": "Sandwich", + "name": "Sandwiches", + "hasSubCategories": true, + "subCategories": { + "slice": { + "code": "Slice", + "name": "Domino's Sandwich Slice™", + "hasSubCategories": false, + "hasProducts": false, + "hasTags": false + }, + "sandwich": { + "code": "Sandwich", + "name": "Sandwiches", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "S_BUFC", + "S_CHHB", + "S_MEDV", + "S_PHIL", + "S_CHIKK", + "S_ITAL", + "S_CHIKP" + ], + "hasTags": false + }, + "hoagie": { + "code": "Hoagie", + "name": "Hoagies", + "hasSubCategories": false, + "hasProducts": false, + "hasTags": false + } + }, + "hasProducts": false, + "hasTags": false + }, + "pasta": { + "code": "Pasta", + "name": "Pasta", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "S_ALFR", + "S_MARIN", + "S_CARB", + "S_PRIM", + "S_BUILD" + ], + "hasTags": false + }, + "wings": { + "code": "Wings", + "name": "Chicken", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "S_SCCBT", + "S_SCCHB", + "S_SCSJP", + "S_SCSBBQ", + "S_HOTWINGS", + "S_BBQW", + "S_MILDWING", + "S_PLNWINGS", + "S_SMANG", + "S_GPRMWING", + "S_BONELESS" + ], + "hasTags": false + }, + "bread": { + "code": "Bread", + "name": "Breads", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "F_PARMT", + "F_GARLICT", + "F_SCBRD", + "F_SSBRD", + "F_SBBRD", + "F_PBITES" + ], + "hasTags": false + }, + "gSalad": { + "code": "GSalad", + "name": "Salads", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "F_GARDEN", + "F_CCAESAR" + ], + "hasTags": false + }, + "chips": { + "code": "Chips", + "name": "Chips", + "hasSubCategories": false, + "hasProducts": false, + "hasTags": false + }, + "drinks": { + "code": "Drinks", + "name": "Drinks", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "F_COKE", + "F_DIET", + "F_SPRITE", + "F_WATER", + "F_ORAN", + "F_LEMND" + ], + "hasTags": false + }, + "dessert": { + "code": "Dessert", + "name": "Desserts", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "F_CINNAT", + "F_MRBRWNE", + "F_LAVA" + ], + "hasTags": false + }, + "sides": { + "code": "Sides", + "name": "Extras", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "F_SIDBAN", + "F_SIDJAL", + "F_SIDPAR", + "F_SIDRED", + "F_HOTCUP", + "F_SMHAB", + "F_BBQC", + "F_SIDRAN", + "F_Bd", + "F_SIDGAR", + "F_SIDICE", + "F_SIDMAR", + "F_CAESAR", + "F_ITAL", + "F_RANCHPK", + "F_STJUDE", + "F_BALVIN", + "F__SCHOOL" + ], + "hasTags": false + } + }, + "coupons": { + "feeds1To2": { + "code": "Feeds1To2", + "name": "Feeds 1-2", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "5940", + "3715", + "2013", + "8575", + "8118", + "9175", + "9174", + "9193" + ], + "hasTags": false + }, + "feeds3To5": { + "code": "Feeds3To5", + "name": "Feeds 3-5", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "5385", + "5940", + "5918", + "9171", + "2013", + "9003", + "4337", + "9175", + "9174", + "9193" + ], + "hasTags": false + }, + "feeds6Plus": { + "code": "Feeds6Plus", + "name": "Feeds 6+", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "2013", + "9193" + ], + "hasTags": false + }, + "lunchOffers": { + "code": "LunchOffers", + "name": "LunchOffers", + "hasSubCategories": false, + "hasProducts": false, + "hasTags": false + }, + "all": { + "code": "All", + "name": "See All", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "5162", + "4342", + "5385", + "5940", + "3715", + "0512", + "5918", + "9171", + "2013", + "9003", + "4337", + "8575", + "8118", + "9175", + "9174", + "9193" + ], + "hasTags": false + }, + "allStoreCoupons": { + "code": "AllStoreCoupons", + "name": "All Available Coupons", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "5162", + "4342", + "5385", + "5940", + "3715", + "0512", + "5918", + "9171", + "2013", + "9003", + "4337", + "8575", + "8118", + "9175", + "9174", + "9193" + ], + "hasTags": false + } + }, + "couponsByProduct": { + "couponPizza": { + "code": "CouponPizza", + "name": "CouponPizza", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "2013", + "3715", + "4337", + "4342", + "5162", + "5385", + "5918", + "5940", + "9003", + "9171", + "9174", + "9175", + "9193" + ], + "hasTags": false + }, + "couponDessert": { + "code": "CouponDessert", + "name": "CouponDessert", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "0512", + "9193" + ], + "hasTags": false + }, + "couponDrinks": { + "code": "CouponDrinks", + "name": "CouponDrinks", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "4337", + "5918", + "8118", + "9003" + ], + "hasTags": false + }, + "couponBread": { + "code": "CouponBread", + "name": "CouponBread", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "4337", + "5918", + "8118", + "9193" + ], + "hasTags": false + }, + "couponWings": { + "code": "CouponWings", + "name": "CouponWings", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "3715", + "5940", + "9171", + "9174", + "9193" + ], + "hasTags": false + }, + "couponSandwich": { + "code": "CouponSandwich", + "name": "CouponSandwich", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "9193" + ], + "hasTags": false + }, + "couponPasta": { + "code": "CouponPasta", + "name": "CouponPasta", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "9193" + ], + "hasTags": false + }, + "couponGSalad": { + "code": "CouponGSalad", + "name": "CouponGSalad", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "8575", + "9193" + ], + "hasTags": false + }, + "couponSides": { + "code": "CouponSides", + "name": "CouponSides", + "hasSubCategories": false, + "hasProducts": false, + "hasTags": false + } + }, + "preconfiguredProducts": { + "groupOrdering": { + "code": "GroupOrdering", + "name": "Group Ordering", + "description": "Group Ordering", + "hasSubCategories": true, + "subCategories": { + "groupOrderingPizza": { + "code": "GroupOrderingPizza", + "name": "Pizza", + "description": "Pizza", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "14SCREEN", + "P_14SCREEN", + "S_14SCREEN", + "PS_14SCREEN", + "HN_14SCREEN", + "PM_14SCREEN", + "P12IPAZA", + "P_P12IPAZA", + "P_P10IGFZA", + "14SCEXTRAV", + "P14ITHPV" + ], + "hasTags": false + }, + "groupOrderingChicken": { + "code": "GroupOrderingChicken", + "name": "Chicken", + "description": "Chicken", + "hasSubCategories": false, + "hasProducts": false, + "hasTags": false + }, + "groupOrderingBread": { + "code": "GroupOrderingBread", + "name": "Breads", + "description": "Breads", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "B32PBIT", + "B8PCSCB" + ], + "hasTags": false + }, + "groupOrderingDessert": { + "code": "GroupOrderingDessert", + "name": "Desserts", + "description": "Desserts", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "MARBRWNE" + ], + "hasTags": false + }, + "groupOrderingDrink": { + "code": "GroupOrderingDrink", + "name": "Drinks", + "description": "Drinks", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "2LCOKE", + "2LDCOKE", + "2LSPRITE" + ], + "hasTags": false + } + }, + "hasProducts": false, + "hasTags": false + }, + "popularItems": { + "code": "PopularItems", + "name": "Popular Items", + "description": "Popular Items", + "hasSubCategories": true, + "subCategories": { + "popularItemsPizza": { + "code": "PopularItemsPizza", + "name": "Pizza", + "description": "Pizza", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "XC_14SCREEN", + "PXC_14SCREEN", + "HNXC_12SCREEN", + "MPXC_12SCREEN", + "XCFeCsCpRMORrSiTd_P12IREPV" + ], + "hasTags": false + }, + "popularItemsSandwichesSidesDesserts": { + "code": "PopularItemsSandwichesSidesDesserts", + "name": "Sandwiches Sides Desserts", + "description": "Sandwiches Sides Desserts", + "hasSubCategories": false, + "hasProducts": true, + "products": [ + "RdCKDuPv_PSANSACB", + "XfDu_PINPASCA", + "SIDRAN_W08PBBQW", + "B2PCLAVA" + ], + "hasTags": false + } + }, + "hasProducts": false, + "hasTags": false + } + } + }, + "coupons": { + "products": { + "2013": { + "code": "2013", + "imageCode": "2T-GFC", + "description": "", + "name": "Small Gluten Free Crust Pizza with up to 3 Toppings", + "price": "9.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "effectiveOn": "2013-09-24", + "multiSame": true, + "combine": "Complementary" + }, + "local": true, + "bundle": false + }, + "3715": { + "code": "3715", + "imageCode": "M2TPAN_8C", + "description": "", + "name": "Medium 2-Topping Handmade Pan Pizza and 8-Piece Chicken", + "price": "19.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "effectiveOn": "2012-09-13" + }, + "local": true, + "bundle": true + }, + "4337": { + "code": "4337", + "imageCode": "2M3T,SCB,2L", + "description": "", + "name": "2 Medium 3 Topping Pizzas, Stuffed Cheesy Bread & a 2 Liter", + "price": "24.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ] + }, + "local": true, + "bundle": true + }, + "4342": { + "code": "4342", + "imageCode": "LSO_L3T,M1T", + "description": "", + "name": "2 or more Medium 3-Topping Pizzas. Each Priced At:", + "price": "8.49", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "lSO_L3T": true, + "m1T": true + }, + "local": true, + "bundle": false + }, + "5162": { + "code": "5162", + "imageCode": "D4P", + "description": "", + "name": "Any Large 5-Topping Pizza or Medium 5-Topping Pan Pizza or 5-Topping Gluten Free Pizza - Carry Out Only", + "price": "10.99", + "tags": { + "serviceMethods": "Carryout", + "validServiceMethods": "Carryout" + }, + "local": true, + "bundle": true + }, + "5385": { + "code": "5385", + "imageCode": "2L2T", + "description": "", + "name": "2 or More Large 2 Topping Pizzas. Each Priced At:", + "price": "11.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "effectiveOn": "2012-02-22", + "multiSame": true + }, + "local": true, + "bundle": false + }, + "5918": { + "code": "5918", + "imageCode": "1LSpec,PBB,2LTR", + "description": "", + "name": "Large Specialty Pizza, 16 pc Parmesan bread bites and a 2 liter", + "price": "21.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ] + }, + "local": true, + "bundle": true + }, + "5940": { + "code": "5940", + "imageCode": "5940_Lg_Specialty_pizza_10pc_Chicken_", + "description": "", + "name": "LG Specialty Pizza and 10pc Chicken", + "price": "24.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "effectiveOn": "2020-08-24" + }, + "local": true, + "bundle": true + }, + "8118": { + "code": "8118", + "imageCode": "16PBB,2L", + "description": "", + "name": "16 Piece Parmesan Bread Bites and a 2-Liter", + "price": "6.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "combine": "Complementary" + }, + "local": true, + "bundle": true + }, + "8575": { + "code": "8575", + "imageCode": "GardenSalad", + "description": "", + "name": "Choose any Salad", + "price": "6.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "effectiveOn": "2012-06-25", + "combine": "Complementary" + }, + "local": true, + "bundle": true + }, + "9003": { + "code": "9003", + "imageCode": "2L1T,LTR", + "description": "", + "name": "2 Large 1 Topping Pizzas and a 2-Liter of Coca-Cola®", + "price": "22.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ] + }, + "local": true, + "bundle": true + }, + "9171": { + "code": "9171", + "imageCode": "1L1T,C", + "description": "", + "name": "Large 1-Topping Pizza & a 8-piece order of Chicken", + "price": "19.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "effectiveOn": "2011-02-21" + }, + "local": true, + "bundle": true + }, + "9174": { + "code": "9174", + "imageCode": "AUG19WLC", + "description": "", + "name": "Carryout pizza & chicken for $7.99 each: All pizzas up to 3 toppings on any of our 5 crusts or 10-piece wings or boneless chicken. Excludes XL & Specialty Pizzas. Crust availability varies by size.", + "price": "7.99", + "tags": { + "serviceMethods": "Carryout", + "validServiceMethods": "Carryout", + "showBestPriceMessage": true, + "combinedSizeAndCrust": true + }, + "local": false, + "bundle": false + }, + "9175": { + "code": "9175", + "imageCode": "1LSP", + "description": "", + "name": "Any Large Specialty Pizza", + "price": "14.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "multiSame": true + }, + "local": true, + "bundle": false + }, + "9193": { + "code": "9193", + "imageCode": "599mixmatch", + "description": "", + "name": "Choose any 2 or more; Medium 2-Topping Pizza, Bread Twists, Salad, Marbled Cookie Brownie, Specialty Chicken, Oven Baked Sandwich, Stuffed Cheesy Bread, 8-Piece Boneless Chicken, or Pasta in a Dish for $5.99 each.", + "price": "", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "onFulFilledUpsellCoupon": "8223", + "showBestPriceMessage": true, + "effectiveOn": "2013-01-03", + "noPulseDefaults": true, + "wizardUpsells": [ + "{'Pizza'", + "{'TitleText'", + "'Looking for Specialty Pizza?'" + ], + "'LinkText':'Upgrade for only $2 more'": true, + "'CouponCode':'8682'}}": true + }, + "local": false, + "bundle": false + }, + "0512": { + "code": "0512", + "imageCode": "L3T,MCB", + "description": "", + "name": "Marble Cookie Brownie", + "price": "6.99", + "tags": { + "validServiceMethods": [ + "Carryout", + "Delivery", + "Hotspot" + ], + "combine": "Complementary" + }, + "local": true, + "bundle": true + } + }, + "shortCouponDescriptions": { + "8223": { + "code": "8223", + "description": "Four 20oz Coke Bundle" + }, + "8682": { + "code": "8682", + "description": "Mix & Match" + }, + "9193": { + "code": "9193", + "description": "Mix & Match" + } + }, + "couponTiers": { + "multiplePizzaC": { + "code": "MultiplePizzaC", + "coupons": { + "8651C": { + "code": "8651C", + "couponTierThreshold": 7, + "couponTierPercentOff": 15, + "name": "15% off all pizzas", + "description": "15% de descuento todas las pizzas ", + "serviceMethod": "" + }, + "8652C": { + "code": "8652C", + "couponTierThreshold": 10, + "couponTierPercentOff": 20, + "name": "20% off all pizzas", + "description": "20% de descuento todas las pizzas", + "serviceMethod": "" + } + } + }, + "multiplePizza": { + "code": "MultiplePizza", + "coupons": { + "8650": { + "code": "8650", + "couponTierThreshold": 4, + "couponTierPercentOff": 10, + "name": "10% off all pizzas", + "description": "Group order Discount: 10% off any pizza at menu price. Online only when you order 4+ pizzas", + "serviceMethod": "" + }, + "8651": { + "code": "8651", + "couponTierThreshold": 7, + "couponTierPercentOff": 15, + "name": "15% off all pizzas", + "description": "Group order Discount: 15% off any pizza at menu price. Online only when you order 7+ pizzas", + "serviceMethod": "" + }, + "8652": { + "code": "8652", + "couponTierThreshold": 10, + "couponTierPercentOff": 20, + "name": "20% off all pizzas", + "description": "Group Order Discount: 20% off any pizza at menu price. Online Only when you order 10+ pizzas", + "serviceMethod": "" + } + } + } + } + }, + "flavors": { + "pasta": { + "PASTA": { + "code": "PASTA", + "description": "Pasta served in a dish.", + "local": false, + "name": "Dish", + "sortSeq": "01" + }, + "BBOWL": { + "code": "BBOWL", + "description": "Pasta served in a bread bowl and then baked to perfection.", + "local": false, + "name": "BreadBowl", + "sortSeq": "02" + } + }, + "pizza": { + "HANDTOSS": { + "code": "HANDTOSS", + "description": "Garlic-seasoned crust with a rich, buttery taste.", + "local": false, + "name": "Hand Tossed", + "sortSeq": "01" + }, + "NPAN": { + "code": "NPAN", + "description": "Two layers of cheese, toppings to the edge, baked in a pan for a crust that is golden and crispy with a buttery taste.", + "local": false, + "name": "Handmade Pan", + "sortSeq": "02" + }, + "THIN": { + "code": "THIN", + "description": "Thin enough for the optimum crispy to crunchy ratio and square cut to be perfectly sharable.", + "local": false, + "name": "Crunchy Thin Crust", + "sortSeq": "03" + }, + "BK": { + "code": "BK", + "description": "Hand stretched to be big, thin and perfectly foldable.", + "local": false, + "name": "Brooklyn Style", + "sortSeq": "06" + }, + "GLUTENF": { + "code": "GLUTENF", + "description": "Domino's pizza made with a Gluten Free Crust.", + "local": false, + "name": "Gluten Free Crust", + "sortSeq": "09" + } + }, + "wings": { + "BACTOM": { + "code": "BACTOM", + "description": "Tender bites of lightly breaded, 100% whole breast white meat chicken, topped with garlic parmesan white sauce, a blend of cheese made with mozzarella and cheddar, crispy bacon and tomato.", + "local": false, + "name": "Specialty Chicken – Crispy Bacon & Tomato", + "sortSeq": "01" + }, + "HOTBUFF": { + "code": "HOTBUFF", + "description": "Tender bites of lightly breaded, 100% whole breast white meat chicken, topped with classic hot buffalo sauce, ranch, a blend of cheese made with mozzarella and cheddar, and feta.", + "local": false, + "name": "Specialty Chicken – Classic Hot Buffalo", + "sortSeq": "02" + }, + "SPCYJP": { + "code": "SPCYJP", + "description": "Tender bites of lightly breaded, 100% whole breast white meat chicken, topped with sweet and spicy mango-habanero sauce, a blend of cheese made with mozzarella and cheddar, jalapeno and pineapple.", + "local": false, + "name": "Specialty Chicken – Spicy Jalapeno - Pineapple", + "sortSeq": "03" + }, + "BBQBAC": { + "code": "BBQBAC", + "description": "Tender bites of lightly breaded, 100% whole breast white meat chicken, topped with sweet and smoky BBQ sauce, a blend of cheese made with mozzarella and cheddar, and crispy bacon.", + "local": false, + "name": "Specialty Chicken – Sweet BBQ Bacon", + "sortSeq": "04" + }, + "HOTWINGS": { + "code": "HOTWINGS", + "description": "Marinated and oven-baked, then smothered in hot buffalo sauce. Customize with your choice of dipping cup: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "local": false, + "name": "Hot Buffalo Wings", + "sortSeq": "06" + }, + "MILDWING": { + "code": "MILDWING", + "description": "Marinated and oven-baked, then smothered in mild buffalo sauce. Customize with your choice of dipping sauce: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "local": true, + "name": "Mild Buffalo Wings", + "sortSeq": "07" + }, + "SMANG": { + "code": "SMANG", + "description": "Marinated and oven-baked and then smothered in Sweet Mango Habanero Sauce. Customize with your choice of dipping sauce: Sweet Mango Habanero, BBQ, Kicker Hot Sauce, Blue Cheese, or Ranch", + "local": false, + "name": "Sweet Mango Habanero Wings", + "sortSeq": "08" + }, + "BBQW": { + "code": "BBQW", + "description": "Marinated and oven-baked, then smothered in honey BBQ sauce. Customize with your choice of dipping sauce: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "local": false, + "name": "Honey BBQ Wings", + "sortSeq": "09" + }, + "PLNWINGS": { + "code": "PLNWINGS", + "description": "Marinated and oven-baked and then sauced with your choice of Hot, Sweet Mango Habanero or BBQ sauce.", + "local": false, + "name": "Plain Wings", + "sortSeq": "10" + }, + "GPRMWING": { + "code": "GPRMWING", + "description": "Marinated and oven-baked, then smothered in garlic Parmesan sauce. Customize with your choice of dipping sauce: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "local": false, + "name": "Garlic Parmesan Wings", + "sortSeq": "11" + }, + "BCHICK": { + "code": "BCHICK", + "description": "Lightly breaded with savory herbs, made with 100% whole white breast meat. Customize with your choice of dipping sauce: Sweet Mango Habanero, BBQ, Kicker Hot Sauce, Blue Cheese or Ranch.", + "local": false, + "name": "Boneless Chicken", + "sortSeq": "21" + } + } + }, + "products": { + "F_PARMT": { + "availableToppings": "", + "availableSides": "SIDMAR,SIDGAR,SIDRAN,Bd", + "code": "F_PARMT", + "defaultToppings": "", + "defaultSides": "SIDMAR=1", + "description": "Handmade from fresh buttery-tasting dough and baked to a golden brown. Crusty on the outside and soft on the inside. Drizzled with garlic and Parmesan cheese seasoning, and sprinkled with more Parmesan. Served with a side of marinara sauce for dipping.", + "imageCode": "F_PARMT", + "local": false, + "name": "Parmesan Bread Twists", + "productType": "Bread", + "tags": {}, + "variants": [ + "B8PCPT" + ] + }, + "F_GARLICT": { + "availableToppings": "", + "availableSides": "SIDMAR,SIDGAR,SIDRAN,Bd", + "code": "F_GARLICT", + "defaultToppings": "", + "defaultSides": "SIDMAR=1", + "description": "Handmade from fresh buttery-tasting dough and baked to a golden brown. Crusty on the outside and soft on the inside. Drizzled with buttery garlic and Parmesan cheese seasoning. Served with a side of marinara sauce for dipping.", + "imageCode": "F_GARLICT", + "local": false, + "name": "Garlic Bread Twists", + "productType": "Bread", + "tags": {}, + "variants": [ + "B8PCGT" + ] + }, + "F_SCBRD": { + "availableToppings": "", + "availableSides": "SIDMAR,SIDGAR,SIDRAN,Bd", + "code": "F_SCBRD", + "defaultToppings": "", + "defaultSides": "", + "description": "Our oven-baked breadsticks are generously stuffed and covered with a blend of 100% real mozzarella and cheddar cheeses then seasoned with a touch of garlic. Add marinara or your favorite dipping cup for an additional charge.", + "imageCode": "F_SCBRD", + "local": false, + "name": "Stuffed Cheesy Bread", + "productType": "Bread", + "tags": { + "bazaarVoice": true + }, + "variants": [ + "B8PCSCB" + ] + }, + "F_SSBRD": { + "availableToppings": "Si=0:0.5:1,Fe=0:0.5:1", + "availableSides": "SIDMAR,SIDGAR,SIDRAN,Bd", + "code": "F_SSBRD", + "defaultToppings": "Si=1,Fe=1", + "defaultSides": "", + "description": "Our oven-baked breadsticks are stuffed with cheese, fresh spinach and Feta cheese - covered in a blend of cheese made with 100% real mozzarella and cheddar. Seasoned with a touch of garlic and Parmesan. Add marinara or your favorite dipping cup for an additional charge.", + "imageCode": "F_SSBRD", + "local": false, + "name": "Stuffed Cheesy Bread with Spinach & Feta", + "productType": "Bread", + "tags": { + "bazaarVoice": true + }, + "variants": [ + "B8PCSSF" + ] + }, + "F_SBBRD": { + "availableToppings": "K=0:0.5:1,J=0:0.5:1", + "availableSides": "SIDMAR,SIDGAR,SIDRAN,Bd", + "code": "F_SBBRD", + "defaultToppings": "K=1,J=1", + "defaultSides": "", + "description": "Our oven-baked breadsticks are stuffed with cheese, smoked bacon & jalapeno peppers - covered in a blend of cheeses; made with 100% real mozzarella and cheddar. Seasoned with a touch of garlic and Parmesan. Add marinara or your favorite dipping cup for an additional charge.", + "imageCode": "F_SBBRD", + "local": false, + "name": "Stuffed Cheesy Bread with Bacon & Jalapeno", + "productType": "Bread", + "tags": { + "bazaarVoice": true + }, + "variants": [ + "B8PCSBJ" + ] + }, + "F_PBITES": { + "availableToppings": "", + "availableSides": "SIDMAR,SIDGAR,SIDRAN,Bd", + "code": "F_PBITES", + "defaultToppings": "", + "defaultSides": "SIDMAR=1", + "description": "Oven-baked bread bites handmade from fresh buttery-tasting dough and seasoned with garlic and Parmesan. Available in 16-piece or 32-piece orders. Add marinara or your favorite dipping cup for an additional charge.", + "imageCode": "F_PBITES", + "local": false, + "name": "Parmesan Bread Bites", + "productType": "Bread", + "tags": { + "bazaarVoice": true + }, + "variants": [ + "B16PBIT", + "B32PBIT" + ] + }, + "F_CINNAT": { + "availableToppings": "", + "availableSides": "SIDICE", + "code": "F_CINNAT", + "defaultToppings": "", + "defaultSides": "SIDICE=1", + "description": "Handmade from fresh buttery-tasting dough and baked to a golden brown. Crusty on the outside and soft on the inside. Drizzled with a perfect blend of cinnamon and sugar, and served with a side of sweet icing for dipping or drizzling.", + "imageCode": "F_CINNAT", + "local": false, + "name": "Cinnamon Bread Twists", + "productType": "Dessert", + "tags": {}, + "variants": [ + "B8PCCT" + ] + }, + "F_MRBRWNE": { + "availableToppings": "", + "availableSides": "", + "code": "F_MRBRWNE", + "defaultToppings": "", + "defaultSides": "", + "description": "Satisfy your sweet tooth! Taste the decadent blend of gooey milk chocolate chunk cookie and delicious fudge brownie. Oven-baked to perfection and cut into 9 pieces - this dessert is perfect to share with the whole group.", + "imageCode": "F_MRBRWNE", + "local": false, + "name": "Domino's Marbled Cookie Brownie™", + "productType": "Dessert", + "tags": {}, + "variants": [ + "MARBRWNE" + ] + }, + "F_LAVA": { + "availableToppings": "", + "availableSides": "SIDICE", + "code": "F_LAVA", + "defaultToppings": "", + "defaultSides": "", + "description": "Indulge in two delectable oven-baked chocolate cakes with molten chocolate fudge on the inside. Perfectly topped with a dash of powdered sugar.", + "imageCode": "F_LAVA", + "local": false, + "name": "Chocolate Lava Crunch Cakes", + "productType": "Dessert", + "tags": { + "bazaarVoice": true + }, + "variants": [ + "B2PCLAVA" + ] + }, + "F_COKE": { + "availableToppings": "", + "availableSides": "", + "code": "F_COKE", + "defaultToppings": "", + "defaultSides": "", + "description": "The authentic cola sensation that is a refreshing part of sharing life's enjoyable moments.", + "imageCode": "F_COKE", + "local": false, + "name": "Coke®", + "productType": "Drinks", + "tags": {}, + "variants": [ + "20BCOKE", + "2LCOKE" + ] + }, + "F_ORAN": { + "availableToppings": "", + "availableSides": "", + "code": "F_ORAN", + "defaultToppings": "", + "defaultSides": "", + "description": "Exuberant tropical fun to release you from the everyday mundane.", + "imageCode": "F_ORAN", + "local": false, + "name": "Fanta® Orange", + "productType": "Drinks", + "tags": {}, + "variants": [ + "20BORNG", + "2LMMORANGE" + ] + }, + "F_SPRITE": { + "availableToppings": "", + "availableSides": "", + "code": "F_SPRITE", + "defaultToppings": "", + "defaultSides": "", + "description": "Unique Lymon (lemon-lime) flavor, clear, clean and crisp with no caffeine.", + "imageCode": "F_SPRITE", + "local": false, + "name": "Sprite®", + "productType": "Drinks", + "tags": {}, + "variants": [ + "20BSPRITE", + "2LSPRITE" + ] + }, + "F_DIET": { + "availableToppings": "", + "availableSides": "", + "code": "F_DIET", + "defaultToppings": "", + "defaultSides": "", + "description": "Beautifully balanced adult cola taste in a no calorie beverage.", + "imageCode": "F_DIET", + "local": false, + "name": "Diet Coke®", + "productType": "Drinks", + "tags": {}, + "variants": [ + "2LDCOKE", + "20BDCOKE" + ] + }, + "F_WATER": { + "availableToppings": "", + "availableSides": "", + "code": "F_WATER", + "defaultToppings": "", + "defaultSides": "", + "description": "Fresh, crisp tasting water.", + "imageCode": "F_WATER", + "local": false, + "name": "Dasani® Bottle Water", + "productType": "Drinks", + "tags": {}, + "variants": [ + "BOTTLWATER" + ] + }, + "F_LEMND": { + "availableToppings": "", + "availableSides": "", + "code": "F_LEMND", + "defaultToppings": "", + "defaultSides": "", + "description": "Made with the goodness of real lemons, Minute Maid® Lemonade is the quintessential refreshing beverage with the great taste of a simpler time.", + "imageCode": "F_LEMND", + "local": true, + "name": "Lemonade Bottle", + "productType": "Drinks", + "tags": {}, + "variants": [ + "D20BLEMO" + ] + }, + "F_GARDEN": { + "availableToppings": "", + "availableSides": "CAESAR,ITAL,BALVIN,RANCHPK", + "code": "F_GARDEN", + "defaultToppings": "", + "defaultSides": "RANCHPK=1", + "description": "A crisp and colorful combination of grape tomatoes, red onion, carrots, red cabbage, cheddar cheese and brioche garlic croutons, all atop a blend of romaine and iceberg lettuce.", + "imageCode": "F_GARDEN", + "local": false, + "name": "Classic Garden", + "productType": "GSalad", + "tags": {}, + "variants": [ + "PPSGARSA" + ] + }, + "F_CCAESAR": { + "availableToppings": "", + "availableSides": "CAESAR,ITAL,BALVIN,RANCHPK", + "code": "F_CCAESAR", + "defaultToppings": "", + "defaultSides": "CAESAR=1", + "description": "The makings of a classic: roasted white meat chicken, Parmesan cheese and brioche garlic croutons, all atop a blend of romaine and iceberg lettuce.", + "imageCode": "F_CCAESAR", + "local": false, + "name": "Chicken Caesar", + "productType": "GSalad", + "tags": {}, + "variants": [ + "PPSCSRSA" + ] + }, + "S_BUILD": { + "availableToppings": "Xf=0:1,Xm=0:1,P,S,B,Pm,H,K,Du,C,E,Fe,Cs,Cp,F,G,J,M,N,O,R,Rr,Si,Td,Z", + "availableSides": "", + "code": "S_BUILD", + "defaultToppings": "Xf=1", + "defaultSides": "", + "description": "Choose a sauce and up to 3 ingredients from more than a dozen meat or vegetable toppings.", + "imageCode": "S_BUILD", + "local": false, + "name": "Build Your Own Pasta", + "productType": "Pasta", + "tags": { + "optionQtys": [ + "0", + "1" + ], + "maxOptionQty": "3", + "isDisplayedOnMakeline": true, + "sauceRequired": true + }, + "variants": [ + "PINPASBD", + "PINBBLBD" + ] + }, + "S_ALFR": { + "availableToppings": "Xf=1,Du", + "availableSides": "", + "code": "S_ALFR", + "defaultToppings": "Du=1,Xf=1", + "defaultSides": "", + "description": "Try our savory Chicken Alfredo Pasta. Grilled chicken breast and creamy Alfredo sauce is mixed with penne pasta and baked to creamy perfection.", + "imageCode": "S_ALFR", + "local": false, + "name": "Chicken Alfredo", + "productType": "Pasta", + "tags": { + "optionQtys": [ + "0", + "1" + ], + "maxOptionQty": "3", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PINPASCA", + "PINBBLCA" + ] + }, + "S_CARB": { + "availableToppings": "Xf=1,K,Du,M,O", + "availableSides": "", + "code": "S_CARB", + "defaultToppings": "M=1,O=1,Du=1,K=1,Xf=1", + "defaultSides": "", + "description": "Taste the delectable blend of flavorful grilled chicken breast, smoked bacon, fresh onions, and fresh mushrooms mixed with penne pasta. Baked to perfection with rich Alfredo sauce.", + "imageCode": "S_CARB", + "local": false, + "name": "Chicken Carbonara", + "productType": "Pasta", + "tags": { + "optionQtys": [ + "0", + "1" + ], + "maxOptionQty": "4", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PINPASCC", + "PINBBLCC" + ] + }, + "S_MARIN": { + "availableToppings": "Xm=1,S,Cp", + "availableSides": "", + "code": "S_MARIN", + "defaultToppings": "S=1,Cp=1,Xm=1", + "defaultSides": "", + "description": "Penne pasta baked in a zesty tomato basil marinara sauce with Italian sausage, a blend of Italian seasonings and provolone cheese.", + "imageCode": "S_MARIN", + "local": false, + "name": "Italian Sausage Marinara", + "productType": "Pasta", + "tags": { + "optionQtys": [ + "0", + "1" + ], + "maxOptionQty": "3", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PINPASMM", + "PINBBLMM" + ] + }, + "S_PRIM": { + "availableToppings": "Xf=1,M,O,Si,Td", + "availableSides": "", + "code": "S_PRIM", + "defaultToppings": "M=1,O=1,Td=1,Si=1,Xf=1", + "defaultSides": "", + "description": "Fresh baby spinach, diced tomatoes, fresh mushrooms and fresh onions, mixed with penne pasta and baked with a creamy Alfredo sauce.", + "imageCode": "S_PRIM", + "local": false, + "name": "Pasta Primavera", + "productType": "Pasta", + "tags": { + "optionQtys": [ + "0", + "1" + ], + "maxOptionQty": "4", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PINPASPP", + "PINBBLPP" + ] + }, + "S_DX": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_DX", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1", + "defaultSides": "", + "description": "Pepperoni, Italian sausage, fresh green peppers, fresh mushrooms, fresh onions and cheese made with 100% real mozzarella.", + "imageCode": "S_DX", + "local": false, + "name": "Deluxe", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "10SCDELUX", + "12SCDELUX", + "12TDELUX", + "PBKIREDX", + "14SCDELUX", + "14TDELUX", + "P16IBKDX", + "P10IGFDX", + "P12IPADX" + ] + }, + "S_MX": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_MX", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1", + "defaultSides": "", + "description": "Pepperoni, ham, Italian sausage and beef, all sandwiched between two layers of cheese made with 100% real mozzarella.", + "imageCode": "S_MX", + "local": false, + "name": "MeatZZa", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "10SCMEATZA", + "12SCMEATZA", + "12TMEATZA", + "PBKIREMX", + "14SCMEATZA", + "14TMEATZA", + "P16IBKMX", + "P10IGFMX", + "P12IPAMX" + ] + }, + "S_PIZBP": { + "availableToppings": "H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Ac", + "availableSides": "", + "code": "S_PIZBP", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1", + "defaultSides": "", + "description": "Grilled chicken breast, fresh onions, provolone, American cheese, cheddar, cheese made with 100% real mozzarella and drizzled with a hot buffalo sauce.", + "imageCode": "S_PIZBP", + "local": false, + "name": "Buffalo Chicken", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "P10IREBP", + "P12IREBP", + "P12ITHBP", + "P14IBKBP", + "P14IREBP", + "P14ITHBP", + "P16IBKBP", + "P10IGFBP", + "P12IPABP" + ] + }, + "S_PIZCK": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_PIZCK", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1", + "defaultSides": "", + "description": "Grilled chicken breast, honey BBQ sauce, fresh onions, cheddar, provolone and cheese made with 100% real mozzarella", + "imageCode": "S_PIZCK", + "local": false, + "name": "Memphis BBQ Chicken", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "P10IRECK", + "P12IRECK", + "P12ITHCK", + "P14IBKCK", + "P14IRECK", + "P14ITHCK", + "P16IBKCK", + "P10IGFCK", + "P12IPACK" + ] + }, + "S_PIZCR": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd=0:0.5:1:1.5", + "availableSides": "", + "code": "S_PIZCR", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1", + "defaultSides": "", + "description": "Grilled chicken breast, ranch, smoked bacon, diced tomatoes, provolone and cheese made with 100% real mozzarella.", + "imageCode": "S_PIZCR", + "local": false, + "name": "Cali Chicken Bacon Ranch", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "P10IRECR", + "P12IRECR", + "P12ITHCR", + "P14IBKCR", + "P14IRECR", + "P16IBKCR", + "P10IGFCR", + "P12IPACR" + ] + }, + "S_PIZCZ": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_PIZCZ", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1", + "defaultSides": "", + "description": "Feta, provolone, cheddar, Parmesan-Asiago, cheese made with 100% real mozzarella and sprinkled with oregano.", + "imageCode": "S_PIZCZ", + "local": false, + "name": "Wisconsin 6 Cheese", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "P10IRECZ", + "P12IRECZ", + "P12ITHCZ", + "P14IBKCZ", + "P14IRECZ", + "P14ITHCZ", + "P16IBKCZ", + "P10IGFCZ", + "P12IPACZ" + ] + }, + "S_PIZPH": { + "availableToppings": "H,B,Sa,P,S,Du,K,Pm,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Ac", + "availableSides": "", + "code": "S_PIZPH", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1", + "defaultSides": "", + "description": "Tender slices of steak, fresh onions, fresh green peppers, fresh mushrooms, provolone and American cheese.", + "imageCode": "S_PIZPH", + "local": false, + "name": "Philly Cheese Steak", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "P10IREPH", + "P12IREPH", + "P12ITHPH", + "P14IBKPH", + "P14IREPH", + "P14ITHPH", + "P16IBKPH", + "P10IGFPH", + "P12IPAPH" + ] + }, + "S_PIZPV": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_PIZPV", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1", + "defaultSides": "", + "description": "Roasted red peppers, fresh baby spinach, fresh onions, fresh mushrooms, tomatoes, black olives, feta, provolone, cheese made with 100% real mozzarella and sprinkled with a garlic herb seasoning.", + "imageCode": "S_PIZPV", + "local": false, + "name": "Pacific Veggie", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "P10IREPV", + "P12IREPV", + "P12ITHPV", + "P14IBKPV", + "P14IREPV", + "P14ITHPV", + "P16IBKPV", + "P10IGFPV", + "P12IPAPV" + ] + }, + "S_PIZPX": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_PIZPX", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5", + "defaultSides": "", + "description": "Two layers of pepperoni sandwiched between provolone, Parmesan-Asiago and cheese made with 100% real mozzarella then sprinkled with oregano.", + "imageCode": "S_PIZPX", + "local": false, + "name": "Ultimate Pepperoni", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "10SCPFEAST", + "12SCPFEAST", + "12TPFEAST", + "PBKIREPX", + "14SCPFEAST", + "14TPFEAST", + "P16IBKPX", + "P10IGFPX", + "P12IPAPX" + ] + }, + "S_PIZUH": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_PIZUH", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1", + "defaultSides": "", + "description": "Sliced ham, smoked bacon, pineapple, roasted red peppers, provolone and cheese made with 100% real mozzarella.", + "imageCode": "S_PIZUH", + "local": false, + "name": "Honolulu Hawaiian", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "P10IREUH", + "P12IREUH", + "P12ITHUH", + "P14IREUH", + "P14ITHUH", + "P16IBKUH", + "P10IGFUH", + "P12IPAUH" + ] + }, + "S_PIZZA": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_PIZZA", + "defaultToppings": "X=1,C=1", + "defaultSides": "", + "description": "A custom pizza made to order. Choose from any of our delicious crust styles, including Handmade Pan.", + "imageCode": "S_PIZZA", + "local": false, + "name": "Pizza", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "sodiumWarningEnabled": true + }, + "variants": [ + "10SCREEN", + "12SCREEN", + "12THIN", + "PBKIREZA", + "14SCREEN", + "14THIN", + "P16IBKZA", + "P10IGFZA", + "P12IPAZA" + ] + }, + "S_ZZ": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_ZZ", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1", + "defaultSides": "", + "description": "Pepperoni, ham, Italian sausage, beef, fresh onions, fresh green peppers, fresh mushrooms and black olives, all sandwiched between two layers of cheese made with 100% real mozzarella.", + "imageCode": "S_ZZ", + "local": false, + "name": "ExtravaganZZa", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "10SCEXTRAV", + "12SCEXTRAV", + "12TEXTRAV", + "PBKIREZZ", + "14SCEXTRAV", + "14TEXTRAV", + "P16IBKZZ", + "P10IGFZZ", + "P12IPAZZ" + ] + }, + "S_PISPF": { + "availableToppings": "X=0:0.5:1:1.5,Xm=0:0.5:1:1.5,Bq,Xw=0:0.5:1:1.5,C,H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Xf=0:0.5:1:1.5,Rd", + "availableSides": "", + "code": "S_PISPF", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1", + "defaultSides": "", + "description": "Creamy Alfredo sauce, fresh spinach, fresh onions, feta, Parmesan-Asiago, provolone and cheese made with 100% real mozzarella.", + "imageCode": "S_PISPF", + "local": false, + "name": "Spinach & Feta", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "P10IRESPF", + "P10IGFSPF", + "P12IRESPF", + "P12ITHSPF", + "P12IPASPF", + "P14IBKSPF", + "P14IRESPF", + "P14ITHSPF", + "P16IBKSPF" + ] + }, + "S_PZTACO": { + "availableToppings": "H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Ac", + "availableSides": "", + "code": "S_PZTACO", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1", + "defaultSides": "", + "description": "American cheese, taco seasoning, grilled chicken, fresh onions, fresh green peppers, diced tomatoes, topped with provolone and cheddar cheeses.", + "imageCode": "S_PZTACO", + "local": false, + "name": "Chicken Taco", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "effectiveOn": "2020-08-24" + }, + "variants": [ + "P10IRETC", + "P10IGFTC", + "P12IRETC", + "P12ITHTC", + "P12IPATC", + "P14IBKTC", + "P14IRETC", + "P14ITHTC", + "P16IBKTC" + ] + }, + "S_PZBRGR": { + "availableToppings": "H,B,Sa,P,S,Du,K,Pm,Ht,F,J,O,Z,Td,R,M,N,Cp,E,G,Si,Rr,Fe,Cs,Ac,Km", + "availableSides": "", + "code": "S_PZBRGR", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1", + "defaultSides": "", + "description": "American cheese, ketchup-mustard sauce, beef, fresh onions, and diced tomatoes, topped with shredded provolone and cheddar cheeses.", + "imageCode": "S_PZBRGR", + "local": false, + "name": "Cheeseburger", + "productType": "Pizza", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2" + ], + "maxOptionQty": "10", + "partCount": "2", + "needsCustomization": true, + "couponTier": [ + "MultiplePizza", + "MultiplePizzaB", + "MultiplePizzaC", + "MultiplePizzaD" + ], + "isDisplayedOnMakeline": true, + "effectiveOn": "2020-08-24", + "hideOption": "Km" + }, + "variants": [ + "P10IRECHB", + "P10IGFCHB", + "P12IRECHB", + "P12ITHCHB", + "P12IPACHB", + "P14IBKCHB", + "P14IRECHB", + "P14ITHCHB", + "P16IBKCHB" + ] + }, + "S_CHIKK": { + "availableToppings": "Rd=0:0.5:1,C=0:0.5:1,K=0:0.5:1,Du,Pv", + "availableSides": "", + "code": "S_CHIKK", + "defaultToppings": "C=1,Du=1,K=1,Pv=1,Rd=1", + "defaultSides": "", + "description": "Enjoy our flavorful grilled chicken breast topped with smoked bacon, creamy ranch and provolone cheese on artisan bread baked to golden brown perfection.", + "imageCode": "S_CHIKK", + "local": false, + "name": "Chicken Bacon Ranch", + "productType": "Sandwich", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5" + ], + "maxOptionQty": "9", + "maxSauceQty": "2", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PSANSACB" + ] + }, + "S_CHIKP": { + "availableToppings": "X=0:0.5:1,C=0:0.5:1,Du,Cs=0:0.5:1,Pv", + "availableSides": "", + "code": "S_CHIKP", + "defaultToppings": "X=1,C=1,Du=1,Cs=1,Pv=1", + "defaultSides": "", + "description": "Grilled chicken breast, tomato basil marinara, Parmesan-Asiago and provolone cheese. On artisan bread and baked to a golden brown.", + "imageCode": "S_CHIKP", + "local": false, + "name": "Chicken Parm", + "productType": "Sandwich", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5" + ], + "maxOptionQty": "9", + "maxSauceQty": "2", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PSANSACP" + ] + }, + "S_ITAL": { + "availableToppings": "C=0:0.5:1,P,H=0:0.5:1,Sa=0:0.5:1,Pv,Z=0:0.5:1,G=0:0.5:1,O=0:0.5:1", + "availableSides": "", + "code": "S_ITAL", + "defaultToppings": "C=1,P=1,H=1,O=1,G=1,Z=1,Sa=1,Pv=1", + "defaultSides": "", + "description": "Pepperoni, salami, and ham topped with banana peppers, fresh green peppers, fresh onions, and provolone cheese. On artisan bread and baked to a golden brown.", + "imageCode": "S_ITAL", + "local": false, + "name": "Italian", + "productType": "Sandwich", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5" + ], + "maxOptionQty": "9", + "maxSauceQty": "2", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PSANSAIT" + ] + }, + "S_PHIL": { + "availableToppings": "Pm,Ac=0:0.5:1,Pv,G=0:0.5:1,M=0:0.5:1,O=0:0.5:1", + "availableSides": "", + "code": "S_PHIL", + "defaultToppings": "M=1,O=1,G=1,Pm=1,Ac=1,Pv=1", + "defaultSides": "", + "description": "Experience deliciously tender slices of steak, American and provolone cheeses, fresh onions, fresh green peppers and fresh mushrooms placed on artisan bread and baked to golden brown perfection.", + "imageCode": "S_PHIL", + "local": false, + "name": "Philly Cheese Steak", + "productType": "Sandwich", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5" + ], + "maxOptionQty": "9", + "maxSauceQty": "2", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PSANSAPH" + ] + }, + "S_BUFC": { + "availableToppings": "Bd=0:0.5:1,Ht=0:0.5:1,C=0:0.5:1,Du,E=0:0.5:1,Pv,O=0:0.5:1", + "availableSides": "", + "code": "S_BUFC", + "defaultToppings": "C=1,O=1,Du=1,E=1,Ht=1,Pv=1,Bd=1", + "defaultSides": "", + "description": "Grilled chicken breast, creamy blue cheese sauce, fresh onions, hot buffalo sauce, cheddar and provolone cheese.", + "imageCode": "S_BUFC", + "local": false, + "name": "Buffalo Chicken", + "productType": "Sandwich", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5" + ], + "maxOptionQty": "9", + "maxSauceQty": "2", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PSANSABC" + ] + }, + "S_CHHB": { + "availableToppings": "Mh=0:0.5:1,C=0:0.5:1,Du,E=0:0.5:1,Pv,J=0:0.5:1,N=0:0.5:1", + "availableSides": "", + "code": "S_CHHB", + "defaultToppings": "C=1,Du=1,N=1,J=1,E=1,Pv=1,Mh=1", + "defaultSides": "", + "description": "Grilled chicken breast, pineapple, jalapeños, sweet mango habanero sauce, provolone and cheddar cheeses. On artisan bread and baked to a golden brown.", + "imageCode": "S_CHHB", + "local": false, + "name": "Chicken Habanero", + "productType": "Sandwich", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5" + ], + "maxOptionQty": "9", + "maxSauceQty": "2", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PSANSACH" + ] + }, + "S_MEDV": { + "availableToppings": "Ac=0:0.5:1,Fe=0:0.5:1,Pv,Z=0:0.5:1,O=0:0.5:1,Rr=0:0.5:1,Si=0:0.5:1,Td=0:0.5:1", + "availableSides": "", + "code": "S_MEDV", + "defaultToppings": "O=1,Td=1,Rr=1,Si=1,Fe=1,Z=1,Ac=1,Pv=1", + "defaultSides": "", + "description": "Roasted red peppers, banana peppers, diced tomatoes, fresh baby spinach, fresh onions, feta, provolone and American cheese. On artisan bread and baked to a golden brown.", + "imageCode": "S_MEDV", + "local": false, + "name": "Mediterranean Veggie", + "productType": "Sandwich", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5" + ], + "maxOptionQty": "9", + "maxSauceQty": "2", + "isDisplayedOnMakeline": true, + "bazaarVoice": true + }, + "variants": [ + "PSANSAMV" + ] + }, + "F_SIDBAN": { + "availableToppings": "", + "availableSides": "", + "code": "F_SIDBAN", + "defaultToppings": "", + "defaultSides": "", + "description": "A mild, sweet pickled sliced pepper.", + "imageCode": "F_SIDBAN", + "local": true, + "name": "Side Banana Peppers", + "productType": "Sides", + "tags": {}, + "variants": [ + "SIDBAN" + ] + }, + "F_SIDJAL": { + "availableToppings": "", + "availableSides": "", + "code": "F_SIDJAL", + "defaultToppings": "", + "defaultSides": "", + "description": "Sliced jalapeno peppers", + "imageCode": "F_SIDJAL", + "local": true, + "name": "Side Jalapenos", + "productType": "Sides", + "tags": {}, + "variants": [ + "SIDEJAL" + ] + }, + "F_SIDPAR": { + "availableToppings": "", + "availableSides": "", + "code": "F_SIDPAR", + "defaultToppings": "", + "defaultSides": "", + "description": "Grated Parmesan cheese packets", + "imageCode": "F_SIDPAR", + "local": true, + "name": "Parmesan Cheese Packets", + "productType": "Sides", + "tags": {}, + "variants": [ + "PARMCHEESE" + ] + }, + "F_SIDRED": { + "availableToppings": "", + "availableSides": "", + "code": "F_SIDRED", + "defaultToppings": "", + "defaultSides": "", + "description": "Crushed red pepper flake packets", + "imageCode": "F_SIDRED", + "local": true, + "name": "Red Pepper Packets", + "productType": "Sides", + "tags": {}, + "variants": [ + "REDPEPPER" + ] + }, + "F_CAESAR": { + "availableToppings": "", + "availableSides": "", + "code": "F_CAESAR", + "defaultToppings": "", + "defaultSides": "", + "description": "A savory dressing with a combination of garlic, anchovy and subtle notes of cheese.", + "imageCode": "F_CAESAR", + "local": false, + "name": "Caesar Dressing", + "productType": "Sides", + "tags": {}, + "variants": [ + "AGCAESAR" + ] + }, + "F_ITAL": { + "availableToppings": "", + "availableSides": "", + "code": "F_ITAL", + "defaultToppings": "", + "defaultSides": "", + "description": "A classic dressing flavored with red bell pepper, a touch of garlic and spices.", + "imageCode": "F_ITAL", + "local": true, + "name": "Italian Dressing", + "productType": "Sides", + "tags": {}, + "variants": [ + "AGITAL" + ] + }, + "F_RANCHPK": { + "availableToppings": "", + "availableSides": "", + "code": "F_RANCHPK", + "defaultToppings": "", + "defaultSides": "", + "description": "A creamy, flavorful dressing with a blend of buttermilk, garlic, onion and spices.", + "imageCode": "F_RANCHPK", + "local": false, + "name": "Ranch Dressing", + "productType": "Sides", + "tags": {}, + "variants": [ + "AGRANCH" + ] + }, + "F_HOTCUP": { + "availableToppings": "", + "availableSides": "", + "code": "F_HOTCUP", + "defaultToppings": "", + "defaultSides": "", + "description": "Domino's own spicy buffalo sauce.", + "imageCode": "F_HOTCUP", + "local": false, + "name": "Hot Buffalo Dipping Cup", + "productType": "Sides", + "tags": {}, + "variants": [ + "HOTSAUCE" + ] + }, + "F_SMHAB": { + "availableToppings": "", + "availableSides": "", + "code": "F_SMHAB", + "defaultToppings": "", + "defaultSides": "", + "description": "A perfect blend of sweet and spicy in one sauce", + "imageCode": "F_SMHAB", + "local": false, + "name": "Sweet Mango Habanero Sauce", + "productType": "Sides", + "tags": {}, + "variants": [ + "CEAHABC" + ] + }, + "F_BBQC": { + "availableToppings": "", + "availableSides": "", + "code": "F_BBQC", + "defaultToppings": "", + "defaultSides": "", + "description": "A sweet and smoky BBQ sauce with bold flavor.", + "imageCode": "F_BBQC", + "local": false, + "name": "Honey BBQ Dipping Cup", + "productType": "Sides", + "tags": {}, + "variants": [ + "CEABBQC" + ] + }, + "F_SIDRAN": { + "availableToppings": "", + "availableSides": "", + "code": "F_SIDRAN", + "defaultToppings": "", + "defaultSides": "", + "description": "A creamy buttermilk ranch dressing with hints of garlic and onion", + "imageCode": "F_SIDRAN", + "local": false, + "name": "Ranch", + "productType": "Sides", + "tags": {}, + "variants": [ + "RANCH" + ] + }, + "F_Bd": { + "availableToppings": "", + "availableSides": "", + "code": "F_Bd", + "defaultToppings": "", + "defaultSides": "", + "description": "A creamy dressing with bits of aged blue cheese", + "imageCode": "F_Bd", + "local": false, + "name": "Blue Cheese", + "productType": "Sides", + "tags": {}, + "variants": [ + "BLUECHS" + ] + }, + "F_SIDGAR": { + "availableToppings": "", + "availableSides": "", + "code": "F_SIDGAR", + "defaultToppings": "", + "defaultSides": "", + "description": "A buttery garlic sauce", + "imageCode": "F_SIDGAR", + "local": false, + "name": "Garlic Dipping Sauce", + "productType": "Sides", + "tags": {}, + "variants": [ + "GARBUTTER" + ] + }, + "F_SIDICE": { + "availableToppings": "", + "availableSides": "", + "code": "F_SIDICE", + "defaultToppings": "", + "defaultSides": "", + "description": "A thick sweet icing with a hint of vanilla", + "imageCode": "F_SIDICE", + "local": false, + "name": "Icing Dipping Sauce", + "productType": "Sides", + "tags": {}, + "variants": [ + "ICING" + ] + }, + "F_SIDMAR": { + "availableToppings": "", + "availableSides": "", + "code": "F_SIDMAR", + "defaultToppings": "", + "defaultSides": "", + "description": "A sweet tomato sauce blended with garlic, basil and oregano", + "imageCode": "F_SIDMAR", + "local": false, + "name": "Marinara Dipping Sauce", + "productType": "Sides", + "tags": {}, + "variants": [ + "MARINARA" + ] + }, + "F_STJUDE": { + "availableToppings": "", + "availableSides": "", + "code": "F_STJUDE", + "defaultToppings": "", + "defaultSides": "", + "description": "", + "imageCode": "F_STJUDE", + "local": false, + "name": "St. Jude Donation", + "productType": "Sides", + "tags": {}, + "variants": [ + "STJUDE", + "STJUDE2", + "STJUDE5", + "STJUDE10", + "STJUDERU" + ] + }, + "F_BALVIN": { + "availableToppings": "", + "availableSides": "", + "code": "F_BALVIN", + "defaultToppings": "", + "defaultSides": "", + "description": "A light dressing with a blend of balsamic vinegar, oil and garlic.", + "imageCode": "F_BALVIN", + "local": false, + "name": "Balsamic", + "productType": "Sides", + "tags": {}, + "variants": [ + "CEABVI" + ] + }, + "F__SCHOOL": { + "availableToppings": "", + "availableSides": "", + "code": "F__SCHOOL", + "defaultToppings": "", + "defaultSides": "", + "description": "Click here to add the local donation to your order", + "imageCode": "F__SCHOOL", + "local": true, + "name": "Local Donation", + "productType": "Sides", + "tags": {}, + "variants": [ + "_SCHOOLL" + ] + }, + "S_BONELESS": { + "availableToppings": "", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_BONELESS", + "defaultToppings": "", + "defaultSides": "BBQC=1", + "description": "Breaded chicken made with 100% whole white breast meat. Customize with your choice of dipping cup: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "imageCode": "S_BONELESS", + "local": false, + "name": "Boneless Chicken", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "boneless": true, + "effectiveOn": "2011-02-21", + "bvCode": "Boneless", + "bazaarVoice": true + }, + "variants": [ + "W08PBNLW", + "10WINGBNLS", + "W16PBNLW", + "W32PBNLW" + ] + }, + "S_HOTWINGS": { + "availableToppings": "", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_HOTWINGS", + "defaultToppings": "", + "defaultSides": "Bd=1", + "description": "Marinated and oven-baked, then smothered in hot buffalo sauce. Customize with your choice of dipping cup: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "imageCode": "S_HOTWINGS", + "local": false, + "name": "Hot Buffalo Wings", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "bvCode": "BoneIn", + "bazaarVoice": true + }, + "variants": [ + "W08PHOTW", + "10WINGHOT", + "W16PHOTW", + "W32PHOTW" + ] + }, + "S_BBQW": { + "availableToppings": "", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_BBQW", + "defaultToppings": "", + "defaultSides": "Bd=1", + "description": "Marinated and oven-baked, then smothered in honey BBQ sauce. Customize with your choice of dipping cup: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "imageCode": "S_BBQW", + "local": false, + "name": "Honey BBQ Wings", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "bvCode": "BoneIn", + "bazaarVoice": true + }, + "variants": [ + "W08PBBQW", + "10WINGBBQ", + "W16PBBQW", + "W32PBBQW" + ] + }, + "S_MILDWING": { + "availableToppings": "", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_MILDWING", + "defaultToppings": "", + "defaultSides": "Bd=1", + "description": "Marinated and oven-baked, then smothered in mild buffalo sauce. Customize with your choice of dipping cup: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "imageCode": "S_MILDWING", + "local": true, + "name": "Mild Buffalo Wings", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "bvCode": "BoneIn", + "bazaarVoice": true + }, + "variants": [ + "W08PMLDW", + "10WINGMILD", + "W16PMLDW", + "W32PMLDW" + ] + }, + "S_PLNWINGS": { + "availableToppings": "", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_PLNWINGS", + "defaultToppings": "", + "defaultSides": "Bd=1", + "description": "Marinated and oven-baked. Customize with your choice of dipping cup: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "imageCode": "S_PLNWINGS", + "local": false, + "name": "Plain Wings", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "bvCode": "BoneIn", + "bazaarVoice": true + }, + "variants": [ + "W08PPLNW", + "10WINGPLN", + "W16PPLNW", + "W32PPLNW" + ] + }, + "S_SMANG": { + "availableToppings": "", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_SMANG", + "defaultToppings": "", + "defaultSides": "Bd=1", + "description": "Marinated and oven-baked, then smothered in sweet mango habanero sauce. Customize with your choice of dipping cup: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "imageCode": "S_SMANG", + "local": false, + "name": "Sweet Mango Habanero Wings", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "bvCode": "BoneIn", + "bazaarVoice": true + }, + "variants": [ + "W08PMANW", + "10WINGMHAB", + "W16PMANW", + "W32PMANW" + ] + }, + "S_GPRMWING": { + "availableToppings": "", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_GPRMWING", + "defaultToppings": "", + "defaultSides": "Bd=1", + "description": "Marinated and oven-baked, then smothered in garlic Parmesan sauce. Customize with your choice of dipping cup: ranch, blue cheese, hot buffalo, honey BBQ or sweet mango habanero.", + "imageCode": "S_GPRMWING", + "local": false, + "name": "Garlic Parmesan Wings", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "bvCode": "BoneIn", + "bazaarVoice": true + }, + "variants": [ + "W08PGPMW", + "10WINGGPMW", + "W16PGPMW", + "W32PGPMW" + ] + }, + "S_SCCBT": { + "availableToppings": "K=0:1,Td=0:1", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_SCCBT", + "defaultToppings": "K=1,Td=1", + "defaultSides": "", + "description": "Tender bites of breaded chicken made with 100% whole breast white meat topped with garlic Parmesan sauce, a blend of cheese made with mozzarella and cheddar, crispy bacon and tomato.", + "imageCode": "S_SCCBT", + "local": false, + "name": "Specialty Chicken – Crispy Bacon & Tomato", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "specialtyChicken": true, + "promotion": "SpChkProductNotInCart", + "promotionType": "ProductNotInCart" + }, + "variants": [ + "CKRGCBT" + ] + }, + "S_SCCHB": { + "availableToppings": "", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_SCCHB", + "defaultToppings": "", + "defaultSides": "", + "description": "Tender bites of breaded chicken made with 100% whole breast white meat topped with hot buffalo sauce, ranch, a blend of cheese made with mozzarella and cheddar, and feta.", + "imageCode": "S_SCCHB", + "local": false, + "name": "Specialty Chicken – Classic Hot Buffalo", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "specialtyChicken": true, + "promotion": "SpChkProductNotInCart", + "promotionType": "ProductNotInCart" + }, + "variants": [ + "CKRGHTB" + ] + }, + "S_SCSJP": { + "availableToppings": "J=0:1,N=0:1", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_SCSJP", + "defaultToppings": "J=1,N=1", + "defaultSides": "", + "description": "Tender bites of lightly breaded, 100% whole breast white meat chicken, topped with sweet and spicy mango-habanero sauce, a blend of cheese made with mozzarella and cheddar, jalapeno and pineapple.", + "imageCode": "S_SCSJP", + "local": false, + "name": "Specialty Chicken – Spicy Jalapeno - Pineapple", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "specialtyChicken": true, + "promotion": "SpChkProductNotInCart", + "promotionType": "ProductNotInCart" + }, + "variants": [ + "CKRGSJP" + ] + }, + "S_SCSBBQ": { + "availableToppings": "K=0:1", + "availableSides": "HOTCUP,SMHAB,BBQC,SIDRAN,Bd", + "code": "S_SCSBBQ", + "defaultToppings": "K=1", + "defaultSides": "", + "description": "Tender bites of breaded chicken made with 100% whole breast white meat topped with sweet and smoky honey BBQ sauce, a blend of cheese made with mozzarella and cheddar, and crispy bacon.", + "imageCode": "S_SCSBBQ", + "local": false, + "name": "Specialty Chicken – Sweet BBQ Bacon", + "productType": "Wings", + "tags": { + "optionQtys": [ + "0", + "0.5", + "1", + "1.5", + "2", + "3", + "4", + "5" + ], + "maxOptionQty": "99", + "isDisplayedOnMakeline": true, + "specialtyChicken": true, + "promotion": "SpChkProductNotInCart", + "promotionType": "ProductNotInCart" + }, + "variants": [ + "CKRGSBQ" + ] + } + }, + "sides": { + "bread": { + "SIDMAR": { + "availability": [], + "code": "SIDMAR", + "description": "A sweet tomato sauce blended with garlic, basil and oregano", + "local": false, + "name": "Marinara", + "tags": { + "side": true + } + }, + "SIDGAR": { + "availability": [], + "code": "SIDGAR", + "description": "A buttery garlic sauce", + "local": true, + "name": "Garlic Dipping Sauce", + "tags": { + "side": true + } + }, + "SIDRAN": { + "availability": [], + "code": "SIDRAN", + "description": "A creamy buttermilk ranch dressing with hints of garlic and onion", + "local": true, + "name": "Ranch", + "tags": { + "side": true + } + }, + "Bd": { + "availability": [], + "code": "Bd", + "description": "A creamy dressing with bits of aged blue cheese", + "local": true, + "name": "Blue Cheese", + "tags": { + "side": true + } + } + }, + "dessert": { + "SIDICE": { + "availability": [], + "code": "SIDICE", + "description": "", + "local": false, + "name": "Icing", + "tags": { + "side": true + } + } + }, + "gSalad": { + "CAESAR": { + "availability": [], + "code": "CAESAR", + "description": "A subtle combination of Parmesan cheese, olive oil, lemon, garlic, onion and black pepper.", + "local": false, + "name": "Caesar", + "tags": { + "side": true + } + }, + "ITAL": { + "availability": [], + "code": "ITAL", + "description": "A classic dressing flavored with spices, red bell pepper and a touch of garlic.", + "local": true, + "name": "Italian", + "tags": { + "side": true + } + }, + "BALVIN": { + "availability": [], + "code": "BALVIN", + "description": "A light dressing with a blend of balsamic vinegar, oil and garlic.", + "local": false, + "name": "Balsamic", + "tags": { + "side": true + } + }, + "RANCHPK": { + "availability": [], + "code": "RANCHPK", + "description": "A flavorful creamy dressing with touches of buttermilk and garlic.", + "local": false, + "name": "Ranch", + "tags": { + "side": true + } + } + }, + "wings": { + "HOTCUP": { + "availability": [], + "code": "HOTCUP", + "description": "Domino's own spicy buffalo sauce.", + "local": false, + "name": "Hot Buffalo Dipping Cup", + "tags": { + "side": true + } + }, + "SMHAB": { + "availability": [], + "code": "SMHAB", + "description": "A perfect blend of sweet and spicy in one sauce", + "local": false, + "name": "Sweet Mango Habanero Sauce", + "tags": { + "side": true, + "effectiveOn": "2010-01-01" + } + }, + "BBQC": { + "availability": [], + "code": "BBQC", + "description": "A sweet and smoky BBQ sauce with bold flavor.", + "local": false, + "name": "Honey BBQ Dipping Cup", + "tags": { + "side": true, + "effectiveOn": "2010-01-01" + } + }, + "SIDRAN": { + "availability": [], + "code": "SIDRAN", + "description": "A creamy buttermilk ranch dressing with hints of garlic and onion", + "local": false, + "name": "Ranch", + "tags": { + "side": true + } + }, + "Bd": { + "availability": [], + "code": "Bd", + "description": "A creamy dressing with bits of aged blue cheese", + "local": false, + "name": "Blue Cheese", + "tags": { + "side": true + } + } + } + }, + "sizes": { + "bread": { + "BRD8": { + "code": "BRD8", + "description": "", + "local": false, + "name": "8-Piece", + "sortSeq": "02" + }, + "BRD16": { + "code": "BRD16", + "description": "", + "local": false, + "name": "16-Piece", + "sortSeq": "06" + }, + "BRD32": { + "code": "BRD32", + "description": "", + "local": false, + "name": "32-Piece", + "sortSeq": "07" + } + }, + "cHARGES": { + "CHGONE": { + "code": "CHGONE", + "description": "", + "local": false, + "name": "Each", + "sortSeq": "01" + } + }, + "dessert": { + "DRT2": { + "code": "DRT2", + "description": "", + "local": false, + "name": "2-Piece", + "sortSeq": "02" + }, + "DRT8": { + "code": "DRT8", + "description": "", + "local": false, + "name": "8-Piece", + "sortSeq": "05" + }, + "9PC": { + "code": "9PC", + "description": "", + "local": false, + "name": "9-Piece", + "sortSeq": "06" + } + }, + "drinks": { + "2LTB": { + "code": "2LTB", + "description": "", + "local": false, + "name": "2-Liter Bottle", + "sortSeq": "01" + }, + "20OZB": { + "code": "20OZB", + "description": "", + "local": false, + "name": "20oz Bottle", + "sortSeq": "02" + } + }, + "pizza": { + "10": { + "code": "10", + "description": "", + "local": false, + "name": "Small (10\")", + "sortSeq": "03" + }, + "12": { + "code": "12", + "description": "", + "local": false, + "name": "Medium (12\")", + "sortSeq": "04" + }, + "14": { + "code": "14", + "description": "", + "local": false, + "name": "Large (14\")", + "sortSeq": "05" + }, + "16": { + "code": "16", + "description": "", + "local": true, + "name": "X-Large (16\")", + "sortSeq": "06" + } + }, + "wings": { + "8PCW": { + "code": "8PCW", + "description": "", + "local": false, + "name": "8-Piece", + "sortSeq": "12" + }, + "10PCW": { + "code": "10PCW", + "description": "", + "local": false, + "name": "10-Piece", + "sortSeq": "13" + }, + "12PCB": { + "code": "12PCB", + "description": "", + "local": false, + "name": "12-Piece Bites", + "sortSeq": "15" + }, + "16PCW": { + "code": "16PCW", + "description": "", + "local": false, + "name": "16-Piece", + "sortSeq": "15" + }, + "32PCW": { + "code": "32PCW", + "description": "", + "local": false, + "name": "32-Piece", + "sortSeq": "16" + } + } + }, + "toppings": { + "bread": { + "K": { + "availability": [], + "code": "K", + "description": "", + "local": false, + "name": "Bacon", + "tags": { + "meat": true + } + }, + "J": { + "availability": [], + "code": "J", + "description": "", + "local": false, + "name": "Jalapeno Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Si": { + "availability": [], + "code": "Si", + "description": "", + "local": false, + "name": "Spinach", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Fe": { + "availability": [], + "code": "Fe", + "description": "", + "local": false, + "name": "Feta Cheese", + "tags": { + "nonMeat": true + } + } + }, + "pasta": { + "Xf": { + "availability": [], + "code": "Xf", + "description": "", + "local": false, + "name": "Alfredo Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "exclusiveGroup": "Sauce", + "sauce": true, + "nonMeat": true + } + }, + "Xm": { + "availability": [], + "code": "Xm", + "description": "", + "local": false, + "name": "Hearty Marinara Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "exclusiveGroup": "Sauce", + "sauce": true, + "nonMeat": true + } + }, + "P": { + "availability": [], + "code": "P", + "description": "", + "local": false, + "name": "Pepperoni", + "tags": { + "meat": true + } + }, + "S": { + "availability": [], + "code": "S", + "description": "", + "local": false, + "name": "Italian Sausage", + "tags": { + "meat": true + } + }, + "B": { + "availability": [], + "code": "B", + "description": "", + "local": false, + "name": "Beef", + "tags": { + "meat": true + } + }, + "Pm": { + "availability": [], + "code": "Pm", + "description": "", + "local": false, + "name": "Philly Steak", + "tags": { + "meat": true + } + }, + "H": { + "availability": [], + "code": "H", + "description": "", + "local": false, + "name": "Ham", + "tags": { + "meat": true + } + }, + "K": { + "availability": [], + "code": "K", + "description": "", + "local": false, + "name": "Bacon", + "tags": { + "meat": true + } + }, + "Du": { + "availability": [], + "code": "Du", + "description": "", + "local": false, + "name": "Premium Chicken", + "tags": { + "meat": true + } + }, + "C": { + "availability": [], + "code": "C", + "description": "", + "local": false, + "name": "Cheese", + "tags": { + "cheese": true, + "nonMeat": true + } + }, + "E": { + "availability": [], + "code": "E", + "description": "", + "local": false, + "name": "Cheddar Cheese", + "tags": { + "cheese": true, + "nonMeat": true + } + }, + "Fe": { + "availability": [], + "code": "Fe", + "description": "", + "local": false, + "name": "Feta Cheese", + "tags": { + "cheese": true, + "nonMeat": true + } + }, + "Cs": { + "availability": [], + "code": "Cs", + "description": "", + "local": false, + "name": "Shredded Parmesan", + "tags": { + "cheese": true, + "nonMeat": true + } + }, + "Cp": { + "availability": [], + "code": "Cp", + "description": "", + "local": false, + "name": "Shredded Provolone Cheese", + "tags": { + "cheese": true, + "nonMeat": true + } + }, + "F": { + "availability": [], + "code": "F", + "description": "", + "local": true, + "name": "Garlic", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "G": { + "availability": [], + "code": "G", + "description": "", + "local": false, + "name": "Green Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "J": { + "availability": [], + "code": "J", + "description": "", + "local": false, + "name": "Jalapeno Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "M": { + "availability": [], + "code": "M", + "description": "", + "local": false, + "name": "Mushrooms", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "N": { + "availability": [], + "code": "N", + "description": "", + "local": false, + "name": "Pineapple", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "O": { + "availability": [], + "code": "O", + "description": "", + "local": false, + "name": "Onions", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "R": { + "availability": [], + "code": "R", + "description": "", + "local": false, + "name": "Black Olives", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Rr": { + "availability": [], + "code": "Rr", + "description": "", + "local": false, + "name": "Roasted Red Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Si": { + "availability": [], + "code": "Si", + "description": "", + "local": false, + "name": "Spinach", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Td": { + "availability": [], + "code": "Td", + "description": "", + "local": false, + "name": "Diced Tomatoes", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Z": { + "availability": [], + "code": "Z", + "description": "", + "local": false, + "name": "Banana Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + } + }, + "pizza": { + "X": { + "availability": [], + "code": "X", + "description": "", + "local": false, + "name": "Robust Inspired Tomato Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "exclusiveGroup": "Sauce", + "sauce": true, + "nonMeat": true + } + }, + "Xm": { + "availability": [], + "code": "Xm", + "description": "", + "local": false, + "name": "Hearty Marinara Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "exclusiveGroup": "Sauce", + "sauce": true, + "nonMeat": true + } + }, + "Bq": { + "availability": [], + "code": "Bq", + "description": "", + "local": false, + "name": "Honey BBQ Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "exclusiveGroup": "Sauce", + "sauce": true, + "nonMeat": true + } + }, + "Xw": { + "availability": [], + "code": "Xw", + "description": "", + "local": false, + "name": "Garlic Parmesan Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "exclusiveGroup": "Sauce", + "sauce": true, + "nonMeat": true + } + }, + "C": { + "availability": [], + "code": "C", + "description": "", + "local": false, + "name": "Cheese", + "tags": { + "cheese": true, + "nonMeat": true + } + }, + "H": { + "availability": [], + "code": "H", + "description": "", + "local": false, + "name": "Ham", + "tags": { + "meat": true + } + }, + "B": { + "availability": [], + "code": "B", + "description": "", + "local": false, + "name": "Beef", + "tags": { + "meat": true + } + }, + "Sa": { + "availability": [], + "code": "Sa", + "description": "", + "local": false, + "name": "Salami", + "tags": { + "meat": true + } + }, + "P": { + "availability": [], + "code": "P", + "description": "", + "local": false, + "name": "Pepperoni", + "tags": { + "meat": true + } + }, + "S": { + "availability": [], + "code": "S", + "description": "", + "local": false, + "name": "Italian Sausage", + "tags": { + "meat": true + } + }, + "Du": { + "availability": [], + "code": "Du", + "description": "", + "local": false, + "name": "Premium Chicken", + "tags": { + "meat": true + } + }, + "K": { + "availability": [], + "code": "K", + "description": "", + "local": false, + "name": "Bacon", + "tags": { + "meat": true + } + }, + "Pm": { + "availability": [], + "code": "Pm", + "description": "", + "local": false, + "name": "Philly Steak", + "tags": { + "meat": true + } + }, + "Ht": { + "availability": [], + "code": "Ht", + "description": "", + "local": false, + "name": "Hot Buffalo Sauce", + "tags": { + "nonMeat": true + } + }, + "F": { + "availability": [], + "code": "F", + "description": "", + "local": true, + "name": "Garlic", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "J": { + "availability": [], + "code": "J", + "description": "", + "local": false, + "name": "Jalapeno Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "O": { + "availability": [], + "code": "O", + "description": "", + "local": false, + "name": "Onions", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Z": { + "availability": [], + "code": "Z", + "description": "", + "local": false, + "name": "Banana Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Td": { + "availability": [], + "code": "Td", + "description": "", + "local": false, + "name": "Diced Tomatoes", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "R": { + "availability": [], + "code": "R", + "description": "", + "local": false, + "name": "Black Olives", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "M": { + "availability": [], + "code": "M", + "description": "", + "local": false, + "name": "Mushrooms", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "N": { + "availability": [], + "code": "N", + "description": "", + "local": false, + "name": "Pineapple", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Cp": { + "availability": [], + "code": "Cp", + "description": "", + "local": false, + "name": "Shredded Provolone Cheese", + "tags": { + "nonMeat": true, + "baseOptionQty": "1" + } + }, + "E": { + "availability": [], + "code": "E", + "description": "", + "local": false, + "name": "Cheddar Cheese", + "tags": { + "nonMeat": true + } + }, + "G": { + "availability": [], + "code": "G", + "description": "", + "local": false, + "name": "Green Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Si": { + "availability": [], + "code": "Si", + "description": "", + "local": false, + "name": "Spinach", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Rr": { + "availability": [], + "code": "Rr", + "description": "", + "local": false, + "name": "Roasted Red Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Fe": { + "availability": [], + "code": "Fe", + "description": "", + "local": false, + "name": "Feta Cheese", + "tags": { + "nonMeat": true + } + }, + "Cs": { + "availability": [], + "code": "Cs", + "description": "", + "local": false, + "name": "Shredded Parmesan Asiago", + "tags": { + "nonMeat": true + } + }, + "Ac": { + "availability": [], + "code": "Ac", + "description": "", + "local": false, + "name": "American Cheese", + "tags": { + "nonMeat": true + } + }, + "Xf": { + "availability": [], + "code": "Xf", + "description": "", + "local": false, + "name": "Alfredo Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "exclusiveGroup": "Sauce", + "sauce": true, + "nonMeat": true + } + }, + "Rd": { + "availability": [], + "code": "Rd", + "description": "", + "local": false, + "name": "Ranch", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "sauce": true, + "nonMeat": true + } + }, + "Km": { + "availability": [], + "code": "Km", + "description": "", + "local": false, + "name": "Ketchup-mustard sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "exclusiveGroup": "Sauce", + "sauce": true, + "nonMeat": true + } + } + }, + "sandwich": { + "X": { + "availability": [], + "code": "X", + "description": "", + "local": false, + "name": "Pizza Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "sauce": true, + "nonMeat": true + } + }, + "Mh": { + "availability": [], + "code": "Mh", + "description": "", + "local": false, + "name": "Mango Habanero Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "sauce": true, + "nonMeat": true + } + }, + "Bd": { + "availability": [], + "code": "Bd", + "description": "", + "local": false, + "name": "Blue Cheese Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "sauce": true, + "nonMeat": true + } + }, + "Rd": { + "availability": [], + "code": "Rd", + "description": "", + "local": false, + "name": "Ranch Dressing", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "sauce": true, + "vege": true, + "nonMeat": true + } + }, + "Ht": { + "availability": [], + "code": "Ht", + "description": "", + "local": false, + "name": "Hot Buffalo Sauce", + "tags": { + "wholeOnly": true, + "ignoreQty": true, + "sauce": true, + "vege": true, + "nonMeat": true + } + }, + "C": { + "availability": [], + "code": "C", + "description": "", + "local": false, + "name": "Cheese", + "tags": { + "nonMeat": true + } + }, + "P": { + "availability": [], + "code": "P", + "description": "", + "local": false, + "name": "Pepperoni", + "tags": { + "meat": true + } + }, + "Pm": { + "availability": [], + "code": "Pm", + "description": "", + "local": false, + "name": "Philly Steak", + "tags": { + "meat": true + } + }, + "H": { + "availability": [], + "code": "H", + "description": "", + "local": false, + "name": "Ham", + "tags": { + "meat": true + } + }, + "K": { + "availability": [], + "code": "K", + "description": "", + "local": false, + "name": "Bacon", + "tags": { + "meat": true + } + }, + "Sa": { + "availability": [], + "code": "Sa", + "description": "", + "local": false, + "name": "Salami", + "tags": { + "meat": true + } + }, + "Du": { + "availability": [], + "code": "Du", + "description": "", + "local": false, + "name": "Premium Chicken", + "tags": { + "meat": true + } + }, + "Ac": { + "availability": [], + "code": "Ac", + "description": "", + "local": false, + "name": "American Cheese", + "tags": { + "nonMeat": true + } + }, + "E": { + "availability": [], + "code": "E", + "description": "", + "local": false, + "name": "Cheddar Cheese", + "tags": { + "nonMeat": true + } + }, + "Fe": { + "availability": [], + "code": "Fe", + "description": "", + "local": false, + "name": "Feta Cheese", + "tags": { + "nonMeat": true + } + }, + "Cs": { + "availability": [], + "code": "Cs", + "description": "", + "local": false, + "name": "Shredded Parmesan Asiago", + "tags": { + "nonMeat": true + } + }, + "Pv": { + "availability": [], + "code": "Pv", + "description": "", + "local": false, + "name": "Sliced Provolone", + "tags": { + "nonMeat": true + } + }, + "Z": { + "availability": [], + "code": "Z", + "description": "", + "local": false, + "name": "Banana Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "G": { + "availability": [], + "code": "G", + "description": "", + "local": false, + "name": "Green Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "J": { + "availability": [], + "code": "J", + "description": "", + "local": false, + "name": "Jalapeno Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "M": { + "availability": [], + "code": "M", + "description": "", + "local": false, + "name": "Mushrooms", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "N": { + "availability": [], + "code": "N", + "description": "", + "local": false, + "name": "Pineapple", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "O": { + "availability": [], + "code": "O", + "description": "", + "local": false, + "name": "Onions", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Rr": { + "availability": [], + "code": "Rr", + "description": "", + "local": false, + "name": "Roasted Red Peppers", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Si": { + "availability": [], + "code": "Si", + "description": "", + "local": false, + "name": "Spinach", + "tags": { + "vege": true, + "nonMeat": true + } + }, + "Td": { + "availability": [], + "code": "Td", + "description": "", + "local": false, + "name": "Diced Tomatoes", + "tags": { + "vege": true, + "nonMeat": true + } + } + }, + "wings": { + "K": { + "availability": [], + "code": "K", + "description": "", + "local": false, + "name": "Bacon", + "tags": { + "meat": true, + "side": false + } + }, + "Td": { + "availability": [], + "code": "Td", + "description": "", + "local": false, + "name": "Diced Tomatoes", + "tags": { + "vege": true, + "nonMeat": true, + "side": false + } + }, + "J": { + "availability": [], + "code": "J", + "description": "", + "local": false, + "name": "Jalapeno Peppers", + "tags": { + "vege": true, + "nonMeat": true, + "side": false + } + }, + "N": { + "availability": [], + "code": "N", + "description": "", + "local": false, + "name": "Pineapple", + "tags": { + "vege": true, + "nonMeat": true, + "side": false + } + } + } + }, + "variants": { + "B8PCPT": { + "code": "B8PCPT", + "flavorCode": "", + "imageCode": "B8PCPT", + "local": false, + "name": "Parmesan Bread Twists", + "price": "6.99", + "productCode": "F_PARMT", + "sizeCode": "BRD8", + "tags": { + "breadType": "Twists", + "defaultSides": "SIDMAR=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "B8PCGT": { + "code": "B8PCGT", + "flavorCode": "", + "imageCode": "B8PCGT", + "local": false, + "name": "Garlic Bread Twists", + "price": "6.99", + "productCode": "F_GARLICT", + "sizeCode": "BRD8", + "tags": { + "breadType": "Twists", + "defaultSides": "SIDMAR=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "B8PCSCB": { + "code": "B8PCSCB", + "flavorCode": "", + "imageCode": "B8PCSCB", + "local": false, + "name": "Stuffed Cheesy Bread", + "price": "7.49", + "productCode": "F_SCBRD", + "sizeCode": "BRD8", + "tags": { + "breadType": "Stuffed", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.49", + "price1-0": "7.49", + "price1-3": "10.49", + "price2-3": "10.49", + "price1-4": "11.49", + "price2-2": "9.49", + "price1-1": "8.49", + "price2-1": "8.49", + "price1-2": "9.49", + "price2-0": "7.49" + }, + "surcharge": "0" + }, + "B8PCSSF": { + "code": "B8PCSSF", + "flavorCode": "", + "imageCode": "B8PCSSF", + "local": false, + "name": "Stuffed Cheesy Bread with Spinach & Feta", + "price": "7.49", + "productCode": "F_SSBRD", + "sizeCode": "BRD8", + "tags": { + "breadType": "Stuffed", + "defaultSides": "", + "defaultToppings": "Si=1,Fe=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.49", + "price1-0": "7.49", + "price1-3": "10.49", + "price2-3": "10.49", + "price1-4": "11.49", + "price2-2": "9.49", + "price1-1": "8.49", + "price2-1": "8.49", + "price1-2": "9.49", + "price2-0": "7.49" + }, + "surcharge": "0" + }, + "B8PCSBJ": { + "code": "B8PCSBJ", + "flavorCode": "", + "imageCode": "B8PCSBJ", + "local": false, + "name": "Stuffed Cheesy Bread with Bacon & Jalapeno", + "price": "7.49", + "productCode": "F_SBBRD", + "sizeCode": "BRD8", + "tags": { + "breadType": "Stuffed", + "defaultSides": "", + "defaultToppings": "K=1,J=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.49", + "price1-0": "7.49", + "price1-3": "10.49", + "price2-3": "10.49", + "price1-4": "11.49", + "price2-2": "9.49", + "price1-1": "8.49", + "price2-1": "8.49", + "price1-2": "9.49", + "price2-0": "7.49" + }, + "surcharge": "0" + }, + "B16PBIT": { + "code": "B16PBIT", + "flavorCode": "", + "imageCode": "B16PBIT", + "local": false, + "name": "16-Piece Parmesan Bread Bites", + "price": "4.99", + "productCode": "F_PBITES", + "sizeCode": "BRD16", + "tags": { + "defaultSides": "SIDMAR=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "4.99", + "price1-0": "4.99", + "price1-3": "4.99", + "price2-3": "4.99", + "price1-4": "4.99", + "price2-2": "4.99", + "price1-1": "4.99", + "price2-1": "4.99", + "price1-2": "4.99", + "price2-0": "4.99" + }, + "surcharge": "0" + }, + "B32PBIT": { + "code": "B32PBIT", + "flavorCode": "", + "imageCode": "B32PBIT", + "local": false, + "name": "32-Piece Parmesan Bread Bites", + "price": "7.99", + "productCode": "F_PBITES", + "sizeCode": "BRD32", + "tags": { + "defaultSides": "SIDMAR=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "7.99", + "price1-0": "7.99", + "price1-3": "7.99", + "price2-3": "7.99", + "price1-4": "7.99", + "price2-2": "7.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "7.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "B8PCCT": { + "code": "B8PCCT", + "flavorCode": "", + "imageCode": "B8PCCT", + "local": false, + "name": "Cinnamon Bread Twists", + "price": "6.99", + "productCode": "F_CINNAT", + "sizeCode": "DRT8", + "tags": { + "breadType": "Twists", + "defaultSides": "SIDICE=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "MARBRWNE": { + "code": "MARBRWNE", + "flavorCode": "", + "imageCode": "MARBRWNE", + "local": false, + "name": "Domino's Marbled Cookie Brownie™", + "price": "6.99", + "productCode": "F_MRBRWNE", + "sizeCode": "9PC", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "B2PCLAVA": { + "code": "B2PCLAVA", + "flavorCode": "", + "imageCode": "B2PCLAVA", + "local": false, + "name": "Chocolate Lava Crunch Cakes", + "price": "4.99", + "productCode": "F_LAVA", + "sizeCode": "DRT2", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "7.99", + "price1-0": "4.99", + "price1-3": "7.24", + "price2-3": "7.24", + "price1-4": "7.99", + "price2-2": "6.49", + "price1-1": "5.74", + "price2-1": "5.74", + "price1-2": "6.49", + "price2-0": "4.99" + }, + "surcharge": "0" + }, + "20BCOKE": { + "code": "20BCOKE", + "flavorCode": "", + "imageCode": "20BCOKE", + "local": false, + "name": "20oz Bottle Coke®", + "price": "2.09", + "productCode": "F_COKE", + "sizeCode": "20OZB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.09", + "price1-0": "2.09", + "price1-3": "2.09", + "price2-3": "2.09", + "price1-4": "2.09", + "price2-2": "2.09", + "price1-1": "2.09", + "price2-1": "2.09", + "price1-2": "2.09", + "price2-0": "2.09" + }, + "surcharge": "0" + }, + "20BORNG": { + "code": "20BORNG", + "flavorCode": "", + "imageCode": "20BORNG", + "local": false, + "name": "20oz Bottle Fanta® Orange", + "price": "2.09", + "productCode": "F_ORAN", + "sizeCode": "20OZB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.09", + "price1-0": "2.09", + "price1-3": "2.09", + "price2-3": "2.09", + "price1-4": "2.09", + "price2-2": "2.09", + "price1-1": "2.09", + "price2-1": "2.09", + "price1-2": "2.09", + "price2-0": "2.09" + }, + "surcharge": "0" + }, + "20BSPRITE": { + "code": "20BSPRITE", + "flavorCode": "", + "imageCode": "20BSPRITE", + "local": false, + "name": "20oz Bottle Sprite®", + "price": "2.09", + "productCode": "F_SPRITE", + "sizeCode": "20OZB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.09", + "price1-0": "2.09", + "price1-3": "2.09", + "price2-3": "2.09", + "price1-4": "2.09", + "price2-2": "2.09", + "price1-1": "2.09", + "price2-1": "2.09", + "price1-2": "2.09", + "price2-0": "2.09" + }, + "surcharge": "0" + }, + "2LCOKE": { + "code": "2LCOKE", + "flavorCode": "", + "imageCode": "2LCOKE", + "local": false, + "name": "2-Liter Coke®", + "price": "2.99", + "productCode": "F_COKE", + "sizeCode": "2LTB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.99", + "price1-0": "2.99", + "price1-3": "2.99", + "price2-3": "2.99", + "price1-4": "2.99", + "price2-2": "2.99", + "price1-1": "2.99", + "price2-1": "2.99", + "price1-2": "2.99", + "price2-0": "2.99" + }, + "surcharge": "0" + }, + "2LDCOKE": { + "code": "2LDCOKE", + "flavorCode": "", + "imageCode": "2LDCOKE", + "local": false, + "name": "2-Liter Diet Coke®", + "price": "2.99", + "productCode": "F_DIET", + "sizeCode": "2LTB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.99", + "price1-0": "2.99", + "price1-3": "2.99", + "price2-3": "2.99", + "price1-4": "2.99", + "price2-2": "2.99", + "price1-1": "2.99", + "price2-1": "2.99", + "price1-2": "2.99", + "price2-0": "2.99" + }, + "surcharge": "0" + }, + "20BDCOKE": { + "code": "20BDCOKE", + "flavorCode": "", + "imageCode": "20BDCOKE", + "local": false, + "name": "20oz Bottle Diet Coke®", + "price": "2.09", + "productCode": "F_DIET", + "sizeCode": "20OZB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.09", + "price1-0": "2.09", + "price1-3": "2.09", + "price2-3": "2.09", + "price1-4": "2.09", + "price2-2": "2.09", + "price1-1": "2.09", + "price2-1": "2.09", + "price1-2": "2.09", + "price2-0": "2.09" + }, + "surcharge": "0" + }, + "2LMMORANGE": { + "code": "2LMMORANGE", + "flavorCode": "", + "imageCode": "2LMMORANGE", + "local": true, + "name": "2-Liter Fanta® Orange", + "price": "2.99", + "productCode": "F_ORAN", + "sizeCode": "2LTB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.99", + "price1-0": "2.99", + "price1-3": "2.99", + "price2-3": "2.99", + "price1-4": "2.99", + "price2-2": "2.99", + "price1-1": "2.99", + "price2-1": "2.99", + "price1-2": "2.99", + "price2-0": "2.99" + }, + "surcharge": "0" + }, + "2LSPRITE": { + "code": "2LSPRITE", + "flavorCode": "", + "imageCode": "2LSPRITE", + "local": false, + "name": "2-Liter Sprite®", + "price": "2.99", + "productCode": "F_SPRITE", + "sizeCode": "2LTB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.99", + "price1-0": "2.99", + "price1-3": "2.99", + "price2-3": "2.99", + "price1-4": "2.99", + "price2-2": "2.99", + "price1-1": "2.99", + "price2-1": "2.99", + "price1-2": "2.99", + "price2-0": "2.99" + }, + "surcharge": "0" + }, + "BOTTLWATER": { + "code": "BOTTLWATER", + "flavorCode": "", + "imageCode": "BOTTLWATER", + "local": false, + "name": "20oz Dasani® Bottle Water", + "price": "2.09", + "productCode": "F_WATER", + "sizeCode": "20OZB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "2.09", + "price1-0": "2.09", + "price1-3": "2.09", + "price2-3": "2.09", + "price1-4": "2.09", + "price2-2": "2.09", + "price1-1": "2.09", + "price2-1": "2.09", + "price1-2": "2.09", + "price2-0": "2.09" + }, + "surcharge": "0" + }, + "D20BLEMO": { + "code": "D20BLEMO", + "flavorCode": "", + "imageCode": "D20BLEMO", + "local": true, + "name": "20oz Lemonade Bottle", + "price": "2.09", + "productCode": "F_LEMND", + "sizeCode": "20OZB", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "2.09", + "price1-0": "2.09", + "price1-3": "2.09", + "price2-3": "2.09", + "price1-4": "2.09", + "price2-2": "2.09", + "price1-1": "2.09", + "price2-1": "2.09", + "price1-2": "2.09", + "price2-0": "2.09" + }, + "surcharge": "0" + }, + "PPSGARSA": { + "code": "PPSGARSA", + "flavorCode": "", + "imageCode": "PPSGARSA", + "local": false, + "name": "Classic Garden", + "price": "6.99", + "productCode": "F_GARDEN", + "sizeCode": "", + "tags": { + "defaultSides": "RANCHPK=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "PPSCSRSA": { + "code": "PPSCSRSA", + "flavorCode": "", + "imageCode": "PPSCSRSA", + "local": false, + "name": "Chicken Caesar", + "price": "6.99", + "productCode": "F_CCAESAR", + "sizeCode": "", + "tags": { + "defaultSides": "CAESAR=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "PINPASBD": { + "code": "PINPASBD", + "flavorCode": "PASTA", + "imageCode": "PINPASBD", + "local": false, + "name": "Build Your Own Pasta", + "price": "7.99", + "productCode": "S_BUILD", + "sizeCode": "", + "tags": { + "sauceRequired": true, + "defaultSides": "", + "defaultToppings": "Xf=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "8.99", + "price1-0": "7.99", + "price1-3": "7.99", + "price2-3": "7.99", + "price1-4": "8.99", + "price2-2": "7.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "7.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "PINPASCA": { + "code": "PINPASCA", + "flavorCode": "PASTA", + "imageCode": "PINPASCA", + "local": false, + "name": "Chicken Alfredo Pasta", + "price": "7.99", + "productCode": "S_ALFR", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "Du=1,Xf=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.99", + "price1-0": "7.99", + "price1-3": "10.99", + "price2-3": "10.99", + "price1-4": "11.99", + "price2-2": "9.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "9.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "PINPASCC": { + "code": "PINPASCC", + "flavorCode": "PASTA", + "imageCode": "PINPASCC", + "local": false, + "name": "Chicken Carbonara Pasta", + "price": "7.99", + "productCode": "S_CARB", + "sizeCode": "", + "tags": { + "maxOptionQty": "4", + "defaultSides": "", + "defaultToppings": "M=1,O=1,Du=1,K=1,Xf=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.99", + "price1-0": "7.99", + "price1-3": "10.99", + "price2-3": "10.99", + "price1-4": "11.99", + "price2-2": "9.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "9.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "PINPASMM": { + "code": "PINPASMM", + "flavorCode": "PASTA", + "imageCode": "PINPASMM", + "local": false, + "name": "Italian Sausage Marinara Pasta", + "price": "7.99", + "productCode": "S_MARIN", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "S=1,Cp=1,Xm=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.99", + "price1-0": "7.99", + "price1-3": "10.99", + "price2-3": "10.99", + "price1-4": "11.99", + "price2-2": "9.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "9.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "PINPASPP": { + "code": "PINPASPP", + "flavorCode": "PASTA", + "imageCode": "PINPASPP", + "local": false, + "name": "Pasta Primavera", + "price": "7.99", + "productCode": "S_PRIM", + "sizeCode": "", + "tags": { + "maxOptionQty": "4", + "defaultSides": "", + "defaultToppings": "M=1,O=1,Td=1,Si=1,Xf=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.99", + "price1-0": "7.99", + "price1-3": "10.99", + "price2-3": "10.99", + "price1-4": "11.99", + "price2-2": "9.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "9.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "PINBBLBD": { + "code": "PINBBLBD", + "flavorCode": "BBOWL", + "imageCode": "PINBBLBD", + "local": false, + "name": "Build your Own BreadBowl Pasta", + "price": "8.99", + "productCode": "S_BUILD", + "sizeCode": "", + "tags": { + "sauceRequired": true, + "defaultSides": "", + "defaultToppings": "Xf=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "9.99", + "price1-0": "8.99", + "price1-3": "8.99", + "price2-3": "8.99", + "price1-4": "9.99", + "price2-2": "8.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "8.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "PINBBLCA": { + "code": "PINBBLCA", + "flavorCode": "BBOWL", + "imageCode": "PINBBLCA", + "local": false, + "name": "Chicken Alfredo BreadBowl Pasta", + "price": "8.99", + "productCode": "S_ALFR", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "Du=1,Xf=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "12.99", + "price1-0": "8.99", + "price1-3": "11.99", + "price2-3": "11.99", + "price1-4": "12.99", + "price2-2": "10.99", + "price1-1": "9.99", + "price2-1": "9.99", + "price1-2": "10.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "PINBBLCC": { + "code": "PINBBLCC", + "flavorCode": "BBOWL", + "imageCode": "PINBBLCC", + "local": false, + "name": "Chicken Carbonara BreadBowl Pasta", + "price": "8.99", + "productCode": "S_CARB", + "sizeCode": "", + "tags": { + "maxOptionQty": "4", + "defaultSides": "", + "defaultToppings": "M=1,O=1,Du=1,K=1,Xf=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "12.99", + "price1-0": "8.99", + "price1-3": "11.99", + "price2-3": "11.99", + "price1-4": "12.99", + "price2-2": "10.99", + "price1-1": "9.99", + "price2-1": "9.99", + "price1-2": "10.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "PINBBLMM": { + "code": "PINBBLMM", + "flavorCode": "BBOWL", + "imageCode": "PINBBLMM", + "local": false, + "name": "Italian Sausage Marinara BreadBowl Pasta", + "price": "8.99", + "productCode": "S_MARIN", + "sizeCode": "", + "tags": { + "sodiumWarningEnabled": true, + "defaultSides": "", + "defaultToppings": "S=1,Cp=1,Xm=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "12.99", + "price1-0": "8.99", + "price1-3": "11.99", + "price2-3": "11.99", + "price1-4": "12.99", + "price2-2": "10.99", + "price1-1": "9.99", + "price2-1": "9.99", + "price1-2": "10.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "PINBBLPP": { + "code": "PINBBLPP", + "flavorCode": "BBOWL", + "imageCode": "PINBBLPP", + "local": false, + "name": "Pasta Primavera BreadBowl", + "price": "8.99", + "productCode": "S_PRIM", + "sizeCode": "", + "tags": { + "maxOptionQty": "4", + "defaultSides": "", + "defaultToppings": "M=1,O=1,Td=1,Si=1,Xf=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "12.99", + "price1-0": "8.99", + "price1-3": "11.99", + "price2-3": "11.99", + "price1-4": "12.99", + "price2-2": "10.99", + "price1-1": "9.99", + "price2-1": "9.99", + "price1-2": "10.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "10SCDELUX": { + "code": "10SCDELUX", + "flavorCode": "HANDTOSS", + "imageCode": "10SCDELUX", + "local": false, + "name": "Small (10\") Hand Tossed Deluxe", + "price": "12.99", + "productCode": "S_DX", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "10SCMEATZA": { + "code": "10SCMEATZA", + "flavorCode": "HANDTOSS", + "imageCode": "10SCMEATZA", + "local": false, + "name": "Small (10\") Hand Tossed MeatZZa", + "price": "12.99", + "productCode": "S_MX", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IREBP": { + "code": "P10IREBP", + "flavorCode": "HANDTOSS", + "imageCode": "P10IREBP", + "local": false, + "name": "Small (10\") Hand Tossed Buffalo Chicken", + "price": "12.99", + "productCode": "S_PIZBP", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IRECK": { + "code": "P10IRECK", + "flavorCode": "HANDTOSS", + "imageCode": "P10IRECK", + "local": false, + "name": "Small (10\") Hand Tossed Memphis BBQ Chicken ", + "price": "12.99", + "productCode": "S_PIZCK", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IRECR": { + "code": "P10IRECR", + "flavorCode": "HANDTOSS", + "imageCode": "P10IRECR", + "local": false, + "name": "Small (10\") Hand Tossed Cali Chicken Bacon Ranch", + "price": "12.99", + "productCode": "S_PIZCR", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IRECZ": { + "code": "P10IRECZ", + "flavorCode": "HANDTOSS", + "imageCode": "P10IRECZ", + "local": false, + "name": "Small (10\") Hand Tossed Wisconsin 6 Cheese Pizza", + "price": "12.99", + "productCode": "S_PIZCZ", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IREPH": { + "code": "P10IREPH", + "flavorCode": "HANDTOSS", + "imageCode": "P10IREPH", + "local": false, + "name": "Small (10\") Hand Tossed Philly Cheese Steak", + "price": "12.99", + "productCode": "S_PIZPH", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IREPV": { + "code": "P10IREPV", + "flavorCode": "HANDTOSS", + "imageCode": "P10IREPV", + "local": false, + "name": "Small (10\") Hand Tossed Pacific Veggie", + "price": "12.99", + "productCode": "S_PIZPV", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "10SCPFEAST": { + "code": "10SCPFEAST", + "flavorCode": "HANDTOSS", + "imageCode": "10SCPFEAST", + "local": false, + "name": "Small (10\") Hand Tossed Ultimate Pepperoni", + "price": "12.99", + "productCode": "S_PIZPX", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IREUH": { + "code": "P10IREUH", + "flavorCode": "HANDTOSS", + "imageCode": "P10IREUH", + "local": false, + "name": "Small (10\") Hand Tossed Honolulu Hawaiian", + "price": "12.99", + "productCode": "S_PIZUH", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "10SCREEN": { + "code": "10SCREEN", + "flavorCode": "HANDTOSS", + "imageCode": "10SCREEN", + "local": false, + "name": "Small (10\") Hand Tossed Pizza", + "price": "9.49", + "productCode": "S_PIZZA", + "sizeCode": "10", + "tags": { + "sodiumWarningEnabled": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "15.45", + "price1-0": "9.49", + "price1-3": "13.96", + "price2-3": "13.96", + "price1-4": "15.45", + "price2-2": "12.47", + "price1-1": "10.98", + "price2-1": "10.98", + "price1-2": "12.47", + "price2-0": "9.49" + }, + "surcharge": "0" + }, + "10SCEXTRAV": { + "code": "10SCEXTRAV", + "flavorCode": "HANDTOSS", + "imageCode": "10SCEXTRAV", + "local": false, + "name": "Small (10\") Hand Tossed ExtravaganZZa ", + "price": "12.99", + "productCode": "S_ZZ", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "12SCDELUX": { + "code": "12SCDELUX", + "flavorCode": "HANDTOSS", + "imageCode": "12SCDELUX", + "local": false, + "name": "Medium (12\") Hand Tossed Deluxe", + "price": "14.99", + "productCode": "S_DX", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "12SCMEATZA": { + "code": "12SCMEATZA", + "flavorCode": "HANDTOSS", + "imageCode": "12SCMEATZA", + "local": false, + "name": "Medium (12\") Hand Tossed MeatZZa", + "price": "14.99", + "productCode": "S_MX", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IREBP": { + "code": "P12IREBP", + "flavorCode": "HANDTOSS", + "imageCode": "P12IREBP", + "local": false, + "name": "Medium (12\") Hand Tossed Buffalo Chicken", + "price": "14.99", + "productCode": "S_PIZBP", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IRECK": { + "code": "P12IRECK", + "flavorCode": "HANDTOSS", + "imageCode": "P12IRECK", + "local": false, + "name": "Medium (12\") Hand Tossed Memphis BBQ Chicken ", + "price": "14.99", + "productCode": "S_PIZCK", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IRECR": { + "code": "P12IRECR", + "flavorCode": "HANDTOSS", + "imageCode": "P12IRECR", + "local": false, + "name": "Medium (12\") Hand Tossed Cali Chicken Bacon Ranch", + "price": "14.99", + "productCode": "S_PIZCR", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IRECZ": { + "code": "P12IRECZ", + "flavorCode": "HANDTOSS", + "imageCode": "P12IRECZ", + "local": false, + "name": "Medium (12\") Hand Tossed Wisconsin 6 Cheese Pizza", + "price": "14.99", + "productCode": "S_PIZCZ", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IREPH": { + "code": "P12IREPH", + "flavorCode": "HANDTOSS", + "imageCode": "P12IREPH", + "local": false, + "name": "Medium (12\") Hand Tossed Philly Cheese Steak", + "price": "14.99", + "productCode": "S_PIZPH", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IREPV": { + "code": "P12IREPV", + "flavorCode": "HANDTOSS", + "imageCode": "P12IREPV", + "local": false, + "name": "Medium (12\") Hand Tossed Pacific Veggie", + "price": "14.99", + "productCode": "S_PIZPV", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "12SCPFEAST": { + "code": "12SCPFEAST", + "flavorCode": "HANDTOSS", + "imageCode": "12SCPFEAST", + "local": false, + "name": "Medium (12\") Hand Tossed Ultimate Pepperoni", + "price": "14.99", + "productCode": "S_PIZPX", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IREUH": { + "code": "P12IREUH", + "flavorCode": "HANDTOSS", + "imageCode": "P12IREUH", + "local": false, + "name": "Medium (12\") Hand Tossed Honolulu Hawaiian", + "price": "14.99", + "productCode": "S_PIZUH", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "12SCREEN": { + "code": "12SCREEN", + "flavorCode": "HANDTOSS", + "imageCode": "12SCREEN", + "local": false, + "name": "Medium (12\") Hand Tossed Pizza", + "price": "11.99", + "productCode": "S_PIZZA", + "sizeCode": "12", + "tags": { + "sodiumWarningEnabled": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.75", + "price1-0": "11.99", + "price1-3": "17.06", + "price2-3": "17.06", + "price1-4": "18.75", + "price2-2": "15.37", + "price1-1": "13.68", + "price2-1": "13.68", + "price1-2": "15.37", + "price2-0": "11.99" + }, + "surcharge": "0" + }, + "12SCEXTRAV": { + "code": "12SCEXTRAV", + "flavorCode": "HANDTOSS", + "imageCode": "12SCEXTRAV", + "local": false, + "name": "Medium (12\") Hand Tossed ExtravaganZZa ", + "price": "14.99", + "productCode": "S_ZZ", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "12TDELUX": { + "code": "12TDELUX", + "flavorCode": "THIN", + "imageCode": "12TDELUX", + "local": false, + "name": "Medium (12\") Thin Deluxe", + "price": "14.99", + "productCode": "S_DX", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "12TMEATZA": { + "code": "12TMEATZA", + "flavorCode": "THIN", + "imageCode": "12TMEATZA", + "local": false, + "name": "Medium (12\") Thin MeatZZa", + "price": "14.99", + "productCode": "S_MX", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHBP": { + "code": "P12ITHBP", + "flavorCode": "THIN", + "imageCode": "P12ITHBP", + "local": false, + "name": "Medium (12\") Thin Crust Buffalo Chicken", + "price": "14.99", + "productCode": "S_PIZBP", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHCK": { + "code": "P12ITHCK", + "flavorCode": "THIN", + "imageCode": "P12ITHCK", + "local": false, + "name": "Medium (12\") Thin Crust Memphis BBQ Chicken ", + "price": "14.99", + "productCode": "S_PIZCK", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHCR": { + "code": "P12ITHCR", + "flavorCode": "THIN", + "imageCode": "P12ITHCR", + "local": false, + "name": "Medium (12\") Thin Crust Cali Chicken Bacon Ranch", + "price": "14.99", + "productCode": "S_PIZCR", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHCZ": { + "code": "P12ITHCZ", + "flavorCode": "THIN", + "imageCode": "P12ITHCZ", + "local": false, + "name": "Medium (12\") Thin Wisconsin 6 Cheese Pizza", + "price": "14.99", + "productCode": "S_PIZCZ", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHPH": { + "code": "P12ITHPH", + "flavorCode": "THIN", + "imageCode": "P12ITHPH", + "local": false, + "name": "Medium (12\") Thin Philly Cheese Steak", + "price": "14.99", + "productCode": "S_PIZPH", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHPV": { + "code": "P12ITHPV", + "flavorCode": "THIN", + "imageCode": "P12ITHPV", + "local": false, + "name": "Medium (12\") Thin Crust Pacific Veggie", + "price": "14.99", + "productCode": "S_PIZPV", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "12TPFEAST": { + "code": "12TPFEAST", + "flavorCode": "THIN", + "imageCode": "12TPFEAST", + "local": false, + "name": "Medium (12\") Thin Ultimate Pepperoni", + "price": "14.99", + "productCode": "S_PIZPX", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHUH": { + "code": "P12ITHUH", + "flavorCode": "THIN", + "imageCode": "P12ITHUH", + "local": false, + "name": "Medium (12\") Thin Crust Honolulu Hawaiian", + "price": "14.99", + "productCode": "S_PIZUH", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "12THIN": { + "code": "12THIN", + "flavorCode": "THIN", + "imageCode": "12THIN", + "local": false, + "name": "Medium (12\") Thin Pizza", + "price": "11.99", + "productCode": "S_PIZZA", + "sizeCode": "12", + "tags": { + "sodiumWarningEnabled": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "18.75", + "price1-0": "11.99", + "price1-3": "17.06", + "price2-3": "17.06", + "price1-4": "18.75", + "price2-2": "15.37", + "price1-1": "13.68", + "price2-1": "13.68", + "price1-2": "15.37", + "price2-0": "11.99" + }, + "surcharge": "0" + }, + "12TEXTRAV": { + "code": "12TEXTRAV", + "flavorCode": "THIN", + "imageCode": "12TEXTRAV", + "local": false, + "name": "Medium (12\") Thin ExtravaganZZa ", + "price": "14.99", + "productCode": "S_ZZ", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "PBKIREDX": { + "code": "PBKIREDX", + "flavorCode": "BK", + "imageCode": "PBKIREDX", + "local": false, + "name": "Large (14\") Brooklyn Deluxe", + "price": "17.99", + "productCode": "S_DX", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "PBKIREMX": { + "code": "PBKIREMX", + "flavorCode": "BK", + "imageCode": "PBKIREMX", + "local": false, + "name": "Large (14\") Brooklyn MeatZZa", + "price": "17.99", + "productCode": "S_MX", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IBKBP": { + "code": "P14IBKBP", + "flavorCode": "BK", + "imageCode": "P14IBKBP", + "local": false, + "name": "Large (14\") Brooklyn Buffalo Chicken", + "price": "17.99", + "productCode": "S_PIZBP", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IBKCK": { + "code": "P14IBKCK", + "flavorCode": "BK", + "imageCode": "P14IBKCK", + "local": false, + "name": "Large (14\") Brooklyn Memphis BBQ Chicken ", + "price": "17.99", + "productCode": "S_PIZCK", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IBKCR": { + "code": "P14IBKCR", + "flavorCode": "BK", + "imageCode": "P14IBKCR", + "local": false, + "name": "Large (14\") Brooklyn Cali Chicken Bacon Ranch", + "price": "17.99", + "productCode": "S_PIZCR", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IBKCZ": { + "code": "P14IBKCZ", + "flavorCode": "BK", + "imageCode": "P14IBKCZ", + "local": false, + "name": "Large (14\") Brooklyn Wisconsin 6 Cheese Pizza", + "price": "17.99", + "productCode": "S_PIZCZ", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IBKPH": { + "code": "P14IBKPH", + "flavorCode": "BK", + "imageCode": "P14IBKPH", + "local": false, + "name": "Large (14\") Brooklyn Philly Cheese Steak", + "price": "17.99", + "productCode": "S_PIZPH", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IBKPV": { + "code": "P14IBKPV", + "flavorCode": "BK", + "imageCode": "P14IBKPV", + "local": false, + "name": "Large (14\") Brooklyn Pacific Veggie", + "price": "17.99", + "productCode": "S_PIZPV", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "PBKIREPX": { + "code": "PBKIREPX", + "flavorCode": "BK", + "imageCode": "PBKIREPX", + "local": false, + "name": "Large (14\") Brooklyn Ultimate Pepperoni", + "price": "17.99", + "productCode": "S_PIZPX", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "PBKIREZA": { + "code": "PBKIREZA", + "flavorCode": "BK", + "imageCode": "PBKIREZA", + "local": false, + "name": "Large (14\") Brooklyn Pizza", + "price": "13.99", + "productCode": "S_PIZZA", + "sizeCode": "14", + "tags": { + "sodiumWarningEnabled": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.55", + "price1-0": "13.99", + "price1-3": "19.66", + "price2-3": "19.66", + "price1-4": "21.55", + "price2-2": "17.77", + "price1-1": "15.88", + "price2-1": "15.88", + "price1-2": "17.77", + "price2-0": "13.99" + }, + "surcharge": "0" + }, + "PBKIREZZ": { + "code": "PBKIREZZ", + "flavorCode": "BK", + "imageCode": "PBKIREZZ", + "local": false, + "name": "Large (14\") Brooklyn ExtravaganZZa ", + "price": "17.99", + "productCode": "S_ZZ", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "14SCDELUX": { + "code": "14SCDELUX", + "flavorCode": "HANDTOSS", + "imageCode": "14SCDELUX", + "local": false, + "name": "Large (14\") Hand Tossed Deluxe", + "price": "17.99", + "productCode": "S_DX", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "14SCMEATZA": { + "code": "14SCMEATZA", + "flavorCode": "HANDTOSS", + "imageCode": "14SCMEATZA", + "local": false, + "name": "Large (14\") Hand Tossed MeatZZa", + "price": "17.99", + "productCode": "S_MX", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IREBP": { + "code": "P14IREBP", + "flavorCode": "HANDTOSS", + "imageCode": "P14IREBP", + "local": false, + "name": "Large (14\") Hand Tossed Buffalo Chicken", + "price": "17.99", + "productCode": "S_PIZBP", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IRECK": { + "code": "P14IRECK", + "flavorCode": "HANDTOSS", + "imageCode": "P14IRECK", + "local": false, + "name": "Large (14\") Hand Tossed Memphis BBQ Chicken ", + "price": "17.99", + "productCode": "S_PIZCK", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IRECR": { + "code": "P14IRECR", + "flavorCode": "HANDTOSS", + "imageCode": "P14IRECR", + "local": false, + "name": "Large (14\") Hand Tossed Cali Chicken Bacon Ranch", + "price": "17.99", + "productCode": "S_PIZCR", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IRECZ": { + "code": "P14IRECZ", + "flavorCode": "HANDTOSS", + "imageCode": "P14IRECZ", + "local": false, + "name": "Large (14\") Hand Tossed Wisconsin 6 Cheese Pizza", + "price": "17.99", + "productCode": "S_PIZCZ", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IREPH": { + "code": "P14IREPH", + "flavorCode": "HANDTOSS", + "imageCode": "P14IREPH", + "local": false, + "name": "Large (14\") Hand Tossed Philly Cheese Steak", + "price": "17.99", + "productCode": "S_PIZPH", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IREPV": { + "code": "P14IREPV", + "flavorCode": "HANDTOSS", + "imageCode": "P14IREPV", + "local": false, + "name": "Large (14\") Hand Tossed Pacific Veggie", + "price": "17.99", + "productCode": "S_PIZPV", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "14SCPFEAST": { + "code": "14SCPFEAST", + "flavorCode": "HANDTOSS", + "imageCode": "14SCPFEAST", + "local": false, + "name": "Large (14\") Hand Tossed Ultimate Pepperoni", + "price": "17.99", + "productCode": "S_PIZPX", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IREUH": { + "code": "P14IREUH", + "flavorCode": "HANDTOSS", + "imageCode": "P14IREUH", + "local": false, + "name": "Large (14\") Hand Tossed Honolulu Hawaiian", + "price": "17.99", + "productCode": "S_PIZUH", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "14SCREEN": { + "code": "14SCREEN", + "flavorCode": "HANDTOSS", + "imageCode": "14SCREEN", + "local": false, + "name": "Large (14\") Hand Tossed Pizza", + "price": "13.99", + "productCode": "S_PIZZA", + "sizeCode": "14", + "tags": { + "sodiumWarningEnabled": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.55", + "price1-0": "13.99", + "price1-3": "19.66", + "price2-3": "19.66", + "price1-4": "21.55", + "price2-2": "17.77", + "price1-1": "15.88", + "price2-1": "15.88", + "price1-2": "17.77", + "price2-0": "13.99" + }, + "surcharge": "0" + }, + "14SCEXTRAV": { + "code": "14SCEXTRAV", + "flavorCode": "HANDTOSS", + "imageCode": "14SCEXTRAV", + "local": false, + "name": "Large (14\") Hand Tossed ExtravaganZZa ", + "price": "17.99", + "productCode": "S_ZZ", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "14TDELUX": { + "code": "14TDELUX", + "flavorCode": "THIN", + "imageCode": "14TDELUX", + "local": false, + "name": "Large (14\") Thin Deluxe", + "price": "17.99", + "productCode": "S_DX", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "14TMEATZA": { + "code": "14TMEATZA", + "flavorCode": "THIN", + "imageCode": "14TMEATZA", + "local": false, + "name": "Large (14\") Thin MeatZZa", + "price": "17.99", + "productCode": "S_MX", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHBP": { + "code": "P14ITHBP", + "flavorCode": "THIN", + "imageCode": "P14ITHBP", + "local": false, + "name": "Large (14\") Thin Crust Buffalo Chicken", + "price": "17.99", + "productCode": "S_PIZBP", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHCK": { + "code": "P14ITHCK", + "flavorCode": "THIN", + "imageCode": "P14ITHCK", + "local": false, + "name": "Large (14\") Thin Crust Memphis BBQ Chicken ", + "price": "17.99", + "productCode": "S_PIZCK", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHCZ": { + "code": "P14ITHCZ", + "flavorCode": "THIN", + "imageCode": "P14ITHCZ", + "local": false, + "name": "Large (14\") Thin Wisconsin 6 Cheese Pizza", + "price": "17.99", + "productCode": "S_PIZCZ", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHPH": { + "code": "P14ITHPH", + "flavorCode": "THIN", + "imageCode": "P14ITHPH", + "local": false, + "name": "Large (14\") Thin Philly Cheese Steak", + "price": "17.99", + "productCode": "S_PIZPH", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHPV": { + "code": "P14ITHPV", + "flavorCode": "THIN", + "imageCode": "P14ITHPV", + "local": false, + "name": "Large (14\") Thin Crust Pacific Veggie", + "price": "17.99", + "productCode": "S_PIZPV", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "14TPFEAST": { + "code": "14TPFEAST", + "flavorCode": "THIN", + "imageCode": "14TPFEAST", + "local": false, + "name": "Large (14\") Thin Ultimate Pepperoni", + "price": "17.99", + "productCode": "S_PIZPX", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHUH": { + "code": "P14ITHUH", + "flavorCode": "THIN", + "imageCode": "P14ITHUH", + "local": false, + "name": "Large (14\") Thin Crust Honolulu Hawaiian", + "price": "17.99", + "productCode": "S_PIZUH", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "14THIN": { + "code": "14THIN", + "flavorCode": "THIN", + "imageCode": "14THIN", + "local": false, + "name": "Large (14\") Thin Pizza", + "price": "13.99", + "productCode": "S_PIZZA", + "sizeCode": "14", + "tags": { + "sodiumWarningEnabled": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.55", + "price1-0": "13.99", + "price1-3": "19.66", + "price2-3": "19.66", + "price1-4": "21.55", + "price2-2": "17.77", + "price1-1": "15.88", + "price2-1": "15.88", + "price1-2": "17.77", + "price2-0": "13.99" + }, + "surcharge": "0" + }, + "14TEXTRAV": { + "code": "14TEXTRAV", + "flavorCode": "THIN", + "imageCode": "14TEXTRAV", + "local": false, + "name": "Large (14\") Thin ExtravaganZZa ", + "price": "17.99", + "productCode": "S_ZZ", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P16IBKDX": { + "code": "P16IBKDX", + "flavorCode": "BK", + "imageCode": "P16IBKDX", + "local": true, + "name": "X-Large (16\") Brooklyn Deluxe", + "price": "19.99", + "productCode": "S_DX", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKMX": { + "code": "P16IBKMX", + "flavorCode": "BK", + "imageCode": "P16IBKMX", + "local": true, + "name": "X-Large (16\") Brooklyn MeatZZa", + "price": "19.99", + "productCode": "S_MX", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKBP": { + "code": "P16IBKBP", + "flavorCode": "BK", + "imageCode": "P16IBKBP", + "local": true, + "name": "X-Large (16\") Brooklyn Buffalo Chicken", + "price": "19.99", + "productCode": "S_PIZBP", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKCK": { + "code": "P16IBKCK", + "flavorCode": "BK", + "imageCode": "P16IBKCK", + "local": true, + "name": "X-Large (16\") Brooklyn Memphis BBQ Chicken ", + "price": "19.99", + "productCode": "S_PIZCK", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKCR": { + "code": "P16IBKCR", + "flavorCode": "BK", + "imageCode": "P16IBKCR", + "local": true, + "name": "X-Large (16\") Brooklyn Cali Chicken Bacon Ranch", + "price": "19.99", + "productCode": "S_PIZCR", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKCZ": { + "code": "P16IBKCZ", + "flavorCode": "BK", + "imageCode": "P16IBKCZ", + "local": true, + "name": "X-Large (16\") Brooklyn Wisconsin 6 Cheese Pizza", + "price": "19.99", + "productCode": "S_PIZCZ", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKPH": { + "code": "P16IBKPH", + "flavorCode": "BK", + "imageCode": "P16IBKPH", + "local": true, + "name": "X-Large (16\") Brooklyn Philly Cheese Steak", + "price": "19.99", + "productCode": "S_PIZPH", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKPV": { + "code": "P16IBKPV", + "flavorCode": "BK", + "imageCode": "P16IBKPV", + "local": true, + "name": "X-Large (16\") Brooklyn Pacific Veggie", + "price": "19.99", + "productCode": "S_PIZPV", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKPX": { + "code": "P16IBKPX", + "flavorCode": "BK", + "imageCode": "P16IBKPX", + "local": true, + "name": "X-Large (16\") Brooklyn Ultimate Pepperoni", + "price": "19.99", + "productCode": "S_PIZPX", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKUH": { + "code": "P16IBKUH", + "flavorCode": "BK", + "imageCode": "P16IBKUH", + "local": true, + "name": "X-Large (16\") Brooklyn Honolulu Hawaiian", + "price": "19.99", + "productCode": "S_PIZUH", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P16IBKZA": { + "code": "P16IBKZA", + "flavorCode": "BK", + "imageCode": "P16IBKZA", + "local": true, + "name": "X-Large (16\") Brooklyn Pizza", + "price": "15.49", + "productCode": "S_PIZZA", + "sizeCode": "16", + "tags": { + "sodiumWarningEnabled": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "23.45", + "price1-0": "15.49", + "price1-3": "21.46", + "price2-3": "21.46", + "price1-4": "23.45", + "price2-2": "19.47", + "price1-1": "17.48", + "price2-1": "17.48", + "price1-2": "19.47", + "price2-0": "15.49" + }, + "surcharge": "0" + }, + "P16IBKZZ": { + "code": "P16IBKZZ", + "flavorCode": "BK", + "imageCode": "P16IBKZZ", + "local": true, + "name": "X-Large (16\") Brooklyn ExtravaganZZa ", + "price": "19.99", + "productCode": "S_ZZ", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P10IGFDX": { + "code": "P10IGFDX", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFDX", + "local": false, + "name": "Small (10\") Gluten Free Crust Deluxe", + "price": "12.99", + "productCode": "S_DX", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFMX": { + "code": "P10IGFMX", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFMX", + "local": false, + "name": "Small (10\") Gluten Free Crust MeatZZa", + "price": "12.99", + "productCode": "S_MX", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFBP": { + "code": "P10IGFBP", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFBP", + "local": false, + "name": "Small (10\") Gluten Free Crust Buffalo Chicken", + "price": "12.99", + "productCode": "S_PIZBP", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFCK": { + "code": "P10IGFCK", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFCK", + "local": false, + "name": "Small (10\") Gluten Free Crust Memphis BBQ Chicken ", + "price": "12.99", + "productCode": "S_PIZCK", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFCR": { + "code": "P10IGFCR", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFCR", + "local": false, + "name": "Small (10\") Gluten Free Crust Cali Chicken Bacon Ranch", + "price": "12.99", + "productCode": "S_PIZCR", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFCZ": { + "code": "P10IGFCZ", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFCZ", + "local": false, + "name": "Small (10\") Gluten Free Crust Wisconsin 6 Cheese Pizza", + "price": "12.99", + "productCode": "S_PIZCZ", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFPH": { + "code": "P10IGFPH", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFPH", + "local": false, + "name": "Small (10\") Gluten Free Crust Philly Cheese Steak", + "price": "12.99", + "productCode": "S_PIZPH", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFPV": { + "code": "P10IGFPV", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFPV", + "local": false, + "name": "Small (10\") Gluten Free Crust Pacific Veggie", + "price": "12.99", + "productCode": "S_PIZPV", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFPX": { + "code": "P10IGFPX", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFPX", + "local": false, + "name": "Small (10\") Gluten Free Crust Ultimate Pepperoni", + "price": "12.99", + "productCode": "S_PIZPX", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFUH": { + "code": "P10IGFUH", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFUH", + "local": false, + "name": "Small (10\") Gluten Free Crust Honolulu Hawaiian", + "price": "12.99", + "productCode": "S_PIZUH", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P10IGFZA": { + "code": "P10IGFZA", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFZA", + "local": false, + "name": "Small (10\") Gluten Free Crust Pizza", + "price": "9.49", + "productCode": "S_PIZZA", + "sizeCode": "10", + "tags": { + "sodiumWarningEnabled": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "15.45", + "price1-0": "9.49", + "price1-3": "13.96", + "price2-3": "13.96", + "price1-4": "15.45", + "price2-2": "12.47", + "price1-1": "10.98", + "price2-1": "10.98", + "price1-2": "12.47", + "price2-0": "9.49" + }, + "surcharge": "3" + }, + "P10IGFZZ": { + "code": "P10IGFZZ", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFZZ", + "local": false, + "name": "Small (10\") Gluten Free Crust ExtravaganZZa ", + "price": "12.99", + "productCode": "S_ZZ", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P12IPADX": { + "code": "P12IPADX", + "flavorCode": "NPAN", + "imageCode": "P12IPADX", + "local": false, + "name": "Medium (12\") Handmade Pan Deluxe", + "price": "14.99", + "productCode": "S_DX", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,P=1,S=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPAMX": { + "code": "P12IPAMX", + "flavorCode": "NPAN", + "imageCode": "P12IPAMX", + "local": false, + "name": "Medium (12\") Handmade Pan MeatZZa", + "price": "14.99", + "productCode": "S_MX", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,Cp=1,P=1,H=1,B=1,S=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPABP": { + "code": "P12IPABP", + "flavorCode": "NPAN", + "imageCode": "P12IPABP", + "local": false, + "name": "Medium (12\") Handmade Pan Buffalo Chicken", + "price": "14.99", + "productCode": "S_PIZBP", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Ht=1,Cp=1,Ac=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPACK": { + "code": "P12IPACK", + "flavorCode": "NPAN", + "imageCode": "P12IPACK", + "local": false, + "name": "Medium (12\") Handmade Pan Memphis BBQ Chicken ", + "price": "14.99", + "productCode": "S_PIZCK", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Bq=1,C=1,Cp=1,E=1,Du=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPACR": { + "code": "P12IPACR", + "flavorCode": "NPAN", + "imageCode": "P12IPACR", + "local": false, + "name": "Medium (12\") Handmade Pan Cali Chicken Bacon Ranch", + "price": "14.99", + "productCode": "S_PIZCR", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Rd=1,C=1,Cp=1,Du=1,K=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPACZ": { + "code": "P12IPACZ", + "flavorCode": "NPAN", + "imageCode": "P12IPACZ", + "local": false, + "name": "Medium (12\") Handmade Pan Wisconsin 6 Cheese Pizza", + "price": "14.99", + "productCode": "S_PIZCZ", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,E=1,Fe=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPAPH": { + "code": "P12IPAPH", + "flavorCode": "NPAN", + "imageCode": "P12IPAPH", + "local": false, + "name": "Medium (12\") Handmade Pan Philly Cheese Steak", + "price": "14.99", + "productCode": "S_PIZPH", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,Pm=1,M=1,O=1,G=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPAPV": { + "code": "P12IPAPV", + "flavorCode": "NPAN", + "imageCode": "P12IPAPV", + "local": false, + "name": "Medium (12\") Handmade Pan Pacific Veggie", + "price": "14.99", + "productCode": "S_PIZPV", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,Fe=1,Si=1,M=1,O=1,R=1,Td=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPAPX": { + "code": "P12IPAPX", + "flavorCode": "NPAN", + "imageCode": "P12IPAPX", + "local": false, + "name": "Medium (12\") Handmade Pan Ultimate Pepperoni", + "price": "14.99", + "productCode": "S_PIZPX", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cs=1,Cp=1,P=1.5" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPAUH": { + "code": "P12IPAUH", + "flavorCode": "NPAN", + "imageCode": "P12IPAUH", + "local": false, + "name": "Medium (12\") Handmade Pan Honolulu Hawaiian", + "price": "14.99", + "productCode": "S_PIZUH", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1,H=1,K=1,N=1,Rr=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P12IPAZA": { + "code": "P12IPAZA", + "flavorCode": "NPAN", + "imageCode": "P12IPAZA", + "local": false, + "name": "Medium (12\") Handmade Pan Pizza", + "price": "11.99", + "productCode": "S_PIZZA", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "warnAfterOptionQty": "5", + "promotion": "PAN", + "disabledToppings": "C", + "sodiumWarningEnabled": true, + "defaultSides": "", + "defaultToppings": "X=1,C=1,Cp=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.75", + "price1-0": "11.99", + "price1-3": "17.06", + "price2-3": "17.06", + "price1-4": "18.75", + "price2-2": "15.37", + "price1-1": "13.68", + "price2-1": "13.68", + "price1-2": "15.37", + "price2-0": "11.99" + }, + "surcharge": "1.5" + }, + "P12IPAZZ": { + "code": "P12IPAZZ", + "flavorCode": "NPAN", + "imageCode": "P12IPAZZ", + "local": false, + "name": "Medium (12\") Handmade Pan ExtravaganZZa ", + "price": "14.99", + "productCode": "S_ZZ", + "sizeCode": "12", + "tags": { + "hideOption": "Cp", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "X=1,C=1.5,Cp=1,P=1,H=1,B=1,S=1,M=1,O=1,G=1,R=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P10IRESPF": { + "code": "P10IRESPF", + "flavorCode": "HANDTOSS", + "imageCode": "P10IRESPF", + "local": false, + "name": "Small (10\") Hand Tossed Spinach & Feta", + "price": "12.99", + "productCode": "S_PISPF", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IGFSPF": { + "code": "P10IGFSPF", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFSPF", + "local": false, + "name": "Small (10\") Gluten Free Crust Spinach & Feta", + "price": "12.99", + "productCode": "S_PISPF", + "sizeCode": "10", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P12IRESPF": { + "code": "P12IRESPF", + "flavorCode": "HANDTOSS", + "imageCode": "P12IRESPF", + "local": false, + "name": "Medium (12\") Hand Tossed Spinach & Feta", + "price": "14.99", + "productCode": "S_PISPF", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHSPF": { + "code": "P12ITHSPF", + "flavorCode": "THIN", + "imageCode": "P12ITHSPF", + "local": false, + "name": "Medium (12\") Thin Spinach & Feta", + "price": "14.99", + "productCode": "S_PISPF", + "sizeCode": "12", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IPASPF": { + "code": "P12IPASPF", + "flavorCode": "NPAN", + "imageCode": "P12IPASPF", + "local": false, + "name": "Medium (12\") Handmade Pan Spinach & Feta", + "price": "14.99", + "productCode": "S_PISPF", + "sizeCode": "12", + "tags": { + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P14IBKSPF": { + "code": "P14IBKSPF", + "flavorCode": "BK", + "imageCode": "P14IBKSPF", + "local": false, + "name": "Large (14\") Brooklyn Spinach & Feta", + "price": "17.99", + "productCode": "S_PISPF", + "sizeCode": "14", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IRESPF": { + "code": "P14IRESPF", + "flavorCode": "HANDTOSS", + "imageCode": "P14IRESPF", + "local": false, + "name": "Large (14\") Hand Tossed Spinach & Feta", + "price": "17.99", + "productCode": "S_PISPF", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHSPF": { + "code": "P14ITHSPF", + "flavorCode": "THIN", + "imageCode": "P14ITHSPF", + "local": false, + "name": "Large (14\") Thin Spinach & Feta", + "price": "17.99", + "productCode": "S_PISPF", + "sizeCode": "14", + "tags": { + "specialty": true, + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P16IBKSPF": { + "code": "P16IBKSPF", + "flavorCode": "BK", + "imageCode": "P16IBKSPF", + "local": true, + "name": "X-Large (16\") Brooklyn Spinach & Feta", + "price": "19.99", + "productCode": "S_PISPF", + "sizeCode": "16", + "tags": { + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Xf=1,C=1,Cs=1,Cp=1,Fe=1,Si=1,O=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P10IRETC": { + "code": "P10IRETC", + "flavorCode": "HANDTOSS", + "imageCode": "P10IRETC", + "local": false, + "name": "Small (10\") Hand Tossed Chicken Taco", + "price": "12.99", + "productCode": "S_PZTACO", + "sizeCode": "10", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IGFTC": { + "code": "P10IGFTC", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFTC", + "local": false, + "name": "Small (10\") Gluten Free Crust Chicken Taco", + "price": "12.99", + "productCode": "S_PZTACO", + "sizeCode": "10", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P12IRETC": { + "code": "P12IRETC", + "flavorCode": "HANDTOSS", + "imageCode": "P12IRETC", + "local": false, + "name": "Medium (12\") Hand Tossed Chicken Taco", + "price": "14.99", + "productCode": "S_PZTACO", + "sizeCode": "12", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHTC": { + "code": "P12ITHTC", + "flavorCode": "THIN", + "imageCode": "P12ITHTC", + "local": false, + "name": "Medium (12\") Thin Chicken Taco", + "price": "14.99", + "productCode": "S_PZTACO", + "sizeCode": "12", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IPATC": { + "code": "P12IPATC", + "flavorCode": "NPAN", + "imageCode": "P12IPATC", + "local": false, + "name": "Medium (12\") Handmade Pan Chicken Taco", + "price": "14.99", + "productCode": "S_PZTACO", + "sizeCode": "12", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Cp", + "promotion": "PAN", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P14IBKTC": { + "code": "P14IBKTC", + "flavorCode": "BK", + "imageCode": "P14IBKTC", + "local": false, + "name": "Large (14\") Brooklyn Chicken Taco", + "price": "17.99", + "productCode": "S_PZTACO", + "sizeCode": "14", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IRETC": { + "code": "P14IRETC", + "flavorCode": "HANDTOSS", + "imageCode": "P14IRETC", + "local": false, + "name": "Large (14\") Hand Tossed Chicken Taco", + "price": "17.99", + "productCode": "S_PZTACO", + "sizeCode": "14", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHTC": { + "code": "P14ITHTC", + "flavorCode": "THIN", + "imageCode": "P14ITHTC", + "local": false, + "name": "Large (14\") Thin Chicken Taco", + "price": "17.99", + "productCode": "S_PZTACO", + "sizeCode": "14", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P16IBKTC": { + "code": "P16IBKTC", + "flavorCode": "BK", + "imageCode": "P16IBKTC", + "local": true, + "name": "X-Large (16\") Brooklyn Chicken Taco", + "price": "19.99", + "productCode": "S_PZTACO", + "sizeCode": "16", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Cp", + "disabledToppings": "C", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,Du=1,O=1,G=1,Td=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "P10IRECHB": { + "code": "P10IRECHB", + "flavorCode": "HANDTOSS", + "imageCode": "P10IRECHB", + "local": false, + "name": "Small (10\") Hand Tossed Cheeseburger", + "price": "12.99", + "productCode": "S_PZBRGR", + "sizeCode": "10", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Km", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "0" + }, + "P10IGFCHB": { + "code": "P10IGFCHB", + "flavorCode": "GLUTENF", + "imageCode": "P10IGFCHB", + "local": false, + "name": "Small (10\") Gluten Free Crust Cheeseburger", + "price": "12.99", + "productCode": "S_PZBRGR", + "sizeCode": "10", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Km", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "18.95", + "price1-0": "12.99", + "price1-3": "17.46", + "price2-3": "17.46", + "price1-4": "18.95", + "price2-2": "15.97", + "price1-1": "14.48", + "price2-1": "14.48", + "price1-2": "15.97", + "price2-0": "12.99" + }, + "surcharge": "3" + }, + "P12IRECHB": { + "code": "P12IRECHB", + "flavorCode": "HANDTOSS", + "imageCode": "P12IRECHB", + "local": false, + "name": "Medium (12\") Hand Tossed Cheeseburger", + "price": "14.99", + "productCode": "S_PZBRGR", + "sizeCode": "12", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Km", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12ITHCHB": { + "code": "P12ITHCHB", + "flavorCode": "THIN", + "imageCode": "P12ITHCHB", + "local": false, + "name": "Medium (12\") Thin Cheeseburger", + "price": "14.99", + "productCode": "S_PZBRGR", + "sizeCode": "12", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Km", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "0" + }, + "P12IPACHB": { + "code": "P12IPACHB", + "flavorCode": "NPAN", + "imageCode": "P12IPACHB", + "local": false, + "name": "Medium (12\") Handmade Pan Cheeseburger", + "price": "14.99", + "productCode": "S_PZBRGR", + "sizeCode": "12", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "promotion": "PAN", + "disabledToppings": "C", + "hideOption": "Km:Cp", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "21.75", + "price1-0": "14.99", + "price1-3": "20.06", + "price2-3": "20.06", + "price1-4": "21.75", + "price2-2": "18.37", + "price1-1": "16.68", + "price2-1": "16.68", + "price1-2": "18.37", + "price2-0": "14.99" + }, + "surcharge": "1.5" + }, + "P14IBKCHB": { + "code": "P14IBKCHB", + "flavorCode": "BK", + "imageCode": "P14IBKCHB", + "local": false, + "name": "Large (14\") Brooklyn Cheeseburger", + "price": "17.99", + "productCode": "S_PZBRGR", + "sizeCode": "14", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "disabledToppings": "C", + "hideOption": "Km:Cp", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14IRECHB": { + "code": "P14IRECHB", + "flavorCode": "HANDTOSS", + "imageCode": "P14IRECHB", + "local": false, + "name": "Large (14\") Hand Tossed Cheeseburger", + "price": "17.99", + "productCode": "S_PZBRGR", + "sizeCode": "14", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Km", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT,GO,NGO", + "defaultCookingInstructions": "NB,PIECT,GO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P14ITHCHB": { + "code": "P14ITHCHB", + "flavorCode": "THIN", + "imageCode": "P14ITHCHB", + "local": false, + "name": "Large (14\") Thin Cheeseburger", + "price": "17.99", + "productCode": "S_PZBRGR", + "sizeCode": "14", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "hideOption": "Km", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "PIECT,SQCT,UNCT,RGO,NOOR", + "defaultCookingInstructions": "SQCT,RGO", + "prepared": true, + "pricing": { + "price2-4": "25.55", + "price1-0": "17.99", + "price1-3": "23.66", + "price2-3": "23.66", + "price1-4": "25.55", + "price2-2": "21.77", + "price1-1": "19.88", + "price2-1": "19.88", + "price1-2": "21.77", + "price2-0": "17.99" + }, + "surcharge": "0" + }, + "P16IBKCHB": { + "code": "P16IBKCHB", + "flavorCode": "BK", + "imageCode": "P16IBKCHB", + "local": true, + "name": "X-Large (16\") Brooklyn Cheeseburger", + "price": "19.99", + "productCode": "S_PZBRGR", + "sizeCode": "16", + "tags": { + "effectiveOn": "2020-08-24", + "specialty": true, + "disabledToppings": "C", + "hideOption": "Km:Cp", + "defaultSides": "", + "defaultToppings": "Cp=1,Ac=1,E=1,B=1,O=1,Td=1,Km=1" + }, + "allowedCookingInstructions": "WD,NB,PIECT,SQCT,UNCT", + "defaultCookingInstructions": "NB,PIECT", + "prepared": true, + "pricing": { + "price2-4": "27.95", + "price1-0": "19.99", + "price1-3": "25.96", + "price2-3": "25.96", + "price1-4": "27.95", + "price2-2": "23.97", + "price1-1": "21.98", + "price2-1": "21.98", + "price1-2": "23.97", + "price2-0": "19.99" + }, + "surcharge": "0" + }, + "PSANSACB": { + "code": "PSANSACB", + "flavorCode": "", + "imageCode": "PSANSACB", + "local": false, + "name": "Chicken Bacon Ranch Sandwich", + "price": "6.99", + "productCode": "S_CHIKK", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "C=1,Du=1,K=1,Pv=1,Rd=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "PSANSACP": { + "code": "PSANSACP", + "flavorCode": "", + "imageCode": "PSANSACP", + "local": false, + "name": "Chicken Parm Sandwich", + "price": "6.99", + "productCode": "S_CHIKP", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "X=1,C=1,Du=1,Cs=1,Pv=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "PSANSAIT": { + "code": "PSANSAIT", + "flavorCode": "", + "imageCode": "PSANSAIT", + "local": false, + "name": "Italian Sandwich", + "price": "6.99", + "productCode": "S_ITAL", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "C=1,P=1,H=1,O=1,G=1,Z=1,Sa=1,Pv=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "PSANSAPH": { + "code": "PSANSAPH", + "flavorCode": "", + "imageCode": "PSANSAPH", + "local": false, + "name": "Philly Cheese Steak", + "price": "6.99", + "productCode": "S_PHIL", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "M=1,O=1,G=1,Pm=1,Ac=1,Pv=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "PSANSABC": { + "code": "PSANSABC", + "flavorCode": "", + "imageCode": "PSANSABC", + "local": false, + "name": "Buffalo Chicken Sandwich", + "price": "6.99", + "productCode": "S_BUFC", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "C=1,O=1,Du=1,E=1,Ht=1,Pv=1,Bd=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "PSANSACH": { + "code": "PSANSACH", + "flavorCode": "", + "imageCode": "PSANSACH", + "local": false, + "name": "Chicken Habanero Sandwich", + "price": "6.99", + "productCode": "S_CHHB", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "C=1,Du=1,N=1,J=1,E=1,Pv=1,Mh=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "PSANSAMV": { + "code": "PSANSAMV", + "flavorCode": "", + "imageCode": "PSANSAMV", + "local": false, + "name": "Mediterranean Veggie Sandwich", + "price": "6.99", + "productCode": "S_MEDV", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "O=1,Td=1,Rr=1,Si=1,Fe=1,Z=1,Ac=1,Pv=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "10.99", + "price1-0": "6.99", + "price1-3": "9.99", + "price2-3": "9.99", + "price1-4": "10.99", + "price2-2": "8.99", + "price1-1": "7.99", + "price2-1": "7.99", + "price1-2": "8.99", + "price2-0": "6.99" + }, + "surcharge": "0" + }, + "SIDBAN": { + "code": "SIDBAN", + "flavorCode": "", + "imageCode": "SIDBAN", + "local": true, + "name": "Side Banana Peppers", + "price": "0.5", + "productCode": "F_SIDBAN", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.5", + "price1-0": "0.5", + "price1-3": "0.5", + "price2-3": "0.5", + "price1-4": "0.5", + "price2-2": "0.5", + "price1-1": "0.5", + "price2-1": "0.5", + "price1-2": "0.5", + "price2-0": "0.5" + }, + "surcharge": "0" + }, + "SIDEJAL": { + "code": "SIDEJAL", + "flavorCode": "", + "imageCode": "SIDEJAL", + "local": true, + "name": "Side Jalapenos", + "price": "0.5", + "productCode": "F_SIDJAL", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.5", + "price1-0": "0.5", + "price1-3": "0.5", + "price2-3": "0.5", + "price1-4": "0.5", + "price2-2": "0.5", + "price1-1": "0.5", + "price2-1": "0.5", + "price1-2": "0.5", + "price2-0": "0.5" + }, + "surcharge": "0" + }, + "PARMCHEESE": { + "code": "PARMCHEESE", + "flavorCode": "", + "imageCode": "PARMCHEESE", + "local": true, + "name": "Parmesan Cheese Packets", + "price": "0.25", + "productCode": "F_SIDPAR", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.25", + "price1-0": "0.25", + "price1-3": "0.25", + "price2-3": "0.25", + "price1-4": "0.25", + "price2-2": "0.25", + "price1-1": "0.25", + "price2-1": "0.25", + "price1-2": "0.25", + "price2-0": "0.25" + }, + "surcharge": "0" + }, + "REDPEPPER": { + "code": "REDPEPPER", + "flavorCode": "", + "imageCode": "REDPEPPER", + "local": true, + "name": "Red Pepper Packets", + "price": "0.25", + "productCode": "F_SIDRED", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.25", + "price1-0": "0.25", + "price1-3": "0.25", + "price2-3": "0.25", + "price1-4": "0.25", + "price2-2": "0.25", + "price1-1": "0.25", + "price2-1": "0.25", + "price1-2": "0.25", + "price2-0": "0.25" + }, + "surcharge": "0" + }, + "AGCAESAR": { + "code": "AGCAESAR", + "flavorCode": "", + "imageCode": "AGCAESAR", + "local": false, + "name": "Caesar Dressing", + "price": "0.75", + "productCode": "F_CAESAR", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "AGITAL": { + "code": "AGITAL", + "flavorCode": "", + "imageCode": "AGITAL", + "local": true, + "name": "Italian Dressing", + "price": "0.75", + "productCode": "F_ITAL", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "AGRANCH": { + "code": "AGRANCH", + "flavorCode": "", + "imageCode": "AGRANCH", + "local": false, + "name": "Ranch Dressing", + "price": "0.75", + "productCode": "F_RANCHPK", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "HOTSAUCE": { + "code": "HOTSAUCE", + "flavorCode": "", + "imageCode": "HOTSAUCE", + "local": false, + "name": "Hot Buffalo Dipping Cup", + "price": "0.75", + "productCode": "F_HOTCUP", + "sizeCode": "", + "tags": { + "bONELESS": true, + "bONEIN": true, + "sideType": "DippingCup", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "CEAHABC": { + "code": "CEAHABC", + "flavorCode": "", + "imageCode": "CEAHABC", + "local": false, + "name": "Sweet Mango Habanero Dipping Cup", + "price": "0.75", + "productCode": "F_SMHAB", + "sizeCode": "", + "tags": { + "effectiveOn": "2010-01-01", + "bONELESS": true, + "bONEIN": true, + "sideType": "DippingCup", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "CEABBQC": { + "code": "CEABBQC", + "flavorCode": "", + "imageCode": "CEABBQC", + "local": false, + "name": "Honey BBQ Dipping Cup", + "price": "0.75", + "productCode": "F_BBQC", + "sizeCode": "", + "tags": { + "bONELESS": true, + "bONEIN": true, + "sideType": "DippingCup", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "RANCH": { + "code": "RANCH", + "flavorCode": "", + "imageCode": "RANCH", + "local": false, + "name": "Ranch Dipping Cup", + "price": "0.75", + "productCode": "F_SIDRAN", + "sizeCode": "", + "tags": { + "bONELESS": true, + "bONEIN": true, + "sideType": "DippingCup", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "BLUECHS": { + "code": "BLUECHS", + "flavorCode": "", + "imageCode": "BLUECHS", + "local": false, + "name": "Blue Cheese Dipping Cup", + "price": "0.75", + "productCode": "F_Bd", + "sizeCode": "", + "tags": { + "bONELESS": true, + "bONEIN": true, + "sideType": "DippingCup", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "GARBUTTER": { + "code": "GARBUTTER", + "flavorCode": "", + "imageCode": "GARBUTTER", + "local": false, + "name": "Garlic Dipping Cup", + "price": "0.75", + "productCode": "F_SIDGAR", + "sizeCode": "", + "tags": { + "sideType": "DippingCup", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "ICING": { + "code": "ICING", + "flavorCode": "", + "imageCode": "ICING", + "local": false, + "name": "Icing Dipping Cup", + "price": "0.75", + "productCode": "F_SIDICE", + "sizeCode": "", + "tags": { + "sideType": "DippingCup", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "MARINARA": { + "code": "MARINARA", + "flavorCode": "", + "imageCode": "MARINARA", + "local": false, + "name": "Marinara Sauce Dipping Cup", + "price": "0.75", + "productCode": "F_SIDMAR", + "sizeCode": "", + "tags": { + "sideType": "DippingCup", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "STJUDE": { + "code": "STJUDE", + "flavorCode": "", + "imageCode": "STJUDE", + "local": false, + "name": "St. Jude Donation", + "price": "1", + "productCode": "F_STJUDE", + "sizeCode": "", + "tags": { + "donation": "STJUDE", + "excludeFromLoyalty": true, + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "1", + "price1-0": "1", + "price1-3": "1", + "price2-3": "1", + "price1-4": "1", + "price2-2": "1", + "price1-1": "1", + "price2-1": "1", + "price1-2": "1", + "price2-0": "1" + }, + "surcharge": "0" + }, + "STJUDE2": { + "code": "STJUDE2", + "flavorCode": "", + "imageCode": "STJUDE2", + "local": false, + "name": "St. Jude Donation", + "price": "2", + "productCode": "F_STJUDE", + "sizeCode": "", + "tags": { + "donation": "STJUDE", + "excludeFromLoyalty": true, + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "2", + "price1-0": "2", + "price1-3": "2", + "price2-3": "2", + "price1-4": "2", + "price2-2": "2", + "price1-1": "2", + "price2-1": "2", + "price1-2": "2", + "price2-0": "2" + }, + "surcharge": "0" + }, + "STJUDE5": { + "code": "STJUDE5", + "flavorCode": "", + "imageCode": "STJUDE5", + "local": false, + "name": "St. Jude Donation", + "price": "5", + "productCode": "F_STJUDE", + "sizeCode": "", + "tags": { + "donation": "STJUDE", + "excludeFromLoyalty": true, + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "5", + "price1-0": "5", + "price1-3": "5", + "price2-3": "5", + "price1-4": "5", + "price2-2": "5", + "price1-1": "5", + "price2-1": "5", + "price1-2": "5", + "price2-0": "5" + }, + "surcharge": "0" + }, + "STJUDE10": { + "code": "STJUDE10", + "flavorCode": "", + "imageCode": "STJUDE10", + "local": false, + "name": "St. Jude Donation", + "price": "10", + "productCode": "F_STJUDE", + "sizeCode": "", + "tags": { + "donation": "STJUDE", + "excludeFromLoyalty": true, + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "10", + "price1-0": "10", + "price1-3": "10", + "price2-3": "10", + "price1-4": "10", + "price2-2": "10", + "price1-1": "10", + "price2-1": "10", + "price1-2": "10", + "price2-0": "10" + }, + "surcharge": "0" + }, + "STJUDERU": { + "code": "STJUDERU", + "flavorCode": "", + "imageCode": "STJUDERU", + "local": false, + "name": "St. Jude Donation", + "price": "0", + "productCode": "F_STJUDE", + "sizeCode": "", + "tags": { + "notEditable": true, + "hidden": true, + "donation": "STJUDE", + "excludeFromLoyalty": true, + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0", + "price1-0": "0", + "price1-3": "0", + "price2-3": "0", + "price1-4": "0", + "price2-2": "0", + "price1-1": "0", + "price2-1": "0", + "price1-2": "0", + "price2-0": "0" + }, + "surcharge": "0" + }, + "CEABVI": { + "code": "CEABVI", + "flavorCode": "", + "imageCode": "CEABVI", + "local": false, + "name": "Balsamic", + "price": "0.75", + "productCode": "F_BALVIN", + "sizeCode": "", + "tags": { + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0.75", + "price1-0": "0.75", + "price1-3": "0.75", + "price2-3": "0.75", + "price1-4": "0.75", + "price2-2": "0.75", + "price1-1": "0.75", + "price2-1": "0.75", + "price1-2": "0.75", + "price2-0": "0.75" + }, + "surcharge": "0" + }, + "_SCHOOLL": { + "code": "_SCHOOLL", + "flavorCode": "", + "imageCode": "_SCHOOLL", + "local": true, + "name": "Local Donation", + "price": "0", + "productCode": "F__SCHOOL", + "sizeCode": "", + "tags": { + "donation": "SCHOOL", + " ExcludeFromLoyalty": true, + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": false, + "pricing": { + "price2-4": "0", + "price1-0": "0", + "price1-3": "0", + "price2-3": "0", + "price1-4": "0", + "price2-2": "0", + "price1-1": "0", + "price2-1": "0", + "price1-2": "0", + "price2-0": "0" + }, + "surcharge": "0" + }, + "W08PBNLW": { + "code": "W08PBNLW", + "flavorCode": "BCHICK", + "imageCode": "W08PBNLW", + "local": false, + "name": "8-piece Boneless Chicken", + "price": "8.99", + "productCode": "S_BONELESS", + "sizeCode": "8PCW", + "tags": { + "boneless": true, + "effectiveOn": "2011-02-21", + "defaultSides": "BBQC=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "8.99", + "price1-0": "8.99", + "price1-3": "8.99", + "price2-3": "8.99", + "price1-4": "8.99", + "price2-2": "8.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "8.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "W08PHOTW": { + "code": "W08PHOTW", + "flavorCode": "HOTWINGS", + "imageCode": "W08PHOTW", + "local": false, + "name": "8-piece Hot Buffalo Wings", + "price": "8.99", + "productCode": "S_HOTWINGS", + "sizeCode": "8PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "8.99", + "price1-0": "8.99", + "price1-3": "8.99", + "price2-3": "8.99", + "price1-4": "8.99", + "price2-2": "8.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "8.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "W08PBBQW": { + "code": "W08PBBQW", + "flavorCode": "BBQW", + "imageCode": "W08PBBQW", + "local": false, + "name": "8-piece Honey BBQ Wings", + "price": "8.99", + "productCode": "S_BBQW", + "sizeCode": "8PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "8.99", + "price1-0": "8.99", + "price1-3": "8.99", + "price2-3": "8.99", + "price1-4": "8.99", + "price2-2": "8.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "8.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "W08PMLDW": { + "code": "W08PMLDW", + "flavorCode": "MILDWING", + "imageCode": "W08PMLDW", + "local": true, + "name": "8-piece Mild Buffalo Wings", + "price": "8.99", + "productCode": "S_MILDWING", + "sizeCode": "8PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "8.99", + "price1-0": "8.99", + "price1-3": "8.99", + "price2-3": "8.99", + "price1-4": "8.99", + "price2-2": "8.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "8.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "W08PPLNW": { + "code": "W08PPLNW", + "flavorCode": "PLNWINGS", + "imageCode": "W08PPLNW", + "local": false, + "name": "8-piece Plain Wings", + "price": "8.99", + "productCode": "S_PLNWINGS", + "sizeCode": "8PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "8.99", + "price1-0": "8.99", + "price1-3": "8.99", + "price2-3": "8.99", + "price1-4": "8.99", + "price2-2": "8.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "8.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "W08PMANW": { + "code": "W08PMANW", + "flavorCode": "SMANG", + "imageCode": "W08PMANW", + "local": false, + "name": "8-piece Sweet Mango Habanero Wings", + "price": "8.99", + "productCode": "S_SMANG", + "sizeCode": "8PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "8.99", + "price1-0": "8.99", + "price1-3": "8.99", + "price2-3": "8.99", + "price1-4": "8.99", + "price2-2": "8.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "8.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "10WINGBNLS": { + "code": "10WINGBNLS", + "flavorCode": "BCHICK", + "imageCode": "10WINGBNLS", + "local": false, + "name": "10-piece Boneless Chicken", + "price": "10.99", + "productCode": "S_BONELESS", + "sizeCode": "10PCW", + "tags": { + "boneless": true, + "effectiveOn": "2011-02-21", + "defaultSides": "BBQC=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "14.99", + "price1-0": "10.99", + "price1-3": "13.99", + "price2-3": "13.99", + "price1-4": "14.99", + "price2-2": "12.99", + "price1-1": "11.99", + "price2-1": "11.99", + "price1-2": "12.99", + "price2-0": "10.99" + }, + "surcharge": "0" + }, + "W08PGPMW": { + "code": "W08PGPMW", + "flavorCode": "GPRMWING", + "imageCode": "W08PGPMW", + "local": false, + "name": "8-piece Garlic Parmesan Wings", + "price": "8.99", + "productCode": "S_GPRMWING", + "sizeCode": "8PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "8.99", + "price1-0": "8.99", + "price1-3": "8.99", + "price2-3": "8.99", + "price1-4": "8.99", + "price2-2": "8.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "8.99", + "price2-0": "8.99" + }, + "surcharge": "0" + }, + "10WINGHOT": { + "code": "10WINGHOT", + "flavorCode": "HOTWINGS", + "imageCode": "10WINGHOT", + "local": false, + "name": "10-piece Hot Buffalo Wings", + "price": "10.99", + "productCode": "S_HOTWINGS", + "sizeCode": "10PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "14.99", + "price1-0": "10.99", + "price1-3": "13.99", + "price2-3": "13.99", + "price1-4": "14.99", + "price2-2": "12.99", + "price1-1": "11.99", + "price2-1": "11.99", + "price1-2": "12.99", + "price2-0": "10.99" + }, + "surcharge": "0" + }, + "10WINGBBQ": { + "code": "10WINGBBQ", + "flavorCode": "BBQW", + "imageCode": "10WINGBBQ", + "local": false, + "name": "10-piece Honey BBQ Wings", + "price": "10.99", + "productCode": "S_BBQW", + "sizeCode": "10PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "14.99", + "price1-0": "10.99", + "price1-3": "13.99", + "price2-3": "13.99", + "price1-4": "14.99", + "price2-2": "12.99", + "price1-1": "11.99", + "price2-1": "11.99", + "price1-2": "12.99", + "price2-0": "10.99" + }, + "surcharge": "0" + }, + "10WINGMILD": { + "code": "10WINGMILD", + "flavorCode": "MILDWING", + "imageCode": "10WINGMILD", + "local": true, + "name": "10-piece Mild Buffalo Wings", + "price": "10.99", + "productCode": "S_MILDWING", + "sizeCode": "10PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "14.99", + "price1-0": "10.99", + "price1-3": "13.99", + "price2-3": "13.99", + "price1-4": "14.99", + "price2-2": "12.99", + "price1-1": "11.99", + "price2-1": "11.99", + "price1-2": "12.99", + "price2-0": "10.99" + }, + "surcharge": "0" + }, + "10WINGPLN": { + "code": "10WINGPLN", + "flavorCode": "PLNWINGS", + "imageCode": "10WINGPLN", + "local": false, + "name": "10-piece Plain Wings", + "price": "10.99", + "productCode": "S_PLNWINGS", + "sizeCode": "10PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "14.99", + "price1-0": "10.99", + "price1-3": "13.99", + "price2-3": "13.99", + "price1-4": "14.99", + "price2-2": "12.99", + "price1-1": "11.99", + "price2-1": "11.99", + "price1-2": "12.99", + "price2-0": "10.99" + }, + "surcharge": "0" + }, + "10WINGMHAB": { + "code": "10WINGMHAB", + "flavorCode": "SMANG", + "imageCode": "10WINGMHAB", + "local": false, + "name": "10-piece Sweet Mango Habanero Wings", + "price": "10.99", + "productCode": "S_SMANG", + "sizeCode": "10PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "14.99", + "price1-0": "10.99", + "price1-3": "13.99", + "price2-3": "13.99", + "price1-4": "14.99", + "price2-2": "12.99", + "price1-1": "11.99", + "price2-1": "11.99", + "price1-2": "12.99", + "price2-0": "10.99" + }, + "surcharge": "0" + }, + "10WINGGPMW": { + "code": "10WINGGPMW", + "flavorCode": "GPRMWING", + "imageCode": "10WINGGPMW", + "local": false, + "name": "10-piece Garlic Parmesan Wings", + "price": "10.99", + "productCode": "S_GPRMWING", + "sizeCode": "10PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=1", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "14.99", + "price1-0": "10.99", + "price1-3": "13.99", + "price2-3": "13.99", + "price1-4": "14.99", + "price2-2": "12.99", + "price1-1": "11.99", + "price2-1": "11.99", + "price1-2": "12.99", + "price2-0": "10.99" + }, + "surcharge": "0" + }, + "W16PBNLW": { + "code": "W16PBNLW", + "flavorCode": "BCHICK", + "imageCode": "W16PBNLW", + "local": false, + "name": "16-piece Boneless Chicken", + "price": "15.99", + "productCode": "S_BONELESS", + "sizeCode": "16PCW", + "tags": { + "boneless": true, + "effectiveOn": "2011-02-21", + "defaultSides": "BBQC=2", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "19.99", + "price1-0": "15.99", + "price1-3": "18.99", + "price2-3": "18.99", + "price1-4": "19.99", + "price2-2": "17.99", + "price1-1": "16.99", + "price2-1": "16.99", + "price1-2": "17.99", + "price2-0": "15.99" + }, + "surcharge": "0" + }, + "W16PHOTW": { + "code": "W16PHOTW", + "flavorCode": "HOTWINGS", + "imageCode": "W16PHOTW", + "local": false, + "name": "16-piece Hot Buffalo Wings", + "price": "15.99", + "productCode": "S_HOTWINGS", + "sizeCode": "16PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=2", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "19.99", + "price1-0": "15.99", + "price1-3": "18.99", + "price2-3": "18.99", + "price1-4": "19.99", + "price2-2": "17.99", + "price1-1": "16.99", + "price2-1": "16.99", + "price1-2": "17.99", + "price2-0": "15.99" + }, + "surcharge": "0" + }, + "W16PBBQW": { + "code": "W16PBBQW", + "flavorCode": "BBQW", + "imageCode": "W16PBBQW", + "local": false, + "name": "16-piece Honey BBQ Wings", + "price": "15.99", + "productCode": "S_BBQW", + "sizeCode": "16PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=2", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "19.99", + "price1-0": "15.99", + "price1-3": "18.99", + "price2-3": "18.99", + "price1-4": "19.99", + "price2-2": "17.99", + "price1-1": "16.99", + "price2-1": "16.99", + "price1-2": "17.99", + "price2-0": "15.99" + }, + "surcharge": "0" + }, + "W16PMLDW": { + "code": "W16PMLDW", + "flavorCode": "MILDWING", + "imageCode": "W16PMLDW", + "local": true, + "name": "16-piece Mild Buffalo Wings", + "price": "15.99", + "productCode": "S_MILDWING", + "sizeCode": "16PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=2", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "19.99", + "price1-0": "15.99", + "price1-3": "18.99", + "price2-3": "18.99", + "price1-4": "19.99", + "price2-2": "17.99", + "price1-1": "16.99", + "price2-1": "16.99", + "price1-2": "17.99", + "price2-0": "15.99" + }, + "surcharge": "0" + }, + "W16PPLNW": { + "code": "W16PPLNW", + "flavorCode": "PLNWINGS", + "imageCode": "W16PPLNW", + "local": false, + "name": "16-piece Plain Wings", + "price": "15.99", + "productCode": "S_PLNWINGS", + "sizeCode": "16PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=2", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "19.99", + "price1-0": "15.99", + "price1-3": "18.99", + "price2-3": "18.99", + "price1-4": "19.99", + "price2-2": "17.99", + "price1-1": "16.99", + "price2-1": "16.99", + "price1-2": "17.99", + "price2-0": "15.99" + }, + "surcharge": "0" + }, + "W16PMANW": { + "code": "W16PMANW", + "flavorCode": "SMANG", + "imageCode": "W16PMANW", + "local": false, + "name": "16-piece Sweet Mango Habanero Wings", + "price": "15.99", + "productCode": "S_SMANG", + "sizeCode": "16PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=2", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "19.99", + "price1-0": "15.99", + "price1-3": "18.99", + "price2-3": "18.99", + "price1-4": "19.99", + "price2-2": "17.99", + "price1-1": "16.99", + "price2-1": "16.99", + "price1-2": "17.99", + "price2-0": "15.99" + }, + "surcharge": "0" + }, + "W16PGPMW": { + "code": "W16PGPMW", + "flavorCode": "GPRMWING", + "imageCode": "W16PGPMW", + "local": false, + "name": "16-piece Garlic Parmesan Wings", + "price": "15.99", + "productCode": "S_GPRMWING", + "sizeCode": "16PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=2", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "19.99", + "price1-0": "15.99", + "price1-3": "18.99", + "price2-3": "18.99", + "price1-4": "19.99", + "price2-2": "17.99", + "price1-1": "16.99", + "price2-1": "16.99", + "price1-2": "17.99", + "price2-0": "15.99" + }, + "surcharge": "0" + }, + "W32PBNLW": { + "code": "W32PBNLW", + "flavorCode": "BCHICK", + "imageCode": "W32PBNLW", + "local": false, + "name": "32-piece Boneless Chicken", + "price": "27.99", + "productCode": "S_BONELESS", + "sizeCode": "32PCW", + "tags": { + "boneless": true, + "effectiveOn": "2011-02-21", + "defaultSides": "BBQC=4", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "31.99", + "price1-0": "27.99", + "price1-3": "30.99", + "price2-3": "30.99", + "price1-4": "31.99", + "price2-2": "29.99", + "price1-1": "28.99", + "price2-1": "28.99", + "price1-2": "29.99", + "price2-0": "27.99" + }, + "surcharge": "0" + }, + "W32PHOTW": { + "code": "W32PHOTW", + "flavorCode": "HOTWINGS", + "imageCode": "W32PHOTW", + "local": false, + "name": "32-piece Hot Buffalo Wings", + "price": "27.99", + "productCode": "S_HOTWINGS", + "sizeCode": "32PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=4", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "31.99", + "price1-0": "27.99", + "price1-3": "30.99", + "price2-3": "30.99", + "price1-4": "31.99", + "price2-2": "29.99", + "price1-1": "28.99", + "price2-1": "28.99", + "price1-2": "29.99", + "price2-0": "27.99" + }, + "surcharge": "0" + }, + "W32PBBQW": { + "code": "W32PBBQW", + "flavorCode": "BBQW", + "imageCode": "W32PBBQW", + "local": false, + "name": "32-piece Honey BBQ Wings", + "price": "27.99", + "productCode": "S_BBQW", + "sizeCode": "32PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=4", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "31.99", + "price1-0": "27.99", + "price1-3": "30.99", + "price2-3": "30.99", + "price1-4": "31.99", + "price2-2": "29.99", + "price1-1": "28.99", + "price2-1": "28.99", + "price1-2": "29.99", + "price2-0": "27.99" + }, + "surcharge": "0" + }, + "W32PMLDW": { + "code": "W32PMLDW", + "flavorCode": "MILDWING", + "imageCode": "W32PMLDW", + "local": true, + "name": "32-piece Mild Buffalo Wings", + "price": "27.99", + "productCode": "S_MILDWING", + "sizeCode": "32PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=4", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "31.99", + "price1-0": "27.99", + "price1-3": "30.99", + "price2-3": "30.99", + "price1-4": "31.99", + "price2-2": "29.99", + "price1-1": "28.99", + "price2-1": "28.99", + "price1-2": "29.99", + "price2-0": "27.99" + }, + "surcharge": "0" + }, + "W32PPLNW": { + "code": "W32PPLNW", + "flavorCode": "PLNWINGS", + "imageCode": "W32PPLNW", + "local": false, + "name": "32-piece Plain Wings", + "price": "27.99", + "productCode": "S_PLNWINGS", + "sizeCode": "32PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=4", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "31.99", + "price1-0": "27.99", + "price1-3": "30.99", + "price2-3": "30.99", + "price1-4": "31.99", + "price2-2": "29.99", + "price1-1": "28.99", + "price2-1": "28.99", + "price1-2": "29.99", + "price2-0": "27.99" + }, + "surcharge": "0" + }, + "W32PMANW": { + "code": "W32PMANW", + "flavorCode": "SMANG", + "imageCode": "W32PMANW", + "local": false, + "name": "32-piece Sweet Mango Habanero Wings", + "price": "27.99", + "productCode": "S_SMANG", + "sizeCode": "32PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=4", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "31.99", + "price1-0": "27.99", + "price1-3": "30.99", + "price2-3": "30.99", + "price1-4": "31.99", + "price2-2": "29.99", + "price1-1": "28.99", + "price2-1": "28.99", + "price1-2": "29.99", + "price2-0": "27.99" + }, + "surcharge": "0" + }, + "W32PGPMW": { + "code": "W32PGPMW", + "flavorCode": "GPRMWING", + "imageCode": "W32PGPMW", + "local": false, + "name": "32-piece Garlic Parmesan Wings", + "price": "27.99", + "productCode": "S_GPRMWING", + "sizeCode": "32PCW", + "tags": { + "bundleBuilderProducts": true, + "wings": true, + "effectiveOn": "2011-02-21", + "defaultSides": "Bd=4", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "31.99", + "price1-0": "27.99", + "price1-3": "30.99", + "price2-3": "30.99", + "price1-4": "31.99", + "price2-2": "29.99", + "price1-1": "28.99", + "price2-1": "28.99", + "price1-2": "29.99", + "price2-0": "27.99" + }, + "surcharge": "0" + }, + "CKRGCBT": { + "code": "CKRGCBT", + "flavorCode": "BACTOM", + "imageCode": "CKRGCBT", + "local": false, + "name": "Specialty Chicken – Crispy Bacon & Tomato", + "price": "7.99", + "productCode": "S_SCCBT", + "sizeCode": "12PCB", + "tags": { + "specialtyChicken": true, + "promotion": "SpChkProductNotInCart", + "promotionType": "ProductNotInCart", + "defaultSides": "", + "defaultToppings": "K=1,Td=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.99", + "price1-0": "7.99", + "price1-3": "10.99", + "price2-3": "10.99", + "price1-4": "11.99", + "price2-2": "9.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "9.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "CKRGHTB": { + "code": "CKRGHTB", + "flavorCode": "HOTBUFF", + "imageCode": "CKRGHTB", + "local": false, + "name": "Specialty Chicken – Classic Hot Buffalo", + "price": "7.99", + "productCode": "S_SCCHB", + "sizeCode": "12PCB", + "tags": { + "specialtyChicken": true, + "promotion": "SpChkProductNotInCart", + "promotionType": "ProductNotInCart", + "defaultSides": "", + "defaultToppings": "" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.99", + "price1-0": "7.99", + "price1-3": "10.99", + "price2-3": "10.99", + "price1-4": "11.99", + "price2-2": "9.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "9.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "CKRGSJP": { + "code": "CKRGSJP", + "flavorCode": "SPCYJP", + "imageCode": "CKRGSJP", + "local": false, + "name": "Specialty Chicken – Spicy Jalapeno - Pineapple", + "price": "7.99", + "productCode": "S_SCSJP", + "sizeCode": "12PCB", + "tags": { + "specialtyChicken": true, + "promotion": "SpChkProductNotInCart", + "promotionType": "ProductNotInCart", + "defaultSides": "", + "defaultToppings": "J=1,N=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.99", + "price1-0": "7.99", + "price1-3": "10.99", + "price2-3": "10.99", + "price1-4": "11.99", + "price2-2": "9.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "9.99", + "price2-0": "7.99" + }, + "surcharge": "0" + }, + "CKRGSBQ": { + "code": "CKRGSBQ", + "flavorCode": "BBQBAC", + "imageCode": "CKRGSBQ", + "local": false, + "name": "Specialty Chicken – Sweet BBQ Bacon", + "price": "7.99", + "productCode": "S_SCSBBQ", + "sizeCode": "12PCB", + "tags": { + "specialtyChicken": true, + "promotion": "SpChkProductNotInCart", + "promotionType": "ProductNotInCart", + "defaultSides": "", + "defaultToppings": "K=1" + }, + "allowedCookingInstructions": "", + "defaultCookingInstructions": "", + "prepared": true, + "pricing": { + "price2-4": "11.99", + "price1-0": "7.99", + "price1-3": "10.99", + "price2-3": "10.99", + "price1-4": "11.99", + "price2-2": "9.99", + "price1-1": "8.99", + "price2-1": "8.99", + "price1-2": "9.99", + "price2-0": "7.99" + }, + "surcharge": "0" + } + }, + "preconfiguredProducts": { + "14SCREEN": { + "code": "14SCREEN", + "description": "Cheese made with 100% real mozzarella on top of our garlic-seasoned crust with a rich, buttery taste.", + "name": "Hand Tossed Large Cheese", + "size": "Large (14\")", + "options": "", + "referencedProductCode": "14SCREEN", + "tags": { + "banner": "vegetarian" + } + }, + "B32PBIT": { + "code": "B32PBIT", + "description": "Oven baked, bite-size breadsticks sprinkled with Parmesan Asiago cheese & seasoned with garlic and more Parmesan. Perfectly delicious for sharing!", + "name": "Parm Bread Bites", + "size": "32-Piece", + "options": "", + "referencedProductCode": "B32PBIT", + "tags": {} + }, + "B8PCSCB": { + "code": "B8PCSCB", + "description": "Oven baked breadsticks stuffed with cheese and covered in cheese made with 100% Mozzarella and Cheddar. Seasoned with garlic, parsley and Romano cheese.", + "name": "Cheese Stuffed Cheesy Bread", + "size": "8-Piece", + "options": "", + "referencedProductCode": "B8PCSCB", + "tags": {} + }, + "P_14SCREEN": { + "code": "P_14SCREEN", + "description": "Pepperoni and cheese made with 100% real mozzarella on top of our garlic-seasoned crust with a rich, buttery taste.", + "name": "Hand Tossed Pepperoni", + "size": "Large (14\")", + "options": "P=1", + "referencedProductCode": "14SCREEN", + "tags": {} + }, + "S_14SCREEN": { + "code": "S_14SCREEN", + "description": "Sausage and cheese made with 100% real mozzarella on top of our garlic-seasoned crust with a rich, buttery taste.", + "name": "Hand Tossed Sausage", + "size": "Large (14\")", + "options": "S=1", + "referencedProductCode": "14SCREEN", + "tags": {} + }, + "PS_14SCREEN": { + "code": "PS_14SCREEN", + "description": "Pepperoni, sausage and cheese made with 100% real mozzarella on top of our garlic-seasoned crust with a rich, buttery taste.", + "name": "Hand Tossed Pepperoni & Sausage", + "size": "Large (14\")", + "options": "P=1,S=1", + "referencedProductCode": "14SCREEN", + "tags": {} + }, + "HN_14SCREEN": { + "code": "HN_14SCREEN", + "description": "Sliced ham, pineapple and cheese made with 100% real mozzarella on top of our garlic-seasoned crust with a rich, buttery taste.", + "name": "Hand Tossed Ham & Pineapple", + "size": "Large (14\")", + "options": "H=1,N=1", + "referencedProductCode": "14SCREEN", + "tags": {} + }, + "PM_14SCREEN": { + "code": "PM_14SCREEN", + "description": "Pepperoni, fresh mushrooms, and cheese made with 100% real mozzarella on top of our garlic-seasoned crust with a rich, buttery taste.", + "name": "Hand Tossed Pepperoni & Mushroom", + "size": "Large (14\")", + "options": "P=1,M=1", + "referencedProductCode": "14SCREEN", + "tags": {} + }, + "P12IPAZA": { + "code": "P12IPAZA", + "description": "Two layers of cheese and a crust that bakes up golden and crispy with a buttery taste.", + "name": "Medium Cheese Pan", + "size": "Medium (12\")", + "options": "", + "referencedProductCode": "P12IPAZA", + "tags": { + "banner": "vegetarian" + } + }, + "P_P12IPAZA": { + "code": "P_P12IPAZA", + "description": "Two layers of cheese, Pepperoni to the edge, and a crust that bakes up golden and crispy with a buttery taste.", + "name": "Medium Pepperoni Pan", + "size": "Medium (12\")", + "options": "P=1", + "referencedProductCode": "P12IPAZA", + "tags": {} + }, + "P_P10IGFZA": { + "code": "P_P10IGFZA", + "description": "Domino's pepperoni pizza made on a Gluten Free Crust.", + "name": "Small Gluten Free Crust Pepperoni", + "size": "Small (10\")", + "options": "P=1", + "referencedProductCode": "P10IGFZA", + "tags": { + "banner": "glutenFree" + } + }, + "MARBRWNE": { + "code": "MARBRWNE", + "description": "Satisfy your sweet tooth! Taste the decadent blend of gooey milk chocolate chunk cookie and delicious fudge brownie. Oven-baked to perfection and cut into 9 pieces - this dessert is perfect to share with the whole group", + "name": "Domino's Marbled Cookie Brownie™ ", + "size": "9-Piece", + "options": "", + "referencedProductCode": "MARBRWNE", + "tags": {} + }, + "14SCEXTRAV": { + "code": "14SCEXTRAV", + "description": "Loads of pepperoni, ham, Italian sausage, beef, onions, green peppers, mushrooms and black olives topped with extra cheese made with 100% real mozzarella.", + "name": "Hand Tossed ExtravaganZZa", + "size": "Large (14\")", + "options": "", + "referencedProductCode": "14SCEXTRAV", + "tags": {} + }, + "P14ITHPV": { + "code": "P14ITHPV", + "description": "Roasted red peppers, baby spinach, onions, mushrooms, tomatoes, black olives, cheeses made with 100% real mozzarella, feta and provolone on a crispy thin crust.", + "name": "Thin Crust Pacific Veggie Pizza", + "size": "Large (14\")", + "options": "", + "referencedProductCode": "P14ITHPV", + "tags": { + "banner": "vegetarian" + } + }, + "2LCOKE": { + "code": "2LCOKE", + "description": "The authentic cola sensation that is a refreshing part of sharing life's enjoyable moments", + "name": "Coke", + "size": "2-Liter Bottle", + "options": "", + "referencedProductCode": "2LCOKE", + "tags": {} + }, + "2LDCOKE": { + "code": "2LDCOKE", + "description": "Beautifully balanced adult cola taste in a no calorie beverage", + "name": "Diet Coke", + "size": "2-Liter Bottle", + "options": "", + "referencedProductCode": "2LDCOKE", + "tags": {} + }, + "2LSPRITE": { + "code": "2LSPRITE", + "description": "Unique Lymon (lemon-lime) flavor, clear, clean and crisp with no caffeine.", + "name": "Sprite", + "size": "2-Liter Bottle", + "options": "", + "referencedProductCode": "2LSPRITE", + "tags": {} + }, + "XC_14SCREEN": { + "code": "XC_14SCREEN", + "description": "", + "name": "Large (14\") Hand Tossed Pizza", + "size": "Large (14\")", + "options": "X=1,C=1", + "referencedProductCode": "14SCREEN", + "tags": {} + }, + "PXC_14SCREEN": { + "code": "PXC_14SCREEN", + "description": "", + "name": "Large (14\") Hand Tossed Pizza Whole: Pepperoni", + "size": "Large (14\")", + "options": "P=1,X=1,C=1", + "referencedProductCode": "14SCREEN", + "tags": {} + }, + "HNXC_12SCREEN": { + "code": "HNXC_12SCREEN", + "description": "", + "name": "Medium (12\") Hand Tossed Pizza Whole: Ham, Pineapple", + "size": "Medium (12\")", + "options": "H=1,N=1,X=1,C=1", + "referencedProductCode": "12SCREEN", + "tags": {} + }, + "MPXC_12SCREEN": { + "code": "MPXC_12SCREEN", + "description": "", + "name": "Medium (12\") Hand Tossed Pizza Whole : Mushrooms, Pepperoni", + "size": "Medium (12\")", + "options": "M=1,P=1,X=1,C=1", + "referencedProductCode": "12SCREEN", + "tags": {} + }, + "XCFeCsCpRMORrSiTd_P12IREPV": { + "code": "XCFeCsCpRMORrSiTd_P12IREPV", + "description": "", + "name": "Medium (12\") Hand Tossed Pacific Veggie Pizza", + "size": "Medium (12\")", + "options": "X=1,C=1,Fe=1,Cs=1,Cp=1,R=1,M=1,O=1,Rr=1,Si=1,Td=1", + "referencedProductCode": "P12IREPV", + "tags": {} + }, + "RdCKDuPv_PSANSACB": { + "code": "RdCKDuPv_PSANSACB", + "description": "", + "name": "Chicken Bacon Ranch Sandwich", + "size": "Sandwich", + "options": "Rd=1,C=1,K=1,Du=1,Pv=1", + "referencedProductCode": "PSANSACB", + "tags": {} + }, + "XfDu_PINPASCA": { + "code": "XfDu_PINPASCA", + "description": "", + "name": "Chicken Alfredo Pasta", + "size": "Individual", + "options": "Xf=1,Du=1", + "referencedProductCode": "PINPASCA", + "tags": {} + }, + "SIDRAN_W08PBBQW": { + "code": "SIDRAN_W08PBBQW", + "description": "", + "name": "8-Piece BBQ Wings (1) Ranch", + "size": "8-Piece", + "options": "SIDRAN=1", + "referencedProductCode": "W08PBBQW", + "tags": {} + }, + "B2PCLAVA": { + "code": "B2PCLAVA", + "description": "", + "name": "2-Piece Chocolate Lava Crunch Cakes", + "size": "2-Piece", + "options": "", + "referencedProductCode": "B2PCLAVA", + "tags": {} + } + }, + "shortProductDescriptions": { + "B8PCPT": { + "code": "B8PCPT", + "description": "Drizzled with garlic and Parmesan cheese seasoning and sprinkled with more Parmesan cheese. Served with marinara sauce." + }, + "B8PCGT": { + "code": "B8PCGT", + "description": "Drizzled with buttery garlic and Parmesan cheese seasoning. Served with marinara sauce." + }, + "B8PCCT": { + "code": "B8PCCT", + "description": "Drizzled with delicious cinnamon and sugar to satisfy any sweet tooth. Served with sweet icing." + }, + "B16PBIT": { + "code": "B16PBIT", + "description": "Handmade, oven-baked bread bites seasoned with garlic and Parmesan." + }, + "B2PCLAVA": { + "code": "B2PCLAVA", + "description": "Indulge in two delectable oven-baked chocolate cakes with molten chocolate fudge on the inside. Perfectly topped with a dash of powdered sugar." + }, + "MARBRWNE": { + "code": "MARBRWNE", + "description": "Taste the decadent blend of gooey milk chocolate chunk cookie and delicious fudge brownie. Oven baked with 9 pieces to make it perfectly shareable." + }, + "2LCOKE": { + "code": "2LCOKE", + "description": "The authentic cola sensation that is a refreshing part of sharing life's enjoyable moments." + }, + "2LDCOKE": { + "code": "2LDCOKE", + "description": "Beautifully balanced adult cola taste in a no calorie beverage." + }, + "CKRGSBQ": { + "code": "CKRGSBQ", + "description": "Tender bites of 100% whole breast white meat chicken, topped with sweet and smoky BBQ sauce, mozzarella and cheddar cheese, and crispy bacon." + }, + "CKRGHTB": { + "code": "CKRGHTB", + "description": "Tender bites of 100% whole breast white meat chicken, topped with classic hot buffalo sauce, ranch, mozzarella and cheddar cheese, and feta." + }, + "PSANSAPH": { + "code": "PSANSAPH", + "description": "Experience delicious slices of steak topped with American and provolone cheese, fresh onions, green peppers and mushrooms. Oven-baked to perfection." + }, + "PSANSACB": { + "code": "PSANSACB", + "description": "Enjoy our flavorful grilled chicken breast topped with smoked bacon, ranch and provolone cheese on artisan bread baked to golden brown perfection." + }, + "PINPASCA": { + "code": "PINPASCA", + "description": "Try our savory Chicken Alfredo Pasta. Grilled chicken breast and creamy Alfredo sauce is mixed with penne pasta and baked to creamy perfection." + }, + "PINPASCC": { + "code": "PINPASCC", + "description": "Taste the delectable blend of grilled chicken, smoked bacon, onions and mushrooms mixed with penne pasta. Topped with rich Alfredo sauce." + }, + "PPSGARSA": { + "code": "PPSGARSA", + "description": "A crisp combination of grape tomatoes, red onion, carrots, red cabbage, cheddar cheese and croutons on a blend of romaine and iceberg lettuce." + }, + "PPSCSRSA": { + "code": "PPSCSRSA", + "description": "The makings of a classic: roasted white meat chicken, Parmesan cheese and croutons, all atop a blend of romaine and iceberg lettuce." + }, + "PPSCAPSA": { + "code": "PPSCAPSA", + "description": "Roasted white meat chicken, diced red and green apples, dried cranberries, praline pecans and cheddar cheese paired with a leafy spring mix." + } + }, + "unsupported": { + "products": { + "CEARVI": { + "pulseCode": "CEARVI", + "description": "Each Raspberry Vinaigrette" + }, + "DN2": { + "pulseCode": "DN2", + "description": "Each DN2" + }, + "PSANSAEC": { + "pulseCode": "PSANSAEC", + "description": "Sandwich Bread Xtra Meat Ckn Par" + }, + "DN4": { + "pulseCode": "DN4", + "description": "Each DN4" + }, + "PSANSAEI": { + "pulseCode": "PSANSAEI", + "description": "Sandwich Bread Xtra Meat Italian" + }, + "PINBBLBA": { + "pulseCode": "PINBBLBA", + "description": "Build your Own BreadBowl Pasta" + }, + "PINPASBA": { + "pulseCode": "PINPASBA", + "description": "Build Your Own Pasta" + }, + "PSANSAEP": { + "pulseCode": "PSANSAEP", + "description": "Sandwich Bread Xtra Meat Philly Sandwich" + }, + "DN3": { + "pulseCode": "DN3", + "description": "Each DN3" + }, + "PINBBLBM": { + "pulseCode": "PINBBLBM", + "description": "Build your Own BreadBowl Pasta" + }, + "PINPASBM": { + "pulseCode": "PINPASBM", + "description": "Build Your Own Pasta" + }, + "PSANSAEB": { + "pulseCode": "PSANSAEB", + "description": "Sandwich Bread Xtra Meat Chk Bc" + } + }, + "options": { + "Bd": { + "pulseCode": "Bd", + "description": "Blue Cheese Dip Cup" + }, + "Rv": { + "pulseCode": "Rv", + "description": "Rasberry Vinaigrette" + }, + "Fe": { + "pulseCode": "Fe", + "description": "Feta Cheese" + } + } + }, + "cooking": { + "instructions": { + "WD": { + "code": "WD", + "name": "Well Done", + "description": "", + "group": "BAKE" + }, + "NB": { + "code": "NB", + "name": "Normal Bake", + "description": "", + "group": "BAKE" + }, + "GO": { + "code": "GO", + "name": "Garlic-Seasoned Crust", + "description": "", + "group": "SEASONING" + }, + "NGO": { + "code": "NGO", + "name": "No Garlic-Seasoned Crust", + "description": "", + "group": "SEASONING" + }, + "RGO": { + "code": "RGO", + "name": "Oregano", + "description": "", + "group": "SEASONING" + }, + "PIECT": { + "code": "PIECT", + "name": "Pie Cut", + "description": "", + "group": "CUT" + }, + "SQCT": { + "code": "SQCT", + "name": "Square Cut", + "description": "", + "group": "CUT" + }, + "UNCT": { + "code": "UNCT", + "name": "Uncut", + "description": "", + "group": "CUT" + }, + "NOOR": { + "code": "NOOR", + "name": "No Oregano", + "description": "", + "group": "SEASONING" + } + }, + "instructionGroups": { + "BAKE": { + "code": "BAKE", + "name": "Bake", + "tags": {} + }, + "SEASONING": { + "code": "SEASONING", + "name": "Seasoning", + "tags": {} + }, + "CUT": { + "code": "CUT", + "name": "Cut", + "tags": { + "maxOptions": "1" + } + } + } + } +} + +``` \ No newline at end of file diff --git a/docs/NearbyStores.md b/docs/NearbyStores.md new file mode 100644 index 0000000..db77428 --- /dev/null +++ b/docs/NearbyStores.md @@ -0,0 +1,133 @@ + +NearbyStores for Finding Stores +==== +NearbyStores is constructed `async`, so when you instantiate it, you should await it, like this : ` const nearbyStores = await new NearbyStores(...)` this will work in your main node code without wrapping it in an anonymous async function. + +If you have cloned this repo, you can run the example with this command: +`node ./example/nearby.js` + +Constructor +==== + +`await new NearbyStores({...})` + +|argument |type |default |description| +|-------- |---- |------- |--------| +|address |[Address](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/Address.md) instance, or AddressObject or AddressString | |either an instance of the Address class or anthing that could be passed to the `Address` class to make an instance| +|type |String|`Delivery`|`Delivery`, `Carryout`, `all`| + + +Instance +==== + +|member/method |type |description| +|------------- |------|------- | +|address |[Address](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/Address.md)|An Address Instance populated with the Domino's Store information| +|stores |Array| Array of basic store objects, see below.| +|dominosAPIResponse |[Dominos API Response Object](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosAPIResponse.md)|Raw response from Domino's Each response is a little different, but you can see the core info in the [Domino's API Response Doc](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosAPIResponse.md). | + +### By PostalCode +***this yields a wide variety of stores*** because it is not a very specific address. To find stores closer to you (or your user), use a more specific address. + +You can see the all the ways to pass an address [in the dominos pizza Address.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/Address.md). + +```js + + import {NearbyStores} from 'dominos'; + + const nearbyStores=await new NearbyStores('63102'); + + console.dir(nearbyStores,{depth:1}); + console.dir(nearbyStores.stores[0],{depth:1}); + +``` + +`nearbyStores.stores` is automatically populated from the dominos API when the class is instantiated. It is an `Array` of basic Store information. This info can be used as is, or you can create a `new Store(StoreID)` to get even more detailed information on the Store and its Menu as well. + +``` js + + import {NearbyStores, Store} from 'dominos'; + + const nearbyStores=await new NearbyStores('88 Colin P Kelly Jr St, 94107'); + + console.dir(nearbyStores,{depth:1}); + console.dir(nearbyStores.stores[0],{depth:1}); + + //initialize the frst of the nearbyStores.stores + const store=await new Store(nearbyStores.stores[0].StoreID); + + console.dir(store,{depth:1}); +``` + + +### Detailed class insight + +```js + + //nearbyStores high level instance + NearbyStores { + address: Address { + street: '88 COLIN P KELLY JR ST', + streetNumber: '88', + streetName: 'COLIN P KELLY JR ST', + unitType: '', + unitNumber: '', + city: 'SAN FRANCISCO', + region: 'CA', + postalCode: '94107-2008', + deliveryInstructions: '' + }, + stores: [ + [Object], [Object], + ... + ], + dominosAPIResponse: { + //core + Status: 0, + StatusItems: [Array], + + //specific to this request + Granularity: 'Exact', + Address: [Object], + Stores: [Array] + } + } + + + //nearbyStores.stores[0] basic store info + { + StoreID: '8302', + IsDeliveryStore: false, + MinDistance: 22.7, + MaxDistance: 22.7, + Phone: '831-728-4444', + AddressDescription: '512 Main Street\nWatsonville, CA 95076\n', + HolidaysDescription: '', + HoursDescription: 'Su-Th 10:30am-12:00am\nFr-Sa 10:30am-1:00am', + ServiceHoursDescription: { + Carryout: 'Su-Sa 10:30am-10:00pm', + Delivery: 'Su-Th 10:30am-12:00am\nFr-Sa 10:30am-1:00am', + DriveUpCarryout: 'Su-Sa 4:30pm-9:00pm' + }, + IsOnlineCapable: true, + IsOnlineNow: true, + IsNEONow: true, + IsSpanish: true, + LocationInfo: '', + LanguageLocationInfo: { en: '', es: '' }, + AllowDeliveryOrders: true, + AllowCarryoutOrders: true, + AllowDuc: true, + ServiceMethodEstimatedWaitMinutes: { + Delivery: { Min: 29, Max: 34 }, + Carryout: { Min: 13, Max: 18 } + }, + StoreCoordinates: { StoreLatitude: '36.912', StoreLongitude: '-121.759' }, + AllowPickupWindowOrders: false, + ContactlessDelivery: 'REQUIRED', + ContactlessCarryout: 'INSTRUCTION', + IsOpen: true, + ServiceIsOpen: { Carryout: true, Delivery: true, DriveUpCarryout: false } + } + +``` \ No newline at end of file diff --git a/docs/Order.md b/docs/Order.md new file mode 100644 index 0000000..14acf1a --- /dev/null +++ b/docs/Order.md @@ -0,0 +1,664 @@ +Order +==== +This is the primary Order Class used for ordering Domnio's food! + +If you have cloned this repo, you can run the example with this command: +`node ./example/order.js` + +extends `DominosFormat` class, see more in [DominosFormat.md](https://github.com/RIAEvangelist/node-dominos-pizza-api/blob/v3.x/docs/DominosFormat.md) + + +## Complete Order Example + +Here is an example of a complete order process, including a single tracking check. + + +```js + +import {Order,Customer,Item,Payment,NearbyStores} from '../index.js'; + +//extra cheese thin crust pizza +const pizza=new Item( + { + //16 inch hand tossed crust + code:'16SCREEN', + options:{ + //sauce, whole pizza : normal + X: {'1/1' : '1'}, + //cheese, whole pizza : double + C: {'1/1' : '2'}, + //pepperoni, whole pizza : double + P: {'1/2' : '2'} + } + } +); + +const customer = new Customer( + { + //this could be an Address instance if you wanted + address: '2 Portola Plaza, Monterey, Ca, 93940', + firstName: 'Brandon', + lastName: 'Miller', + //where's that 555 number from? + phone: '941-555-2368', + email: 'brandon@diginow.it' + } +); + +let storeID=0; +let distance=100; +//find the nearest store +const nearbyStores=await new NearbyStores(customer.address); + +//inspect nearby stores +//console.log('\n\nNearby Stores\n\n') +//console.dir(nearbyStores,{depth:5}); + + +//get closest delivery store +for(const store of nearbyStores.stores){ + //inspect each store + //console.dir(store,{depth:3}); + + if( + //we check all of these because the API responses seem to say true for some + //and false for others, but it is only reliably ok for delivery if ALL are true + //this may become an additional method on the NearbyStores class. + store.IsOnlineCapable + && store.IsDeliveryStore + && store.IsOpen + && store.ServiceIsOpen.Delivery + && store.MinDistance