UNPKG

@tidepool/viz

Version:

Tidepool data visualization for diabetes device data.

1 lines 166 kB
!function(e,t){for(var a in t)e[a]=t[a]}(exports,function(e){var t={};function a(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,a),n.l=!0,n.exports}return a.m=e,a.c=t,a.d=function(e,t,i){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(a.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)a.d(i,n,function(t){return e[t]}.bind(null,n));return i},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a(a.s=414)}({1:function(e,t){e.exports=require("react")},10:function(e,t,a){var i=a(71);function n(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return n=function(){return e},e}e.exports=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==i(e)&&"function"!=typeof e)return{default:e};var t=n();if(t&&t.has(e))return t.get(e);var a={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var s=r?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(a,o,s):a[o]=e[o]}return a.default=e,t&&t.set(e,a),a}},118:function(e,t,a){"use strict";var i=a(3);Object.defineProperty(t,"__esModule",{value:!0}),t.defineBasicsAggregations=function(e,t){var a=(0,d.generateBgRangeLabels)(e);a.veryLow=r.default.upperFirst(a.veryLow),a.veryHigh=r.default.upperFirst(a.veryHigh);var i=(0,l.getPumpVocabulary)(t),n={};return r.default.each(["basals","boluses","fingersticks","siteChanges"],function(e){var t,r,o=e,s="";switch(e){case"basals":s="Basals",r=g("Total basal events"),t=[{path:"summary",key:"total",label:g("Basal Events"),primary:!0},{path:"summary.subtotals",key:"temp",label:g("Temp Basals")},{path:"summary.subtotals",key:"suspend",label:g("Suspends")},{path:"summary.subtotals",key:"automatedStop",label:g("{{automatedLabel}} Exited",{automatedLabel:i[u.AUTOMATED_DELIVERY]}),hideEmpty:!0}];break;case"boluses":s=g("Bolusing"),r=g("Avg boluses / day"),t=[{path:"summary",key:"total",label:g("Avg per day"),average:!0,primary:!0},{path:"summary.subtotals",key:"wizard",label:g("Calculator"),percentage:!0,selectorIndex:0},{path:"summary.subtotals",key:"correction",label:g("Correction"),percentage:!0,selectorIndex:1},{path:"summary.subtotals",key:"extended",label:g("Extended"),percentage:!0,selectorIndex:3},{path:"summary.subtotals",key:"interrupted",label:g("Interrupted"),percentage:!0,selectorIndex:4},{path:"summary.subtotals",key:"override",label:g("Override"),percentage:!0,selectorIndex:2},{path:"summary.subtotals",key:"underride",label:g("Underride"),percentage:!0,selectorIndex:5}];break;case"fingersticks":s=g("BG readings"),r=g("Avg BG readings / day"),t=[{path:"smbg.summary",key:"total",label:g("Avg per day"),average:!0,primary:!0},{path:"smbg.summary.subtotals",key:"meter",label:g("Meter"),percentage:!0},{path:"smbg.summary.subtotals",key:"manual",label:g("Manual"),percentage:!0},{path:"calibration.summary.subtotals",key:"calibration",label:g("Calibrations"),hideEmpty:!0},{path:"smbg.summary.subtotals",key:"veryLow",label:a.veryLow,percentage:!0},{path:"smbg.summary.subtotals",key:"veryHigh",label:a.veryHigh,percentage:!0}];break;case"siteChanges":s=g("Infusion site changes");break;default:o=!1}n[e]={active:!0,title:s,summaryTitle:r,emptyText:void 0,type:o,dimensions:t}}),n},t.generateCalendarDayLabels=function(e){var t=o.default.utc(e[0].date).day();return r.default.map(r.default.range(t,t+7),function(e){return o.default.utc().day(e).format("ddd")})},t.getSiteChangeSource=m,t.getSiteChangeSourceLabel=b,t.processBasicsAggregations=function(e,t,a,i){var n=r.default.cloneDeep(t),o=function(e){return e&&r.default.keys(e.byDate).length>0},s=["basals","boluses"];return r.default.each(e,function(t,l){var d=t.type,c=!1;if(r.default.includes(s,d))c=!o(n[d]);else if("fingersticks"===d){var h=o(n[d].smbg),f=o(n[d].calibration);c=!h&&!f}else"siteChanges"===d&&(e[l].source=m(a,i),e[l].manufacturer=i,(c=e[l].source===u.SITE_CHANGE_TYPE_UNDECLARED)||(e[l].subTitle=b(e[l].source,i)));c&&(e[l].emptyText=function(e,t){var a;switch(t){case"basals":case"boluses":a=g("This section requires data from an insulin pump, so there's nothing to display.");break;case"siteChanges":a=o(n[t])?g("Please choose a preferred site change source from the 'Basics' web view to view this data."):g("This section requires data from an insulin pump, so there's nothing to display.");break;case"fingersticks":a=g("This section requires data from a blood-glucose meter, so there's nothing to display.");break;default:a=g("Why is this grey? There is not enough data to show this statistic.")}return a}(0,l)),e[l].disabled=c}),e},t.findBasicsDays=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"UTC",a=[],i=o.default.utc(e[0]).tz(t).format("YYYY-MM-DD"),n=o.default.utc(e[1]).tz(t).subtract(1,"ms").format("YYYY-MM-DD"),r=o.default.utc(e[0]).tz(t).startOf("isoWeek").toDate();for(;r<o.default.utc(e[1]).tz(t).endOf("isoWeek");){var s=o.default.utc(r).tz(t).format("YYYY-MM-DD"),l={date:s};l.type=s<i||s>n?"outOfRange":"inRange",a.push(l),r=o.default.utc(r).tz(t).add(1,"days").toDate()}return a},t.findBasicsStart=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"UTC";return o.default.utc(r.default.isInteger(e)?e:Date.parse(e)).tz(t).startOf("isoWeek").subtract(14,"days").toDate()},t.basicsText=function(e,t,a,i){var o=t.data,s=o.aggregationsByDate,l=void 0===s?{}:s,d=o.current.endpoints,u=void 0===d?{}:d,c=t.bgPrefs,h=t.timePrefs,m=t.query,b=new f.TextUtil(e,u.range,h),v=b.buildDocumentHeader("Basics");v+=b.buildDocumentDates(),r.default.get(m,"excludeDaysWithoutBolus")&&(v+=b.buildTextLine(g("Days with no boluses have been excluded from bolus calculations")));v+=f.statsText(a,b,c);var y=function(e,t,a){var i=[];return r.default.each(e,function(e){var o=r.default.get(t,[].concat((0,n.default)(e.path.split(".")),[e.key])),s=e.average?Math.round(r.default.get(t,[].concat((0,n.default)(e.path.split(".")),["avgPerDay"]))):r.default.get(o,"count",o||0),l={label:e.label,value:s.toString()};if(e.primary)l.label=a,i.unshift(l);else{if(0===s&&e.hideEmpty)return;i.push(l)}}),{rows:i,columns:[{key:"label",label:"Label"},{key:"value",label:"Value"}]}};if(!i.fingersticks.disabled){var p=y(i.fingersticks.dimensions,l.fingersticks,i.fingersticks.summaryTitle);v+=b.buildTextTable("",p.rows,p.columns,{showHeader:!1})}if(!i.boluses.disabled){var S=y(i.boluses.dimensions,l.boluses,i.boluses.summaryTitle);v+=b.buildTextTable("",S.rows,S.columns,{showHeader:!1})}if(!i.siteChanges.disabled){var T=function(e,t){var a=[];return r.default.each(r.default.valuesIn(e),function(e){var i=r.default.get(e,["summary","daysSince",t]);i&&a.push(i)}),{columns:[{key:"label",label:"Label"},{key:"value",label:"Value"}],rows:[{label:"Mean Duration",value:"".concat(Math.round(10*r.default.mean(a))/10," days")},{label:"Longest Duration",value:"".concat(r.default.max(a)," days")}]}}(r.default.get(l,"siteChanges.byDate",{}),i.siteChanges.source);v+=b.buildTextTable("".concat(i.siteChanges.title," from '").concat(i.siteChanges.subTitle,"'"),T.rows,T.columns,{showHeader:!1})}if(!i.basals.disabled){var D=y(i.basals.dimensions,l.basals,i.basals.summaryTitle);v+=b.buildTextTable("",D.rows,D.columns,{showHeader:!1})}return v},t.utils=void 0;var n=i(a(46)),r=i(a(5)),o=i(a(57)),s=i(a(21)),l=a(37),d=a(23),u=a(6),c=i(a(60)),h=a(36),g=s.default.t.bind(s.default),f={reshapeBgClassesToBgBounds:d.reshapeBgClassesToBgBounds,statsText:h.statsText,TextUtil:c.default};function m(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,a=e.settings,i=u.SITE_CHANGE_TYPE_UNDECLARED;if(r.default.includes(r.default.map([u.ANIMAS,u.MEDTRONIC,u.TANDEM],r.default.lowerCase),t)){i=r.default.get(a,"siteChangeSource");var n=[u.SITE_CHANGE_CANNULA,u.SITE_CHANGE_TUBING];r.default.includes(n,i)||(i=u.SITE_CHANGE_TYPE_UNDECLARED)}else t===r.default.lowerCase(u.INSULET)&&(i=u.SITE_CHANGE_RESERVOIR);return i}function b(e,t){var a=e!==u.SITE_CHANGE_TYPE_UNDECLARED?u.pumpVocabulary.default[u.SITE_CHANGE_RESERVOIR]:null;return r.default.get(u.pumpVocabulary,[r.default.upperFirst(t),e],a)}t.utils=f},12:function(e,t,a){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}a.r(t),a.d(t,"default",function(){return i})},15:function(e,t,a){"use strict";var i=a(3);Object.defineProperty(t,"__esModule",{value:!0}),t.getMsPer24=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"UTC",a=o.default.utc(e).tz(t),i=1e3*a.hours()*60*60,n=1e3*a.minutes()*60,r=1e3*a.seconds(),s=a.milliseconds();return i+n+r+s},t.getOffset=function(e,t){var a="string"==typeof e?Date.parse(e):e;return o.default.tz.zone(t).utcOffset(a)},t.getBrowserTimezone=d,t.getTimezoneFromTimePrefs=u,t.formatBirthdate=function(e){var t=n.default.get(e,["profile","patient","birthday"],"");if(t)return(0,r.utcFormat)("%b %-d, %Y")(Date.parse(t));return""},t.formatClocktimeFromMsPer24=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"h:mm a";if(n.default.isNull(e)||n.default.isUndefined(e)||e<0||e>l||e instanceof Date)throw new Error("First argument must be a value in milliseconds per twenty-four hour day!");return o.default.utc(e).format(t)},t.formatCurrentDate=function(){return(0,r.timeFormat)("%b %-d, %Y")(new Date)},t.formatDiagnosisDate=function(e){var t=n.default.get(e,["profile","patient","diagnosisDate"],"");if(t)return(0,r.utcFormat)("%b %-d, %Y")(Date.parse(t));return""},t.formatDateRange=function(e,t,a){var i=o.default.utc(e,a),n=o.default.utc(t,a),r=i.isSame(n,"year")?i.format("MMM D"):i.format("MMM D, YYYY"),s=n.format("MMM D, YYYY");return"".concat(r," - ").concat(s)},t.formatDuration=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=o.default.duration(e),i=a.days(),n=a.hours(),r=a.minutes(),s=a.seconds();if(t.condensed){var l={days:"",hours:"",minutes:"",seconds:""};if(i+n+r===0)s>0?l.seconds="".concat(s,"s"):l.minutes="0m";else{var d=s>=30?r+1:r,u=n,c=i;d>=60&&(d-=60,u++),u>=24&&(u-=24,c++),l.days=0!==c?"".concat(c,"d "):"",l.hours=0!==u?"".concat(u,"h "):"",l.minutes=0!==d?"".concat(d,"m "):""}return"".concat(l.days).concat(l.hours).concat(l.minutes).concat(l.seconds).trim()}if(0===n)return"".concat(r," min");var h=1===n?"hr":"hrs";switch(r){case 0:return"".concat(n," ").concat(h);case 15:return"".concat(n).concat("¼"," ").concat(h);case 20:return"".concat(n).concat("⅓"," ").concat(h);case 30:return"".concat(n).concat("½"," ").concat(h);case 40:return"".concat(n).concat("⅔"," ").concat(h);case 45:return"".concat(n).concat("¾"," ").concat(h);default:return"".concat(n," ").concat(h," ").concat(r," min")}},t.formatLocalizedFromUTC=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"dddd, MMMM D";if(e instanceof Date)throw new Error("`utc` must be a ISO-formatted String timestamp or integer hammertime!");var i=u(t);return o.default.utc(e).tz(i).format(a)},t.getLocalizedCeiling=function(e,t){if(e instanceof Date)throw new Error("`utc` must be a ISO-formatted String timestamp or integer hammertime!");var a=u(t),i=o.default.utc(e).tz(a).startOf("day"),n="string"==typeof e?Date.parse(e):e;if(i.valueOf()===n)return i.toDate();return i.add(1,"day").toDate()},t.TWENTY_FOUR_HRS=t.THREE_HRS=t.ONE_HR=t.THIRTY_MINS=void 0;var n=i(a(5)),r=a(59),o=i(a(44)),s=i(a(73));t.THIRTY_MINS=18e5;t.ONE_HR=36e5;t.THREE_HRS=108e5;var l=864e5;function d(){return(new Intl.DateTimeFormat).resolvedOptions().timeZone}function u(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.timezoneAware,a=e.timezoneName;try{var i=d()||"UTC";return t&&a&&(i=a),s.default.checkTimezoneName(i),i}catch(e){return"UTC"}}t.TWENTY_FOUR_HRS=l},162:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EXTRA_SMALL_FONT_SIZE=t.SMALL_FONT_SIZE=t.HEADER_FONT_SIZE=t.FOOTER_FONT_SIZE=t.LARGE_FONT_SIZE=t.DEFAULT_FONT_SIZE=t.MARGINS=t.WIDTH=t.HEIGHT=t.MARGIN=t.DPI=void 0;t.DPI=72;t.MARGIN=36;t.HEIGHT=720;t.WIDTH=540;var i={left:36,top:36,right:36,bottom:36};t.MARGINS=i;t.DEFAULT_FONT_SIZE=10;t.LARGE_FONT_SIZE=12;t.FOOTER_FONT_SIZE=8;t.HEADER_FONT_SIZE=14;t.SMALL_FONT_SIZE=8;t.EXTRA_SMALL_FONT_SIZE=6},17:function(e,t,a){"use strict";function i(e){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}a.r(t),a.d(t,"default",function(){return i})},18:function(e,t,a){"use strict";function i(e,t){for(var a=0;a<t.length;a++){var i=t[a];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function n(e,t,a){return t&&i(e.prototype,t),a&&i(e,a),e}a.r(t),a.d(t,"default",function(){return n})},19:function(e,t,a){"use strict";a.r(t),a.d(t,"default",function(){return r});var i=a(66),n=a(24);function r(e,t){return!t||"object"!==Object(i.default)(t)&&"function"!=typeof t?Object(n.default)(e):t}},20:function(e,t,a){"use strict";function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function n(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}a.r(t),a.d(t,"default",function(){return n})},21:function(e,t){e.exports=require("i18next")},22:function(e,t,a){"use strict";var i=a(3);Object.defineProperty(t,"__esModule",{value:!0}),t.formatBgValue=function(e,t,a){var i=n.default.get(t,"bgUnits","");if(!n.default.isEmpty(a)){var l=a.low,d=a.high;if(i===s.MMOLL_UNITS&&(l&&(l=(0,o.convertToMmolL)(l)),d&&(d=(0,o.convertToMmolL)(d))),l&&e<l)return s.BG_LOW;if(d&&e>d)return s.BG_HIGH}if(i===s.MMOLL_UNITS)return(0,r.format)(".1f")(e);return(0,r.format)("d")(e)},t.formatDecimalNumber=l,t.formatInsulin=function(e){var t=1,a=e.toString();if(-1!==a.indexOf(".")){var i=a.split(".")[1].length;t=n.default.min([i,3])}return l(e,t)},t.formatPercentage=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(Number.isNaN(e))return"--%";return(0,r.format)(".".concat(t,"%"))(e)},t.removeTrailingZeroes=function(e){return e.replace(/\.0+$/,"")};var n=i(a(5)),r=a(72),o=a(23),s=a(6);function l(e,t){return null===t||void 0===t?(0,r.format)("d")(e):(0,r.format)(".".concat(t,"f"))(e)}},23:function(e,t,a){"use strict";var i=a(3);Object.defineProperty(t,"__esModule",{value:!0}),t.classifyBgValue=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"threeWay";if(r.default.isEmpty(e)||!r.default.isNumber(r.default.get(e,"targetLowerBound"))||!r.default.isNumber(r.default.get(e,"targetUpperBound")))throw new Error("You must provide a `bgBounds` object with a `targetLowerBound` and a `targetUpperBound`!");if(!r.default.isNumber(t)||!r.default.gt(t,0))throw new Error("You must provide a positive, numerical blood glucose value to categorize!");var i=e.veryLowThreshold,n=e.targetLowerBound,o=e.targetUpperBound,s=e.veryHighThreshold;if("fiveWay"===a)return t<i?"veryLow":t>=i&&t<n?"low":t>o&&t<=s?"high":t>s?"veryHigh":"target";if(t<n)return"low";if(t>o)return"high";return"target"},t.classifyCvValue=function(e){return e<=36?"target":"high"},t.convertToMmolL=function(e){return e/o.MGDL_PER_MMOLL},t.convertToMGDL=function(e){return e*o.MGDL_PER_MMOLL},t.reshapeBgClassesToBgBounds=function(e){var t=e.bgClasses,a=e.bgUnits;return{veryHighThreshold:r.default.get(t,"high.boundary",o.DEFAULT_BG_BOUNDS[a].veryHighThreshold),targetUpperBound:r.default.get(t,"target.boundary",o.DEFAULT_BG_BOUNDS[a].targetUpperBound),targetLowerBound:r.default.get(t,"low.boundary",o.DEFAULT_BG_BOUNDS[a].targetLowerBound),veryLowThreshold:r.default.get(t,"very-low.boundary",o.DEFAULT_BG_BOUNDS[a].veryLowThreshold),clampThreshold:o.DEFAULT_BG_BOUNDS[a].clampThreshold}},t.generateBgRangeLabels=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=e.bgBounds,i=e.bgUnits,n=r.default.mapValues(a,function(t){return(0,s.formatBgValue)(t,e)});if(t.condensed)return{veryLow:"<".concat(n.veryLowThreshold),low:"".concat(n.veryLowThreshold,"-").concat(n.targetLowerBound),target:"".concat(n.targetLowerBound,"-").concat(n.targetUpperBound),high:"".concat(n.targetUpperBound,"-").concat(n.veryHighThreshold),veryHigh:">".concat(n.veryHighThreshold)};return{veryLow:"below ".concat(n.veryLowThreshold," ").concat(i),low:"between ".concat(n.veryLowThreshold," - ").concat(n.targetLowerBound," ").concat(i),target:"between ".concat(n.targetLowerBound," - ").concat(n.targetUpperBound," ").concat(i),high:"between ".concat(n.targetUpperBound," - ").concat(n.veryHighThreshold," ").concat(i),veryHigh:"above ".concat(n.veryHighThreshold," ").concat(i)}},t.getOutOfRangeThreshold=function(e){var t=r.default.find(e.annotations||[],function(e){return"bg/out-of-range"===e.code});return t?(0,n.default)({},t.value,t.threshold):null},t.weightedCGMCount=function(e){return r.default.reduce(e,function(e,t){var a=1,i=r.default.get(t,"deviceId","");return"cbg"===t.type&&0===i.indexOf("AbbottFreeStyleLibre")&&(a=3),e+a},0)},t.cgmSampleFrequency=function(e){return 0===r.default.get(e,"deviceId","").indexOf("AbbottFreeStyleLibre")?15*o.MS_IN_MIN:5*o.MS_IN_MIN};var n=i(a(9)),r=i(a(5)),o=a(6),s=a(22)},24:function(e,t,a){"use strict";function i(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}a.r(t),a.d(t,"default",function(){return i})},3:function(e,t){e.exports=function(e){return e&&e.__esModule?e:{default:e}}},32:function(e,t,a){"use strict";var i=a(10),n=a(3);Object.defineProperty(t,"__esModule",{value:!0}),t.noData=d,t.deviceName=function(e){return{animas:"Animas",insulet:"OmniPod",medtronic:"Medtronic",tandem:"Tandem"}[e]||e},t.getTotalBasalRates=f,t.getScheduleLabel=function(e,t,a,i){var n=e;r.default.includes(["carelink","medtronic"],a)&&(n=r.default.map(e.split(" "),function(e){return r.default.upperFirst(e)}).join(" "));return{main:n,secondary:e===t?"Active at upload":"",units:i?"":"U/hr"}},t.getScheduleNames=function(e){return r.default.keysIn(e)},t.getTimedSchedules=function(e){for(var t=r.default.map(e,"name"),a=[],i=t.length-1;i>=0;i--)a.push({name:t[i],position:i});return a},t.getDeviceMeta=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,a=e.normalTime,i=!!a&&o.formatLocalizedFromUTC(a,t,"MMM D, YYYY");return{schedule:e.activeSchedule||"unknown",uploaded:i||"unknown",serial:e.deviceSerialNumber||"unknown"}},t.processBasalRateData=function(e){var t=g(e.value),a=[{start:"-",rate:"-"}];if(0===t.length)return a;if(1===t.length&&0===Number(u(e.value,t[0])))return a;var i=r.default.map(t,function(t){return{start:o.formatClocktimeFromMsPer24(t),rate:u(e.value,t)}});return i.push({start:"Total",rate:f(e.value)}),i},t.processBgTargetData=function(e,t,a){return r.default.map(g(e),function(i){return{start:o.formatClocktimeFromMsPer24(i),columnTwo:h(e,a.columnTwo,i,t),columnThree:h(e,a.columnThree,i,t)}})},t.processCarbRatioData=function(e){return r.default.map(g(e),function(t){return{start:o.formatClocktimeFromMsPer24(t),amount:c(e,"amount",t)}})},t.processSensitivityData=function(e,t){return r.default.map(g(e),function(a){return{start:o.formatClocktimeFromMsPer24(a),amount:h(e,"amount",a,t)}})},t.processTimedSettings=function(e,t,a){var i=r.default.map(g(e.bgTargets[t.name]),function(i){return{start:o.formatClocktimeFromMsPer24(i),rate:u(e.basalSchedules[t.position].value,i),bgTarget:h(e.bgTargets[t.name],"target",i,a),carbRatio:c(e.carbRatios[t.name],"amount",i),insulinSensitivity:h(e.insulinSensitivities[t.name],"amount",i,a)}});return i.push({start:"Total",rate:f(e.basalSchedules[t.position].value),bgTarget:"",carbRatio:"",insulinSensitivity:""}),i},t.startTimeAndValue=function(e){return[{key:"start",label:"Start time"},{key:e,label:"Value"}]};var r=n(a(5)),o=i(a(15)),s=i(a(22)),l=3;function d(e){return null==e||"string"==typeof e&&r.default.isEmpty(e)}function u(e,t){var a=r.default.find(e,function(e){return e.start===t}).rate;return d(a)?"":s.formatDecimalNumber(a,l)}function c(e,t,a){var i=r.default.find(e,function(e){return e.start===a})[t];return d(i)?"":i}function h(e,t,a,i){var n=c(e,t,a);return d(n)?"":s.formatBgValue(n,{bgUnits:i})}function g(e){return r.default.map(e,"start")}function f(e){for(var t=0,a=e.length-1;a>=0;a--){var i=e[a].start,n=864e5,r=a+1;r<e.length&&(n=e[r].start);var o=(n-i)/36e5,d=parseFloat(e[a].rate.toFixed(l))*o;t+=parseFloat(d.toFixed(l))}return s.formatDecimalNumber(t,l)}},35:function(e,t){e.exports=require("d3-array")},36:function(e,t,a){"use strict";var i=a(3);Object.defineProperty(t,"__esModule",{value:!0}),t.statsText=function(e,t,a){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:C;l.default.defaults(a,{bgBounds:(0,c.reshapeBgClassesToBgBounds)(a)});var n="";return l.default.each(e,function(e){var o=l.default.includes(["timeInRange","readingsInRange","totalInsulin","timeInAuto","bgExtents"],e.id),s={bgPrefs:a,data:e.data,forcePlainTextValues:!0};if(o)n+=t.buildTextTable("".concat(e.title).concat(e.units?" (".concat(e.units,")"):""),l.default.map(l.default.reverse((0,r.default)(e.data.data)),function(t){var a=i(t,e.dataFormat.summary,s);return{label:t.legendTitle||t.title,value:"".concat(a.value).concat(a.suffix||"")}}),[{key:"label",label:"Label"},{key:"value",label:"Value"}],{showHeader:!1});else{var d=i(l.default.get(e.data,e.data.dataPaths.summary,{}),e.dataFormat.summary,s);n+="\n",n+=t.buildTextLine({label:e.title,value:"".concat(d.value).concat(d.suffix||(e.units?" ".concat(e.units):""))})}}),n},t.getStatDefinition=t.getStatTitle=t.getStatData=t.getStatAnnotations=t.formatDatum=t.ensureNumeric=t.getSum=t.statFetchMethods=t.commonStats=t.statFormats=t.statBgSourceLabels=t.statTypes=t.dailyDoseUnitOptions=void 0;var n,r=i(a(46)),o=i(a(39)),s=i(a(9)),l=i(a(5)),d=i(a(1)),u=i(a(21)),c=a(23),h=a(6),g=a(37),f=a(22),m=a(15),b=u.default.t.bind(u.default);void 0===l.default.get(u.default,"options.returnEmptyString")&&u.default.init({returnEmptyString:!1,nsSeparator:"|"});var v=[{label:"kg",value:"kg"},{label:"lb",value:"lb"}];t.dailyDoseUnitOptions=v;var y={barHorizontal:"barHorizontal",barBg:"barBg",input:"input",simple:"simple"};t.statTypes=y;var p={cbg:b("CGM"),smbg:b("BGM")};t.statBgSourceLabels=p;var S={bgCount:"bgCount",bgRange:"bgRange",bgValue:"bgValue",cv:"cv",carbs:"carbs",duration:"duration",gmi:"gmi",percentage:"percentage",standardDevRange:"standardDevRange",standardDevValue:"standardDevValue",units:"units",unitsPerKg:"unitsPerKg"};t.statFormats=S;var T={averageGlucose:"averageGlucose",averageDailyDose:"averageDailyDose",bgExtents:"bgExtents",carbs:"carbs",coefficientOfVariation:"coefficientOfVariation",glucoseManagementIndicator:"glucoseManagementIndicator",readingsInRange:"readingsInRange",sensorUsage:"sensorUsage",standardDev:"standardDev",timeInAuto:"timeInAuto",timeInRange:"timeInRange",totalInsulin:"totalInsulin"};t.commonStats=T;var D=(n={},(0,s.default)(n,T.averageGlucose,"getAverageGlucoseData"),(0,s.default)(n,T.averageDailyDose,"getTotalInsulinData"),(0,s.default)(n,T.bgExtents,"getBgExtentsData"),(0,s.default)(n,T.carbs,"getCarbsData"),(0,s.default)(n,T.coefficientOfVariation,"getCoefficientOfVariationData"),(0,s.default)(n,T.glucoseManagementIndicator,"getGlucoseManagementIndicatorData"),(0,s.default)(n,T.readingsInRange,"getReadingsInRangeData"),(0,s.default)(n,T.sensorUsage,"getSensorUsage"),(0,s.default)(n,T.standardDev,"getStandardDevData"),(0,s.default)(n,T.timeInAuto,"getTimeInAutoData"),(0,s.default)(n,T.timeInRange,"getTimeInRangeData"),(0,s.default)(n,T.totalInsulin,"getBasalBolusData"),n);t.statFetchMethods=D;var E=function(e){return l.default.sum(l.default.map(e,function(e){return l.default.max([e.value,0])}))};t.getSum=E;var w=function(e){return l.default.isNil(e)||l.default.isNaN(e)?-1:parseFloat(e)};t.ensureNumeric=w;var C=function(){var e,t,a,i,n,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},u=r.id,g=r.value,b=r.suffix||"";l.default.defaults(s,{emptyDataPlaceholder:"--",forcePlainTextValues:!1});var v=l.default.get(s,"data.total.value"),y=function(){u="statDisabled",g=s.emptyDataPlaceholder};switch(o){case S.bgCount:if(g>=0){var p=g<.05?2:1;g=+g.toFixed(p)}else y();break;case S.bgRange:g=(0,c.generateBgRangeLabels)(s.bgPrefs,{condensed:!0})[u];break;case S.bgValue:g>=0?(u=(0,c.classifyBgValue)(l.default.get(s.bgPrefs,"bgBounds"),g),g=(0,f.formatBgValue)(g,s.bgPrefs)):y();break;case S.carbs:g>=0?(g=(0,f.formatDecimalNumber)(g),b="g"):y();break;case S.cv:g>=0?(u=(0,c.classifyCvValue)(g),g=(0,f.formatDecimalNumber)(g),b="%"):y();break;case S.duration:g>=0?g=(0,m.formatDuration)(g,{condensed:!0}):y();break;case S.gmi:g>=0?(g=(0,f.formatDecimalNumber)(g,1),b="%"):y();break;case S.percentage:if(v&&v>=0){var T=(g=l.default.max([g,0]))/v*100,D=0;T>0&&T<.5&&(D=T<.05?2:1),g=(0,f.formatDecimalNumber)(T,D),b="%"}else y();break;case S.standardDevRange:e=l.default.get(r,"deviation.value",-1),g>=0&&e>=0?(a=(t=g-e)>=0?(0,c.classifyBgValue)(l.default.get(s.bgPrefs,"bgBounds"),t):"low",i=g+e,n=(0,c.classifyBgValue)(l.default.get(s.bgPrefs,"bgBounds"),i),t=(0,f.formatBgValue)(t,s.bgPrefs),i=(0,f.formatBgValue)(i,s.bgPrefs),g=s.forcePlainTextValues?"".concat(t,"-").concat(i):d.default.createElement("span",null,d.default.createElement("span",{style:{color:h.BG_COLORS[a]}},t)," - ",d.default.createElement("span",{style:{color:h.BG_COLORS[n]}},i))):y();break;case S.standardDevValue:g>=0?g=(0,f.formatBgValue)(g,s.bgPrefs):y();break;case S.units:g>=0?(g=(0,f.formatDecimalNumber)(g,1),b="U"):y();break;case S.unitsPerKg:"lb"===b&&(g*=h.LBS_PER_KG),b="U/kg",g>0&&l.default.isFinite(g)?g=(0,f.formatDecimalNumber)(g,2):y()}return{id:u,value:g,suffix:b}};t.formatDatum=C;var B=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=a.bgSource,n=a.days,r=a.manufacturer,o=(0,g.getPumpVocabulary)(r),s=[],d=[T.averageGlucose,T.coefficientOfVariation,T.glucoseManagementIndicator,T.readingsInRange,T.timeInRange,T.standardDev];switch(t){case T.averageGlucose:s.push(b("**Avg. Glucose ({{bgSourceLabel}}):** All {{bgSourceLabel}} glucose values added together, divided by the number of readings.",{bgSourceLabel:p[i]}));break;case T.averageDailyDose:n>1?s.push(b("**Avg. Daily Insulin:** All basal and bolus insulin delivery (in Units) added together, divided by the number of days in this view.")):s.push(b("**Daily Insulin:** All basal and bolus insulin delivery (in Units) added together."));break;case T.carbs:n>1?s.push(b("**Avg. Daily Carbs**: All carb entries added together, then divided by the number of days in this view. Note, these entries come from either bolus wizard events, or Apple Health records.")):s.push(b("**Total Carbs**: All carb entries from bolus wizard events or Apple Health records added together.")),s.push(b("Derived from _**{{total}}**_ carb entries.",{total:e.total}));break;case T.coefficientOfVariation:s.push(b("**CV (Coefficient of Variation):** How far apart (wide) glucose values are; research suggests a target of 36% or lower."));break;case T.glucoseManagementIndicator:s.push(b("**GMI (Glucose Management Indicator):** Tells you what your approximate A1C level is likely to be, based on the average glucose level from your CGM readings."));break;case T.readingsInRange:s.push(b("**Readings In Range:** Daily average of the number of {{smbgLabel}} readings.",{smbgLabel:p.smbg}));break;case T.sensorUsage:s.push(b("**Sensor Usage:** Time the {{cbgLabel}} collected data, divided by the total time represented in this view.",{cbgLabel:p.cbg}));break;case T.standardDev:s.push(b("**SD (Standard Deviation):** How far values are from the average."));break;case T.timeInAuto:n>1?(s.push(b("**Time In {{automatedLabel}}:** Daily average of the time spent in automated basal delivery.",{automatedLabel:o[h.AUTOMATED_DELIVERY]})),s.push(b("**How we calculate this:**\n\n**(%)** is the duration in {{automatedLabel}} divided the total duration of basals for this time period.\n\n**(time)** is 24 hours multiplied by % in {{automatedLabel}}.",{automatedLabel:o[h.AUTOMATED_DELIVERY]}))):(s.push(b("**Time In {{automatedLabel}}:** Time spent in automated basal delivery.",{automatedLabel:o[h.AUTOMATED_DELIVERY]})),s.push(b("**How we calculate this:**\n\n**(%)** is the duration in {{automatedLabel}} divided the total duration of basals for this time period.\n\n**(time)** is total duration of time in {{automatedLabel}}.",{automatedLabel:o[h.AUTOMATED_DELIVERY]})));break;case T.timeInRange:n>1?(s.push(b("**Time In Range:** Daily average of the time spent in range, based on {{cbgLabel}} readings.",{cbgLabel:p.cbg})),s.push(b("**How we calculate this:**\n\n**(%)** is the number of readings in range divided by all readings for this time period.\n\n**(time)** is 24 hours multiplied by % in range."))):(s.push(b("**Time In Range:** Time spent in range, based on {{cbgLabel}} readings.",{cbgLabel:p.cbg})),s.push(b("**How we calculate this:**\n\n**(%)** is the number of readings in range divided by all readings for this time period.\n\n**(time)** is number of readings in range multiplied by the {{cbgLabel}} sample frequency.",{cbgLabel:p.cbg})));break;case T.totalInsulin:n>1?s.push(b("**Total Insulin:** All basal and bolus insulin delivery (in Units) added together, divided by the number of days in this view")):s.push(b("**Total Insulin:** All basal and bolus insulin delivery (in Units) added together")),s.push(b("**How we calculate this:**\n\n**(%)** is the respective total of basal or bolus delivery divided by total insulin delivered for this time period."))}return e.insufficientData?s.push(b("**Why is this stat empty?**\n\nThere is not enough data present in this view to calculate it.")):l.default.includes(d,t)&&"smbg"===i&&s.push(b("Derived from _**{{total}}**_ {{smbgLabel}} readings.",{total:e.total,smbgLabel:p.smbg})),s};t.getStatAnnotations=B;var A=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=(0,g.getPumpVocabulary)(a.manufacturer),n=(0,c.generateBgRangeLabels)(a.bgPrefs,{condensed:!0}),r={raw:(0,o.default)({days:a.days},e)};switch(t){case T.averageGlucose:r.data=[{value:w(e.averageGlucose)}],r.dataPaths={summary:"data.0"};break;case T.averageDailyDose:r.data=[{id:"insulin",input:{id:"weight",label:"Weight",suffix:{id:"units",options:v,value:a.suffixValue||v[0]},type:"number",value:a.inputValue?w(a.inputValue):void 0},output:{label:"Daily Dose ÷ Weight",type:"divisor",dataPaths:{dividend:"data.0"}},value:w(e.totalInsulin)}],r.dataPaths={input:"data.0.input",output:"data.0.output",summary:"data.0"};break;case T.bgExtents:r.data=[{id:"bgMax",value:w(e.bgMax),title:b("Max BG")},{id:"bgMin",value:w(e.bgMin),title:b("Min BG")}];break;case T.carbs:r.data=[{value:w(e.carbs)}],r.dataPaths={summary:"data.0"};break;case T.coefficientOfVariation:r.data=[{id:"cv",value:w(e.coefficientOfVariation)}],r.dataPaths={summary:"data.0"};break;case T.glucoseManagementIndicator:r.data=[{id:"gmi",value:w(e.glucoseManagementIndicator)}],r.dataPaths={summary:"data.0"};break;case T.readingsInRange:r.data=[{id:"veryLow",value:w(e.veryLow),title:b("Readings Below Range"),legendTitle:n.veryLow},{id:"low",value:w(e.low),title:b("Readings Below Range"),legendTitle:n.low},{id:"target",value:w(e.target),title:b("Readings In Range"),legendTitle:n.target},{id:"high",value:w(e.high),title:b("Readings Above Range"),legendTitle:n.high},{id:"veryHigh",value:w(e.veryHigh),title:b("Readings Above Range"),legendTitle:n.veryHigh}],r.total={value:E(r.data)},r.dataPaths={summary:["data",l.default.findIndex(r.data,{id:"target"})]};break;case T.sensorUsage:r.data=[{value:w(e.sensorUsage)}],r.total={value:w(e.total)},r.dataPaths={summary:"data.0"};break;case T.standardDev:r.data=[{value:w(e.averageGlucose),deviation:{value:w(e.standardDeviation)}}],r.dataPaths={summary:"data.0.deviation",title:"data.0"};break;case T.timeInAuto:r.data=[{id:"basalAutomated",value:w(e.automated),title:b("Time In {{automatedLabel}}",{automatedLabel:i[h.AUTOMATED_DELIVERY]}),legendTitle:i[h.AUTOMATED_DELIVERY]},{id:"basal",value:w(e.manual),title:b("Time In {{scheduledLabel}}",{scheduledLabel:i[h.SCHEDULED_DELIVERY]}),legendTitle:i[h.SCHEDULED_DELIVERY]}],r.total={value:E(r.data)},r.dataPaths={summary:["data",l.default.findIndex(r.data,{id:"basalAutomated"})]};break;case T.timeInRange:r.data=[{id:"veryLow",value:w(e.veryLow),title:b("Time Below Range"),legendTitle:n.veryLow},{id:"low",value:w(e.low),title:b("Time Below Range"),legendTitle:n.low},{id:"target",value:w(e.target),title:b("Time In Range"),legendTitle:n.target},{id:"high",value:w(e.high),title:b("Time Above Range"),legendTitle:n.high},{id:"veryHigh",value:w(e.veryHigh),title:b("Time Above Range"),legendTitle:n.veryHigh}],r.total={value:E(r.data)},r.dataPaths={summary:["data",l.default.findIndex(r.data,{id:"target"})]};break;case T.totalInsulin:r.data=[{id:"bolus",value:w(e.bolus),title:b("Bolus Insulin"),legendTitle:b("Bolus")},{id:"basal",value:w(e.basal),title:b("Basal Insulin"),legendTitle:b("Basal")}],r.total={id:"insulin",value:E(r.data)},r.dataPaths={summary:"total",title:"total"};break;default:r=void 0}return r};t.getStatData=A;var x=function(e){var t,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=a.bgSource,n=a.days,r=(0,g.getPumpVocabulary)(a.manufacturer);switch(e){case T.averageGlucose:t=b("Avg. Glucose ({{bgSourceLabel}})",{bgSourceLabel:p[i]});break;case T.averageDailyDose:t=b(n>1?"Avg. Daily Insulin":"Total Insulin");break;case T.bgExtents:t=b("BG Extents ({{bgSourceLabel}})",{bgSourceLabel:p[i]});break;case T.carbs:t=b(n>1?"Avg. Daily Carbs":"Total Carbs");break;case T.coefficientOfVariation:t=b("CV ({{bgSourceLabel}})",{bgSourceLabel:p[i]});break;case T.glucoseManagementIndicator:t=b("GMI ({{bgSourceLabel}})",{bgSourceLabel:p[i]});break;case T.readingsInRange:t=b(n>1?"Avg. Daily Readings In Range":"Readings In Range");break;case T.sensorUsage:t=b("Sensor Usage");break;case T.standardDev:t=b("Std. Deviation ({{bgSourceLabel}})",{bgSourceLabel:p[i]});break;case T.timeInAuto:t=b(n>1?"Avg. Daily Time In {{automatedLabel}}":"Time In {{automatedLabel}}",{automatedLabel:r[h.AUTOMATED_DELIVERY]});break;case T.timeInRange:t=b(n>1?"Avg. Daily Time In Range":"Time In Range");break;case T.totalInsulin:t=b(n>1?"Avg. Daily Total Insulin":"Total Insulin");break;default:t=""}return t};t.getStatTitle=x;t.getStatDefinition=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i={annotations:B(e,t,a),collapsible:!1,data:A(e,t,a),id:t,title:x(t,a),type:y.barHorizontal};switch(t){case T.averageGlucose:i.dataFormat={label:S.bgValue,summary:S.bgValue},i.type=y.barBg,i.units=l.default.get(a,"bgPrefs.bgUnits");break;case T.averageDailyDose:i.alwaysShowSummary=!0,i.dataFormat={output:S.unitsPerKg,summary:S.units},i.type=y.input;break;case T.bgExtents:i.dataFormat={label:S.bgValue,summary:S.bgValue},i.type=y.simple,i.units=l.default.get(a,"bgPrefs.bgUnits");break;case T.carbs:i.dataFormat={summary:S.carbs},i.type=y.simple;break;case T.coefficientOfVariation:i.dataFormat={summary:S.cv},i.type=y.simple;break;case T.glucoseManagementIndicator:i.dataFormat={summary:S.gmi},i.type=y.simple;break;case T.readingsInRange:i.alwaysShowTooltips=!0,i.dataFormat={label:S.bgCount,summary:S.bgCount,tooltip:S.percentage,tooltipTitle:S.bgRange},i.legend=!0,i.reverseLegendOrder=!0,i.units=l.default.get(a,"bgPrefs.bgUnits");break;case T.sensorUsage:i.dataFormat={summary:S.percentage},i.type=y.simple;break;case T.standardDev:i.dataFormat={label:S.standardDevValue,summary:S.standardDevValue,title:S.standardDevRange},i.type=y.barBg,i.units=l.default.get(a,"bgPrefs.bgUnits");break;case T.timeInAuto:i.alwaysShowTooltips=!0,i.dataFormat={label:S.percentage,summary:S.percentage,tooltip:S.duration},i.legend=!0;break;case T.timeInRange:i.alwaysShowTooltips=!0,i.dataFormat={label:S.percentage,summary:S.percentage,tooltip:S.duration,tooltipTitle:S.bgRange},i.legend=!0,i.reverseLegendOrder=!0,i.units=l.default.get(a,"bgPrefs.bgUnits");break;case T.totalInsulin:i.alwaysShowTooltips=!0,i.dataFormat={label:S.percentage,summary:S.units,title:S.units,tooltip:S.units},i.legend=!0;break;default:i=void 0}return i}},37:function(e,t,a){"use strict";var i=a(3);Object.defineProperty(t,"__esModule",{value:!0}),t.getLatestPumpUpload=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return n.default.findLast(e,{deviceTags:["insulin-pump"]})},t.getLastManualBasalSchedule=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=n.default.findLast(e,{deliveryType:"scheduled"});return n.default.get(t,"scheduleName")},t.isAutomatedBasalDevice=function(e,t){return n.default.includes(n.default.get(r.AUTOMATED_BASAL_DEVICE_MODELS,(0,o.deviceName)(e),[]),t)},t.getPumpVocabulary=function(e){var t=n.default.cloneDeep(r.pumpVocabulary);return n.default.defaults(n.default.get(t,(0,o.deviceName)(e),{}),t.default)};var n=i(a(5)),r=a(6),o=a(32)},39:function(e,t,a){"use strict";a.r(t),a.d(t,"default",function(){return n});var i=a(9);function n(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{},n=Object.keys(Object(a));"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(a).filter(function(e){return Object.getOwnPropertyDescriptor(a,e).enumerable}))),n.forEach(function(t){Object(i.default)(e,t,a[t])})}return e}},414:function(e,t,a){e.exports=a(415)},415:function(e,t,a){"use strict";var i=a(10),n=a(3);Object.defineProperty(t,"__esModule",{value:!0}),t.createPrintView=v,t.createPrintPDFPackage=y,t.default=t.utils=void 0;var r=n(a(12)),o=n(a(416)),s=n(a(5)),l=n(a(21)),d=n(a(80)),u=n(a(420)),c=n(a(424)),h=n(a(428)),g=n(a(429)),f=i(a(162));void 0===s.default.get(l.default,"options.returnEmptyString")&&l.default.init({returnEmptyString:!1,nsSeparator:"|"});var m=l.default.t.bind(l.default),b={PDFDocument:function e(){(0,r.default)(this,e)},blobStream:function(){},PrintView:d.default,BasicsPrintView:u.default,DailyPrintView:c.default,BgLogPrintView:h.default,SettingsPrintView:g.default};function v(e,t,a,i){var n,r=a.patient,o={debug:!1,defaultFontSize:f.DEFAULT_FONT_SIZE,dpi:f.DPI,footerFontSize:f.FOOTER_FONT_SIZE,headerFontSize:f.HEADER_FONT_SIZE,height:f.HEIGHT,margins:f.MARGINS,patient:r,smallFontSize:f.SMALL_FONT_SIZE,width:f.WIDTH};switch(e){case"daily":n=b.DailyPrintView,o=s.default.assign(o,{chartsPerPage:3,summaryHeaderFontSize:10,summaryWidthAsPercentage:.18,title:m("Daily Charts")});break;case"basics":n=b.BasicsPrintView,o=s.default.assign(o,{title:m("The Basics")});break;case"bgLog":n=b.BgLogPrintView,o=s.default.assign(o,{title:m("BG Log")});break;case"settings":n=b.SettingsPrintView,o=s.default.assign(o,{title:m("Pump Settings")});break;default:return null}return new n(i,t,o)}function y(e,t){var a=t.patient,i=t.basics,n=void 0===i?{}:i,r=t.daily,u=void 0===r?{}:r,c=t.bgLog,h=void 0===c?{}:c,g=t.settings,m=void 0===g?{}:g;s.default.get(a,"preferences.displayLanguageCode")&&l.default.changeLanguage(a.preferences.displayLanguageCode);var y=s.default.cloneDeep(t);return new o.default(function(t,a){var i="undefined"!=typeof PDFDocument?PDFDocument:b.PDFDocument,r="undefined"!=typeof blobStream?blobStream:b.blobStream,o=new i({autoFirstPage:!1,bufferPages:!0,margin:f.MARGIN}),s=o.pipe(r());n.disabled||v("basics",e.basics,y,o).render(),u.disabled||v("daily",e.daily,y,o).render(),h.disabled||v("bgLog",e.bgLog,y,o).render(),m.disabled||v("settings",e.settings,y,o).render(),d.default.renderPageNumbers(o),o.end(),s.on("finish",function(){var e={blob:s.toBlob(),url:s.toBlobURL("application/pdf")};return t(e)}),s.on("error",function(e){return s.end(),a(e)})})}t.utils=b;var p=y;t.default=p},416:function(e,t){e.exports=require("bluebird")},417:function(e,t){e.exports=require("voilab-pdf-table")},418:function(e,t,a){"use strict";var i=a(5),n=function(e){i.merge(this,{id:"fitcolumn",column:null,maxWidth:null,calculatedWidth:null},i.clone(e||{}))};i.assign(n.prototype,{configure:function(e){e.onBodyAdd(this.setWidth.bind(this)).onColumnAdded(this.onColumnAdded.bind(this)).onColumnPropertyChanged(this.onColumnPropertyChanged.bind(this))},onColumnAdded:function(e){return this.reinitWidth(e)},onColumnPropertyChanged:function(e,t,a){return"width"!==a&&"hidden"!==a?this:this.reinitWidth(e)},resetWidth:function(){return this.calculatedWidth=null,this},reinitWidth:function(e){return this.resetWidth().setWidth(e)},setWidth:function(e){if(e.pdf.page){if(null===this.calculatedWidth){var t=this,a=this.maxWidth,n=i.sumBy(e.getColumns(),function(e){return e.id!==t.column?e.width:0});a||(a=e.pdf.page.width-e.pdf.page.margins.left-e.pdf.page.margins.right),this.calculatedWidth=a-n,this.calculatedWidth<0&&(this.calculatedWidth=0)}e.setColumnWidth(this.column,this.calculatedWidth,!0)}}}),e.exports=n},419:function(e,t){e.exports="data:image/png;base64,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