{"version":3,"sources":["webpack:///./src/utils/Defaults.ts","webpack:///./src/views/Admin/Calculations.vue","webpack:///./src/views/Admin/Calculations.vue?fc75","webpack:///./src/views/Admin/Calculations.vue?4896","webpack:///./src/views/Admin/Calculations.vue?2112","webpack:///./src/models/Recipes/Nutritions.ts","webpack:///./src/components/vIconWithTooltip.vue","webpack:///./src/components/vIconWithTooltip.vue?fa34","webpack:///./src/components/vIconWithTooltip.vue?2721","webpack:///./src/components/vIconWithTooltip.vue?0c73","webpack:///./src/utils/Helpers.ts","webpack:///./src/components/bootstrap/vGenericTable.vue?11ee","webpack:///./src/components/reports/vAminoAcidScoreReport.vue?04a9","webpack:///./src/utils/API/CustomersRepository.ts","webpack:///./src/components/reports/vAminoAcidScoreReport.vue","webpack:///./src/components/reports/vAminoAcidScoreReport.vue?8f15","webpack:///./src/components/reports/vAminoAcidScoreReport.vue?9520","webpack:///./src/components/reports/vAminoAcidScoreReport.vue?c36b","webpack:///./src/models/Ingredient/NutrientType.ts","webpack:///./src/components/vRecipeBreakdownTable.vue?a2cb","webpack:///./src/models/NutritionLabels/LabelTypeMetadata.ts","webpack:///./src/components/vSelect2.vue","webpack:///./src/components/vSelect2.vue?f25b","webpack:///./src/components/vSelect2.vue?755f","webpack:///./src/components/vSelect2.vue?9920","webpack:///./src/components/reports/vAminoAcidScoreReport.vue?2bd9","webpack:///./src/components/bootstrap/vGenericTable.vue","webpack:///./src/components/bootstrap/vGenericTable.vue?7cb8","webpack:///./src/components/bootstrap/vGenericTable.vue?e07e","webpack:///./src/components/bootstrap/vGenericTable.vue?11f4","webpack:///./src/utils/API/RecipesRepository.ts","webpack:///./src/assets/Admin/assets/img/calculation.png","webpack:///./src/models/Recipes/RecipeServingType.ts","webpack:///./src/views/Admin/Calculations.vue?5ff7","webpack:///./src/utils/API/CalculationsRepository.ts","webpack:///./src/views/Admin/Calculations.vue?4438","webpack:///./src/components/vRecipeBreakdownTable.vue","webpack:///./src/components/vRecipeBreakdownTable.vue?21e8","webpack:///./src/components/vRecipeBreakdownTable.vue?8a70","webpack:///./src/components/vRecipeBreakdownTable.vue?5986"],"names":["emptyString","NA","dateTimeDisplayFormat","dateDisplayFormat","render","_vm","this","_c","_self","_setupProxy","staticClass","staticStyle","attrs","require","_v","_s","translations","get","filter","isChosen","selectedCountry","getHighInMetadata","_e","on","$event","selectCustomer","model","value","selectedCustomer","callback","$$v","$set","expression","_l","customers","customer","key","id","domProps","name","recipe","disabled","selectRecipe","selectedRecipe","recipes","recipeCategoryId","selectCountry","countryRules","country","viewLabel","concat","recipesCalculation","categoryName","servings","cookingMethodName","pdcaasScore","round","nutrientFacts","rawWeight","getMoistureLossFactor","recipeScaleFactor","tableHeaders","slicedTableHeaders","_m","nutrientRoundingRulesData","item","isOverriden","total","totalPerServings","roundingRule","text","dailyValueRule","dailyValueRoundingRule","formula","staticRenderFns","Packages","_Vue","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","_defineProperty","_inherits","_createClass","valueIfNotOverridden","overrideWeightPerServing","overrideUnit","staticHeaders","dynamicHeaders","Object","keys","ingredients","addedSugarIndex","indexOf","_toConsumableArray","slice","moistureYieldFactor","recipeServingType","RecipeServingType","Servings","rows","push","unit","rawWeightPerServing","overrideWeightDisplay","weight","weightPerServing","absoluteValue","isOverridden","absoluteValuePerServing","localizationState","_this2","RecipesRepository","listRestaurantRecipesAsLookups","then","response","data","result","catch","error","$snotify","errorMessages","userVisibleMessage","_this3","CustomersRepository","listRestaurantsAsLookups","loadRecipes","_this4","recipeId","async","Promise","success","CalculationsRepository","getRecipeCalculationBreakdown","body","timeout","closeOnClick","additionalLabelInformation","getAdditionalLabelInformation","LabelTypeMetadata","FrontOfPack","highInMetadata","find","x","$store","dispatch","TRANSLATIONS_FETCH","category","collections","document","title","loadCustomers","Vue","__decorate","Component","methods","components","vIconWithTooltip","vTable","vSelect2","vAminoAcidScoreReport","vRecipeBreakdownTable","computed","_objectSpread","mapState","state","LocalizationModule","component","Nutritions","totalNutrientsPerServing","servingUnitOfMeasurement","roundedWeightPerServing","volume","rawVolume","volumePerServing","rawVolumePerServing","quantityPerServingInUnitOfMeasurement","undefined","item1","item2","displayServingQuantityAndMeasure","servingQuantityInUnitOfMeasurementOverride","servingUnitOfMeasurementOverride","labelType","BackOfPack","ingredientScaleMultiplier","moistureInRecipePercent","nutrientNames","nameKey","map","NutrientType","join","nutrient","nutrientName","nutrientInfo","getNutrientInfo","apply","roundedValue","roundedDailyValue","exactValue","exactDailyValue","rawQuantity","invert","factorMoistureLossToRawQuantity","tooltipPlacement","class","iClass","style","iStyle","slot","tooltipContent","Prop","VPopover","debounce","time","intervalId","localStorage","getItem","clearTimeout","setTimeout","setItem","getBoldString","mainString","subString","index","toLowerCase","startIndex","substring","endIndex","highlightedString","number","decimalPlaces","Math","pow","shorten","newText","replace","parts","split","part","substr","desanitizeString","html","txt","createElement","innerHTML","getErrorMessage","mapNutritions","nutritions","nutrientType","originalNutrientAnalysis","groupBy","items","reduce","acc","group","values","set","Map","buildVTableDataStruct","meta","rv","forEach","trialMaskedNutrientData","shouldRound","store","getters","getUserDetails","isTrial","tableMapper","useLink","recipeWeight","nutritionAnalysis","metaObj","link","getRoundedValue","Energy","Fat","SaturatedFattyAcids","TransFattyAcids","Cholesterol","Sodium","Carbohydrate","Fibre","Sugars","Protein","VitaminD","VitaminC","Potassium","Calcium","Iron","MonoUnsaturatedFats","PolyUnsaturatedFats","Omega3","Omega6","Caffeine","Ash","Moisture","Biotin","Choline","Folate","Niacin","PantothenicAcid","Riboflavin","Thiamine","BetaCarotene","Retinol","VitaminB6","VitaminB12","VitaminE","VitaminK","Chromium","Chloride","Copper","Iodine","Magnesium","Manganese","Molybdenum","Phosphorus","Selenium","Zinc","LAlanine","LArginine","LAsparagine","LCysteine","LGlutamine","Glycine","LHistidine","LIsoleucine","LLeucine","LLysine","LMethionine","LPhenylalanine","LProline","LSerine","LThreonine","LTyrosine","LValine","Tryptophan","GreenTeaExtract","Taurine","Phosphatidylserine","FolicAcid","Boron","Fluoride","downloadURI","uri","download","href","click","toBase64","file","resolve","reject","reader","FileReader","readAsDataURL","onload","onerror","resource","signup","signupDto","Repository","post","withCredentials","fetchCustomersList","listRequest","newCustomer","editCustomer","activeCustomer","customerActive","getRestaurantProfile","updateRestaurantProfile","restaurantProfile","listRestaurantEmployees","restaurantId","queryOptions","createRestaurantEmployee","updateRestaurantEmployee","deleteRestaurant","deleteRestaurantEmployee","userId","enableRestaurantEmployee","updateRestaurantAccountProfile","updateDatabase","updateRestaurantArchiveStatus","isArchived","isLoading","reportData","histidineScore","limitingScore","histidineRatio","idealRatios","histidine","isoleucineScore","isoleucineRatio","isoleucine","leucineScore","leucineRatio","leucine","lysineScore","lysineRatio","lysine","methionineAndCysteineScore","methionineAndCysteineRatio","methionineAndCysteine","phenylalanineAndTyrosineScore","phenylalanineAndTyrosineRatio","phenylalanineAndTyrosine","threonineScore","threonineRatio","threonine","tryptophanScore","tryptophanRatio","tryptophan","valineScore","valineRatio","valine","getAminoAcidScore","reason","console","getAminoAcidScoreReport","VPreLoader","VGenericTable","ref","_t","val","$","element","trigger","empty","select2","$refs","options","eventData","parseInt","target","$emit","off","Watch","theadClass","tbodyClass","vGenericTable","default","createRecipeCategory","listRecipeCategories","deleteRecipeCategory","listRecipes","listReducedRecipes","isRecipe","getRecipeDetails","createRecipe","deleteRecipe","updateRecipe","searchSubRecipes","searchRecipes","renameCategory","updateCategory","moveRecipesToCategory","filterRecipesNames","recipesSearchTerm","recipeSearchTerm","filterCombinedRecipeName","calculate","recCalc","copyRecipe","saveRecipeLabel","getRecipeLabel","deleteRecipes","listCookingMethods","listFoodGroupClasses","listFoodGroupSubClasses","updateRecipeFoodClassifications","updateRecipeServingSize","updateCaloriesCalculationMethod","hasRecipeWithIngredientsFromSpecificDatabase","nutrientSource","listRecipesThatUseIngredient","ingredientId","getRecipeCompositionMeasurements","getPrintRecipeDetails","updateRecipeCountry","countryId","updateCombinedRecipeCountry","module","exports","getSingleNutrientReport","getProteinQualityBreakDown","backgroundColor","isAdmin","header","getNutrientFacts","ingr","childRecipeBreakdown","ingredientName","quantity","quantityInGrams","quantityInGramsAfterLoss","weightPercent","foodClassification","getNutrientValue","per100Grams","inRecipe","retentionFactor","inRecipeAfterRetentionFactor","subIngr","subIndex","getNutrientAbsoluteValue","getNutrientPerServingValue","showChildRows","ingredient","nutrientData","inRecipeAfterLoss","nutrientKey","roundedValuePerServing","useRoundedValues"],"mappings":"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","file":"js/chunk-60d5b692.c7e45e3f.js","sourcesContent":["export const emptyString = '';\r\nexport const NA = \"N/A\";\r\nexport const dateTimeDisplayFormat = 'DD MMM YYYY - hh:mm A'; // https://momentjs.com/docs/#/parsing/\r\nexport const dateDisplayFormat = 'DD MMM YYYY';","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"page-content-wrapper calculations\"},[_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"container-fluid container-fixed-lg\"},[_c('h2',[_c('img',{staticClass:\"img-thumbnail img-circle\",staticStyle:{\"width\":\"75px\"},attrs:{\"src\":require(\"../../assets/Admin/assets/img/calculation.png\"),\"alt\":\"\"}}),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"admin_calculations\"))+\"\\n \")])]),(_vm.filter.isChosen && _vm.filter.selectedCountry === 0\n && _vm.getHighInMetadata() > 0)?_c('div',{staticClass:\"container-fluid container-fixed-lg packages-table\"},[_c('div',{staticClass:\"row alert alert-warning gap border border-warning\",attrs:{\"div\":\"\"}},[_c('i',{staticClass:\"fa fa-info-circle\",attrs:{\"title\":\"exemptions\"}}),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\"\\n Label requires a front-of-package label and is high in:\\n \")]),((_vm.getHighInMetadata() & 1) > 0)?_c('div',{staticClass:\"col-md-2 border border-dark text-uppercase text-center bg-dark text-white bold\"},[_vm._v(\"\\n Saturated Fats\\n \")]):_vm._e(),((_vm.getHighInMetadata() & 2) > 0)?_c('div',{staticClass:\"col-md-2 border border-dark text-uppercase text-center bg-dark text-white bold\"},[_vm._v(\"\\n Sugars\\n \")]):_vm._e(),((_vm.getHighInMetadata() & 4) > 0)?_c('div',{staticClass:\"col-md-2 border border-dark text-uppercase text-center bg-dark text-white bold\"},[_vm._v(\"\\n Sodium\\n \")]):_vm._e()])]):_vm._e(),_c('div',{staticClass:\"container-fluid container-fixed-lg packages-table\"},[_c('div',{staticClass:\"card card-default\"},[_c('div',{staticClass:\"card-header\"},[_c('div',{staticClass:\"card-title\"},[_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"calculations_general\"))+\"\\n \")]),_c('div',{staticClass:\"clearfix\"})]),_c('div',{staticClass:\"card-body\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-3\"},[_c('label',[_vm._v(_vm._s(_vm.translations.get(\"calculations_select_customer\")))]),_c('vSelect2',{staticClass:\"form-control\",on:{\"input\":function($event){return _vm.selectCustomer($event)}},model:{value:(_vm.filter.selectedCustomer),callback:function ($$v) {_vm.$set(_vm.filter, \"selectedCustomer\", $$v)},expression:\"filter.selectedCustomer\"}},_vm._l((_vm.customers),function(customer){return _c('option',{key:'customer-' + customer.id,domProps:{\"value\":customer.id}},[_vm._v(\"\\n \"+_vm._s(customer.name)+\"\\n \")])}),0)],1),_c('div',{staticClass:\"col-3\"},[_c('label',[_vm._v(_vm._s(_vm.translations.get(\"calculations_select_recipe\")))]),_c('div',[_c('vSelect2',{staticClass:\"form-control\",attrs:{\"disabled\":_vm.filter.recipe.disabled},on:{\"input\":function($event){return _vm.selectRecipe($event)}},model:{value:(_vm.filter.recipe.selectedRecipe),callback:function ($$v) {_vm.$set(_vm.filter.recipe, \"selectedRecipe\", $$v)},expression:\"filter.recipe.selectedRecipe\"}},_vm._l((_vm.recipes),function(recipe){return _c('option',{key:'recipe-' + recipe.id,domProps:{\"value\":recipe.id}},[_vm._v(\"\\n \"+_vm._s(recipe.name)+\"\\n \"),(recipe.recipeCategoryId != null)?_c('span',{staticStyle:{\"font-size\":\"x-small\"}},[_vm._v(\"\\n (Recipe)\\n \")]):_vm._e(),(recipe.recipeCategoryId == null)?_c('span',{staticStyle:{\"font-size\":\"x-small\"}},[_vm._v(\"\\n (Dish)\\n \")]):_vm._e()])}),0)],1)]),_c('div',{staticClass:\"col-3\"},[_c('label',[_vm._v(_vm._s(_vm.translations.get(\"calculations_country_rules\")))]),_c('vSelect2',{staticClass:\"form-control\",on:{\"input\":function($event){return _vm.selectCountry($event)}},model:{value:(_vm.filter.selectedCountry),callback:function ($$v) {_vm.$set(_vm.filter, \"selectedCountry\", $$v)},expression:\"filter.selectedCountry\"}},_vm._l((_vm.countryRules),function(country){return _c('option',{key:'country-' + country.id,domProps:{\"value\":country.id}},[_vm._v(\"\\n \"+_vm._s(country.name)+\"\\n \")])}),0)],1),_c('div',{staticClass:\"col-3\"},[_c('button',{staticClass:\"btn btn-primary view-label\",on:{\"click\":_vm.viewLabel}},[_c('i',{staticClass:\"fa fa-save\",staticStyle:{\"margin-right\":\"7px\"}}),_c('span',[_vm._v(_vm._s(_vm.translations.get(\"calculations_view_label\")))])])])])])])]),(_vm.filter.isChosen)?_c('div',[_c('div',{staticClass:\"container-fluid container-fixed-lg packages-table\"},[_c('div',{staticClass:\"card card-default\"},[_c('div',{staticClass:\"card-header\"},[_c('div',{staticClass:\"card-title\"},[_vm._v(\"\\n \"+_vm._s(`${_vm.filter.recipe.name} - nutrient facts`)+\"\\n \")])]),_c('div',{staticClass:\"row\",staticStyle:{\"margin-left\":\"20px\"}},[_c('div',[_c('span',{staticStyle:{\"font-weight\":\"700\"}},[_vm._v(\"Category:\")]),_c('span',{staticStyle:{\"margin-left\":\"10px\"}},[_vm._v(_vm._s(_vm.recipesCalculation.categoryName))])]),_c('div',[_c('span',{staticStyle:{\"font-weight\":\"700\",\"margin-left\":\"35px\"}},[_vm._v(\"Servings:\")]),_c('span',{staticStyle:{\"margin-left\":\"10px\"}},[_vm._v(_vm._s(_vm.recipesCalculation.servings))])]),_c('div',[_c('span',{staticStyle:{\"font-weight\":\"700\",\"margin-left\":\"35px\"}},[_vm._v(\"Cooking method:\")]),_c('span',{staticStyle:{\"margin-left\":\"10px\"}},[_vm._v(_vm._s(_vm.recipesCalculation.cookingMethodName))])]),_c('div',[_c('span',{staticStyle:{\"font-weight\":\"700\",\"margin-left\":\"35px\"}},[_vm._v(\"PDCAAS Score:\")]),_c('span',{staticStyle:{\"margin-left\":\"10px\"}},[_vm._v(_vm._s(_vm.recipesCalculation.pdcaasScore))])]),_c('div',[_c('span',{staticStyle:{\"font-weight\":\"700\",\"margin-left\":\"35px\"}},[_vm._v(\"Moisture Loss (g):\")]),_c('span',{staticClass:\"text-danger bold\",staticStyle:{\"margin-left\":\"10px\"}},[_vm._v(\"\\n \"+_vm._s(-_vm.round(_vm.nutrientFacts.rawWeight.value * _vm.getMoistureLossFactor(), 2))+\"g\\n \")])]),_c('div',[_c('span',{staticStyle:{\"font-weight\":\"700\",\"margin-left\":\"35px\"}},[_vm._v(\"Moisture Loss (%):\")]),_c('span',{staticClass:\"bold\",staticStyle:{\"margin-left\":\"10px\"}},[_vm._v(\"\\n \"+_vm._s(_vm.round(_vm.getMoistureLossFactor() * 100, 2))+\"%\\n \")])]),_c('div',[_c('span',{staticStyle:{\"font-weight\":\"700\",\"margin-left\":\"35px\"}},[_vm._v(\"Recipe Scale:\")]),_c('span',{staticClass:\"text-success bold\",staticStyle:{\"margin-left\":\"10px\"}},[_vm._v(\"\\n \"+_vm._s(_vm.round(_vm.recipesCalculation.recipeScaleFactor, 4))+\"\\n \")]),_c('span',{staticStyle:{\"font-size\":\"x-small\"}},[_vm._v(\"(Acts as a multiplier on each recipe item's quantity to make up the serving weight)\")])])]),_c('vRecipeBreakdownTable',{attrs:{\"recipes-calculation\":_vm.recipesCalculation,\"table-headers\":_vm.tableHeaders,\"sliced-table-headers\":_vm.slicedTableHeaders,\"is-admin\":true}})],1)]),_c('div',{staticClass:\"container-fluid container-fixed-lg packages-table\"},[_c('div',{staticClass:\"card card-default\"},[_c('div',{staticClass:\"card-header\"},[_c('div',{staticClass:\"card-title\"},[_vm._v(\"\\n \"+_vm._s(`${_vm.filter.recipe.name} - Rounding Rules`)+\"\\n \")])]),_c('div',{staticClass:\"card-body\"},[_c('table',{staticClass:\"table daily-values-facts\"},[_vm._m(0),_c('tbody',[_vm._l((_vm.nutrientRoundingRulesData()),function(item){return [_c('tr',{key:item.name},[_c('td',{staticClass:\"highlight-cell\",attrs:{\"rowspan\":\"2\"}},[_c('span',{staticClass:\"w-100 float-left\"},[_vm._v(_vm._s(item.name))]),_c('span',{staticClass:\"override-text\"},[_vm._v(_vm._s(item.isOverriden ? \"Overriden\" : \"\"))])]),(item.total)?_c('td',{attrs:{\"rowspan\":2}},[_vm._v(\"\\n \"+_vm._s(item.total)+\"\\n \")]):_vm._e(),(item.totalPerServings)?_c('td',{attrs:{\"rowspan\":2}},[_vm._v(\"\\n \"+_vm._s(item.totalPerServings)+\"\\n\\n \")]):_vm._e(),_c('td',[_c('div',[_c('p',[_vm._v(\"\\n \"+_vm._s(item.roundingRule ? `Rule: ${item.roundingRule.text}` : '')+\"\\n \")])])]),_c('td',[_c('div',[_c('p',[_vm._v(\"\\n \"+_vm._s(item.dailyValueRule ? `Rule: ${item.dailyValueRule.text}` : '')+\"\\n \")])])]),_c('td',[_c('div',[_c('p',[_vm._v(\"\\n \"+_vm._s(item.dailyValueRoundingRule ? `Rule: ${item.dailyValueRoundingRule.text}` : '')+\"\\n \")])])])]),_c('tr',{key:item.name + 'formula'},[_c('td',{staticClass:\"highlight-formula\"},[_c('p',{staticClass:\"rounding-recipe-calc-formula\"},[_vm._v(\"\\n \"+_vm._s(item.roundingRule ? item.roundingRule.formula : '')+\"\\n \")])]),_c('td',{staticClass:\"highlight-formula\"},[_c('p',{staticClass:\"rounding-recipe-calc-formula\"},[_vm._v(\"\\n \"+_vm._s(item.dailyValueRule ? item.dailyValueRule.formula : '')+\"\\n \")])]),_c('td',{staticClass:\"highlight-formula\"},[_c('p',{staticClass:\"rounding-recipe-calc-formula\"},[_vm._v(\"\\n \"+_vm._s(item.dailyValueRoundingRule ? item.dailyValueRoundingRule.formula : '')+\"\\n \")])])])]})],2)])])])]),(_vm.filter.recipe.selectedRecipe !== null)?_c('div',{staticClass:\"container-fluid container-fixed-lg packages-table\"},[_c('div',{staticClass:\"card card-default p-4\"},[_c('v-amino-acid-score-report',{attrs:{\"recipe-id\":_vm.filter.recipe.selectedRecipe}})],1)]):_vm._e()]):_vm._e()])])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('thead',{staticStyle:{\"background-color\":\"#0288d1\",\"position\":\"sticky\",\"top\":\"0\",\"z-index\":\"10\"}},[_c('tr',{staticClass:\"header-table\"},[_c('th',[_vm._v(\"Nutrient\")]),_c('th',[_vm._v(\"Total\")]),_c('th',[_vm._v(\"Per Serving\")]),_c('th',[_vm._v(\"Rounding Rules For Exact Values\")]),_c('th',[_vm._v(\"Daily Values Rules\")]),_c('th',[_vm._v(\"Rounding Rules For Daily Values\")])])])\n}]\n\nexport { render, staticRenderFns }","\r\nimport {Component, Vue} from \"vue-property-decorator\";\r\nimport {TRANSLATIONS_FETCH} from \"@/store/ActionTypes\";\r\nimport {mapState} from \"vuex\";\r\nimport CalculationsRepository from \"@/utils/API/CalculationsRepository\";\r\nimport CustomersRepository from \"@/utils/API/CustomersRepository\";\r\nimport RecipesRepository from \"@/utils/API/RecipesRepository\";\r\nimport vTable from \"@/components/vTable.vue\";\r\nimport {NutrientFacts, RecipeBreakdown} from \"@/models/Recipes/RecipeBreakdown\";\r\nimport vSelect2 from \"@/components/vSelect2.vue\";\r\nimport {LabelTypeMetadata} from \"@/models/NutritionLabels/LabelTypeMetadata\";\r\nimport vAminoAcidScoreReport from \"@/components/reports/vAminoAcidScoreReport.vue\";\r\nimport {round} from \"../../utils/Helpers\";\r\nimport vIconWithTooltip from \"@/components/vIconWithTooltip.vue\";\r\nimport vRecipeBreakdownTable from \"@/components/vRecipeBreakdownTable.vue\";\r\nimport {RecipeServingType} from \"@/models/Recipes/RecipeServingType\";\r\n\r\n@Component({\r\n methods: {round},\r\n components: {\r\n vIconWithTooltip,\r\n vTable,\r\n vSelect2,\r\n vAminoAcidScoreReport,\r\n vRecipeBreakdownTable\r\n },\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n }),\r\n },\r\n})\r\nclass Packages extends Vue {\r\n localizationState: any;\r\n\r\n recipesCalculation: RecipeBreakdown = null;\r\n nutrientFacts: NutrientFacts = null;\r\n customers: any[] = [];\r\n recipes: any[] = [];\r\n countryRules: any[] = [\r\n {\r\n name: \"Canada\",\r\n id: 0,\r\n },\r\n {\r\n name: \"US\",\r\n id: 1,\r\n },\r\n {\r\n name: \"UK\",\r\n id: 2,\r\n },\r\n ];\r\n filter: any = {\r\n isChosen: false,\r\n selectedCustomer: null,\r\n recipe: {\r\n selectedRecipe: null,\r\n name: \"\",\r\n disabled: true,\r\n },\r\n selectedCountry: 0,\r\n };\r\n\r\n overrideWeightDisplay(valueIfNotOverridden: number): string {\r\n return `${this.nutrientFacts.overrideWeightPerServing || valueIfNotOverridden}${this.nutrientFacts.overrideUnit || \"g\"}`;\r\n }\r\n\r\n get tableHeaders(): string[] {\r\n const staticHeaders = [\r\n 'Ingredient',\r\n 'Quantity',\r\n 'Quantity (G)',\r\n 'Quantity (G) with Loss'\r\n ];\r\n\r\n const dynamicHeaders = Object.keys(this.nutrientFacts.ingredients[0])\r\n .filter((key) =>\r\n key !== 'ingredientName' &&\r\n key !== 'quantity' &&\r\n key !== 'quantityInGrams' &&\r\n key !== 'quantityInGramsAfterLoss' &&\r\n key !== 'childRecipeBreakdown'\r\n );\r\n\r\n // HACK: Added sugar has a naming convention mismatch\r\n const addedSugarIndex = dynamicHeaders.indexOf('addedSugar');\r\n if (addedSugarIndex > 0) {\r\n dynamicHeaders[addedSugarIndex] = 'addedSugar';\r\n }\r\n\r\n return [...staticHeaders, ...dynamicHeaders];\r\n }\r\n\r\n get slicedTableHeaders():string[]{\r\n return this.tableHeaders.slice(6);\r\n }\r\n\r\n getMoistureLossFactor() {\r\n if (this.recipesCalculation.moistureYieldFactor === 0) {\r\n return 0;\r\n }\r\n\r\n if (this.recipesCalculation.recipeServingType === RecipeServingType.Servings) {\r\n return this.recipesCalculation.moistureYieldFactor;\r\n }\r\n\r\n return 1 - this.recipesCalculation.moistureYieldFactor;\r\n }\r\n\r\n nutrientRoundingRulesData() {\r\n const rows = [];\r\n rows.push({\r\n name: 'Quantity(G)',\r\n dailyValueRule: '',\r\n roundingRule:'',\r\n dailyValueRoundingRule:'',\r\n total: this.recipesCalculation.nutrientFacts.rawWeight.value + this.recipesCalculation.nutrientFacts.rawWeight.unit,\r\n totalPerServings: (\r\n this.recipesCalculation.nutrientFacts.rawWeightPerServing.value\r\n + this.recipesCalculation.nutrientFacts.rawWeightPerServing.unit\r\n + ` (${this.overrideWeightDisplay(this.recipesCalculation.nutrientFacts.rawWeightPerServing.value)})`\r\n ),\r\n });\r\n rows.push({\r\n name: 'Quantity(G) With Loss',\r\n dailyValueRule:'',\r\n roundingRule:'',\r\n dailyValueRoundingRule:'',\r\n total: this.recipesCalculation.nutrientFacts.weight.value + this.recipesCalculation.nutrientFacts.weight.unit,\r\n totalPerServings: (\r\n this.recipesCalculation.nutrientFacts.weightPerServing.value\r\n + this.recipesCalculation.nutrientFacts.weightPerServing.unit\r\n + ` (${this.overrideWeightDisplay(this.recipesCalculation.nutrientFacts.weightPerServing.value)})`\r\n ),\r\n });\r\n\r\n for (const key in this.recipesCalculation) {\r\n if (this.recipesCalculation[key] != null) {\r\n if (this.recipesCalculation[key].absoluteValue != null) {\r\n rows.push({\r\n name: key + ' ('+this.recipesCalculation[key].absoluteValue.unit +')',\r\n isOverriden: this.recipesCalculation[key].isOverridden,\r\n dailyValueRule: this.recipesCalculation[key].dailyValueRule,\r\n roundingRule: this.recipesCalculation[key].roundingRule,\r\n dailyValueRoundingRule: this.recipesCalculation[key].dailyValueRoundingRule,\r\n total: this.recipesCalculation[key].absoluteValue.value + this.recipesCalculation[key].absoluteValue.unit,\r\n totalPerServings : this.recipesCalculation[key].absoluteValuePerServing.value + this.recipesCalculation[key].absoluteValuePerServing.unit,\r\n });\r\n }\r\n }\r\n }\r\n\r\n return rows;\r\n }\r\n\r\n get translations() {\r\n return this.localizationState.translations;\r\n }\r\n\r\n // Load recipes\r\n loadRecipes() {\r\n RecipesRepository.listRestaurantRecipesAsLookups(this.filter.selectedCustomer)\r\n .then((response) => {\r\n this.recipes = response.data.result;\r\n this.filter.recipe.disabled = false;\r\n if (this.recipes.length > 0) {\r\n this.filter.recipe.selectedRecipe = this.recipes[0].id;\r\n this.filter.recipe.name = this.recipes[0].name;\r\n this.viewLabel();\r\n }\r\n })\r\n .catch((error) => {\r\n if (error.response)\r\n this.$snotify.error(error.response.errorMessages[0].userVisibleMessage);\r\n else this.$snotify.error(this.translations.get(\"network-error\"));\r\n });\r\n }\r\n\r\n // Load customers\r\n loadCustomers() {\r\n CustomersRepository.listRestaurantsAsLookups()\r\n .then((response) => {\r\n this.customers = response.data.result;\r\n if (this.customers.length) {\r\n this.filter.selectedCustomer = this.customers[0].id;\r\n this.loadRecipes();\r\n }\r\n })\r\n .catch((error) => {\r\n if (error.response)\r\n this.$snotify.error(error.response.errorMessages[0].userVisibleMessage);\r\n else this.$snotify.error(this.translations.get(\"network-error\"));\r\n });\r\n }\r\n\r\n // Load recipe calculations\r\n viewLabel() {\r\n const model = {\r\n recipeId: this.filter.recipe.selectedRecipe,\r\n country: this.filter.selectedCountry,\r\n };\r\n\r\n // @ts-ignore\r\n this.$snotify.async(\r\n this.translations.get(\"calculations_view_label_loading\"),\r\n () =>\r\n new Promise((success) => {\r\n CalculationsRepository.getRecipeCalculationBreakdown(model)\r\n .then((response) => {\r\n this.filter.isChosen = true;\r\n this.recipesCalculation = response.data.result;\r\n if (response.data.result.nutrientFacts) {\r\n this.nutrientFacts = response.data.result.nutrientFacts;\r\n }\r\n\r\n success({\r\n body: this.translations.get(\"calculations_view_label_success\"),\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.response)\r\n this.$snotify.error(error.response.errorMessages[0].userVisibleMessage);\r\n else {\r\n this.$snotify.error(this.translations.get(\"network-error\"));\r\n }\r\n });\r\n }),\r\n {\r\n timeout: 2500,\r\n closeOnClick: true,\r\n }\r\n );\r\n }\r\n\r\n getAdditionalLabelInformation(key: LabelTypeMetadata): any | null {\r\n if (key in this.recipesCalculation.additionalLabelInformation) {\r\n return this.recipesCalculation.additionalLabelInformation[key];\r\n }\r\n\r\n return null;\r\n }\r\n\r\n getHighInMetadata() {\r\n const additionalLabelInformation = this.getAdditionalLabelInformation(LabelTypeMetadata.FrontOfPack);\r\n\r\n if (additionalLabelInformation) {\r\n return additionalLabelInformation.highInMetadata;\r\n }\r\n\r\n return 0;\r\n }\r\n\r\n selectRecipe(id: any) {\r\n this.filter.recipe.selectedRecipe = id;\r\n const recipe = this.recipes.find((x) => x.id == id);\r\n this.filter.recipe.name = recipe.name;\r\n this.filter.isChosen = false;\r\n this.viewLabel();\r\n }\r\n selectCustomer(id: any) {\r\n this.filter.selectedCustomer = id;\r\n this.filter.recipe.disabled = false;\r\n this.filter.isChosen = false;\r\n this.loadRecipes();\r\n }\r\n selectCountry(id: any) {\r\n this.filter.selectedCountry = id;\r\n this.filter.isChosen = false;\r\n this.viewLabel();\r\n }\r\n\r\n created() {\r\n this.$store.dispatch(TRANSLATIONS_FETCH, {\r\n category: \"pages\",\r\n collections: [\"common\", \"calculations\", \"ingredients\"],\r\n });\r\n document.title = \"Calculations | MenuSano\";\r\n this.loadCustomers();\r\n }\r\n}\r\nexport default Packages;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calculations.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calculations.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Calculations.vue?vue&type=template&id=3b4d6651&scoped=true\"\nimport script from \"./Calculations.vue?vue&type=script&lang=ts\"\nexport * from \"./Calculations.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Calculations.vue?vue&type=style&index=0&id=3b4d6651&prod&scoped=true&lang=css\"\nimport style1 from \"./Calculations.vue?vue&type=style&index=1&id=3b4d6651&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3b4d6651\",\n null\n \n)\n\nexport default component.exports","import {LabelTypeMetadata} from \"../NutritionLabels/LabelTypeMetadata\";\r\nimport {NutrientType} from \"../Ingredient/NutrientType\";\r\nimport {NutrientAnalysis} from \"@/models/Nutrient/NutrientAnalysis\";\r\nimport {AdditionalLabelInformation} from \"@/models/NutritionLabels/AdditionalLabelInformation\";\r\nimport {round} from \"@/utils/Helpers\";\r\nimport {RecipeServingType} from \"@/models/Recipes/RecipeServingType\";\r\n\r\nexport class Nutritions {\r\n unadjustedAddedSugarPerServing: number = 0;\r\n\r\n totalNutrientsPerServing: (NutrientAnalysis & { nutrientName: string })[] = [];\r\n servingUnitOfMeasurement: string = 'g';\r\n\r\n weight: number = 0;\r\n weightPerServing: number = 0;\r\n roundedWeightPerServing: number = 0;\r\n rawWeight: number = 0;\r\n rawWeightPerServing: number = 0;\r\n\r\n volume: number | null;\r\n rawVolume: number | null;\r\n volumePerServing: number | null;\r\n rawVolumePerServing: number | null;\r\n\r\n quantityPerServingInUnitOfMeasurement: {\r\n item1: number; // quantity\r\n item2: string; // unit of measurement\r\n } | null;\r\n\r\n displayServingQuantityAndMeasure: {\r\n item1: number; // quantity\r\n item2: string; // unit of measurement\r\n } | null;\r\n servingQuantityInUnitOfMeasurementOverride: number;\r\n servingUnitOfMeasurementOverride: string;\r\n labelType : LabelTypeMetadata | LabelTypeMetadata.BackOfPack;\r\n\r\n additionalLabelInformation: AdditionalLabelInformation;\r\n moistureYieldFactor: number;\r\n ingredientScaleMultiplier: number;\r\n servings: number;\r\n moistureInRecipePercent: number;\r\n\r\n constructor(\r\n totalNutrientsPerServing: (NutrientAnalysis & { nutrientName: string })[],\r\n servingUnitOfMeasurement: string,\r\n weight: number,\r\n weightPerServing: number,\r\n roundedWeightPerServing: number,\r\n rawWeight: number,\r\n rawWeightPerServing: number,\r\n volume: number | null,\r\n rawVolume: number | null,\r\n volumePerServing: number | null,\r\n rawVolumePerServing: number | null,\r\n quantityPerServingInUnitOfMeasurement: {\r\n item1: number; // quantity\r\n item2: string; // unit of measurement\r\n } = { item1: 0, item2: 'g' },\r\n displayServingQuantityAndMeasure: {\r\n item1: number;\r\n item2: string;\r\n } = { item1: 0, item2: 'g' },\r\n servingQuantityInUnitOfMeasurementOverride: number = null,\r\n servingUnitOfMeasurementOverride: string = null,\r\n labelType: LabelTypeMetadata | LabelTypeMetadata.BackOfPack = LabelTypeMetadata.BackOfPack,\r\n additionalLabelInformation: AdditionalLabelInformation = {},\r\n moistureYieldFactor: number = 1,\r\n ingredientScaleMultiplier: number = 1,\r\n servings: number = 1,\r\n moistureInRecipePercent: number = 0,\r\n ) {\r\n this.totalNutrientsPerServing = totalNutrientsPerServing;\r\n this.servingUnitOfMeasurement = servingUnitOfMeasurement;\r\n this.weight = weight;\r\n this.weightPerServing = weightPerServing;\r\n this.roundedWeightPerServing = roundedWeightPerServing;\r\n this.rawWeight = rawWeight;\r\n this.rawWeightPerServing = rawWeightPerServing;\r\n this.volume = volume;\r\n this.rawVolume = rawVolume;\r\n this.volumePerServing = volumePerServing;\r\n this.rawVolumePerServing = rawVolumePerServing;\r\n this.quantityPerServingInUnitOfMeasurement = quantityPerServingInUnitOfMeasurement;\r\n this.displayServingQuantityAndMeasure = displayServingQuantityAndMeasure;\r\n this.servingQuantityInUnitOfMeasurementOverride = servingQuantityInUnitOfMeasurementOverride;\r\n this.servingUnitOfMeasurementOverride = servingUnitOfMeasurementOverride;\r\n this.labelType = labelType;\r\n this.additionalLabelInformation = additionalLabelInformation;\r\n this.moistureYieldFactor = moistureYieldFactor;\r\n this.ingredientScaleMultiplier = ingredientScaleMultiplier;\r\n this.servings = servings;\r\n this.moistureInRecipePercent = moistureInRecipePercent;\r\n }\r\n\r\n getNutrientInfo(...nutrientNames: NutrientType[]): NutrientAnalysis | null {\r\n const nameKey = nutrientNames.map((x) => NutrientType[x]).join('');\r\n\r\n // Find by name\r\n return this.totalNutrientsPerServing.find(\r\n (nutrient) => nutrient.nutrientName === nameKey\r\n ) || null;\r\n }\r\n\r\n getRoundedValue(...nutrientNames: NutrientType[]): number {\r\n const nutrientInfo = this.getNutrientInfo(...nutrientNames);\r\n return nutrientInfo ? nutrientInfo.roundedValue : 0;\r\n }\r\n\r\n getRoundedDailyValue(...nutrientNames: NutrientType[]): number {\r\n const nutrientInfo = this.getNutrientInfo(...nutrientNames);\r\n return nutrientInfo ? nutrientInfo.roundedDailyValue : 0;\r\n }\r\n\r\n getExactValue(...nutrientNames: NutrientType[]): number {\r\n const nutrientInfo = this.getNutrientInfo(...nutrientNames);\r\n return nutrientInfo ? nutrientInfo.exactValue : 0;\r\n }\r\n\r\n getExactDailyValue(...nutrientNames: NutrientType[]): number {\r\n const nutrientInfo = this.getNutrientInfo(...nutrientNames);\r\n return nutrientInfo ? nutrientInfo.exactDailyValue : 0;\r\n }\r\n\r\n factorMoistureLossToRawQuantity(rawQuantity: number, invert: boolean = true) {\r\n let moistureYieldFactor = this.moistureYieldFactor;\r\n\r\n if (invert) {\r\n moistureYieldFactor = 1 - moistureYieldFactor;\r\n }\r\n\r\n return round(rawQuantity * moistureYieldFactor, 2);\r\n }\r\n\r\n getRawRecipeWeight(recipeServingType: RecipeServingType) {\r\n const invert = recipeServingType === RecipeServingType.Servings || this.moistureYieldFactor === 0;\r\n\r\n if (\r\n this.servingUnitOfMeasurement == 'ml'\r\n || this.servingUnitOfMeasurement == 'fl. oz'\r\n ) {\r\n return this.factorMoistureLossToRawQuantity(this.rawVolume, invert);\r\n }\r\n\r\n return this.factorMoistureLossToRawQuantity(this.rawWeight, invert);\r\n }\r\n}\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-popover',{attrs:{\"placement\":_vm.tooltipPlacement,\"trigger\":\"hover\",\"offset\":\"16\"}},[_c('i',{staticClass:\"tooltip-target\",class:_vm.iClass,style:(_vm.iStyle),attrs:{\"alt\":\"\"}}),_c('template',{slot:\"popover\"},[_c('p',[_vm._v(_vm._s(_vm.tooltipContent))])])],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Vue, Component, Prop } from \"vue-property-decorator\";\r\nimport { VPopover } from \"@/components/v-tooltip\";\r\n\r\n@Component({\r\n components: {\r\n VPopover,\r\n }\r\n})\r\nexport default class vIconWithTooltip extends Vue {\r\n @Prop() iStyle!: string;\r\n @Prop() iClass!: string;\r\n @Prop() tooltipContent!: string;\r\n @Prop() tooltipPlacement!: string;\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vIconWithTooltip.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vIconWithTooltip.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vIconWithTooltip.vue?vue&type=template&id=4fc90c83\"\nimport script from \"./vIconWithTooltip.vue?vue&type=script&lang=ts\"\nexport * from \"./vIconWithTooltip.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { Nutritions } from \"@/models/Recipes/Nutritions\";\r\nimport {NutrientType} from \"@/models/Ingredient/NutrientType\";\r\nimport store from \"@/store/store\";\r\nimport { NA } from \"./Defaults\";\r\n\r\nexport function debounce(callback: any, time = 250, key: string) {\r\n let intervalId: any = localStorage.getItem(key);\r\n\r\n if (intervalId) {\r\n clearTimeout(intervalId);\r\n }\r\n\r\n intervalId = setTimeout(() => {\r\n callback();\r\n }, time);\r\n\r\n localStorage.setItem(key, intervalId);\r\n}\r\n\r\nexport function getBoldString(mainString: string, subString: string) {\r\n if(subString == \"\"){\r\n return `<b>${mainString}</b>`;\r\n }\r\n else{\r\n const index = mainString.toLowerCase().indexOf(subString.toLowerCase());\r\n if (index !== -1) {\r\n const startIndex = mainString.substring(0, index);\r\n const endIndex = mainString.substring(index + subString.length);\r\n const highlightedString = startIndex + \"<b>\" + mainString.substring(index, index + subString.length) + \"</b>\" + endIndex;\r\n return highlightedString;\r\n }\r\n return mainString;\r\n }\r\n}\r\n\r\n\r\nexport function round(number: number, decimalPlaces: number) {\r\n return Math.round(number * Math.pow(10, decimalPlaces)) / Math.pow(10, decimalPlaces);\r\n}\r\n\r\nexport function shorten(text: string) {\r\n\r\n let newText = text.replace(',', '');\r\n newText = newText.replace('.', '');\r\n\r\n let parts = newText.split(' ');\r\n parts = parts.map((part) => {\r\n if (part.length > 3)\r\n return part.substr(0, 3) + '.';\r\n else {\r\n return part;\r\n }\r\n });\r\n\r\n return parts.join(' ');\r\n}\r\n\r\nexport function toCamelCase(text: string) {\r\n\r\n let parts = text.split(' ');\r\n for (let i = 0; i < parts.length; i++) {\r\n\r\n parts[i] = parts[i].charAt(0).toUpperCase() + parts[i].slice(1);\r\n }\r\n\r\n let cammeled = parts.join('');\r\n cammeled = cammeled.replace(',', '');\r\n\r\n return cammeled;\r\n}\r\n\r\nexport function desanitizeString(html: string) {\r\n let txt = document.createElement(\"textarea\");\r\n txt.innerHTML = html;\r\n return txt.value;\r\n}\r\n\r\nexport function getErrorMessage(error: any, translations: any) {\r\n return error.response &&\r\n error.response.data.errorMessages[0].userVisibleMessage\r\n ? error.response.data.errorMessages[0].userVisibleMessage\r\n : translations.get(\"toastr_network_error\");\r\n}\r\n\r\n// Following functions are used to simplify the object nutritionAnalysis returned from backend\r\n\r\nexport function mapNutritions(nutritions: any): Nutritions {\r\n return new Nutritions(\r\n nutritions.totalNutrientsPerServing.map((nutrient: any) => ({\r\n nutrientName: nutrient.nutrientName,\r\n exactValue: nutrient.exactValue,\r\n exactDailyValue: nutrient.exactDailyValue,\r\n roundedValue: nutrient.roundedValue,\r\n roundedDailyValue: nutrient.roundedDailyValue,\r\n nutrientType: nutrient.nutrientType,\r\n originalNutrientAnalysis: nutrient.originalNutrientAnalysis,\r\n })),\r\n nutritions.servingUnitOfMeasurement || 'g',\r\n nutritions.weight,\r\n nutritions.weightPerServing,\r\n nutritions.roundedWeightPerServing,\r\n nutritions.rawWeight,\r\n nutritions.rawWeightPerServing,\r\n nutritions.volume,\r\n nutritions.rawVolume,\r\n nutritions.volumePerServing,\r\n nutritions.rawVolumePerServing,\r\n {\r\n item1: nutritions.quantityPerServingInUnitOfMeasurement.item1,\r\n item2: nutritions.quantityPerServingInUnitOfMeasurement.item2\r\n },\r\n {\r\n item1: nutritions.displayServingQuantityAndMeasure.item1,\r\n item2: nutritions.displayServingQuantityAndMeasure.item2\r\n },\r\n nutritions.servingQuantityInUnitOfMeasurementOverride,\r\n nutritions.servingUnitOfMeasurementOverride,\r\n nutritions.labelType,\r\n nutritions.additionalLabelInformation,\r\n nutritions.moistureYieldFactor,\r\n nutritions.ingredientScaleMultiplier,\r\n nutritions.servings,\r\n nutritions.moistureInRecipePercent,\r\n );\r\n}\r\n\r\nexport function groupBy<K, V>(items: K[], key: (item: K) => V): Map<V, K[]> {\r\n return items.reduce((acc, item) => {\r\n const group = key(item);\r\n const values = acc.get(group) || [];\r\n values.push(item);\r\n acc.set(group, values);\r\n return acc;\r\n }, new Map<V, K[]>());\r\n}\r\n\r\n\r\ninterface GenerableObject {\r\n [key: string]: any\r\n}\r\n\r\ninterface vTableMetadata {\r\n id: string | number;\r\n link?: string;\r\n}\r\n\r\nexport function buildVTableDataStruct(data: any[], meta: vTableMetadata & GenerableObject) {\r\n let rv: GenerableObject = {};\r\n\r\n data.forEach((item: any, index: number) => {\r\n // Index must be offset by 1 for vtable to correctly input the data\r\n rv[`e${index + 1}`] = item;\r\n });\r\n\r\n rv['meta'] = meta;\r\n return rv;\r\n}\r\n\r\n/**\r\n * Masks nutrient data if the user is on a trial\r\n * @param value The value to display or be masked\r\n * @param shouldRound whether or not the value should be rounded to 2 decimal places\r\n */\r\nexport function trialMaskedNutrientData(value: number, shouldRound: boolean = true) {\r\n if (store.getters.getUserDetails.isTrial) {\r\n return \"--\";\r\n }\r\n\r\n return shouldRound ? round(value, 2) : value;\r\n}\r\n\r\nexport function tableMapper(item: { id: number, name: string, nutritionAnalysis: Nutritions }, useLink: boolean = false) {\r\n let recipeWeight = null;\r\n if (\r\n item.nutritionAnalysis.servingUnitOfMeasurement ==\"ml\"\r\n || item.nutritionAnalysis.servingUnitOfMeasurement == \"fl. oz\"\r\n ) {\r\n recipeWeight = item.nutritionAnalysis.volume;\r\n }\r\n\r\n else {\r\n recipeWeight = item.nutritionAnalysis.weight;\r\n }\r\n\r\n const metaObj: vTableMetadata = {\r\n id: item.id\r\n };\r\n\r\n if (useLink) {\r\n metaObj.link = item.name;\r\n }\r\n\r\n return buildVTableDataStruct([\r\n trialMaskedNutrientData(round(item.nutritionAnalysis.getRoundedValue(NutrientType.Energy), 2)),\r\n round(item.nutritionAnalysis.getRoundedValue(NutrientType.Fat) * 9, 2),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Fat),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.SaturatedFattyAcids),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.TransFattyAcids),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Cholesterol),\r\n round(item.nutritionAnalysis.getRoundedValue(NutrientType.Sodium), 2),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Carbohydrate),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Fibre),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Sugars),\r\n round(item.nutritionAnalysis.getRoundedValue(NutrientType.Protein), 2),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.VitaminD),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.VitaminC),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Potassium),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Calcium),\r\n round(item.nutritionAnalysis.getRoundedValue(NutrientType.Iron), 2),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.MonoUnsaturatedFats),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.PolyUnsaturatedFats),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Omega3),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Omega6),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Caffeine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Ash),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Moisture),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Biotin),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Choline),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Folate),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Niacin),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.PantothenicAcid),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Riboflavin),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Thiamine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.BetaCarotene),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Retinol),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.VitaminB6),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.VitaminB12),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.VitaminE),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.VitaminK),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Chromium),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Chloride),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Copper),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Iodine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Magnesium),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Manganese),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Molybdenum),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Phosphorus),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Selenium),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Zinc),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LAlanine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LArginine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LAsparagine),\r\n NA,\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LCysteine),\r\n NA,\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LGlutamine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Glycine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LHistidine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LIsoleucine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LLeucine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LLysine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LMethionine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LPhenylalanine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LProline),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LSerine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LThreonine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LTyrosine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.LValine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Tryptophan),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.GreenTeaExtract),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Taurine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Phosphatidylserine),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.FolicAcid),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Boron),\r\n item.nutritionAnalysis.getRoundedValue(NutrientType.Fluoride),\r\n recipeWeight == null ? 0 : round(recipeWeight, 2)\r\n ],\r\n metaObj\r\n );\r\n}\r\n\r\nexport function downloadURI(uri: string, name: string) {\r\n const link = document.createElement(\"a\");\r\n link.download = name;\r\n link.href = uri;\r\n link.click();\r\n}\r\n\r\nexport function toBase64(file: File): Promise<string> {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => resolve(reader.result as string);\r\n reader.onerror = reject;\r\n });\r\n}\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vGenericTable.vue?vue&type=style&index=0&id=77618d8c&prod&scoped=true&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vAminoAcidScoreReport.vue?vue&type=style&index=1&id=545151b9&prod&scoped=true&lang=css\"","import Repository from './Repository';\r\nimport ListRequest from '@/models/ListRequest';\r\nimport CustomerNew from '@/models/Customer/CustomerNew';\r\nimport SignupDto from '@/models/Restaurants/SignupDto';\r\nimport CustomerEdit from '@/models/Customer/CustomerEdit';\r\nimport CustomerActive from '@/models/Customer/CustomerActive';\r\nimport UpdateRestaurantProfile from '@/models/Customer/UpdateRestaurantProfile';\r\nimport { CreateRestaurantEmployee } from '@/models/Customer/CreateRestaurantEmployee';\r\nimport { UpdateRestaurantEmployee } from '@/models/Customer/UpdateRestaurantEmployee';\r\nimport UpdateRestaurantAccountProfile from '@/models/User/UpdateRestaurantAccountProfile';\r\nimport UpdateDatabase from '@/models/User/UpdateDatabase';\r\nimport { AxiosResponse } from 'axios';\r\nimport { VoidResult } from './ResultTypes/VoidResult';\r\n\r\n\r\nconst resource = '/restaurants';\r\n\r\nexport default {\r\n signup(signupDto: SignupDto) {\r\n return Repository.post(`${resource}/signup`, signupDto, { withCredentials: true });\r\n },\r\n fetchCustomersList(listRequest: ListRequest) {\r\n return Repository.post(`${resource}/listrestaurants`, listRequest, { withCredentials: true });\r\n },\r\n newCustomer(newCustomer: CustomerNew) {\r\n return Repository.post(`${resource}/createRestaurant`, newCustomer, { withCredentials: true });\r\n },\r\n editCustomer(editCustomer: CustomerEdit) {\r\n return Repository.post(`${resource}/updateRestaurant`, editCustomer, { withCredentials: true });\r\n },\r\n activeCustomer(customerActive: CustomerActive) {\r\n return Repository.post(`${resource}/updaterestaurantstatus`, customerActive, { withCredentials: true });\r\n },\r\n getRestaurantProfile() {\r\n return Repository.get(`${resource}/getrestaurantprofile`, { withCredentials: true });\r\n },\r\n updateRestaurantProfile(restaurantProfile: UpdateRestaurantProfile) {\r\n return Repository.post(`${resource}/updaterestaurantprofile`, restaurantProfile, { withCredentials: true });\r\n },\r\n listRestaurantEmployees(listRequest: ListRequest, restaurantId: number) {\r\n return Repository.post(`${resource}/ListRestaurantEmployees`, { queryOptions: listRequest.queryOptions, restaurantId }, { withCredentials: true });\r\n },\r\n createRestaurantEmployee(createRestaurantEmployee: CreateRestaurantEmployee) {\r\n return Repository.post(`${resource}/CreateRestaurantEmployee`, createRestaurantEmployee, { withCredentials: true });\r\n },\r\n updateRestaurantEmployee(updateRestaurantEmployee: UpdateRestaurantEmployee) {\r\n return Repository.post(`${resource}/UpdateRestaurantEmployee`, updateRestaurantEmployee, { withCredentials: true });\r\n },\r\n deleteRestaurant(id: number) {\r\n return Repository.post(`${resource}/deleteRestaurant`, { restaurantId: id }, { withCredentials: true });\r\n },\r\n deleteRestaurantEmployee(id: number) {\r\n return Repository.post(`${resource}/deleteRestaurantEmployee`, { userId: id }, { withCredentials: true });\r\n },\r\n enableRestaurantEmployee(id: number) {\r\n return Repository.post<number, AxiosResponse<VoidResult>>(\r\n `${resource}/EnableRestaurantEmployee`,\r\n { userId: id },\r\n { withCredentials: true }\r\n );\r\n },\r\n updateRestaurantAccountProfile(restaurantProfile: UpdateRestaurantAccountProfile) {\r\n return Repository.post(`${resource}/updaterestaurantprofile`, restaurantProfile, { withCredentials: true });\r\n },\r\n updateDatabase(id: UpdateDatabase) {\r\n return Repository.post(`${resource}/UpdateRestaurantDefaultNutrientSource`, id, { withCredentials: true });\r\n },\r\n updateRestaurantArchiveStatus(id: number, isArchived: boolean) {\r\n return Repository.post(`${resource}/UpdateRestaurantArchiveStatus`, { restaurantId: id, isArchived: isArchived }, { withCredentials: true });\r\n },\r\n listRestaurantsAsLookups() {\r\n return Repository.get(`${resource}/ListRestaurantsAsLookups`, { withCredentials: true });\r\n },\r\n};\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.isLoading)?_c('div',{staticStyle:{\"display\":\"flex\",\"place-content\":\"center\"}},[_c('v-pre-loader')],1):_c('div',[_c('table',{staticClass:\"table table-generic\"},[_vm._m(0),_c('tbody',[_c('tr',{class:_vm.reportData.histidineScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(_vm.translations.get(\"ingr_l-histidine\")))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.histidineRatio, 2)} ÷ ${_vm.reportData.idealRatios.histidine}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.histidineScore, 2))+\"%\")])]),_c('tr',{class:_vm.reportData.isoleucineScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(_vm.translations.get(\"ingr_l-isoleucine\")))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.isoleucineRatio, 2)} ÷ ${_vm.reportData.idealRatios.isoleucine}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.isoleucineScore, 2))+\"%\")])]),_c('tr',{class:_vm.reportData.leucineScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(_vm.translations.get(\"ingr_l-leucine\")))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.leucineRatio, 2)} ÷ ${_vm.reportData.idealRatios.leucine}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.leucineScore, 2))+\"%\")])]),_c('tr',{class:_vm.reportData.lysineScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(_vm.translations.get(\"ingr_l-lysine\")))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.lysineRatio, 2)} ÷ ${_vm.reportData.idealRatios.lysine}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.lysineScore, 2))+\"%\")])]),_c('tr',{class:_vm.reportData.methionineAndCysteineScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(`${_vm.translations.get(\"ingr_l-methionine\")} + ${_vm.translations.get(\"ingr_l-cysteine\")}`))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.methionineAndCysteineRatio, 2)} ÷ ${_vm.reportData.idealRatios.methionineAndCysteine}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.methionineAndCysteineScore, 2))+\"%\")])]),_c('tr',{class:_vm.reportData.phenylalanineAndTyrosineScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(`${_vm.translations.get(\"ingr_l-phenylalanine\")} + ${_vm.translations.get(\"ingr_l-tyrosine\")}`))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.phenylalanineAndTyrosineRatio, 2)} ÷ ${_vm.reportData.idealRatios.phenylalanineAndTyrosine}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.phenylalanineAndTyrosineScore, 2))+\"%\")])]),_c('tr',{class:_vm.reportData.threonineScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(_vm.translations.get(\"ingr_l-threonine\")))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.threonineRatio, 2)} ÷ ${_vm.reportData.idealRatios.threonine}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.threonineScore, 2))+\"%\")])]),_c('tr',{class:_vm.reportData.tryptophanScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(_vm.translations.get(\"ingr_tryptophan\")))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.tryptophanRatio, 2)} ÷ ${_vm.reportData.idealRatios.tryptophan}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.tryptophanScore, 2))+\"%\")])]),_c('tr',{class:_vm.reportData.valineScore === _vm.reportData.limitingScore ? 'limiting-amino-acid' : false},[_c('td',[_vm._v(_vm._s(_vm.translations.get(\"ingr_l-valine\")))]),_c('td',[_vm._v(_vm._s(`${_vm.round(_vm.reportData.valineRatio, 2)} ÷ ${_vm.reportData.idealRatios.valine}`))]),_c('td',[_vm._v(_vm._s(_vm.round(_vm.reportData.valineScore, 2))+\"%\")])])])])])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Amino Acid\")]),_c('th',[_vm._v(\"Actual Ratio ÷ Ideal Ratio\")]),_c('th',[_vm._v(\"Score\")])])])\n}]\n\nexport { render, staticRenderFns }","\r\nimport {Vue, Component, Prop } from 'vue-property-decorator';\r\nimport VGenericTable from \"@/components/bootstrap/vGenericTable.vue\";\r\nimport {mapState} from \"vuex\";\r\nimport {LocalizationState} from \"@/store/modules/LocalizationModule\";\r\nimport {AminoAcidScoreDto} from \"@/models/Recipes/AminoAcidScoreDto\";\r\nimport RecipesRepository from \"@/utils/API/RecipesRepository\";\r\nimport VPreLoader from \"@/components/vPreLoader.vue\";\r\n\r\nimport { round } from \"@/utils/Helpers\";\r\n\r\n@Component({\r\n components: {VPreLoader, VGenericTable },\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule\r\n }),\r\n },\r\n methods: {\r\n round\r\n }\r\n})\r\nexport default class vAminoAcidScoreReport extends Vue {\r\n @Prop() recipeId!: number;\r\n localizationState: LocalizationState;\r\n\r\n isLoading: boolean = false;\r\n reportData: AminoAcidScoreDto;\r\n\r\n getAminoAcidScoreReport() {\r\n this.isLoading = true;\r\n RecipesRepository.getAminoAcidScore(this.recipeId)\r\n .then((response) => {\r\n this.isLoading = false;\r\n this.reportData = response.data.result;\r\n })\r\n .catch((reason) => { console.error(reason); });\r\n }\r\n\r\n get translations() {\r\n return this.localizationState.translations;\r\n }\r\n\r\n created() {\r\n this.getAminoAcidScoreReport();\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vAminoAcidScoreReport.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vAminoAcidScoreReport.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vAminoAcidScoreReport.vue?vue&type=template&id=545151b9&scoped=true\"\nimport script from \"./vAminoAcidScoreReport.vue?vue&type=script&lang=ts\"\nexport * from \"./vAminoAcidScoreReport.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vAminoAcidScoreReport.vue?vue&type=style&index=0&id=545151b9&prod&lang=css\"\nimport style1 from \"./vAminoAcidScoreReport.vue?vue&type=style&index=1&id=545151b9&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"545151b9\",\n null\n \n)\n\nexport default component.exports","export enum NutrientType {\r\n Energy = 0,\r\n Fat = 1,\r\n SaturatedFattyAcids = 2,\r\n TransFattyAcids = 3,\r\n Cholesterol = 4,\r\n Sodium = 5,\r\n Carbohydrate = 6,\r\n Fibre = 7,\r\n Sugars = 8,\r\n Protein = 9,\r\n VitaminD = 10,\r\n Potassium = 11,\r\n Calcium = 12,\r\n Iron = 13,\r\n AddedSugars = 14,\r\n SugarAlcohols = 15,\r\n VitaminC = 16,\r\n VitaminA = 18,\r\n Erythritol = 30,\r\n Isomalt = 31,\r\n Lactitol= 32,\r\n Mannitol = 33,\r\n Sorbitol = 34,\r\n Xylitol = 35,\r\n Maltitol = 36,\r\n UnspecifiedSugarAlcohol = 37,\r\n MonoUnsaturatedFats = 38,\r\n PolyUnsaturatedFats = 39,\r\n Omega3 = 40,\r\n Omega6 = 41,\r\n Biotin = 42,\r\n Choline = 43,\r\n Folate = 44,\r\n FolateDfe = 45,\r\n Niacin = 46,\r\n NiacinEq = 47,\r\n NiacinVitb3Eq = 48,\r\n PantothenicAcid = 49,\r\n Riboflavin = 50,\r\n Thiamine = 51,\r\n BetaCarotene = 52,\r\n Retinol = 53,\r\n VitaminB12 = 54, // (Vitamin D, another form)\r\n VitaminE = 55,\r\n VitaminEToco = 56,\r\n VitaminETocoEq = 57,\r\n VitaminK = 58,\r\n Chromium = 59,\r\n Chloride = 60,\r\n Copper = 61,\r\n Iodine = 62,\r\n Magnesium = 63,\r\n Manganese = 64,\r\n Molybdenum = 65,\r\n Phosphorus = 66,\r\n Selenium = 67,\r\n Zinc = 68,\r\n LAlanine = 69,\r\n LArginine = 70,\r\n LAsparagine = 71,\r\n LAsparticAcid = 72,\r\n LCysteine = 73,\r\n LGlutamicAcid = 74,\r\n LGlutamine = 75,\r\n Glycine = 76,\r\n LHistidine = 77,\r\n LIsoleucine = 78,\r\n LLeucine = 79,\r\n LLysine = 80,\r\n LMethionine = 81,\r\n LPhenylalanine = 82,\r\n LProline = 83,\r\n LSerine = 84,\r\n LThreonine = 85,\r\n LTyrosine = 86,\r\n LValine = 87,\r\n Caffeine = 88,\r\n GreenTeaExtract = 89,\r\n Taurine = 90,\r\n Ash = 91,\r\n Moisture = 92,\r\n Phosphatidylserine = 93,\r\n VitaminB6 = 94,\r\n FolicAcid = 95,\r\n Boron = 96,\r\n Fluoride = 97,\r\n Tryptophan = 98,\r\n Other = 99,\r\n SaturatedAndTrans = 100\r\n}\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vRecipeBreakdownTable.vue?vue&type=style&index=0&id=517bcda2&prod&scoped=true&lang=css\"","export enum LabelTypeMetadata {\r\n BackOfPack = 1,\r\n FrontOfPack = 2,\r\n SupplementFact = 4,\r\n}","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('select',{ref:\"select2\"},[_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Vue, Component, Prop, Watch } from \"vue-property-decorator\";\r\n\r\n@Component\r\nexport default class vSelect2 extends Vue {\r\n @Prop() value: any;\r\n @Prop() options: any;\r\n\r\n element: any;\r\n\r\n @Watch(\"value\")\r\n onValueChanged(val: any) {\r\n (<any>$(this.element)).val(val).trigger(\"change\");\r\n }\r\n\r\n @Watch(\"options\")\r\n onOptionsChanged(val: any) {\r\n (<any>$(this.element)).empty().select2({ data: val });\r\n }\r\n\r\n mounted() {\r\n this.element = this.$refs[\"select2\"];\r\n\r\n (<any>$(this.element))\r\n .select2(this.options ? { data: this.options } : {})\r\n .val(this.value)\r\n .trigger(\"change\")\r\n .on(\"select2:select\", (eventData: any) => {\r\n let id = parseInt(eventData.target.value);\r\n this.$emit(\"input\", id);\r\n });\r\n }\r\n\r\n destroyed() {\r\n (<any>$(this.element)).off().select2(\"destroy\");\r\n }\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vSelect2.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vSelect2.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vSelect2.vue?vue&type=template&id=1127e776\"\nimport script from \"./vSelect2.vue?vue&type=script&lang=ts\"\nexport * from \"./vSelect2.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vAminoAcidScoreReport.vue?vue&type=style&index=0&id=545151b9&prod&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('table',{staticClass:\"table table-responsive\"},[_c('thead',{class:`${_vm.theadClass} text-uppercase`},[_c('tr',[_vm._t(\"table-headers\")],2)]),_c('tbody',{class:`${_vm.tbodyClass} text-secondary`},[_vm._t(\"table-rows\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport {Vue, Component, Prop} from 'vue-property-decorator';\r\n\r\n@Component({})\r\nexport default class vGenericTable extends Vue {\r\n @Prop({ default: \"\" }) theadClass?: string;\r\n @Prop({ default: \"\" }) tbodyClass?: string;\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vGenericTable.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vGenericTable.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vGenericTable.vue?vue&type=template&id=77618d8c&scoped=true\"\nimport script from \"./vGenericTable.vue?vue&type=script&lang=ts\"\nexport * from \"./vGenericTable.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vGenericTable.vue?vue&type=style&index=0&id=77618d8c&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"77618d8c\",\n null\n \n)\n\nexport default component.exports","import Repository from './Repository';\r\nimport { CreateRecipeCategory } from '@/models/Recipes/CreateRecipeCategory';\r\nimport { DeleteRecipeCategory } from '@/models/Recipes/DeleteRecipeCategory';\r\nimport ListRequest from '@/models/ListRequest';\r\nimport { CreateRecipe } from '@/models/Recipes/CreateRecipe';\r\nimport { UpdateRecipe } from '@/models/Recipes/UpdateRecipe';\r\nimport { SearchSubRecipes } from '@/models/Recipes/SearchSubRecipes';\r\nimport { SearchRecipes } from '@/models/Recipes/SearchRecipes';\r\nimport { RecipeCalculate } from '@/models/Recipes/RecipeCalculate';\r\nimport { Recipe } from '@/models/Recipes/Recipe';\r\nimport { RecipeCompositionMeasurement } from '@/models/Recipes/RecipeCompositionMeasurement';\r\nimport { ListResult } from './ResultTypes/ListResult';\r\nimport { MethodResult } from './ResultTypes/MethodResult';\r\nimport { AxiosResponse } from 'axios';\r\nimport {AminoAcidScoreDto} from \"@/models/Recipes/AminoAcidScoreDto\";\r\nimport {PrintRecipeDetails} from \"@/models/Recipes/PrintRecipeDetails\";\r\nimport { Dish } from '@/models/Dishes/Dish';\r\n\r\n\r\nexport const resource = '/recipe';\r\n\r\nexport default {\r\n createRecipeCategory(createRecipeCategory: CreateRecipeCategory) {\r\n return Repository.post(`${resource}/CreateRecipeCategory`, createRecipeCategory, { withCredentials: true });\r\n },\r\n listRecipeCategories() {\r\n return Repository.get(`${resource}/ListRecipeCategories`, { withCredentials: true });\r\n },\r\n deleteRecipeCategory(deleteRecipeCategory: DeleteRecipeCategory) {\r\n return Repository.post(`${resource}/DeleteRecipeCategory`, deleteRecipeCategory, { withCredentials: true });\r\n },\r\n listRecipes(listRequest: ListRequest) {\r\n return Repository.post(`${resource}/ListRecipes`, listRequest, { withCredentials: true });\r\n },\r\n listReducedRecipes(listRequest: ListRequest, isRecipe: Boolean = false) {\r\n return Repository.post(`${resource}/ListReducedRecipes`, { queryOptions: listRequest.queryOptions, isRecipe}, { withCredentials: true });\r\n },\r\n getRecipeDetails(id: number) {\r\n return Repository.post<{recipeId: number}, AxiosResponse<MethodResult<Recipe>>>(\r\n `${resource}/GetRecipeDetails`,\r\n { recipeId: id },\r\n { withCredentials: true }\r\n );\r\n },\r\n createRecipe(createRecipe: CreateRecipe) {\r\n return Repository.post(`${resource}/CreateRecipe`, createRecipe, { withCredentials: true });\r\n },\r\n deleteRecipe(id: number) {\r\n return Repository.post(`${resource}/DeleteRecipe`, { recipeId: id }, { withCredentials: true });\r\n },\r\n updateRecipe(updateRecipe: UpdateRecipe) {\r\n return Repository.post(`${resource}/UpdateRecipe`, updateRecipe, { withCredentials: true });\r\n },\r\n searchSubRecipes(searchSubRecipes: SearchSubRecipes) {\r\n return Repository.post(`${resource}/SearchSubRecipes`, searchSubRecipes, { withCredentials: true });\r\n },\r\n searchRecipes(searchRecipes: SearchRecipes) {\r\n return Repository.post(`${resource}/SearchRecipes`, searchRecipes, { withCredentials: true });\r\n },\r\n // deleteRecipes(recipeIds: number[]) {\r\n // return Repository.post(`${resource}/DeleteRecipes`, { recipeIds }, { withCredentials: true });\r\n // },\r\n renameCategory(updateCategory: any) {\r\n return Repository.post(`${resource}/RenameRecipeCategory`, updateCategory, { withCredentials: true });\r\n },\r\n moveRecipesToCategory(moveRecipesToCategory: any) {\r\n return Repository.post(`${resource}/MoveRecipesToRecipeCategory`, moveRecipesToCategory, { withCredentials: true });\r\n },\r\n filterRecipesNames(recipesSearchTerm: string) {\r\n return Repository.post(`${resource}/filterRecipesNames`, { recipeSearchTerm: recipesSearchTerm }, { withCredentials: true });\r\n },\r\n filterCombinedRecipeName(recipesSearchTerm: string){\r\n return Repository.post(`${resource}/filterCombinedRecipeNames`, { recipeSearchTerm: recipesSearchTerm }, { withCredentials: true });\r\n },\r\n calculate(recCalc: RecipeCalculate) {\r\n return Repository.post(`${resource}/CalculateRecipeNutritions`, recCalc, { withCredentials: true });\r\n },\r\n copyRecipe(data: any) {\r\n return Repository.post(`${resource}/CopyRecipe`, data, { withCredentials: true });\r\n },\r\n saveRecipeLabel(data: any) {\r\n return Repository.post(`${resource}/SaveRecipeLabel`, data, { withCredentials: true });\r\n },\r\n getRecipeLabel(data: any) {\r\n return Repository.post(`${resource}/GetRecipeLabel`, data, { withCredentials: true });\r\n },\r\n deleteRecipes(data: any) {\r\n return Repository.post(`${resource}/DeleteRecipes`, data, { withCredentials: true });\r\n },\r\n listRestaurantRecipesAsLookups(restaurantId: number) {\r\n return Repository.get(`${resource}/ListRestaurantRecipesAsLookups?restaurantId=${restaurantId}`, { withCredentials: true });\r\n },\r\n listCookingMethods() {\r\n return Repository.get(`${resource}/ListCookingMethods`, { withCredentials: true });\r\n },\r\n listFoodGroupClasses() {\r\n return Repository.get(`${resource}/ListFoodGroupClasses`, { withCredentials: true });\r\n },\r\n listFoodGroupSubClasses(data: any) {\r\n return Repository.post(`${resource}/ListFoodGroupSubClasses`, data, { withCredentials: true });\r\n },\r\n updateRecipeFoodClassifications(data: any) {\r\n return Repository.post(`${resource}/UpdateRecipeFoodClassifications`, data, { withCredentials: true });\r\n },\r\n updateRecipeServingSize(data: any) {\r\n return Repository.post(`${resource}/UpdateRecipeServingSize`, data, { withCredentials: true });\r\n },\r\n updateCaloriesCalculationMethod(data: any) {\r\n return Repository.post(`${resource}/UpdateCalculationMethods`, data, { withCredentials: true });\r\n },\r\n hasRecipeWithIngredientsFromSpecificDatabase(nutrientSource: any) {\r\n return Repository.post(`${resource}/HasRecipeWithIngredientsFromSpecificDatabase`, { nutrientSource: nutrientSource }, { withCredentials: true });\r\n },\r\n listRecipesThatUseIngredient(ingredientId: number) {\r\n return Repository.get(`${resource}/ListRecipesThatUseIngredient?IngredientId=${ingredientId}`, { withCredentials: true });\r\n },\r\n getRecipeCompositionMeasurements() {\r\n return Repository.get<ListResult<RecipeCompositionMeasurement>>(\r\n `${resource}/GetRecipeCompositionMeasurements`,\r\n { withCredentials: true }\r\n );\r\n },\r\n getAminoAcidScore(recipeId: number) {\r\n return Repository.get<MethodResult<AminoAcidScoreDto>>(\r\n `${resource}/GetAminoAcidScoreBreakdown?recipeId=${recipeId}`,\r\n { withCredentials: true }\r\n );\r\n },\r\n getPrintRecipeDetails(recipeId: number): Promise<AxiosResponse<PrintRecipeDetails>> {\r\n return Repository.get<PrintRecipeDetails>(\r\n `${resource}/PrintRecipeDetails?recipeId=${recipeId}`,\r\n { withCredentials: true }\r\n );\r\n },\r\n updateRecipeCountry(recipeId:number, countryId:number) {\r\n return Repository.post<{recipeId:number, countryId:number}, AxiosResponse<Recipe>>(\r\n `${resource}/UpdateRecipeCountry`,\r\n { recipeId: recipeId, countryId: countryId },\r\n { withCredentials: true }\r\n );\r\n },\r\n updateCombinedRecipeCountry(recipeId:number, countryId:number) {\r\n return Repository.post<{recipeId:number, countryId:number}, AxiosResponse<Dish>>(\r\n `${resource}/updateCombinedRecipeCountry`,\r\n { recipeId: recipeId, countryId: countryId },\r\n { withCredentials: true }\r\n );\r\n }\r\n\r\n};\r\n","module.exports = __webpack_public_path__ + \"img/calculation.f1223116.png\";","export enum RecipeServingType {\r\n Servings = 0,\r\n Weight = 1,\r\n}","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calculations.vue?vue&type=style&index=1&id=3b4d6651&prod&lang=css\"","import { RecipeBreakdown } from '@/models/Recipes/RecipeBreakdown';\r\nimport Repository from './Repository';\r\nimport { MethodResult } from './ResultTypes/MethodResult';\r\nimport { AxiosResponse } from 'axios';\r\nimport { SingleNutrientReportDto } from '@/models/Recipes/SingleNutrientReportDto';\r\nimport {ListResult} from \"@/utils/API/ResultTypes/ListResult\";\r\nimport { ProteinQualityRowDto } from '@/models/Recipes/ProteinQualityRowDto';\r\n\r\n\r\nconst resource = '/recipe/reports';\r\n\r\nexport default {\r\n getRecipeCalculationBreakdown(model: any) {\r\n return Repository.post<{ country: number, recipeId: number }, AxiosResponse<MethodResult<RecipeBreakdown>>>(\r\n `${resource}/GetRecipeCalculationBreakdown`,\r\n model,\r\n { withCredentials: true }\r\n );\r\n },\r\n getSingleNutrientReport(recipeId: number) {\r\n return Repository.get<MethodResult<SingleNutrientReportDto>>(\r\n `${resource}/GetSingleNutrientReport?recipeId=${recipeId}`,\r\n { withCredentials: true }\r\n );\r\n },\r\n getProteinQualityBreakDown(recipeId: number) {\r\n return Repository.get<ListResult<ProteinQualityRowDto>>(\r\n `${resource}/GetProteinQualityReport?recipeId=${recipeId}`,\r\n { withCredentials: true }\r\n );\r\n }\r\n};\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calculations.vue?vue&type=style&index=0&id=3b4d6651&prod&scoped=true&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"pt-3\"},[_c('table',{staticClass:\"table nutient-facts\"},[_c('thead',{style:({ backgroundColor: _vm.isAdmin ? '#0288d1' : '#558b2f' })},[_c('tr',{staticClass:\"header-table\"},[_vm._l((_vm.tableHeaders),function(header){return [_c('th',{key:header},[_vm._v(_vm._s(header))])]})],2)]),_c('tbody',[_vm._l((_vm.getNutrientFacts().ingredients),function(ingr,index){return [_c('tr',{key:'ingr' + ingr},[_c('td',{class:['sticky-column', ingr.childRecipeBreakdown ? 'sub-recipe-bg' : 'ingr-bg']},[_vm._v(_vm._s(ingr.ingredientName))]),_c('td',{staticClass:\"nowrap\"},[(_vm.isAdmin)?_c('div',[_c('div',{staticClass:\"inline\"},[_vm._v(_vm._s(_vm.round(ingr.quantity.value / _vm.recipesCalculation.recipeScaleFactor, 4))+\" \")]),_vm._v(\" *\\n \"),_c('div',{staticClass:\"inline text-success bold\"},[_vm._v(\" \"+_vm._s(_vm.round(_vm.recipesCalculation.recipeScaleFactor, 4)))]),_c('div',{staticClass:\"inline\"},[_vm._v(\" (\"+_vm._s(ingr.quantity.value)+\") \"+_vm._s(ingr.quantity.unit))])]):_c('div',[_c('div',{staticClass:\"inline\"},[_vm._v(_vm._s(_vm.round(ingr.quantity.value / _vm.recipesCalculation.recipeScaleFactor, 4))+\" \"+_vm._s(ingr.quantity.unit))])])]),_c('td',[_vm._v(_vm._s(ingr.quantityInGrams.value + ingr.quantityInGrams.unit))]),_c('td',[_vm._v(_vm._s(ingr.quantityInGramsAfterLoss.value + ingr.quantityInGramsAfterLoss.unit))]),_c('td',[_vm._v(_vm._s(_vm.round(ingr.weightPercent, 2) + ' %'))]),(_vm.isAdmin)?_c('td',[_vm._v(_vm._s(ingr.foodClassification))]):_vm._e(),_vm._l((_vm.slicedTableHeaders),function(header){return _c('td',{key:header},[(_vm.getNutrientValue(ingr, header).per100Grams.value != null && _vm.isAdmin)?[_c('p',{staticClass:\"in-100g\"},[_c('span',{staticClass:\"bold-text\"},[_vm._v(\"nutrients / 100g: \")]),_vm._v(\"\\n \"+_vm._s(_vm.getNutrientValue(ingr, header).per100Grams.value + _vm.getNutrientValue(ingr, header).per100Grams.unit + ' / 100g')+\"\\n \")])]:_vm._e(),(_vm.getNutrientValue(ingr, header).inRecipe.value != null && _vm.isAdmin)?[_c('p',{staticClass:\"in-recipe\"},[_c('span',{staticClass:\"bold-text\"},[_vm._v(\"In Recipe: \")]),_vm._v(\"\\n \"+_vm._s(_vm.round(_vm.getNutrientValue(ingr, header).inRecipe.value, 2) + _vm.getNutrientValue(ingr, header).inRecipe.unit + ' / ' + ingr.quantityInGrams.value + ingr.quantityInGrams.unit)+\"\\n \")])]:_vm._e(),(_vm.getNutrientValue(ingr, header).retentionFactor && _vm.isAdmin)?[_c('p',{staticClass:\"in-100g\"},[_c('span',{staticClass:\"bold-text\"},[_vm._v(\"Retention Factor: \")]),_vm._v(\"\\n \"+_vm._s(_vm.getNutrientValue(ingr, header).retentionFactor + '%')+\"\\n \")])]:_vm._e(),(_vm.getNutrientValue(ingr, header).retentionFactor && _vm.isAdmin)?[_c('p',{staticClass:\"in-100g\"},[_c('span',{staticClass:\"bold-text\"},[_vm._v(\"Retained Amt: \")]),_vm._v(\"\\n \"+_vm._s(_vm.getNutrientValue(ingr, header).inRecipeAfterRetentionFactor.value + _vm.getNutrientValue(ingr, header).inRecipeAfterRetentionFactor.unit)+\"\\n \")])]:_vm._e(),(_vm.getNutrientValue(ingr, header).inRecipe.value != null && !_vm.isAdmin)?[_vm._v(\"\\n \"+_vm._s(_vm.getNutrientValue(ingr, header).inRecipe.value)+\"\\n \")]:_vm._e()],2)})],2),(ingr.childRecipeBreakdown)?_vm._l((ingr.childRecipeBreakdown.nutrientFacts.ingredients),function(subIngr,subIndex){return _c('tr',{key:'subIngr' + subIngr},[_c('td',{staticClass:\"sticky-column ingr-bg\",staticStyle:{\"padding-left\":\"30px !important\"}},[_vm._v(_vm._s(subIngr.ingredientName))]),_c('td',{staticClass:\"nowrap\"},[(_vm.isAdmin)?_c('div',[_c('div',{staticClass:\"inline\"},[_vm._v(_vm._s(_vm.round(subIngr.quantity.value / _vm.recipesCalculation.recipeScaleFactor, 4))+\" \")]),_vm._v(\" *\\n \"),_c('div',{staticClass:\"inline text-success bold\"},[_vm._v(\" \"+_vm._s(_vm.round(_vm.recipesCalculation.recipeScaleFactor, 4)))]),_c('div',{staticClass:\"inline\"},[_vm._v(\" (\"+_vm._s(subIngr.quantity.value)+\") \"+_vm._s(subIngr.quantity.unit))])]):_c('div',[_c('div',{staticClass:\"inline\"},[_vm._v(_vm._s(_vm.round(subIngr.quantity.value / _vm.recipesCalculation.recipeScaleFactor, 4))+\" \"+_vm._s(subIngr.quantity.unit))])])]),_c('td',[_vm._v(_vm._s(subIngr.quantityInGrams.value + subIngr.quantityInGrams.unit))]),_c('td',[_vm._v(_vm._s(subIngr.quantityInGramsAfterLoss.value + subIngr.quantityInGramsAfterLoss.unit))]),_c('td',[_vm._v(_vm._s(_vm.round(subIngr.weightPercent, 2) + ' %'))]),(_vm.isAdmin)?_c('td',[_vm._v(_vm._s(subIngr.foodClassification))]):_vm._e(),_vm._l((_vm.slicedTableHeaders),function(header){return _c('td',{key:header},[(_vm.getNutrientValue(subIngr, header).per100Grams.value != null && _vm.isAdmin)?[_c('p',{staticClass:\"in-100g\"},[_c('span',{staticClass:\"bold-text\"},[_vm._v(\"nutrients / 100g: \")]),_vm._v(\"\\n \"+_vm._s(_vm.getNutrientValue(subIngr, header).per100Grams.value + _vm.getNutrientValue(subIngr, header).per100Grams.unit + '/ 100g')+\"\\n \")])]:_vm._e(),(_vm.getNutrientValue(subIngr, header).inRecipe.value != null && _vm.isAdmin)?[_c('p',{staticClass:\"in-recipe\"},[_c('span',{staticClass:\"bold-text\"},[_vm._v(\"In recipe: \")]),_vm._v(\"\\n \"+_vm._s(_vm.round(_vm.getNutrientValue(subIngr, header).inRecipe.value, 2) + _vm.getNutrientValue(subIngr, header).inRecipe.unit + '/' + subIngr.quantityInGrams.value + subIngr.quantityInGrams.unit)+\"\\n \")])]:_vm._e(),(_vm.getNutrientValue(subIngr, header).retentionFactor && _vm.isAdmin)?[_c('p',{staticClass:\"in-100g\"},[_c('span',{staticClass:\"bold-text\"},[_vm._v(\"Retention Factor: \")]),_vm._v(\"\\n \"+_vm._s(_vm.getNutrientValue(subIngr, header).retentionFactor + '%')+\"\\n \")])]:_vm._e(),(_vm.getNutrientValue(subIngr, header).retentionFactor && _vm.isAdmin)?[_c('p',{staticClass:\"in-100g\"},[_c('span',{staticClass:\"bold-text\"},[_vm._v(\"Retained Amt: \")]),_vm._v(\"\\n \"+_vm._s(_vm.getNutrientValue(subIngr, header).inRecipeAfterRetentionFactor.value + _vm.getNutrientValue(subIngr, header).inRecipeAfterRetentionFactor.unit)+\"\\n \")])]:_vm._e(),(_vm.getNutrientValue(subIngr, header).inRecipe.value != null && !_vm.isAdmin)?[_vm._v(\"\\n \"+_vm._s(_vm.getNutrientValue(subIngr, header).inRecipe.value)+\"\\n \")]:_vm._e()],2)})],2)}):_vm._e()]}),_c('tr',{staticClass:\"bold\"},[_c('td',{staticClass:\"sticky-column\"},[_vm._v(\"Total:\")]),_c('td'),_c('td',[_vm._v(_vm._s(`${_vm.getNutrientFacts().weight.value}${_vm.getNutrientFacts().weight.unit}`))]),_c('td',[_vm._v(_vm._s(`${_vm.getNutrientFacts().weight.value}${_vm.getNutrientFacts().weight.unit}`))]),(_vm.isAdmin)?_c('td'):_vm._e(),_c('td'),_vm._l((_vm.slicedTableHeaders),function(header){return [_c('td',{key:'total-' + header},[_vm._v(\"\\n \"+_vm._s(`${_vm.getNutrientAbsoluteValue(header).value}${_vm.getNutrientAbsoluteValue(header).unit}`)+\"\\n \")])]})],2),_c('tr',{staticClass:\"bold\"},[_c('td',{staticClass:\"sticky-column\"},[_vm._v(\"Per servings:\")]),_c('td'),_c('td',[_vm._v(_vm._s(`${_vm.getNutrientFacts().rawWeightPerServing.value}${_vm.getNutrientFacts().rawWeightPerServing.unit} (${_vm.overrideWeightDisplay(_vm.getNutrientFacts().rawWeightPerServing.value)})`))]),_c('td',[_vm._v(_vm._s(`${_vm.getNutrientFacts().rawWeightPerServing.value}${_vm.getNutrientFacts().rawWeightPerServing.unit} (${_vm.overrideWeightDisplay(_vm.getNutrientFacts().rawWeightPerServing.value)})`))]),_c('td'),(_vm.isAdmin)?_c('td'):_vm._e(),_vm._l((_vm.slicedTableHeaders),function(header){return [_c('td',{key:'total-' + header},[_vm._v(\"\\n \"+_vm._s(`${_vm.getNutrientPerServingValue(header).value}${_vm.getNutrientPerServingValue(header).unit}`)+\"\\n \")])]})],2)],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Prop, Vue } from \"vue-property-decorator\";\r\nimport vIconWithTooltip from \"@/components/vIconWithTooltip.vue\";\r\nimport { round } from \"@/utils/Helpers\";\r\nimport { mapState } from \"vuex\";\r\nimport { RecipeBreakdown } from \"@/models/Recipes/RecipeBreakdown\";\r\nimport { RecipeIngredientBreakdown } from \"@/models/Ingredient/RecipeIngredientBreakdown\";\r\nimport { NutrientBreakdown } from \"@/models/Recipes/RecipeBreakdown\";\r\n\r\n@Component({\r\n methods: { round },\r\n components: {\r\n vIconWithTooltip,\r\n },\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n }),\r\n },\r\n})\r\n\r\nexport default class vRecipeBreakdownTable extends Vue {\r\n @Prop() recipesCalculation: RecipeBreakdown;\r\n @Prop() tableHeaders: string[];\r\n @Prop() slicedTableHeaders: string[];\r\n @Prop() isAdmin: boolean;\r\n @Prop() useRoundedValues: boolean = false;\r\n\r\n localizationState: any;\r\n showChildRows: boolean[] = [];\r\n\r\n getNutrientFacts(){\r\n return this.recipesCalculation.nutrientFacts;\r\n }\r\n\r\n toggleChildRows(index: number): void {\r\n this.$set(this.showChildRows, index, !this.showChildRows[index]);\r\n }\r\n\r\n getNutrientValue(ingredient: RecipeIngredientBreakdown, nutrient: string) {\r\n const nutrientData = ingredient[nutrient as keyof RecipeIngredientBreakdown] || {\r\n per100Grams: { value: '-', unit: '' },\r\n inRecipe: { value: '-', unit: '' },\r\n inRecipeAfterLoss: { value: '-', unit: '' }\r\n };\r\n\r\n if(nutrient == \"energy\") {\r\n nutrientData.inRecipe.value = this.trialMaskedNutrientData(nutrientData.inRecipe.value);\r\n return nutrientData;\r\n }\r\n nutrientData.inRecipe.value = round(nutrientData.inRecipe.value, 2);\r\n return nutrientData;\r\n }\r\n\r\n getNutrientAbsoluteValue(nutrientKey: string) {\r\n const nutrient = this.recipesCalculation[nutrientKey];\r\n if (this.recipesCalculation[nutrientKey] != null) {\r\n if(nutrientKey == \"energy\"){\r\n nutrient.absoluteValue.value = this.trialMaskedNutrientData(nutrient.absoluteValue.value);\r\n return nutrient.absoluteValue;\r\n }\r\n if (this.recipesCalculation[nutrientKey].absoluteValue != null) {\r\n nutrient.absoluteValue.value = round(nutrient.absoluteValue.value, 2);\r\n return nutrient.absoluteValue;\r\n }\r\n }\r\n if (!nutrient) {\r\n return { value: 'N/A', unit: '' };\r\n }\r\n }\r\n\r\n getNutrientPerServingValue(nutrientKey: string) {\r\n const nutrient: NutrientBreakdown = this.recipesCalculation[nutrientKey];\r\n if (this.recipesCalculation[nutrientKey] != null) {\r\n if(nutrientKey == \"energy\"){\r\n nutrient.roundedValuePerServing.value = this.trialMaskedNutrientData(nutrient.roundedValuePerServing.value);\r\n nutrient.absoluteValuePerServing.value = this.trialMaskedNutrientData(nutrient.absoluteValuePerServing.value);\r\n return this.useRoundedValues\r\n ? nutrient.roundedValuePerServing\r\n : nutrient.absoluteValuePerServing;\r\n }\r\n if (this.recipesCalculation[nutrientKey].absoluteValuePerServing != null) {\r\n nutrient.roundedValuePerServing.value = round(nutrient.roundedValuePerServing.value, 2);\r\n nutrient.absoluteValuePerServing.value = round(nutrient.absoluteValuePerServing.value, 2);\r\n return this.useRoundedValues\r\n ? nutrient.roundedValuePerServing\r\n : nutrient.absoluteValuePerServing;\r\n }\r\n }\r\n if (!nutrient) {\r\n return { value: 'N/A', unit: '' };\r\n }\r\n }\r\n\r\n trialMaskedNutrientData(value: number, shouldRound: boolean = true) {\r\n if (this.$store.getters.getUserDetails.isTrial) {\r\n return \"--\";\r\n }\r\n\r\n return shouldRound ? round(value, 2) : value;\r\n }\r\n\r\n overrideWeightDisplay(valueIfNotOverridden: number): string {\r\n return `${this.getNutrientFacts().overrideWeightPerServing || valueIfNotOverridden}${this.getNutrientFacts().overrideUnit || \"g\"}`;\r\n }\r\n};\r\n ","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vRecipeBreakdownTable.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./vRecipeBreakdownTable.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vRecipeBreakdownTable.vue?vue&type=template&id=517bcda2&scoped=true\"\nimport script from \"./vRecipeBreakdownTable.vue?vue&type=script&lang=ts\"\nexport * from \"./vRecipeBreakdownTable.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vRecipeBreakdownTable.vue?vue&type=style&index=0&id=517bcda2&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"517bcda2\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}