{"version":3,"sources":["webpack:///./src/utils/Defaults.ts","webpack:///./src/components/vBackOfPackageConfig.vue?7b44","webpack:///./src/components/vExportLabel.vue?9e72","webpack:///./src/components/vIngredientsDisplayNames.vue?4903","webpack:///./src/components/vExportLabelButtons.vue?4261","webpack:///./src/components/vToggleSwitch.vue","webpack:///./src/components/vToggleSwitch.vue?985c","webpack:///./src/components/vToggleSwitch.vue?b29c","webpack:///./src/components/vToggleSwitch.vue?df0d","webpack:///./src/utils/API/GeneralRepository.ts","webpack:///./src/components/vExportLabel.vue?1243","webpack:///./src/components/vToggleSwitch.vue?6289","webpack:///./src/components/vLabelPreviewImage.vue?862d","webpack:///./src/components/vAccordion.vue?ecef","webpack:///./src/components/vExportLabel.vue","webpack:///./src/components/vIngredientsDisplayNames.vue","webpack:///./src/components/vIngredientsDisplayNames.vue?9de9","webpack:///./src/models/NutritionLabels/DietaryTypes.ts","webpack:///./src/components/vIngredientsDisplayNames.vue?d4ea","webpack:///./src/components/vIngredientsDisplayNames.vue?8469","webpack:///./src/utils/API/NutritionLabelRepository.ts","webpack:///./src/services/ExportLabel.service.ts","webpack:///./src/models/NutritionLabels/ExportLabelState.ts","webpack:///./src/components/vUSContainsPercentOfForm.vue","webpack:///./src/components/vUSContainsPercentOfForm.vue?cc35","webpack:///./src/components/vUSContainsPercentOfForm.vue?267d","webpack:///./src/components/vUSContainsPercentOfForm.vue?2eac","webpack:///./src/components/vAccordion.vue","webpack:///./src/components/vAccordion.vue?7b33","webpack:///./src/components/vAccordion.vue?7a66","webpack:///./src/components/vAccordion.vue?33f6","webpack:///./src/components/vLabelPreviewImage.vue","webpack:///./src/components/vLabelPreviewImage.vue?9358","webpack:///./src/components/vLabelPreviewImage.vue?00ab","webpack:///./src/components/vLabelPreviewImage.vue?9246","webpack:///./src/components/vFrontOfPackageConfig.vue","webpack:///./src/components/vFrontOfPackageConfig.vue?7b92","webpack:///./src/components/vFrontOfPackageConfig.vue?49ed","webpack:///./src/components/vFrontOfPackageConfig.vue?ce1d","webpack:///./src/components/vBackOfPackageConfig.vue","webpack:///./src/components/vBackOfPackageConfig.vue?e1d4","webpack:///./src/components/vBackOfPackageConfig.vue?b69e","webpack:///./src/components/vBackOfPackageConfig.vue?399d","webpack:///./src/components/vExportLabelButtons.vue","webpack:///./src/components/vExportLabelButtons.vue?bed8","webpack:///./src/components/vExportLabelButtons.vue?3558","webpack:///./src/components/vExportLabelButtons.vue?789d","webpack:///./src/components/vExportLabel.vue?b021","webpack:///./src/components/vExportLabel.vue?3ca6","webpack:///./src/components/vExportLabel.vue?f953"],"names":["NA","dateTimeDisplayFormat","dateDisplayFormat","render","_vm","this","_c","_self","_setupProxy","staticClass","attrs","domProps","value","on","changeHandler","staticRenderFns","vToggleSwitch","_Vue","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","_inherits","_createClass","key","$emit","Vue","__decorate","Prop","Component","component","resource","listCountries","Repository","post","ListRequest","page","pageSize","withCredentials","listIndustries","listLanguages","get","staticStyle","isFopDisplay","_e","recipe","nutritionCountries","packageLabelType","languages","subrecipeMeasurements","model","exportLabelState","callback","$$v","expression","id","highIn","debouncedFetchPreview","loading","nutritionCountry","nutritionLabel","primaryLanguage","labelPreview","fopLabelPreview","saveRecipeLabel","loadFOPLabelCreator","loadBOPLabelCreator","_l","sortedIngredientDisplays","ingredient","ingredientId","class","activeIngredientId","recipeId","isBranded","$event","preventDefault","setActiveIngredient","_v","_s","displayTextInPrimaryLanguage","translations","directives","name","rawName","target","composing","$set","country","displayTextInSecondaryLanguage","isAllergen","isArray","_i","$$a","$$el","$$c","checked","$$i","slice","vIngredientsDisplayNames","localizationState","ingredientDisplays","sort","firstDisplay","secondDisplay","weightInGrams","Watch","computed","_objectSpread","mapState","state","LocalizationModule","DietaryTypes","downloadNutritionLabelForDish","type","headers","accept","responseType","downloadNutritionLabelForRecipe","acceptContentType","listNutritionCountries","listNutritionLabels","nutritionCountryId","labelType","undefined","LabelTypeMetadata","BackOfPack","queryOptions","filters","previewNutritionLabelForDish","previewNutritionLabelForRecipe","previewNutritionLabel","previewFOPNutritionLabel","getFreeTextPlaceholdersForNutritionLabel","nutritionLabelId","getFrontOfPackageOptions","getSubrecipeWeightInGrams","subrecipe","measurement","find","x","recipeCompositionMeasurementId","subRecipeWeight","quantity","weightPerServing","toLowerCase","conversionCoeficient","getIngredientDisplays","ingredients","savedDisplays","quantityMultiplier","displays","map","ingr","savedDisplay","ingrWeight","push","components","subIngredients","getSubrecipeDisplayAsIngredients","_step","_iterator","_createForOfIteratorHelper","childRecipes","s","n","done","childRecipe","subrecipeWeight","subrecipeWeightAsServings","fetchedDisplays","err","e","f","getIngredientAndSubRecipeDisplays","subRecipeDisplays","renderExpandedSubrecipes","preprocessedDisplays","_step2","_iterator2","_step3","groupedDisplays","groupBy","toString","rv","_iterator3","keys","totalWeight","reduce","acc","display","structuredClone","ExportLabelState","allergens","isChecked","primaryLanguageName","secondaryLanguageName","dietary","mayContain","primaryLanguageAdditionalContent","secondaryLanguageAdditionalContent","cautionaryMessage","containsLessThanPercentOf","primaryLanguageContainsLessThanText","secondaryLanguageContainsLessThanText","primaryLanguagePercentOfText","secondaryLanguagePercentOfText","thresholdPercent","headerLabelTranslations","ingredientsPrimaryLanguageTranslation","ingredientsSecondaryLanguageTranslation","containsPrimaryLanguageTranslation","containsSecondaryLanguageTranslation","mayContainPrimaryLanguageTranslation","mayContainSecondaryLanguageTranslation","cautionaryMessagePrimaryLanguageTranslation","cautionaryMessageSecondaryLanguageTranslation","includeIngredients","disableDownload","freeTextPlaceholders","isIE","fopNutritionLabelId","labelTypes","FrontOfPack","fopFormat","pdsSize","includeInDownload","secondaryLanguage","ingredientAndSubRecipeDisplaysModel","combinedSubRecipeList","expandedSubRecipeList","savedNutritionLabelId","savedSubRecipeDisplays","textPlaceholdersOfSavedLabel","filter","translationInstance","types","dt","isValueProperty","parseInt","includes","isBilingual","firstLevelSubRecipe","_subRecipeIngredients","join","forEach","secondLevelSubRecipe","thirdLevelChildRecipe","getSubRecipeDisplays","firstIngredient","secondIngredient","subRecipeIngredients","acceptableThresholds","vUSContainsPercentOfForm","Model","expandAccordion","active","isExpanded","accordionTitleTranslationKey","_t","vAccordion","isLoading","shouldDisplayLabel","labelPreviewBase64","vLabelPreviewImage","vPreLoader","labelFormatOptions","foPFormatReducer","fetchLabelFormats","scopedSlots","_u","fn","option","formatTranslationKey","selectedFormat","pdsSizeOptions","foPPDSReducer","fetchPreview","translationKey","selectedPDS","vFrontOfPackageConfig","loadLabelFormats","_this2","NutritionLabelRepository","then","response","data","result","savedFormat","formatValue","updateFOPSelections","_this3","supportedPDS","fetchFOPLabel","fopData","pdsData","_this4","labelFormatValue","pdsSizeValue","highInMetadata","content","selected","format","updatePDSSizes","fetchNutritionLabels","updateFilters","showSupplementFactsLabels","filteredNutritionLabels","fetchFreeTextFields","proxy","placeholder","displayText","toggleSubrecipeExpansion","ingredientAndSubRecipeDisplays","slot","dietaryTypes","toggleDietary","allergen","updateAllergenStatus","_regeneratorRuntime","t","r","Object","prototype","hasOwnProperty","o","defineProperty","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","callInvokeWithMethodAndArg","Error","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","mark","setPrototypeOf","__proto__","awrap","async","Promise","reverse","pop","prev","charAt","stop","rval","handle","complete","finish","catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","apply","_next","_throw","_defineProperties","_toPropertyKey","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","Boolean","valueOf","bind","_setPrototypeOf","_toPrimitive","toPrimitive","String","Number","vBackOfPackageConfig","ingredientAndSubRecipeDisplaysInit","updateLabelTypeList","resetNutritionLabel","sortKey","SupplementFact","nutritionLabels","width","label","document","getElementById","naturalWidth","height","naturalHeight","_fetchNutritionLabels","_callee","_context","freeTextPlaceholder","$snotify","error","debounce","updateIngredientName","copyIngredientNamesOver","expandedItem","itemIndex","findIndex","_this5","splice","indexOf","_this6","checkedAllergens","ingredientsIncluded","additionalContent","containsLessThanPercentOfText","headerTranslations","nutritionLabelDownloadFileFormat","labelWidth","labelHeight","ingredientDisplayModels","default","accountStoreState","AccountModule","userDetails","nutritionLabelsLimit","labelsLimit","downloadedLabels","showLearnMoreModal","remainingLabelDownloads","$moment","nextResetDate","DATE_DISP_FORMAT","shouldShowSaveButton","downloadingMultipleLabels","shouldShowDownloadButtons","disabled","downloadLabel","vExportLabelButtons","labelsCount","fileType","$store","getters","getUserDetails","isTrial","info","$router","fileContentType","filename","split","getFileContentType","additionalLabelInformation","frontOfPackageNutritionLabelId","parseFloat","labelFormatType","pushDownloadToClient","message","enc","TextDecoder","JSON","parse","decode","errorMessages","userVisibleMessage","chosenFileType","blobData","blob","Blob","getFileExtension","url","window","URL","createObjectURL","link","createElement","href","setAttribute","body","appendChild","evt","createEvent","initMouseEvent","dispatchEvent","UserRepository","fetchUserInfo","commit","SET_USER_DETAILS","logged","vModal","vExportLabel","fetchRecipeLabel","GeneralRepository","navigator","userAgent","RecipesRepository","additionalContents","ingredientOtherDisplayModel","subRecipeDisplayModels","success","getRecipeLabel","fillLabelData","labelData","fillAllergens","fillDietaryTypes","fillNutritionCountry","fillLanguages","fillFreeTextPlaceholders","fillIngredientDisplays","fillSavedSubRecipeDisplays","fillAdditionalProperties","synchronizeIngredientData","synchronizeRecipeIngredientData","frontOfPackData","originalList","modifiedList","modifiedListMap","Map","set","updatedSubRecipeList","otherDisplay","delete","modifiedRecipeListMap","modifiedIngredientListMap","otherRecipeDisplay","otherIngredientDisplay","_this7"],"mappings":"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","file":"js/chunk-6ea5c83c.6a9b8fac.js","sourcesContent":["export const NA = '';\r\nexport const dateTimeDisplayFormat = 'DD MMM YYYY - hh:mm A'; // https://momentjs.com/docs/#/parsing/\r\nexport const dateDisplayFormat = 'DD MMM YYYY';","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!./vBackOfPackageConfig.vue?vue&type=style&index=0&id=5f8366a0&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!./vExportLabel.vue?vue&type=style&index=1&id=59c39753&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!./vIngredientsDisplayNames.vue?vue&type=style&index=0&id=e5f43f54&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!./vExportLabelButtons.vue?vue&type=style&index=0&id=2d7c2650&prod&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('label',{staticClass:\"switch\"},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.value},on:{\"input\":_vm.changeHandler}}),_c('span',{staticClass:\"slider round\"})])\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 vToggleSwitch extends Vue {\r\n\r\n @Prop() value!: boolean;\r\n\r\n changeHandler() {\r\n this.$emit('toggled', !this.value);\r\n }\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!./vToggleSwitch.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!./vToggleSwitch.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vToggleSwitch.vue?vue&type=template&id=090fbb25&scoped=true\"\nimport script from \"./vToggleSwitch.vue?vue&type=script&lang=ts\"\nexport * from \"./vToggleSwitch.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vToggleSwitch.vue?vue&type=style&index=0&id=090fbb25&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 \"090fbb25\",\n null\n \n)\n\nexport default component.exports","import Repository from './Repository';\r\nimport ListRequest from '@/models/ListRequest';\r\n\r\n\r\nconst resource = '/general';\r\n\r\nexport default {\r\n listCountries() {\r\n return Repository.post(`${resource}/ListCountries`, new ListRequest({page: 1, pageSize: 9999}), {withCredentials: true});\r\n },\r\n listIndustries() {\r\n return Repository.post(`${resource}/ListIndustries`, new ListRequest({page: 1, pageSize: 9999}), {withCredentials: true});\r\n },\r\n listLanguages() {\r\n return Repository.get(`${resource}/ListLanguages`, {withCredentials: true});\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!./vExportLabel.vue?vue&type=style&index=0&id=59c39753&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!./vToggleSwitch.vue?vue&type=style&index=0&id=090fbb25&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!./vLabelPreviewImage.vue?vue&type=style&index=0&id=60a6ab82&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!./vAccordion.vue?vue&type=style&index=0&id=707962e4&prod&scoped=true&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('form',[_c('div',{staticClass:\"form-row\",staticStyle:{\"height\":\"83vh\"}},[_c('div',{staticClass:\"col-md-6 col-12 h-100\",staticStyle:{\"overflow\":\"auto\",\"padding-right\":\"1rem\"}},[(!_vm.isFopDisplay)?_c('vBackOfPackageConfig',{attrs:{\"recipe\":_vm.recipe,\"nutrition-countries\":_vm.nutritionCountries,\"package-label-type\":_vm.packageLabelType,\"languages\":_vm.languages,\"subrecipe-measurements\":_vm.subrecipeMeasurements},model:{value:(_vm.exportLabelState),callback:function ($$v) {_vm.exportLabelState=$$v},expression:\"exportLabelState\"}}):_vm._e(),(_vm.isFopDisplay)?_c('vFrontOfPackageConfig',{attrs:{\"recipe-id\":_vm.id,\"package-label-type\":_vm.packageLabelType,\"high-in\":_vm.highIn},on:{\"debounced-fetch-preview\":_vm.debouncedFetchPreview},model:{value:(_vm.exportLabelState),callback:function ($$v) {_vm.exportLabelState=$$v},expression:\"exportLabelState\"}}):_vm._e()],1),_c('div',{staticClass:\"col-md-6 col-12 h-100 btn-group-container\",staticStyle:{\"text-align\":\"center\",\"gap\":\"15px\"}},[_c('div',{staticClass:\"h-100 w-100\",staticStyle:{\"display\":\"flex\",\"flex-direction\":\"column\",\"gap\":\"15px\",\"text-align\":\"center\"}},[(!_vm.isFopDisplay)?_c('vLabelPreviewImage',{attrs:{\"is-loading\":_vm.exportLabelState.loading,\"should-display-label\":_vm.exportLabelState.nutritionCountry\n && _vm.exportLabelState.nutritionLabel !== null\n && _vm.exportLabelState.primaryLanguage !== null,\"label-preview-base64\":_vm.exportLabelState.labelPreview}}):_vm._e(),(_vm.isFopDisplay)?_c('vLabelPreviewImage',{attrs:{\"is-loading\":_vm.exportLabelState.loading,\"should-display-label\":_vm.exportLabelState.nutritionCountry !== null &&\n _vm.exportLabelState.nutritionLabel !== null &&\n _vm.exportLabelState.primaryLanguage !== null &&\n _vm.exportLabelState.fopLabelPreview !== '',\"label-preview-base64\":_vm.exportLabelState.fopLabelPreview}}):_vm._e(),_c('vExportLabelButtons',{attrs:{\"package-label-type\":_vm.packageLabelType,\"is-fop-display\":_vm.isFopDisplay,\"recipe\":_vm.recipe,\"high-in\":_vm.highIn,\"subrecipe-measurements\":_vm.subrecipeMeasurements},on:{\"save-label\":_vm.saveRecipeLabel,\"load-fop-label-creator\":_vm.loadFOPLabelCreator,\"load-bop-label-creator\":_vm.loadBOPLabelCreator},model:{value:(_vm.exportLabelState),callback:function ($$v) {_vm.exportLabelState=$$v},expression:\"exportLabelState\"}})],1)])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"row ingr-container\"},[_c('div',{staticClass:\"col-12 ingr-names-container\"},_vm._l((_vm.sortedIngredientDisplays),function(ingredient){return _c('span',{key:'ingrForm_' + ingredient.ingredientId || ingredient.recipeId,staticClass:\"ingr-link\",class:{'active': (_vm.activeIngredientId === 'i_'+ingredient.ingredientId) || (_vm.activeIngredientId === 'r_'+ingredient.recipeId),\n 'isBranded': ingredient.isBranded },on:{\"click\":function($event){$event.preventDefault();return _vm.setActiveIngredient(ingredient.ingredientId ? 'i_'+ingredient.ingredientId : 'r_'+ingredient.recipeId)}}},[_vm._v(_vm._s(ingredient.displayTextInPrimaryLanguage))])}),0),_c('div',{staticClass:\"col-12\"},[_vm._l((_vm.sortedIngredientDisplays),function(ingredient){return [((_vm.activeIngredientId === 'i_'+ingredient.ingredientId) || (_vm.activeIngredientId === 'r_'+ingredient.recipeId))?_c('div',{key:'ingrForm_' + ingredient.ingredientId || ingredient.recipeId},[_c('hr'),_c('div',{staticClass:\"form-group\"},[_c('label',[_vm._v(_vm._s(_vm.translations.get('label_export_primary_label')))]),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(ingredient.displayTextInPrimaryLanguage),expression:\"ingredient.displayTextInPrimaryLanguage\"}],staticClass:\"form-control\",attrs:{\"rows\":\"5\",\"type\":\"text\"},domProps:{\"value\":(ingredient.displayTextInPrimaryLanguage)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(ingredient, \"displayTextInPrimaryLanguage\", $event.target.value)}}})]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.country ? _vm.country.name != 'UK' : true),expression:\"country ? country.name != 'UK' : true\"}],staticClass:\"form-group\"},[_c('label',[_vm._v(_vm._s(_vm.translations.get('label_export_secondary_label')))]),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(ingredient.displayTextInSecondaryLanguage),expression:\"ingredient.displayTextInSecondaryLanguage\"}],staticClass:\"form-control\",attrs:{\"rows\":\"5\",\"type\":\"text\"},domProps:{\"value\":(ingredient.displayTextInSecondaryLanguage)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(ingredient, \"displayTextInSecondaryLanguage\", $event.target.value)}}})]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.country ? _vm.country.name == 'UK' : false),expression:\"country ? country.name == 'UK' : false\"}],staticClass:\"ingr-allergen-container checkbox check-primary\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(ingredient.isAllergen),expression:\"ingredient.isAllergen\"}],attrs:{\"id\":'src' + ingredient.ingredientId,\"type\":\"checkbox\"},domProps:{\"checked\":ingredient.isAllergen,\"checked\":Array.isArray(ingredient.isAllergen)?_vm._i(ingredient.isAllergen,null)>-1:(ingredient.isAllergen)},on:{\"input\":function($event){ingredient.isAllergen = !ingredient.isAllergen},\"change\":function($event){var $$a=ingredient.isAllergen,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(ingredient, \"isAllergen\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(ingredient, \"isAllergen\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(ingredient, \"isAllergen\", $$c)}}}}),_c('label',{staticClass:\"allergen-label\",attrs:{\"for\":'src' + ingredient.ingredientId}},[_vm._v(\"Allergen\")])]),_c('button',{staticClass:\"ingr-close\",on:{\"click\":function($event){$event.preventDefault();return _vm.setActiveIngredient('0')}}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\"\\n  \"+_vm._s(_vm.translations.get('done'))+\"\\n \")])]):_vm._e()]})],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Vue, Component, Prop, Watch } from \"vue-property-decorator\";\r\nimport IngredientDisplay from \"@/models/Ingredient/IngredientDisplay\";\r\nimport { NutritionCountry } from \"@/models/NutritionLabels/NutritionCountry\";\r\nimport { mapState } from \"vuex\";\r\n\r\n@Component({\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n }),\r\n },\r\n})\r\nexport default class vIngredientsDisplayNames extends Vue {\r\n localizationState: any;\r\n\r\n @Prop() ingredientDisplays!: IngredientDisplay[];\r\n @Prop() country!: NutritionCountry;\r\n\r\n // everytime we update name, tell the parent\r\n @Watch(\"activeIngredientId\")\r\n onChangeActiveIngredientId() {\r\n this.$emit(\"update\");\r\n }\r\n\r\n activeIngredientId: string = \"0\";\r\n\r\n setActiveIngredient(id: string) {\r\n this.activeIngredientId = id;\r\n }\r\n\r\n get translations() {\r\n return this.localizationState.translations;\r\n }\r\n\r\n get sortedIngredientDisplays(): IngredientDisplay[] {\r\n return this.ingredientDisplays.sort(\r\n (firstDisplay, secondDisplay) => secondDisplay.weightInGrams - firstDisplay.weightInGrams\r\n );\r\n }\r\n}\r\n","export enum DietaryTypes {\r\n GlutenFree,\r\n Vegan,\r\n Vegetarian,\r\n Organic,\r\n TransFatFree,\r\n DairyFree,\r\n GmoFree,\r\n SoyFree,\r\n NutFree,\r\n PeanutFree,\r\n EggFree,\r\n CholesterolFree,\r\n NitratesFree,\r\n NoSugarAdded,\r\n CornFree,\r\n AllergenFree\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!./vIngredientsDisplayNames.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!./vIngredientsDisplayNames.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vIngredientsDisplayNames.vue?vue&type=template&id=e5f43f54&scoped=true\"\nimport script from \"./vIngredientsDisplayNames.vue?vue&type=script&lang=ts\"\nexport * from \"./vIngredientsDisplayNames.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vIngredientsDisplayNames.vue?vue&type=style&index=0&id=e5f43f54&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 \"e5f43f54\",\n null\n \n)\n\nexport default component.exports","import Repository from './Repository';\r\nimport { DownloadNutritionLabelForDish } from '@/models/NutritionLabels/DownloadNutritionLabelForDish';\r\nimport { DownloadNutritionLabelForRecipe } from '@/models/NutritionLabels/DownloadNutritionLabelForRecipe';\r\nimport { PreviewFOPNutritionLabel } from '@/models/NutritionLabels/PreviewFOPNutritionLabel';\r\nimport { PreviewNutritionLabel } from '@/models/NutritionLabels/PreviewNutritionLabel';\r\nimport { DownloadNutritionLabelContentTypes } from './RequestContentTypes';\r\nimport { LabelTypeMetadata } from '@/models/NutritionLabels/LabelTypeMetadata';\r\nimport { NutritionLabel } from '@/models/NutritionLabels/NutritionLabel';\r\nimport { ListResult } from './ResultTypes/ListResult';\r\nimport { AxiosResponse } from 'axios';\r\nimport { MethodResult } from './ResultTypes/MethodResult';\r\n\r\nconst resource = '/nutritionLabels';\r\n\r\nexport default {\r\n downloadNutritionLabelForDish(downloadNutritionLabelForDish: DownloadNutritionLabelForDish, type: number) {\r\n return Repository.post(`${resource}/DownloadNutritionLabelForDish`, downloadNutritionLabelForDish, { withCredentials: true, headers: { accept: type === 0 ? 'application/pdf' : 'image/jpeg' }, responseType: 'arraybuffer' });\r\n },\r\n downloadNutritionLabelForRecipe(\r\n downloadNutritionLabelForRecipe: DownloadNutritionLabelForRecipe,\r\n acceptContentType: DownloadNutritionLabelContentTypes,\r\n ) {\r\n return Repository.post(\r\n `${resource}/DownloadNutritionLabelForRecipe`,\r\n downloadNutritionLabelForRecipe,\r\n {\r\n withCredentials: true,\r\n headers: {\r\n accept: acceptContentType\r\n },\r\n responseType: 'arraybuffer'\r\n }\r\n );\r\n },\r\n listNutritionCountries() {\r\n return Repository.get(`${resource}/ListNutritionCountries`, { withCredentials: true });\r\n },\r\n listNutritionLabels(nutritionCountryId: number, labelType: LabelTypeMetadata = LabelTypeMetadata.BackOfPack) {\r\n return Repository.post>>(\r\n `${resource}/ListNutritionLabels`,\r\n {\r\n nutritionCountryId,\r\n queryOptions: {\r\n filters: [\r\n { name: \"LabelType\", value: labelType }\r\n ]\r\n }\r\n },\r\n { withCredentials: true });\r\n },\r\n previewNutritionLabelForDish(downloadNutritionLabelForDish: DownloadNutritionLabelForDish) {\r\n return Repository.post(`${resource}/previewNutritionLabelForDish`, downloadNutritionLabelForDish, { withCredentials: true });\r\n },\r\n previewNutritionLabelForRecipe(previewNutritionLabel: PreviewNutritionLabel) {\r\n return Repository.post(`${resource}/previewNutritionLabelForRecipe`, previewNutritionLabel, { withCredentials: true });\r\n },\r\n previewFOPNutritionLabel(previewFOPNutritionLabel: PreviewFOPNutritionLabel){\r\n return Repository.post>>(\r\n `${resource}/previewFrontOfPackageNutritionLabel`,\r\n previewFOPNutritionLabel,\r\n { withCredentials: true }\r\n );\r\n },\r\n getFreeTextPlaceholdersForNutritionLabel(id: number) {\r\n return Repository.post(`${resource}/GetFreeTextPlaceholdersForNutritionLabel`, { nutritionLabelId: id }, { withCredentials: true });\r\n },\r\n getFrontOfPackageOptions(){\r\n return Repository.get(`${resource}/GetFrontOfPackageOptions`, { withCredentials: true });\r\n }\r\n};\r\n","import IngredientDisplay from \"@/models/Ingredient/IngredientDisplay\";\r\nimport { Recipe } from \"@/models/Recipes/Recipe\";\r\nimport { RecipeCompositionMeasurement } from \"@/models/Recipes/RecipeCompositionMeasurement\";\r\nimport { RecipeIngredient } from \"@/models/Recipes/RecipeIngredient\";\r\nimport { Subrecipe } from \"@/models/Recipes/Subrecipe\";\r\nimport { groupBy } from \"@/utils/Helpers\";\r\n\r\nexport function getSubrecipeWeightInGrams(subrecipe: Subrecipe, subrecipeMeasurements: RecipeCompositionMeasurement[]) {\r\n const measurement = subrecipeMeasurements.find(\r\n (x) => x.id == subrecipe.recipeCompositionMeasurementId\r\n );\r\n\r\n let subRecipeWeight = subrecipe.quantity * subrecipe.weightPerServing;\r\n\r\n if (measurement && measurement.measurement.name.toLowerCase() !== \"serving\") {\r\n subRecipeWeight = subrecipe.quantity * measurement.measurement.conversionCoeficient;\r\n }\r\n\r\n return subRecipeWeight;\r\n}\r\n\r\nexport function getIngredientDisplays(\r\n ingredients: RecipeIngredient[],\r\n savedDisplays: IngredientDisplay[],\r\n quantityMultiplier: number = 1\r\n): IngredientDisplay[] {\r\n // check if there is a recipe\r\n // if not, will return empty aRRAY\r\n const displays: IngredientDisplay[] = [];\r\n\r\n // map the ingredients\r\n ingredients.map((ingr) => {\r\n // See if you can find savedDisplay in savedDisplays for the ingredient Id\r\n const savedDisplay = savedDisplays.find(\r\n (x) => x.ingredientId == ingr.ingredient.id\r\n );\r\n\r\n const ingrWeight = quantityMultiplier * ingr.quantity * ingr.measurement.weightInGrams;\r\n\r\n // If found, push that one\r\n if (savedDisplay) {\r\n displays.push({\r\n ingredientId: savedDisplay.ingredientId,\r\n displayTextInPrimaryLanguage: savedDisplay.displayTextInPrimaryLanguage,\r\n displayTextInSecondaryLanguage: savedDisplay.displayTextInSecondaryLanguage,\r\n isAllergen: savedDisplay.isAllergen,\r\n isBranded: ingr.ingredient.components != null,\r\n weightInGrams: ingrWeight,\r\n });\r\n }\r\n\r\n else {\r\n let displayTextInPrimaryLanguage = ingr.ingredient.name;\r\n // If custom ingredient has sub ingredients, concat them to the name\r\n if (ingr.ingredient.subIngredients) {\r\n displayTextInPrimaryLanguage += ` (${ingr.ingredient.subIngredients})`;\r\n }\r\n\r\n if (ingr.ingredient.components) {\r\n displayTextInPrimaryLanguage = ingr.ingredient.components;\r\n }\r\n\r\n displays.push({\r\n ingredientId: ingr.ingredient.id,\r\n displayTextInPrimaryLanguage: displayTextInPrimaryLanguage,\r\n displayTextInSecondaryLanguage: \"\",\r\n isAllergen: false,\r\n isBranded: ingr.ingredient.components != null,\r\n weightInGrams: ingrWeight,\r\n });\r\n }\r\n });\r\n\r\n return displays;\r\n}\r\n\r\nfunction getSubrecipeDisplayAsIngredients(\r\n subrecipe: Subrecipe,\r\n savedDisplays: IngredientDisplay[],\r\n subrecipeMeasurements: RecipeCompositionMeasurement[],\r\n quantityMultiplier: number = 1\r\n) {\r\n\r\n let displays: IngredientDisplay[] = getIngredientDisplays(\r\n subrecipe.recipe.ingredients,\r\n savedDisplays,\r\n subrecipe.quantity * quantityMultiplier\r\n );\r\n\r\n for (const childRecipe of subrecipe.recipe.childRecipes) {\r\n const subrecipeWeight = getSubrecipeWeightInGrams(childRecipe, subrecipeMeasurements);\r\n const subrecipeWeightAsServings = subrecipeWeight / childRecipe.weightPerServing;\r\n\r\n const fetchedDisplays = getSubrecipeDisplayAsIngredients(\r\n childRecipe,\r\n savedDisplays,\r\n subrecipeMeasurements,\r\n subrecipeWeightAsServings * quantityMultiplier\r\n );\r\n\r\n displays = displays.concat(fetchedDisplays);\r\n }\r\n\r\n return displays;\r\n}\r\n\r\nexport function getIngredientAndSubRecipeDisplays(\r\n ingredientDisplays: IngredientDisplay[],\r\n recipe: Recipe,\r\n subRecipeDisplays: IngredientDisplay[],\r\n subrecipeMeasurements: RecipeCompositionMeasurement[],\r\n renderExpandedSubrecipes: boolean = false\r\n): IngredientDisplay[] {\r\n let preprocessedDisplays: IngredientDisplay[] = ingredientDisplays;\r\n\r\n if (renderExpandedSubrecipes) {\r\n // Prep the subrecipes to be displayed as ingredients\r\n for (const subrecipe of recipe.childRecipes) {\r\n //const subrecipeWeight = getSubrecipeWeightInGrams(subrecipe, subrecipeMeasurements);\r\n //const subrecipeWeightAsServings = subrecipeWeight / subrecipe.weightPerServing;\r\n\r\n ingredientDisplays = ingredientDisplays.concat(\r\n getSubrecipeDisplayAsIngredients(\r\n subrecipe,\r\n ingredientDisplays,\r\n subrecipeMeasurements,\r\n 1\r\n )\r\n );\r\n }\r\n\r\n // Group the displays by ingredientId so that we can sum the weights\r\n const groupedDisplays = groupBy(ingredientDisplays, (x) => x.ingredientId.toString());\r\n const rv: IngredientDisplay[] = [];\r\n\r\n // Sum the weights of the grouped displays\r\n for (const key of groupedDisplays.keys()) {\r\n const ingredientDisplays: IngredientDisplay[] = groupedDisplays.get(key);\r\n\r\n if (ingredientDisplays) {\r\n const totalWeight = ingredientDisplays.reduce(\r\n (acc, x) => acc + x.weightInGrams,\r\n 0\r\n );\r\n\r\n // Clone the first display of the group to not accumulate the weight over multiple displays\r\n const display = structuredClone(ingredientDisplays[0]);\r\n display.weightInGrams = totalWeight;\r\n rv.push(display);\r\n }\r\n }\r\n\r\n return rv;\r\n }\r\n\r\n else {\r\n return preprocessedDisplays.concat(subRecipeDisplays);\r\n }\r\n}\r\n","import { getIngredientAndSubRecipeDisplays, getIngredientDisplays, getSubrecipeWeightInGrams } from \"@/services/ExportLabel.service\";\r\nimport IngredientDisplay from \"../Ingredient/IngredientDisplay\";\r\nimport Language from \"../Language\";\r\nimport Translations from \"../Localization/Translations\";\r\nimport { Recipe } from \"../Recipes/Recipe\";\r\nimport { RecipeCompositionMeasurement } from \"../Recipes/RecipeCompositionMeasurement\";\r\nimport { AdditionalContent } from \"./AdditionalContent\";\r\nimport { ContainsLessThanPercentOfContent } from \"./ContainsLessThanPercentOfContent\";\r\nimport { DietaryTypes } from \"./DietaryTypes\";\r\nimport FreeTextPlaceholder from \"./FreeTextPlaceholder\";\r\nimport { HeaderLanguageTranslations } from \"./HeaderLanguageTranslations\";\r\nimport { LabelTypeMetadata } from \"./LabelTypeMetadata\";\r\nimport { NutritionCountry } from \"./NutritionCountry\";\r\nimport { NutritionLabel } from \"./NutritionLabel\";\r\nimport { RecipeIngredient } from \"../Recipes/RecipeIngredient\";\r\n\r\nexport class ExportLabelState {\r\n allergens: {\r\n id: string;\r\n isChecked: boolean;\r\n primaryLanguageName: string;\r\n secondaryLanguageName: string;\r\n }[];\r\n dietary: number[];\r\n mayContain: AdditionalContent;\r\n cautionaryMessage: AdditionalContent;\r\n containsLessThanPercentOf: ContainsLessThanPercentOfContent;\r\n headerLabelTranslations: HeaderLanguageTranslations;\r\n labelPreview: string;\r\n fopLabelPreview: string;\r\n includeIngredients: boolean;\r\n renderExpandedSubrecipes: boolean;\r\n loading: boolean;\r\n disableDownload: boolean;\r\n freeTextPlaceholders: FreeTextPlaceholder[];\r\n isIE: boolean;\r\n fopNutritionLabelId: number;\r\n labelTypes: {\r\n [LabelTypeMetadata.FrontOfPack]: {\r\n fopFormat: number;\r\n pdsSize: number;\r\n includeInDownload: boolean;\r\n };\r\n };\r\n nutritionCountry: NutritionCountry | null;\r\n nutritionLabel: NutritionLabel | null;\r\n primaryLanguage: Language | null;\r\n secondaryLanguage: Language | null;\r\n ingredientAndSubRecipeDisplaysModel : {\r\n combinedSubRecipeList : IngredientDisplay[];\r\n expandedSubRecipeList : IngredientDisplay[];\r\n };\r\n savedDisplays: IngredientDisplay[];\r\n savedNutritionLabelId: number;\r\n savedSubRecipeDisplays: IngredientDisplay[];\r\n\r\n // Used to store value of placeholders of saved label\r\n textPlaceholdersOfSavedLabel: FreeTextPlaceholder[] | null;\r\n\r\n constructor() {\r\n this.allergens = [\r\n {\r\n id: \"Celery\",\r\n isChecked: false,\r\n primaryLanguageName: \"Celery\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Lupin\",\r\n isChecked: false,\r\n primaryLanguageName: \"Lupin\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"SesameSeed\",\r\n isChecked: false,\r\n primaryLanguageName: \"SesameSeed\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Wheat\",\r\n isChecked: false,\r\n primaryLanguageName: \"Wheat\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Crustaceans\",\r\n isChecked: false,\r\n primaryLanguageName: \"Crustaceans\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Milk\",\r\n isChecked: false,\r\n primaryLanguageName: \"Milk\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Shelfish\",\r\n isChecked: false,\r\n primaryLanguageName: \"Shelfish\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Egg\",\r\n isChecked: false,\r\n primaryLanguageName: \"Egg\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Molluscs\",\r\n isChecked: false,\r\n primaryLanguageName: \"Molluscs\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Soy\",\r\n isChecked: false,\r\n primaryLanguageName: \"Soy\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Fish\",\r\n isChecked: false,\r\n primaryLanguageName: \"Fish\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Mustard\",\r\n isChecked: false,\r\n primaryLanguageName: \"Mustard\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Sulphites\",\r\n isChecked: false,\r\n primaryLanguageName: \"Sulphites\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Gluten\",\r\n isChecked: false,\r\n primaryLanguageName: \"Gluten\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"Peanut\",\r\n isChecked: false,\r\n primaryLanguageName: \"Peanut\",\r\n secondaryLanguageName: \"\",\r\n },\r\n {\r\n id: \"TreeNuts\",\r\n isChecked: false,\r\n primaryLanguageName: \"TreeNuts\",\r\n secondaryLanguageName: \"\",\r\n },\r\n ];\r\n this.dietary = [];\r\n this.mayContain = {\r\n primaryLanguageAdditionalContent: \"\",\r\n secondaryLanguageAdditionalContent: \"\",\r\n };\r\n this.cautionaryMessage = {\r\n primaryLanguageAdditionalContent: \"\",\r\n secondaryLanguageAdditionalContent: \"\",\r\n };\r\n this.containsLessThanPercentOf = {\r\n primaryLanguageContainsLessThanText: \"Contains less than\",\r\n secondaryLanguageContainsLessThanText: \"\",\r\n\r\n primaryLanguagePercentOfText: \"percent of\",\r\n secondaryLanguagePercentOfText: \"\",\r\n\r\n thresholdPercent: 2.0\r\n };\r\n this.headerLabelTranslations = {\r\n ingredientsPrimaryLanguageTranslation: \"Ingredients\",\r\n ingredientsSecondaryLanguageTranslation: \"\",\r\n\r\n containsPrimaryLanguageTranslation: \"Contains\",\r\n containsSecondaryLanguageTranslation: \"\",\r\n\r\n mayContainPrimaryLanguageTranslation: \"May contain\",\r\n mayContainSecondaryLanguageTranslation: \"\",\r\n\r\n cautionaryMessagePrimaryLanguageTranslation: \"Caution\",\r\n cautionaryMessageSecondaryLanguageTranslation: \"\",\r\n };\r\n this.labelPreview = \"\";\r\n this.fopLabelPreview = \"\";\r\n this.includeIngredients = true;\r\n this.renderExpandedSubrecipes = false;\r\n this.loading = false;\r\n this.disableDownload = true;\r\n this.freeTextPlaceholders = [];\r\n this.isIE = false;\r\n this.fopNutritionLabelId = 0;\r\n this.labelTypes = {\r\n [LabelTypeMetadata.FrontOfPack]: {\r\n fopFormat: 1,\r\n pdsSize: 1,\r\n includeInDownload: true\r\n }\r\n };\r\n this.nutritionCountry = null;\r\n this.nutritionLabel = null;\r\n this.primaryLanguage = null;\r\n this.secondaryLanguage = null;\r\n this.ingredientAndSubRecipeDisplaysModel = {\r\n combinedSubRecipeList: [],\r\n expandedSubRecipeList: []\r\n };\r\n this.savedDisplays = [];\r\n this.savedNutritionLabelId = null;\r\n this.savedSubRecipeDisplays = [];\r\n\r\n this.textPlaceholdersOfSavedLabel = null;\r\n };\r\n\r\n get checkedAllergens() {\r\n return this.allergens.filter((x) => x.isChecked == true);\r\n }\r\n\r\n getDietaryTypes(translationInstance: Translations) {\r\n let types: { name: string; value: number; isChecked: boolean }[] = [];\r\n for (let dt in DietaryTypes) {\r\n let isValueProperty: boolean = parseInt(dt, 10) >= 0;\r\n if (isValueProperty)\r\n types.push({\r\n name: translationInstance.get(`labels_d_${DietaryTypes[dt]}`),\r\n value: parseInt(dt),\r\n isChecked: this.dietary.includes(parseInt(dt)),\r\n });\r\n }\r\n return types;\r\n }\r\n\r\n get isBilingual() {\r\n return this.nutritionLabel && this.nutritionLabel.isBilingual;\r\n }\r\n\r\n /**\r\n * Gets a formatted list of ingredient displays\r\n * NOTE: This is for Recipes only\r\n */\r\n getIngredientDisplays(recipe: Recipe): IngredientDisplay[] {\r\n // If we're in a dish recipe, ingredients will be undefined, so we use an empty array\r\n return getIngredientDisplays(recipe.ingredients || [], this.savedDisplays);\r\n }\r\n\r\n /**\r\n * Gets a formatted list of sub-recipe displays\r\n * These take the format of Subrecipe (ingredient1, ingredient2, ingredient3, ...)\r\n */\r\n getSubRecipeDisplays(\r\n recipe: Recipe,\r\n subrecipeMeasurements: RecipeCompositionMeasurement[]\r\n ): IngredientDisplay[] {\r\n // check if there is a recipe\r\n // if not, will return empty aRRAY\r\n const displays: IngredientDisplay[] = [];\r\n\r\n if (recipe) {\r\n // map the ingredients\r\n recipe.childRecipes.map((recipe) => {\r\n // See if you can find savedDisplay in savedDisplays for the recipe Id\r\n const savedDisplay = this.savedSubRecipeDisplays.find(\r\n (x) => x.recipeId == recipe.recipe.id\r\n );\r\n\r\n const subRecipeWeight = getSubrecipeWeightInGrams(recipe, subrecipeMeasurements);\r\n\r\n // If found, push that one\r\n if (savedDisplay) {\r\n displays.push({\r\n recipeId: savedDisplay.recipeId,\r\n displayTextInPrimaryLanguage: savedDisplay.displayTextInPrimaryLanguage,\r\n displayTextInSecondaryLanguage: savedDisplay.displayTextInSecondaryLanguage,\r\n isAllergen: false,\r\n isBranded: false,\r\n weightInGrams: subRecipeWeight,\r\n });\r\n }\r\n\r\n else {\r\n // First level\r\n let displayTextInPrimaryLanguage = recipe.recipe.name;\r\n\r\n if (recipe.recipe.ingredients.length > 0) {\r\n // Concat the subRecipe's ingredients\r\n const firstLevelSubRecipe = this._subRecipeIngredients(\r\n recipe.recipe.ingredients\r\n );\r\n\r\n displayTextInPrimaryLanguage += \" (\" + firstLevelSubRecipe.join(\", \");\r\n }\r\n\r\n // Second level\r\n recipe.recipe.childRecipes.forEach((childRecipe) => {\r\n displayTextInPrimaryLanguage += (\r\n (recipe.recipe.ingredients.length > 0 ? \", \" : \" (\") + childRecipe.recipe.name\r\n );\r\n\r\n if (childRecipe.recipe.ingredients.length > 0) {\r\n // Concat the subRecipe's child ingredients\r\n const secondLevelSubRecipe = this._subRecipeIngredients(\r\n childRecipe.recipe.ingredients\r\n );\r\n\r\n displayTextInPrimaryLanguage += \" (\" + secondLevelSubRecipe.join(\", \");\r\n }\r\n\r\n // Third level: Concat the subRecipe's child -> child recipes only by name\r\n childRecipe.recipe.childRecipes.forEach((thirdLevelChildRecipe) => {\r\n displayTextInPrimaryLanguage += (\r\n (childRecipe.recipe.ingredients.length > 0 ? \", \" : \" (\") + thirdLevelChildRecipe.recipe.name\r\n );\r\n });\r\n\r\n displayTextInPrimaryLanguage += \")\";\r\n });\r\n displayTextInPrimaryLanguage += \")\";\r\n\r\n displays.push({\r\n recipeId: recipe.recipe.id,\r\n displayTextInPrimaryLanguage: displayTextInPrimaryLanguage,\r\n displayTextInSecondaryLanguage: \"\",\r\n isAllergen: false,\r\n isBranded: false,\r\n weightInGrams: subRecipeWeight,\r\n });\r\n }\r\n });\r\n }\r\n\r\n return displays;\r\n }\r\n\r\n // Merge ingredientDisplay and subRecipeDisplay\r\n getIngredientAndSubRecipeDisplays(\r\n recipe: Recipe,\r\n subrecipeMeasurements: RecipeCompositionMeasurement[],\r\n renderExpandedSubrecipes : boolean\r\n ): IngredientDisplay[] {\r\n const displays = getIngredientAndSubRecipeDisplays(\r\n this.getIngredientDisplays(recipe),\r\n recipe,\r\n this.getSubRecipeDisplays(recipe, subrecipeMeasurements),\r\n subrecipeMeasurements,\r\n renderExpandedSubrecipes\r\n );\r\n\r\n return displays;\r\n }\r\n\r\n // Create list of subRecipe's ingredients\r\n _subRecipeIngredients(ingredients: RecipeIngredient[]): string[] {\r\n // Sort ingredients by their quantity contribution in the subRecipe\r\n ingredients.sort(\r\n (firstIngredient, secondIngredient) =>\r\n (secondIngredient.quantity * secondIngredient.measurement.weightInGrams) - (firstIngredient.quantity * firstIngredient.measurement.weightInGrams)\r\n );\r\n\r\n const subRecipeIngredients: string[] = [];\r\n ingredients.forEach((ingredient) => {\r\n subRecipeIngredients.push(ingredient.ingredient.name);\r\n });\r\n\r\n return subRecipeIngredients;\r\n }\r\n\r\n};\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-group\"},[_c('label',{staticStyle:{\"font-size\":\"12px\",\"font-weight\":\"bold\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_less_than_percent_of\")))]),_c('br'),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-5\"},[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model.primaryLanguageContainsLessThanText),expression:\"model.primaryLanguageContainsLessThanText\"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.model.primaryLanguageContainsLessThanText)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model, \"primaryLanguageContainsLessThanText\", $event.target.value)},function($event){return _vm.$emit('all-input')}]}}),_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\",\"margin-top\":\"10px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model.secondaryLanguageContainsLessThanText),expression:\"model.secondaryLanguageContainsLessThanText\"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.model.secondaryLanguageContainsLessThanText)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model, \"secondaryLanguageContainsLessThanText\", $event.target.value)},function($event){return _vm.$emit('all-input')}]}})]),_c('div',{staticClass:\"col-2 my-auto\"},[_c('label',{staticClass:\"label-subheader\"},[_vm._v(_vm._s(_vm.translations.get(\"label_export_threshold_percent\")))]),_c('v-select',{attrs:{\"multiple\":false,\"label\":'threshold percent',\"options\":_vm.acceptableThresholds,\"clearable\":false,\"placeholder\":2.0},on:{\"input\":function($event){return _vm.$emit('all-input')}},model:{value:(_vm.model.thresholdPercent),callback:function ($$v) {_vm.$set(_vm.model, \"thresholdPercent\", $$v)},expression:\"model.thresholdPercent\"}})],1),_c('div',{staticClass:\"col-5\"},[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model.primaryLanguagePercentOfText),expression:\"model.primaryLanguagePercentOfText\"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.model.primaryLanguagePercentOfText)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model, \"primaryLanguagePercentOfText\", $event.target.value)},function($event){return _vm.$emit('all-input')}]}}),_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\",\"margin-top\":\"10px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model.secondaryLanguagePercentOfText),expression:\"model.secondaryLanguagePercentOfText\"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.model.secondaryLanguagePercentOfText)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model, \"secondaryLanguagePercentOfText\", $event.target.value)},function($event){return _vm.$emit('all-input')}]}})])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Model, Vue } from \"vue-property-decorator\";\r\nimport { mapState } from \"vuex\";\r\nimport { ContainsLessThanPercentOfContent } from \"@/models/NutritionLabels/ContainsLessThanPercentOfContent\";\r\nimport Translations from \"@/models/Localization/Translations\";\r\nimport { LocalizationState } from \"@/store/modules/LocalizationModule\";\r\n\r\n@Component({\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n }),\r\n },\r\n})\r\nexport default class vUSContainsPercentOfForm extends Vue {\r\n @Model() model!: ContainsLessThanPercentOfContent;\r\n\r\n private localizationState!: LocalizationState;\r\n\r\n // Values as specified by CR82\r\n acceptableThresholds = [0.5, 1.0, 1.5, 2.0];\r\n\r\n get translations(): Translations {\r\n return this.localizationState.translations;\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!./vUSContainsPercentOfForm.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!./vUSContainsPercentOfForm.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vUSContainsPercentOfForm.vue?vue&type=template&id=2aa2a9f2\"\nimport script from \"./vUSContainsPercentOfForm.vue?vue&type=script&lang=ts\"\nexport * from \"./vUSContainsPercentOfForm.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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col-12 accordion-header\",on:{\"click\":_vm.expandAccordion}},[_c('i',{staticClass:\"fa fa-chevron-down chevron\",class:{ active: _vm.isExpanded }}),_c('h4',{staticStyle:{\"display\":\"inline-block\",\"margin-left\":\"20px\"}},[_vm._v(\"\\n \"+_vm._s(_vm.translations.get(_vm.accordionTitleTranslationKey))+\"\\n \")])]),_c('transition',{attrs:{\"name\":\"accordion\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isExpanded),expression:\"isExpanded\"}],staticClass:\"col-12 toggle-container\",staticStyle:{\"overflow\":\"hidden\"}},[_vm._t(\"accordion-content\")],2)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Vue, Component, Prop } from \"vue-property-decorator\";\r\nimport { LocalizationState } from \"@/store/modules/LocalizationModule\";\r\nimport { mapState } from \"vuex\";\r\n\r\n@Component({\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n }),\r\n },\r\n})\r\nexport default class vAccordion extends Vue {\r\n @Prop() accordionTitleTranslationKey!: string;\r\n\r\n isExpanded = false;\r\n localizationState: LocalizationState;\r\n\r\n expandAccordion() {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n\r\n get translations() {\r\n return this.localizationState.translations;\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!./vAccordion.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!./vAccordion.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vAccordion.vue?vue&type=template&id=707962e4&scoped=true\"\nimport script from \"./vAccordion.vue?vue&type=script&lang=ts\"\nexport * from \"./vAccordion.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vAccordion.vue?vue&type=style&index=0&id=707962e4&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 \"707962e4\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.isLoading)?_c('div',{staticClass:\"label-wrapper centered\",staticStyle:{\"flex-grow\":\"1\"}},[_c('vPreLoader')],1):(_vm.shouldDisplayLabel)?_c('div',{staticClass:\"centered\"},[_c('img',{staticClass:\"image-label\",attrs:{\"id\":\"labelPreview\",\"src\":`data:image/png;base64,${_vm.labelPreviewBase64}`}})]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Vue, Component, Prop } from \"vue-property-decorator\";\r\nimport { LocalizationState } from \"@/store/modules/LocalizationModule\";\r\nimport { mapState } from \"vuex\";\r\n\r\nimport vPreLoader from \"./vPreLoader.vue\";\r\n\r\n@Component({\r\n components: {\r\n vPreLoader\r\n },\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n }),\r\n },\r\n})\r\nexport default class vLabelPreviewImage extends Vue {\r\n @Prop() isLoading!: boolean;\r\n @Prop() shouldDisplayLabel!: boolean;\r\n @Prop() labelPreviewBase64!: string;\r\n\r\n localizationState: LocalizationState;\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!./vLabelPreviewImage.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!./vLabelPreviewImage.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vLabelPreviewImage.vue?vue&type=template&id=60a6ab82&scoped=true\"\nimport script from \"./vLabelPreviewImage.vue?vue&type=script&lang=ts\"\nexport * from \"./vLabelPreviewImage.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vLabelPreviewImage.vue?vue&type=style&index=0&id=60a6ab82&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 \"60a6ab82\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.model.nutritionCountry && _vm.model.nutritionCountry.name == 'Canada' && _vm.packageLabelType == _vm.LabelTypeMetadata.FrontOfPack)?_c('div',{staticClass:\"alert alert-warning border border-warning\"},[_c('i',{staticClass:\"fa fa-info-circle\",attrs:{\"title\":\"exemptions\"}}),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"fop_warning\"))+\"\\n \")]):_vm._e(),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col-12 col-md-12\"},[_c('div',{staticClass:\"form-group\"},[_c('label',[_vm._v(_vm._s(_vm.translations.get(\"label_format\")))]),_c('v-select',{attrs:{\"options\":_vm.labelFormatOptions,\"label\":\"formatTranslationKey\",\"reduce\":_vm.foPFormatReducer,\"clearable\":false,\"disabled\":!_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack].includeInDownload},on:{\"input\":_vm.fetchLabelFormats},scopedSlots:_vm._u([{key:\"option\",fn:function(option){return [_vm._v(\"\\n \"+_vm._s(_vm.translations.get(option.formatTranslationKey))+\"\\n \")]}},{key:\"selected-option\",fn:function(option){return [_vm._v(\"\\n \"+_vm._s(_vm.translations.get(option.formatTranslationKey))+\"\\n \")]}}]),model:{value:(_vm.selectedFormat),callback:function ($$v) {_vm.selectedFormat=$$v},expression:\"selectedFormat\"}})],1)]),_c('div',{staticClass:\"col-12 col-md-12\"},[_c('div',{staticClass:\"form-group\"},[_c('label',[_vm._v(_vm._s(_vm.translations.get(\"pds_size\")))]),_c('v-select',{attrs:{\"label\":\"translationKey\",\"options\":_vm.pdsSizeOptions,\"disabled\":!_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack].fopFormat || !_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack].includeInDownload,\"reduce\":_vm.foPPDSReducer,\"clearable\":false},on:{\"input\":_vm.fetchPreview},scopedSlots:_vm._u([{key:\"option\",fn:function(option){return [_vm._v(\"\\n \"+_vm._s(_vm.translations.get(option.translationKey))+\"\\n \")]}},{key:\"selected-option\",fn:function(option){return [_vm._v(\"\\n \"+_vm._s(_vm.translations.get(option.translationKey))+\"\\n \")]}}]),model:{value:(_vm.selectedPDS),callback:function ($$v) {_vm.selectedPDS=$$v},expression:\"selectedPDS\"}})],1)]),_c('div',{staticClass:\"checkbox check-primary col-6\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack].includeInDownload),expression:\"model.labelTypes[LabelTypeMetadata.FrontOfPack].includeInDownload\"}],attrs:{\"id\":\"includeInDownload\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack].includeInDownload)?_vm._i(_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack].includeInDownload,null)>-1:(_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack].includeInDownload)},on:{\"change\":function($event){var $$a=_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack].includeInDownload,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack], \"includeInDownload\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack], \"includeInDownload\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.model.labelTypes[_vm.LabelTypeMetadata.FrontOfPack], \"includeInDownload\", $$c)}}}}),_c('label',{attrs:{\"for\":\"includeInDownload\"}},[_vm._v(_vm._s(_vm.translations.get(\"fop_include_in_download\")))])])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Model, Prop, Vue } from \"vue-property-decorator\";\r\nimport { LocalizationState } from \"@/store/modules/LocalizationModule\";\r\nimport { mapState } from \"vuex\";\r\nimport { FOPLabelFormatData } from \"@/models/NutritionLabels/FOPLabelFormatData\";\r\nimport { SupportedPDS } from \"@/models/NutritionLabels/SupportedPDS\";\r\nimport NutritionLabelRepository from \"@/utils/API/NutritionLabelRepository\";\r\nimport { ExportLabelState } from \"@/models/NutritionLabels/ExportLabelState\";\r\nimport { CanadaFOPHighInMetadata } from \"@/models/NutritionLabels/CanadaFOPHighInMetadata\";\r\nimport { LabelTypeMetadata } from \"@/models/NutritionLabels/LabelTypeMetadata\";\r\n\r\n@Component({\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n }),\r\n },\r\n})\r\nexport default class vFrontOfPackageConfig extends Vue {\r\n @Model() model!: ExportLabelState;\r\n @Prop() recipeId!: number;\r\n @Prop() packageLabelType!: LabelTypeMetadata;\r\n @Prop() highIn!: CanadaFOPHighInMetadata;\r\n\r\n pdsSizeOptions: SupportedPDS[] = [];\r\n\r\n private localizationState!: LocalizationState;\r\n labelFormatOptions: FOPLabelFormatData[] = [];\r\n\r\n LabelTypeMetadata = LabelTypeMetadata;\r\n\r\n selectedFormat: FOPLabelFormatData = null;\r\n selectedPDS: SupportedPDS = null;\r\n\r\n get translations() {\r\n return this.localizationState.translations;\r\n }\r\n\r\n created() {\r\n this.loadLabelFormats();\r\n }\r\n\r\n loadLabelFormats() {\r\n if (this.model.nutritionCountry && this.model.nutritionCountry.name == \"Canada\") {\r\n NutritionLabelRepository.getFrontOfPackageOptions().then((response) => {\r\n this.labelFormatOptions = response.data.result;\r\n let savedFormat = this.labelFormatOptions.find(\r\n (x: any) => x.formatValue == this.model.labelTypes[LabelTypeMetadata.FrontOfPack].fopFormat\r\n );\r\n\r\n this.updateFOPSelections(savedFormat);\r\n });\r\n }\r\n }\r\n\r\n updateFOPSelections(selectedFormat : FOPLabelFormatData){\r\n this.selectedPDS = selectedFormat.supportedPDS.find(\r\n (x: any) => x.value == this.model.labelTypes[LabelTypeMetadata.FrontOfPack].pdsSize\r\n );\r\n this.selectedFormat = selectedFormat;\r\n\r\n this.pdsSizeOptions = selectedFormat.supportedPDS;\r\n this.fetchFOPLabel();\r\n }\r\n\r\n foPFormatReducer(fopData: FOPLabelFormatData) {\r\n return fopData.formatValue;\r\n }\r\n\r\n foPPDSReducer(pdsData: SupportedPDS) {\r\n return pdsData.translationKey;\r\n }\r\n\r\n //Load FOP Label\r\n fetchFOPLabel(){\r\n const data = {\r\n recipeId: this.recipeId,\r\n labelFormatValue: this.model.labelTypes[LabelTypeMetadata.FrontOfPack].fopFormat,\r\n pdsSizeValue: this.model.labelTypes[LabelTypeMetadata.FrontOfPack].pdsSize,\r\n labelType: this.packageLabelType,\r\n highInMetadata: this.highIn\r\n };\r\n this.model.loading = true;\r\n NutritionLabelRepository.previewFOPNutritionLabel(data)\r\n .then((response) => {\r\n this.model.loading = false;\r\n this.model.fopLabelPreview = response.data.result.content;\r\n this.model.fopNutritionLabelId = response.data.result.id;\r\n this.model.disableDownload = false;\r\n });\r\n }\r\n\r\n fetchLabelFormats(selectedFormat : FOPLabelFormatData) {\r\n const selected = this.labelFormatOptions.find(\r\n (format) => format.formatValue === selectedFormat.formatValue\r\n );\r\n\r\n if (selected) {\r\n this.selectedFormat = selected;\r\n this.model.labelTypes[LabelTypeMetadata.FrontOfPack].fopFormat = selected.formatValue;\r\n this.updatePDSSizes(selected.supportedPDS);\r\n }\r\n }\r\n\r\n updatePDSSizes(supportedPDS : SupportedPDS[]) {\r\n this.pdsSizeOptions = supportedPDS;\r\n\r\n this.selectedPDS = this.pdsSizeOptions[0];\r\n this.model.labelTypes[LabelTypeMetadata.FrontOfPack].pdsSize = this.selectedPDS.value;\r\n this.fetchFOPLabel();\r\n }\r\n\r\n fetchPreview() {\r\n this.model.labelTypes[LabelTypeMetadata.FrontOfPack].pdsSize = this.selectedPDS.value;\r\n this.fetchFOPLabel();\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!./vFrontOfPackageConfig.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!./vFrontOfPackageConfig.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vFrontOfPackageConfig.vue?vue&type=template&id=3ea41e98\"\nimport script from \"./vFrontOfPackageConfig.vue?vue&type=script&lang=ts\"\nexport * from \"./vFrontOfPackageConfig.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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.model.nutritionCountry\n && _vm.model.nutritionCountry.name === 'Canada'\n && _vm.packageLabelType == _vm.LabelTypeMetadata.FrontOfPack\n )?_c('div',{staticClass:\"alert alert-warning border border-warning\"},[_c('i',{staticClass:\"fa fa-info-circle\",attrs:{\"title\":\"exemptions\"}}),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"fop_info\"))+\"\\n \")]):_vm._e(),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"row col-12\"},[_c('div',{staticClass:\"form-group col-md-6\"},[_c('label',[_vm._v(_vm._s(_vm.translations.get(\"labels_country\")))]),_c('v-select',{attrs:{\"options\":_vm.nutritionCountries,\"label\":\"name\"},on:{\"change\":_vm.fetchNutritionLabels},model:{value:(_vm.model.nutritionCountry),callback:function ($$v) {_vm.$set(_vm.model, \"nutritionCountry\", $$v)},expression:\"model.nutritionCountry\"}})],1),(_vm.model.nutritionCountry && _vm.model.nutritionCountry.name !== 'UK')?_c('div',{staticClass:\"toggle-container toggle-container-two-label col-md-6 justify-content-center\",staticStyle:{\"margin-top\":\"20px\"}},[_c('label',{staticClass:\"inline-toggle-label\"},[_vm._v(_vm._s(\"Nutrition Facts\"))]),_c('vToggleSwitch',{on:{\"toggled\":_vm.updateFilters},model:{value:(_vm.showSupplementFactsLabels),callback:function ($$v) {_vm.showSupplementFactsLabels=$$v},expression:\"showSupplementFactsLabels\"}}),_c('label',{staticClass:\"inline-toggle-label\"},[_vm._v(_vm._s(\"Supplemented Facts\"))])],1):_vm._e()]),_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"form-group\"},[_c('label',{staticClass:\"d-flex\",staticStyle:{\"gap\":\"1rem\"}},[_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"labels_label_type\"))+\"\\n \")]),_c('v-select',{attrs:{\"options\":_vm.filteredNutritionLabels,\"label\":\"name\",\"disabled\":_vm.model.nutritionCountry === null},on:{\"input\":_vm.fetchFreeTextFields},scopedSlots:_vm._u([{key:\"list-footer\",fn:function(){return [_c('li',{staticStyle:{\"text-align\":\"center\"}},[_vm._v(\"Not what you're looking for? Contact support for specialized labels.\")])]},proxy:true}]),model:{value:(_vm.model.nutritionLabel),callback:function ($$v) {_vm.$set(_vm.model, \"nutritionLabel\", $$v)},expression:\"model.nutritionLabel\"}})],1)]),_vm._l((_vm.model.freeTextPlaceholders),function(placeholder){return _c('div',{key:'placeholder' + placeholder.id,staticClass:\"col-12 col-md-6\"},[_c('div',{staticClass:\"form-group\"},[_c('label',[_vm._v(_vm._s(placeholder.displayText))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(placeholder.content),expression:\"placeholder.content\"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(placeholder.content)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(placeholder, \"content\", $event.target.value)},_vm.debouncedFetchPreview]}})])])}),_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"checkbox check-primary col-6\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model.includeIngredients),expression:\"model.includeIngredients\"}],attrs:{\"id\":\"includeIngredients\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.model.includeIngredients)?_vm._i(_vm.model.includeIngredients,null)>-1:(_vm.model.includeIngredients)},on:{\"change\":[function($event){var $$a=_vm.model.includeIngredients,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.model, \"includeIngredients\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.model, \"includeIngredients\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.model, \"includeIngredients\", $$c)}},_vm.debouncedFetchPreview]}}),_c('label',{attrs:{\"for\":\"includeIngredients\"}},[_vm._v(_vm._s(_vm.translations.get(\"labels_include_ingred\")))])]),(_vm.model.includeIngredients && _vm.subRecipeDisplays.length > 0)?_c('div',{staticClass:\"toggle-container toggle-container-two-label col-6\"},[_c('label',{staticClass:\"inline-toggle-label\"},[_vm._v(_vm._s(_vm.translations.get(\"labels_subrecipes_combined\")))]),_c('vToggleSwitch',{on:{\"toggled\":function($event){return _vm.toggleSubrecipeExpansion()}},model:{value:(_vm.model.renderExpandedSubrecipes),callback:function ($$v) {_vm.$set(_vm.model, \"renderExpandedSubrecipes\", $$v)},expression:\"model.renderExpandedSubrecipes\"}}),_c('label',{staticClass:\"inline-toggle-label\"},[_vm._v(_vm._s(_vm.translations.get(\"labels_subrecipes_expanded\")))])],1):_vm._e()]),_c('div',{staticClass:\"form-group\",staticStyle:{\"margin-top\":\"20px\"}},[_c('label',{staticStyle:{\"font-size\":\"12px\",\"font-weight\":\"bold\"}},[_vm._v(_vm._s(_vm.translations.get(\"labels_ingredients\")))])]),_c('div',{staticClass:\"col-12 form-group\",staticStyle:{\"margin-left\":\"-14px\",\"margin-top\":\"-13px\",\"display\":\"flex\"}},[_c('div',[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.headerLabelTranslations\n .ingredientsPrimaryLanguageTranslation\n ),expression:\"\\n model.headerLabelTranslations\\n .ingredientsPrimaryLanguageTranslation\\n \"}],staticClass:\"form-control\",staticStyle:{\"width\":\"150px\"},attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.headerLabelTranslations\n .ingredientsPrimaryLanguageTranslation\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.headerLabelTranslations\n , \"ingredientsPrimaryLanguageTranslation\", $event.target.value)},_vm.debouncedFetchPreview]}})]),(_vm.model.nutritionCountry && _vm.model.nutritionCountry.name != 'UK')?_c('div',{staticStyle:{\"margin-left\":\"40px\"}},[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.headerLabelTranslations\n .ingredientsSecondaryLanguageTranslation\n ),expression:\"\\n model.headerLabelTranslations\\n .ingredientsSecondaryLanguageTranslation\\n \"}],staticClass:\"form-control\",staticStyle:{\"width\":\"150px\"},attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.headerLabelTranslations\n .ingredientsSecondaryLanguageTranslation\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.headerLabelTranslations\n , \"ingredientsSecondaryLanguageTranslation\", $event.target.value)},_vm.debouncedFetchPreview]}})]):_vm._e()]),_c('vIngredientsDisplayNames',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.model.includeIngredients),expression:\"model.includeIngredients\"}],attrs:{\"ingredient-displays\":_vm.ingredientAndSubRecipeDisplays,\"country\":_vm.model.nutritionCountry},on:{\"update\":_vm.fetchPreview}}),(_vm.model.nutritionCountry && _vm.model.nutritionCountry.name === 'USA')?_c('vUSContainsPercentOfForm',{on:{\"all-input\":_vm.debouncedFetchPreview},model:{value:(_vm.model.containsLessThanPercentOf),callback:function ($$v) {_vm.$set(_vm.model, \"containsLessThanPercentOf\", $$v)},expression:\"model.containsLessThanPercentOf\"}}):_vm._e()],1)],2),_c('hr'),_c('vAccordion',{attrs:{\"accordion-title-translation-key\":\"labels_dietary\"}},[_c('template',{slot:\"accordion-content\"},_vm._l((_vm.dietaryTypes),function(type){return _c('span',{key:type.name,staticClass:\"item\"},[(_vm.model.isIE)?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(type.isChecked),expression:\"type.isChecked\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(type.isChecked)?_vm._i(type.isChecked,null)>-1:(type.isChecked)},on:{\"change\":[function($event){var $$a=type.isChecked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(type, \"isChecked\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(type, \"isChecked\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(type, \"isChecked\", $$c)}},function($event){$event.preventDefault();return _vm.toggleDietary(type.value)}]}}):_c('vToggleSwitch',{on:{\"toggled\":function($event){return _vm.toggleDietary(type.value)}},model:{value:(type.isChecked),callback:function ($$v) {_vm.$set(type, \"isChecked\", $$v)},expression:\"type.isChecked\"}}),_c('label',[_vm._v(_vm._s(type.name))])],1)}),0)],2),_c('hr'),_c('vAccordion',{attrs:{\"accordion-title-translation-key\":\"labels_cautionary_messages\"}},[_c('template',{slot:\"accordion-content\"},[_c('div',{staticClass:\"col-12 form-group\"},[_c('label',{staticClass:\"label-header\"},[_vm._v(_vm._s(_vm.translations.get(\"labels_cautionary_message\")))])]),_c('div',{staticClass:\"row col-12 form-group accordion-content\"},[_c('div',[_c('label',{staticClass:\"label-subheader\"},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.headerLabelTranslations\n .cautionaryMessagePrimaryLanguageTranslation\n ),expression:\"\\n model.headerLabelTranslations\\n .cautionaryMessagePrimaryLanguageTranslation\\n \"}],staticClass:\"form-control\",staticStyle:{\"width\":\"150px\"},attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.headerLabelTranslations\n .cautionaryMessagePrimaryLanguageTranslation\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.headerLabelTranslations\n , \"cautionaryMessagePrimaryLanguageTranslation\", $event.target.value)},_vm.debouncedFetchPreview]}})]),(_vm.model.nutritionCountry && _vm.model.nutritionCountry.name != 'UK')?_c('div',{staticStyle:{\"margin-left\":\"40px\"}},[_c('label',{staticClass:\"label-subheader\"},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.headerLabelTranslations\n .cautionaryMessageSecondaryLanguageTranslation\n ),expression:\"\\n model.headerLabelTranslations\\n .cautionaryMessageSecondaryLanguageTranslation\\n \"}],staticClass:\"form-control\",staticStyle:{\"width\":\"150px\"},attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.headerLabelTranslations\n .cautionaryMessageSecondaryLanguageTranslation\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.headerLabelTranslations\n , \"cautionaryMessageSecondaryLanguageTranslation\", $event.target.value)},_vm.debouncedFetchPreview]}})]):_vm._e()]),_c('div',{staticClass:\"col-12 form-group\"},[_c('label',{staticClass:\"label-header\"},[_vm._v(_vm._s(_vm.translations.get(\"labels_cautionary_message_body\")))]),_c('br'),_c('label',{staticClass:\"label-subheader\"},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.cautionaryMessage.primaryLanguageAdditionalContent\n ),expression:\"\\n model.cautionaryMessage.primaryLanguageAdditionalContent\\n \"}],staticClass:\"form-control\",attrs:{\"type\":\"text\",\"maxlength\":\"250\"},domProps:{\"value\":(\n _vm.model.cautionaryMessage.primaryLanguageAdditionalContent\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.cautionaryMessage, \"primaryLanguageAdditionalContent\", $event.target.value)},_vm.debouncedFetchPreview]}}),(_vm.model.nutritionCountry && _vm.model.nutritionCountry.name != 'UK')?_c('div',[_c('label',{staticClass:\"label-subheader\"},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.cautionaryMessage.secondaryLanguageAdditionalContent\n ),expression:\"\\n model.cautionaryMessage.secondaryLanguageAdditionalContent\\n \"}],staticClass:\"form-control\",attrs:{\"type\":\"text\",\"maxlength\":\"250\"},domProps:{\"value\":(\n _vm.model.cautionaryMessage.secondaryLanguageAdditionalContent\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.cautionaryMessage, \"secondaryLanguageAdditionalContent\", $event.target.value)},_vm.debouncedFetchPreview]}})]):_vm._e()])])],2),_c('hr'),(_vm.model.nutritionCountry && _vm.model.nutritionCountry.name != 'UK')?_c('vAccordion',{attrs:{\"accordion-title-translation-key\":\"labels_allergies\"}},[_c('template',{slot:\"accordion-content\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"form-group\"},[_c('label',{staticStyle:{\"font-size\":\"12px\",\"font-weight\":\"bold\"}},[_vm._v(_vm._s(_vm.translations.get(\"labels_contains\")))])])]),_c('div',{staticClass:\"col-12 form-group\",staticStyle:{\"margin-top\":\"-13px\",\"display\":\"flex\",\"margin-bottom\":\"28px\"}},[_c('div',[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.headerLabelTranslations\n .containsPrimaryLanguageTranslation\n ),expression:\"\\n model.headerLabelTranslations\\n .containsPrimaryLanguageTranslation\\n \"}],staticClass:\"form-control\",staticStyle:{\"width\":\"150px\"},attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.headerLabelTranslations\n .containsPrimaryLanguageTranslation\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.headerLabelTranslations\n , \"containsPrimaryLanguageTranslation\", $event.target.value)},_vm.debouncedFetchPreview]}})]),_c('div',{staticStyle:{\"margin-left\":\"40px\"}},[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.headerLabelTranslations\n .containsSecondaryLanguageTranslation\n ),expression:\"\\n model.headerLabelTranslations\\n .containsSecondaryLanguageTranslation\\n \"}],staticClass:\"form-control\",staticStyle:{\"width\":\"150px\"},attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.headerLabelTranslations\n .containsSecondaryLanguageTranslation\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.headerLabelTranslations\n , \"containsSecondaryLanguageTranslation\", $event.target.value)},_vm.debouncedFetchPreview]}})])]),_c('div',{staticClass:\"col-12 toggle-container\"},_vm._l((_vm.model.allergens),function(allergen){return _c('span',{key:allergen.id,staticClass:\"item\"},[(_vm.model.isIE)?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(allergen.isChecked),expression:\"allergen.isChecked\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(allergen.isChecked)?_vm._i(allergen.isChecked,null)>-1:(allergen.isChecked)},on:{\"change\":function($event){var $$a=allergen.isChecked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(allergen, \"isChecked\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(allergen, \"isChecked\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(allergen, \"isChecked\", $$c)}}}}):_c('vToggleSwitch',{on:{\"toggled\":function($event){return _vm.updateAllergenStatus(allergen, $event)}},model:{value:(allergen.isChecked),callback:function ($$v) {_vm.$set(allergen, \"isChecked\", $$v)},expression:\"allergen.isChecked\"}}),_c('label',{staticStyle:{\"margin-left\":\"6px\",\"font-weight\":\"700\"}},[_vm._v(_vm._s(allergen.id))]),_c('div',{staticClass:\"form-group\"},[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(allergen.primaryLanguageName),expression:\"allergen.primaryLanguageName\"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(allergen.primaryLanguageName)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(allergen, \"primaryLanguageName\", $event.target.value)},_vm.debouncedFetchPreview]}}),_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(allergen.secondaryLanguageName),expression:\"allergen.secondaryLanguageName\"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(allergen.secondaryLanguageName)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(allergen, \"secondaryLanguageName\", $event.target.value)},_vm.debouncedFetchPreview]}})])],1)}),0),_c('div',{staticClass:\"col-12\",staticStyle:{\"margin-top\":\"28px\"}},[_c('div',{staticClass:\"form-group\",staticStyle:{\"margin-bottom\":\"-16px\"}},[_c('label',{staticStyle:{\"font-size\":\"12px\",\"font-weight\":\"bold\",\"margin-bottom\":\"20px\"}},[_vm._v(_vm._s(_vm.translations.get(\"labels_may_contain\")))])])]),_c('div',{staticClass:\"col-12 form-group\",staticStyle:{\"margin-top\":\"-13px\",\"display\":\"flex\"}},[_c('div',[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.headerLabelTranslations\n .mayContainPrimaryLanguageTranslation\n ),expression:\"\\n model.headerLabelTranslations\\n .mayContainPrimaryLanguageTranslation\\n \"}],staticClass:\"form-control\",staticStyle:{\"width\":\"150px\"},attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.headerLabelTranslations\n .mayContainPrimaryLanguageTranslation\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.headerLabelTranslations\n , \"mayContainPrimaryLanguageTranslation\", $event.target.value)},_vm.debouncedFetchPreview]}})]),_c('div',{staticStyle:{\"margin-left\":\"40px\"}},[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.headerLabelTranslations\n .mayContainSecondaryLanguageTranslation\n ),expression:\"\\n model.headerLabelTranslations\\n .mayContainSecondaryLanguageTranslation\\n \"}],staticClass:\"form-control\",staticStyle:{\"width\":\"150px\"},attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.headerLabelTranslations\n .mayContainSecondaryLanguageTranslation\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.headerLabelTranslations\n , \"mayContainSecondaryLanguageTranslation\", $event.target.value)},_vm.debouncedFetchPreview]}})])]),_c('div',{staticClass:\"col-12 form-group\",staticStyle:{\"margin-top\":\"20px\"}},[_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_primary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.mayContain.primaryLanguageAdditionalContent\n ),expression:\"\\n model.mayContain.primaryLanguageAdditionalContent\\n \"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.mayContain.primaryLanguageAdditionalContent\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.mayContain, \"primaryLanguageAdditionalContent\", $event.target.value)},_vm.debouncedFetchPreview]}}),_c('label',{staticStyle:{\"font-size\":\"9px\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.translations.get(\"label_export_secondary_label\")))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(\n _vm.model.mayContain\n .secondaryLanguageAdditionalContent\n ),expression:\"\\n model.mayContain\\n .secondaryLanguageAdditionalContent\\n \"}],staticClass:\"form-control\",attrs:{\"type\":\"text\"},domProps:{\"value\":(\n _vm.model.mayContain\n .secondaryLanguageAdditionalContent\n )},on:{\"input\":[function($event){if($event.target.composing)return;_vm.$set(_vm.model.mayContain\n , \"secondaryLanguageAdditionalContent\", $event.target.value)},_vm.debouncedFetchPreview]}})])])],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Vue, Component, Prop, Model } from \"vue-property-decorator\";\r\nimport { LocalizationState } from \"@/store/modules/LocalizationModule\";\r\nimport { mapState } from \"vuex\";\r\n\r\nimport vToggleSwitch from \"./vToggleSwitch.vue\";\r\nimport vIngredientsDisplayNames from \"./vIngredientsDisplayNames.vue\";\r\nimport vUSContainsPercentOfForm from \"./vUSContainsPercentOfForm.vue\";\r\nimport vAccordion from \"./vAccordion.vue\";\r\nimport { ExportLabelState } from \"@/models/NutritionLabels/ExportLabelState\";\r\nimport NutritionLabelRepository from \"@/utils/API/NutritionLabelRepository\";\r\nimport { NutritionLabel } from \"@/models/NutritionLabels/NutritionLabel\";\r\nimport Language from \"@/models/Language\";\r\nimport { NutritionCountry } from \"@/models/NutritionLabels/NutritionCountry\";\r\nimport { Recipe } from \"@/models/Recipes/Recipe\";\r\nimport { RecipeCompositionMeasurement } from \"@/models/Recipes/RecipeCompositionMeasurement\";\r\nimport { debounce } from \"@/utils/Helpers\";\r\nimport { DietaryTypes } from \"@/models/NutritionLabels/DietaryTypes\";\r\nimport { LabelTypeMetadata } from \"@/models/NutritionLabels/LabelTypeMetadata\";\r\nimport IngredientDisplay from \"@/models/Ingredient/IngredientDisplay\";\r\n\r\n@Component({\r\n components: {\r\n vToggleSwitch,\r\n vIngredientsDisplayNames,\r\n vUSContainsPercentOfForm,\r\n vAccordion\r\n },\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n accountStoreState: (state: any) => state.AccountModule,\r\n }),\r\n },\r\n})\r\nexport default class vBackOfPackageConfig extends Vue {\r\n LabelTypeMetadata = LabelTypeMetadata;\r\n localizationState: LocalizationState;\r\n\r\n @Model() model!: ExportLabelState;\r\n @Prop() recipe!: Recipe;\r\n @Prop() nutritionCountries!: NutritionCountry[];\r\n @Prop() packageLabelType!: LabelTypeMetadata;\r\n @Prop() languages!: Language[];\r\n @Prop({\r\n default: (): RecipeCompositionMeasurement[] => {\r\n return [];\r\n }\r\n }) subrecipeMeasurements!: RecipeCompositionMeasurement[];\r\n\r\n nutritionLabels: NutritionLabel[] = [];\r\n filteredNutritionLabels: NutritionLabel[] = [];\r\n subRecipeDisplays: IngredientDisplay[] = [];\r\n showSupplementFactsLabels: boolean = false;\r\n\r\n created(){\r\n this.ingredientAndSubRecipeDisplaysInit();\r\n }\r\n\r\n ingredientAndSubRecipeDisplaysInit() {\r\n this.subRecipeDisplays = this.model.getSubRecipeDisplays(this.recipe, this.subrecipeMeasurements);\r\n\r\n if(this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList.length == 0){\r\n this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList = this.model.getIngredientAndSubRecipeDisplays(\r\n this.recipe,\r\n this.subrecipeMeasurements,\r\n true\r\n );\r\n }\r\n\r\n if(this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList.length == 0){\r\n this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList = this.model.getIngredientAndSubRecipeDisplays(\r\n this.recipe,\r\n this.subrecipeMeasurements,\r\n false\r\n );\r\n }\r\n }\r\n\r\n updateFilters() {\r\n this.showSupplementFactsLabels = !this.showSupplementFactsLabels;\r\n this.updateLabelTypeList();\r\n this.resetNutritionLabel();\r\n this.fetchFreeTextFields();\r\n this.fetchPreview();\r\n }\r\n\r\n updateLabelTypeList() {\r\n let sortKey = null;\r\n if (this.showSupplementFactsLabels) {\r\n sortKey = (x: NutritionLabel) => x.labelType === LabelTypeMetadata.SupplementFact;\r\n }\r\n\r\n else {\r\n sortKey = (x: NutritionLabel) => x.labelType === LabelTypeMetadata.BackOfPack;\r\n }\r\n\r\n this.filteredNutritionLabels = this.nutritionLabels.filter(sortKey);\r\n }\r\n\r\n resetNutritionLabel(){\r\n this.model.nutritionLabel = this.filteredNutritionLabels[0];\r\n }\r\n\r\n labelWidth() {\r\n let width: any = 0;\r\n let label = document.getElementById(\"labelPreview\");\r\n width = label.naturalWidth;\r\n return width;\r\n }\r\n\r\n labelHeight() {\r\n let height: any = 0;\r\n\r\n let label = document.getElementById(\"labelPreview\");\r\n height = label.naturalHeight;\r\n\r\n return height;\r\n }\r\n\r\n updateAllergenStatus(allergen: any, isChecked: boolean) {\r\n allergen.isChecked = isChecked;\r\n this.fetchPreview();\r\n }\r\n\r\n async fetchNutritionLabels() {\r\n // TEMP: While we only have supplement facts labels for Canada, we always reset the toggle when changing countries\r\n // This should be changed once we approach US labels\r\n this.showSupplementFactsLabels = false;\r\n\r\n if (this.model.nutritionCountry) {\r\n const response = await NutritionLabelRepository.listNutritionLabels(\r\n this.model.nutritionCountry.id,\r\n LabelTypeMetadata.BackOfPack | LabelTypeMetadata.SupplementFact\r\n );\r\n\r\n this.nutritionLabels = response.data.result;\r\n\r\n if (this.model.savedNutritionLabelId > 0) {\r\n let nutritionLabel = this.nutritionLabels.find(\r\n (x: any) => x.id == this.model.savedNutritionLabelId\r\n );\r\n this.model.nutritionLabel = nutritionLabel ? nutritionLabel : null;\r\n }\r\n else {\r\n this.model.nutritionLabel = this.nutritionLabels[0];\r\n }\r\n\r\n if (this.languages.length) {\r\n this.model.primaryLanguage = this.languages[0];\r\n }\r\n\r\n //this.filteredNutritionLabels = this.nutritionLabels;\r\n\r\n this.fetchFreeTextFields();\r\n this.updateLabelTypeList();\r\n }\r\n else {\r\n this.model.nutritionLabel = null;\r\n }\r\n }\r\n\r\n fetchFreeTextFields() {\r\n if (this.model.nutritionLabel) {\r\n NutritionLabelRepository.getFreeTextPlaceholdersForNutritionLabel(\r\n this.model.nutritionLabel ? this.model.nutritionLabel.id : 0\r\n )\r\n .then((response) => {\r\n if (response.data.result) {\r\n let freeTextPlaceholders = response.data.result.map((x: any) => {\r\n const freeTextPlaceholder = this.model.freeTextPlaceholders.find(\r\n (y: any) => y.id == x.id\r\n );\r\n if (freeTextPlaceholder) {\r\n x.content = freeTextPlaceholder.content;\r\n }\r\n else if (this.model.textPlaceholdersOfSavedLabel != null) {\r\n /*\r\n Check to see if the prevouosly saved label has a placeholder content,\r\n then populate the content of the placeholder with its value.\r\n Covers the scenario when the user has a saved label but shuffels through other ones.\r\n */\r\n const freeTextPlaceholder = this.model.textPlaceholdersOfSavedLabel.find(\r\n (y: any) => y.id == x.id\r\n );\r\n if (freeTextPlaceholder) {\r\n x.content = freeTextPlaceholder.content;\r\n }\r\n }\r\n return x;\r\n });\r\n this.model.freeTextPlaceholders = freeTextPlaceholders;\r\n this.fetchPreview();\r\n }\r\n })\r\n .catch(() => {\r\n this.$snotify.error(\"Something happened! :(\");\r\n });\r\n }\r\n }\r\n\r\n debouncedFetchPreview() {\r\n debounce(this.fetchPreview, 1000);\r\n }\r\n\r\n toggleSubrecipeExpansion() {\r\n this.model.renderExpandedSubrecipes = !this.model.renderExpandedSubrecipes;\r\n\r\n if(this.model.renderExpandedSubrecipes){\r\n this.updateIngredientName();\r\n }\r\n else{\r\n this.copyIngredientNamesOver();\r\n }\r\n\r\n this.debouncedFetchPreview();\r\n }\r\n\r\n copyIngredientNamesOver(){\r\n this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList.forEach((expandedItem) => {\r\n const itemIndex = this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList.findIndex((i) => i.ingredientId === expandedItem.ingredientId);\r\n\r\n if (itemIndex !== -1) {\r\n this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList[itemIndex].displayTextInSecondaryLanguage = expandedItem.displayTextInSecondaryLanguage;\r\n this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList[itemIndex].displayTextInPrimaryLanguage = expandedItem.displayTextInPrimaryLanguage;\r\n this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList[itemIndex].displayText = expandedItem.displayText;\r\n }\r\n });\r\n }\r\n\r\n updateIngredientName(){\r\n this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList.forEach((expandedItem) => {\r\n const itemIndex = this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList.findIndex((i) => i.ingredientId === expandedItem.ingredientId);\r\n\r\n if (itemIndex !== -1) {\r\n this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList[itemIndex].displayTextInSecondaryLanguage = expandedItem.displayTextInSecondaryLanguage;\r\n this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList[itemIndex].displayTextInPrimaryLanguage = expandedItem.displayTextInPrimaryLanguage;\r\n this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList[itemIndex].displayText = expandedItem.displayText;\r\n }\r\n });\r\n }\r\n\r\n\r\n toggleDietary(value: number) {\r\n if (this.model.dietary.includes(value)) {\r\n this.model.dietary.splice(\r\n this.model.dietary.indexOf(value),\r\n 1\r\n );\r\n }\r\n else {\r\n this.model.dietary.push(value);\r\n }\r\n\r\n this.fetchPreview();\r\n }\r\n\r\n fetchPreview() {\r\n if (this.model.nutritionCountry && this.model.nutritionLabel && this.model.primaryLanguage) {\r\n if (this.model.nutritionCountry.name == \"UK\") {\r\n this.model.headerLabelTranslations.ingredientsSecondaryLanguageTranslation =\r\n \"\";\r\n this.model.getIngredientDisplays(this.recipe).map((ingredient) => {\r\n ingredient.displayTextInSecondaryLanguage = \"\";\r\n });\r\n }\r\n\r\n this.model.disableDownload = true;\r\n this.model.loading = true;\r\n\r\n NutritionLabelRepository.previewNutritionLabelForRecipe({\r\n recipeId: this.recipe.id,\r\n allergens: this.checkedAllergens,\r\n nutritionLabelId: this.model.nutritionLabel ? this.model.nutritionLabel.id : 0,\r\n primaryLanguage: this.model.primaryLanguage ? this.model.primaryLanguage.value : \"\",\r\n secondaryLanguage: this.model.secondaryLanguage ? this.model.secondaryLanguage.value : \"\",\r\n dietaryTypes: this.model.dietary,\r\n ingredientsIncluded: this.model.includeIngredients,\r\n additionalContent: this.model.mayContain,\r\n cautionaryMessage: this.model.cautionaryMessage,\r\n containsLessThanPercentOfText: this.model.containsLessThanPercentOf,\r\n headerTranslations: this.model.headerLabelTranslations,\r\n nutritionLabelDownloadFileFormat: 0,\r\n labelWidth: 0,\r\n labelHeight: 0,\r\n freeTextPlaceholders: this.model.freeTextPlaceholders,\r\n ingredientDisplayModels: this.model.renderExpandedSubrecipes\r\n ? this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList\r\n : this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList,\r\n })\r\n .then((response) => {\r\n this.model.labelPreview = response.data.result;\r\n this.model.loading = false;\r\n this.model.disableDownload = false;\r\n });\r\n }\r\n }\r\n\r\n get ingredientAndSubRecipeDisplays(){\r\n if(this.model.renderExpandedSubrecipes) {\r\n return this.model.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList;\r\n }\r\n else{\r\n return this.model.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList;\r\n }\r\n }\r\n\r\n get checkedAllergens() {\r\n return this.model.allergens.filter((x) => x.isChecked == true);\r\n }\r\n\r\n get dietaryTypes() {\r\n let types: { name: string; value: number; isChecked: boolean }[] = [];\r\n for (let dt in DietaryTypes) {\r\n let isValueProperty: boolean = parseInt(dt, 10) >= 0;\r\n if (isValueProperty)\r\n types.push({\r\n name: this.translations.get(`labels_d_${DietaryTypes[dt]}`),\r\n value: parseInt(dt),\r\n isChecked: this.model.dietary.includes(parseInt(dt)),\r\n });\r\n }\r\n return types;\r\n }\r\n\r\n get isBilingual() {\r\n if (this.model.nutritionLabel) return this.model.nutritionLabel.isBilingual;\r\n return false;\r\n }\r\n\r\n get translations() {\r\n return this.localizationState.translations;\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!./vBackOfPackageConfig.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!./vBackOfPackageConfig.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vBackOfPackageConfig.vue?vue&type=template&id=5f8366a0&scoped=true\"\nimport script from \"./vBackOfPackageConfig.vue?vue&type=script&lang=ts\"\nexport * from \"./vBackOfPackageConfig.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vBackOfPackageConfig.vue?vue&type=style&index=0&id=5f8366a0&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 \"5f8366a0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (\n _vm.exportLabelState.nutritionCountry &&\n _vm.exportLabelState.nutritionLabel !== null &&\n _vm.exportLabelState.primaryLanguage !== null\n )?_c('div',{staticClass:\"text-right btn-group-container\",staticStyle:{\"position\":\"absolute\",\"bottom\":\"0\",\"right\":\"1%\"}},[(_vm.accountStoreState.userDetails.nutritionLabelsLimit.labelsLimit != null)?_c('div',{staticClass:\"col-md-12\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(\"\\n \"+_vm._s(_vm.accountStoreState.userDetails.nutritionLabelsLimit.downloadedLabels)+\"\\n \"+_vm._s(_vm.translations.get(\"table_footer_of\"))+\"\\n \"+_vm._s(_vm.accountStoreState.userDetails.nutritionLabelsLimit.labelsLimit)+\"\\n \"+_vm._s(_vm.translations.get(\"downloaded-labels\"))+\".\\n \"),_c('a',{attrs:{\"href\":\"#learnMore\",\"data-toggle\":\"modal\"},on:{\"click\":function($event){$event.preventDefault();_vm.showLearnMoreModal = true}}},[_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"learn-more\"))+\"\\n \")])]),_c('div',{staticClass:\"learn-more-container\"},[_c('vModal',{staticClass:\"learn-more-modal\",attrs:{\"modal-title\":_vm.translations.get('downloads-remaining'),\"show\":_vm.showLearnMoreModal,\"size\":'s'},on:{\"cancelModal\":function($event){_vm.showLearnMoreModal = false}}},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"common-you-have\"))+\"\\n \"),_c('strong',[_vm._v(_vm._s(_vm.remainingLabelDownloads))]),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"downloads-remaining-until\"))+\"\\n \"),_c('strong',[_vm._v(_vm._s(_vm.$moment(_vm.accountStoreState.userDetails.nutritionLabelsLimit.nextResetDate).format(_vm.DATE_DISP_FORMAT)))]),_vm._v(\".\\n \")]),_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"if-labels-needed\"))+\"\\n \"),_c('a',{attrs:{\"target\":\"_blank\",\"href\":\"../#/subscription\"}},[_vm._v(_vm._s(_vm.translations.get(\"upgrade-your-package\")))])])])],1)]):_vm._e(),(_vm.isFopDisplay)?_c('button',{staticClass:\"btn btn-cons btn-primary btn-small btn-download\",on:{\"click\":function($event){$event.preventDefault();return _vm.$emit('load-bop-label-creator')}}},[_c('i',{staticClass:\"fa fa-chevron-circle-left\"}),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"previous\"))+\"\\n \")]):_vm._e(),(_vm.shouldShowSaveButton())?_c('button',{staticClass:\"btn btn-cons btn-primary btn-small btn-download\",on:{\"click\":function($event){$event.preventDefault();return _vm.$emit('save-label')}}},[_c('i',{staticClass:\"fa fa-save\"}),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(_vm.downloadingMultipleLabels ? \"labels_save_multiple\" : \"labels_save\"))+\"\\n \")]):_vm._e(),(_vm.shouldShowDownloadButtons())?_c('button',{staticClass:\"btn btn-cons btn-primary btn-small btn-download\",class:{ disabled: _vm.exportLabelState.disableDownload },attrs:{\"disabled\":_vm.exportLabelState.disableDownload},on:{\"click\":function($event){$event.preventDefault();_vm.exportLabelState.disableDownload ? null : _vm.downloadLabel(0)}}},[_c('i',{staticClass:\"fa fa-file-pdf-o\"}),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(_vm.downloadingMultipleLabels ? \"download_labels_pdf\" : \"labels_download_pdf\"))+\"\\n \")]):_vm._e(),(_vm.shouldShowDownloadButtons())?_c('button',{staticClass:\"btn btn-cons btn-primary btn-small\",class:{ disabled: _vm.exportLabelState.disableDownload },attrs:{\"disabled\":_vm.exportLabelState.disableDownload},on:{\"click\":function($event){$event.preventDefault();_vm.exportLabelState.disableDownload ? null : _vm.downloadLabel(1)}}},[_c('i',{staticClass:\"fa fa-file-image-o\"}),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(_vm.downloadingMultipleLabels ? \"download_labels_jpg\" : \"labels_download_jpg\"))+\"\\n \")]):_vm._e(),(\n _vm.exportLabelState.nutritionCountry\n && _vm.exportLabelState.nutritionCountry.id === 0\n && _vm.packageLabelType === _vm.LabelTypeMetadata.FrontOfPack && !_vm.isFopDisplay\n )?_c('button',{staticClass:\"btn btn-cons btn-primary btn-small btn-download\",on:{\"click\":function($event){$event.preventDefault();return _vm.$emit('load-fop-label-creator')}}},[_c('i',{staticClass:\"fa fa-chevron-circle-right\"}),_vm._v(\"\\n \"+_vm._s(_vm.translations.get(\"common_continue\"))+\"\\n \")]):_vm._e()]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport vModal from \"@/components/vModal.vue\";\r\nimport { Vue, Component, Prop, Model } from \"vue-property-decorator\";\r\nimport { ExportLabelState } from \"@/models/NutritionLabels/ExportLabelState\";\r\nimport { mapState } from \"vuex\";\r\nimport { Recipe } from \"@/models/Recipes/Recipe\";\r\nimport { DownloadNutritionLabelContentTypes } from \"@/utils/API/RequestContentTypes\";\r\nimport { LabelTypeMetadata } from \"@/models/NutritionLabels/LabelTypeMetadata\";\r\nimport UserRepository from \"@/utils/API/UserRepository\";\r\nimport { SET_USER_DETAILS } from \"@/store/MutationTypes\";\r\nimport NutritionLabelRepository from \"@/utils/API/NutritionLabelRepository\";\r\nimport { CanadaFOPHighInMetadata } from \"@/models/NutritionLabels/CanadaFOPHighInMetadata\";\r\nimport { RecipeCompositionMeasurement } from \"@/models/Recipes/RecipeCompositionMeasurement\";\r\nimport { dateDisplayFormat } from \"@/utils/Defaults\";\r\nimport { AdditionalLabelInformation } from \"@/models/NutritionLabels/AdditionalLabelInformation\";\r\n\r\n@Component({\r\n components: {\r\n vModal,\r\n },\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n accountStoreState: (state: any) => state.AccountModule,\r\n }),\r\n },\r\n})\r\nexport default class vExportLabelButtons extends Vue {\r\n @Model() exportLabelState!: ExportLabelState;\r\n @Prop() packageLabelType!: LabelTypeMetadata;\r\n @Prop() isFopDisplay!: boolean;\r\n @Prop() recipe!: Recipe;\r\n @Prop() highIn!: CanadaFOPHighInMetadata;\r\n @Prop() subrecipeMeasurements!: RecipeCompositionMeasurement[];\r\n\r\n accountStoreState: any;\r\n localizationState: any;\r\n showLearnMoreModal = false;\r\n DATE_DISP_FORMAT = dateDisplayFormat;\r\n\r\n LabelTypeMetadata = LabelTypeMetadata;\r\n\r\n get translations() {\r\n return this.localizationState.translations;\r\n }\r\n\r\n get downloadingMultipleLabels() {\r\n return (\r\n this.isFopDisplay\r\n && this.exportLabelState.labelTypes[LabelTypeMetadata.FrontOfPack].includeInDownload\r\n );\r\n }\r\n\r\n get remainingLabelDownloads() {\r\n let labelsCount = 0;\r\n if (this.accountStoreState.userDetails.nutritionLabelsLimit.labelsLimit != null) {\r\n labelsCount =\r\n parseInt(this.accountStoreState.userDetails.nutritionLabelsLimit.labelsLimit) -\r\n parseInt(this.accountStoreState.userDetails.nutritionLabelsLimit.downloadedLabels);\r\n }\r\n\r\n if (labelsCount < 0) {\r\n labelsCount = 0;\r\n }\r\n\r\n return labelsCount;\r\n }\r\n\r\n shouldShowSaveButton() {\r\n return (\r\n this.exportLabelState.nutritionCountry\r\n && this.exportLabelState.nutritionCountry.id !== 0)\r\n || (\r\n this.exportLabelState.nutritionCountry\r\n && this.exportLabelState.nutritionCountry.id === 0\r\n && (this.packageLabelType === LabelTypeMetadata.BackOfPack || this.packageLabelType === LabelTypeMetadata.FrontOfPack && this.isFopDisplay)\r\n );\r\n }\r\n\r\n shouldShowDownloadButtons() {\r\n return (\r\n this.exportLabelState.nutritionLabel !== null\r\n && this.exportLabelState.nutritionCountry.id !== 0\r\n || (\r\n this.exportLabelState.nutritionCountry\r\n && (\r\n (this.packageLabelType === LabelTypeMetadata.FrontOfPack && this.isFopDisplay)\r\n || (this.packageLabelType === LabelTypeMetadata.BackOfPack && !this.isFopDisplay)\r\n )\r\n )\r\n );\r\n }\r\n\r\n downloadLabel(fileType: number) {\r\n if (this.$store.getters.getUserDetails.isTrial) {\r\n this.$snotify.info(this.translations.get(\"toastr_download_label_trial\"));\r\n this.$router.push({ name: \"subscription\" });\r\n return;\r\n }\r\n\r\n this.exportLabelState.disableDownload = true;\r\n\r\n // get the filename\r\n let filename = this.recipe.name.split(\" \").join(\"_\");\r\n let fileContentType: DownloadNutritionLabelContentTypes;\r\n\r\n fileContentType = this.getFileContentType(fileType);\r\n\r\n if (this.exportLabelState.nutritionCountry && this.exportLabelState.nutritionLabel && this.exportLabelState.primaryLanguage) {\r\n const additionalLabelInformation: AdditionalLabelInformation = {};\r\n\r\n if (this.exportLabelState.labelTypes[LabelTypeMetadata.FrontOfPack].includeInDownload) {\r\n additionalLabelInformation[LabelTypeMetadata.FrontOfPack] = {\r\n frontOfPackageNutritionLabelId: this.exportLabelState.fopNutritionLabelId,\r\n highInMetadata: this.highIn,\r\n };\r\n }\r\n NutritionLabelRepository.downloadNutritionLabelForRecipe(\r\n {\r\n recipeId: this.recipe.id,\r\n allergens: this.exportLabelState.checkedAllergens,\r\n nutritionLabelId: this.exportLabelState.nutritionLabel ? this.exportLabelState.nutritionLabel.id : 0,\r\n primaryLanguage: this.exportLabelState.primaryLanguage ? this.exportLabelState.primaryLanguage.value : \"\",\r\n secondaryLanguage: this.exportLabelState.secondaryLanguage ? this.exportLabelState.secondaryLanguage.value : \"\",\r\n dietaryTypes: this.exportLabelState.dietary,\r\n ingredientsIncluded: this.exportLabelState.includeIngredients,\r\n headerTranslations: this.exportLabelState.headerLabelTranslations,\r\n additionalContent: this.exportLabelState.mayContain,\r\n cautionaryMessage: this.exportLabelState.cautionaryMessage,\r\n containsLessThanPercentOfText: this.exportLabelState.containsLessThanPercentOf,\r\n nutritionLabelDownloadFileFormat: fileType,\r\n labelWidth: parseFloat(this.labelWidth()),\r\n labelHeight: parseFloat(this.labelHeight()),\r\n freeTextPlaceholders: this.exportLabelState.freeTextPlaceholders,\r\n ingredientDisplayModels: this.exportLabelState.renderExpandedSubrecipes\r\n ? this.exportLabelState.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList\r\n : this.exportLabelState.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList,\r\n labelFormatType: this.packageLabelType,\r\n additionalLabelInformation,\r\n nutritionCountry: this.exportLabelState.nutritionCountry.id,\r\n },\r\n fileContentType\r\n )\r\n .then((response) => {\r\n this.pushDownloadToClient(response.data, filename, response.headers[\"content-type\"]);\r\n })\r\n .catch((error) => {\r\n let message = \"\";\r\n if (error.response) {\r\n let enc = new TextDecoder(\"utf-8\");\r\n let data = JSON.parse(enc.decode(error.response.data));\r\n message = data.errorMessages[0].userVisibleMessage;\r\n }\r\n else {\r\n message = this.translations.get(\"network_error\");\r\n }\r\n this.$snotify.error(message);\r\n });\r\n }\r\n }\r\n\r\n labelWidth() {\r\n let width: any = 0;\r\n let label = document.getElementById(\"labelPreview\");\r\n width = label.naturalWidth;\r\n return width;\r\n }\r\n\r\n labelHeight() {\r\n let height: any = 0;\r\n\r\n let label = document.getElementById(\"labelPreview\");\r\n height = label.naturalHeight;\r\n\r\n return height;\r\n }\r\n\r\n getFileContentType(chosenFileType: number): DownloadNutritionLabelContentTypes {\r\n if (this.packageLabelType && this.packageLabelType === LabelTypeMetadata.FrontOfPack) {\r\n return \"application/zip\";\r\n }\r\n\r\n return chosenFileType === 0 ? \"application/pdf\" : \"image/jpeg\";\r\n }\r\n\r\n getFileExtension(chosenFileType: DownloadNutritionLabelContentTypes) {\r\n if (chosenFileType === \"application/zip\") {\r\n return \".zip\";\r\n }\r\n\r\n return chosenFileType === \"application/pdf\" ? '.pdf' : '.jpg';\r\n }\r\n\r\n pushDownloadToClient(blobData: BlobPart, filename: string, fileContentType: string) {\r\n // get the blob\r\n let blob = new Blob([blobData], {\r\n type: \"type: \" + fileContentType,\r\n });\r\n\r\n filename += this.getFileExtension(fileContentType as DownloadNutritionLabelContentTypes);\r\n const url = window.URL.createObjectURL(blob);\r\n const link = document.createElement(\"a\");\r\n link.href = url;\r\n\r\n link.setAttribute(\"download\", filename);\r\n link.setAttribute(\"target\", \"_blank\");\r\n document.body.appendChild(link);\r\n\r\n let evt = document.createEvent(\"MouseEvents\");\r\n evt.initMouseEvent(\r\n \"click\",\r\n true,\r\n true,\r\n window,\r\n 0,\r\n 0,\r\n 0,\r\n 0,\r\n 0,\r\n false,\r\n false,\r\n false,\r\n false,\r\n 0,\r\n null\r\n );\r\n link.dispatchEvent(evt);\r\n\r\n this.exportLabelState.disableDownload = false;\r\n UserRepository.fetchUserInfo().then((response) => {\r\n this.$store.commit(SET_USER_DETAILS, {\r\n userDetails: response.data.result,\r\n logged: true,\r\n });\r\n });\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!./vExportLabelButtons.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!./vExportLabelButtons.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vExportLabelButtons.vue?vue&type=template&id=2d7c2650\"\nimport script from \"./vExportLabelButtons.vue?vue&type=script&lang=ts\"\nexport * from \"./vExportLabelButtons.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vExportLabelButtons.vue?vue&type=style&index=0&id=2d7c2650&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 null,\n null\n \n)\n\nexport default component.exports","\r\nimport { Vue, Component, Prop } from \"vue-property-decorator\";\r\nimport vToggleSwitch from \"@/components/vToggleSwitch.vue\";\r\nimport vIngredientsDisplayNames from \"@/components/vIngredientsDisplayNames.vue\";\r\nimport { NutritionCountry } from \"@/models/NutritionLabels/NutritionCountry\";\r\nimport NutritionLabelRepository from \"@/utils/API/NutritionLabelRepository\";\r\nimport GeneralRepository from \"@/utils/API/GeneralRepository\";\r\nimport Language from \"@/models/Language\";\r\nimport vPreLoader from \"@/components/vPreLoader.vue\";\r\nimport vModal from \"@/components/vModal.vue\";\r\n\r\nimport { debounce } from \"@/utils/Helpers\";\r\nimport { mapState } from \"vuex\";\r\nimport IngredientDisplay from \"../models/Ingredient/IngredientDisplay\";\r\nimport { Recipe } from \"../models/Recipes/Recipe\";\r\nimport RecipesRepository from \"../utils/API/RecipesRepository\";\r\nimport { ExportLabelState } from \"@/models/NutritionLabels/ExportLabelState\";\r\nimport vUSContainsPercentOfForm from \"./vUSContainsPercentOfForm.vue\";\r\nimport { RecipeCompositionMeasurement } from \"@/models/Recipes/RecipeCompositionMeasurement\";\r\nimport { getIngredientDisplays } from \"@/services/ExportLabel.service\";\r\nimport { LabelTypeMetadata } from \"@/models/NutritionLabels/LabelTypeMetadata\";\r\nimport { CanadaFOPHighInMetadata } from \"@/models/NutritionLabels/CanadaFOPHighInMetadata\";\r\nimport vAccordion from \"./vAccordion.vue\";\r\nimport vLabelPreviewImage from \"./vLabelPreviewImage.vue\";\r\nimport vFrontOfPackageConfig from \"./vFrontOfPackageConfig.vue\";\r\nimport vBackOfPackageConfig from \"./vBackOfPackageConfig.vue\";\r\nimport vExportLabelButtons from \"./vExportLabelButtons.vue\";\r\nimport FreeTextPlaceholder from \"@/models/NutritionLabels/FreeTextPlaceholder\";\r\n\r\n@Component({\r\n components: {\r\n vToggleSwitch,\r\n vPreLoader,\r\n vIngredientsDisplayNames,\r\n vModal,\r\n vUSContainsPercentOfForm,\r\n vAccordion,\r\n vLabelPreviewImage,\r\n vFrontOfPackageConfig,\r\n vBackOfPackageConfig,\r\n vExportLabelButtons,\r\n },\r\n computed: {\r\n ...mapState({\r\n localizationState: (state: any) => state.LocalizationModule,\r\n accountStoreState: (state: any) => state.AccountModule,\r\n }),\r\n },\r\n})\r\nexport default class vExportLabel extends Vue {\r\n localizationState: any;\r\n accountStoreState: any;\r\n\r\n\r\n nutritionCountries: NutritionCountry[] = [];\r\n languages: Language[] = [];\r\n isFopDisplay: boolean = false;\r\n exportLabelState: ExportLabelState = new ExportLabelState();\r\n\r\n @Prop() id!: number;\r\n @Prop() name!: string;\r\n @Prop() recipe?: Recipe;\r\n @Prop() packageLabelType?: LabelTypeMetadata | LabelTypeMetadata.BackOfPack;\r\n @Prop() highIn?: CanadaFOPHighInMetadata | CanadaFOPHighInMetadata.None;\r\n @Prop({\r\n default: (): RecipeCompositionMeasurement[] => {\r\n return [];\r\n }\r\n }) subrecipeMeasurements!: RecipeCompositionMeasurement[];\r\n\r\n created() {\r\n NutritionLabelRepository.listNutritionCountries().then((response) => {\r\n this.nutritionCountries = response.data.result;\r\n this.fetchRecipeLabel();\r\n });\r\n\r\n GeneralRepository.listLanguages().then((response) => {\r\n this.languages = response.data.result;\r\n });\r\n\r\n // set IE mode\r\n /* MSIE used to detect old browsers and Trident used to newer ones*/\r\n this.exportLabelState.isIE = (\r\n navigator.userAgent.indexOf(\"MSIE \") > -1 ||\r\n navigator.userAgent.indexOf(\"Trident/\") > -1 ||\r\n navigator.userAgent.indexOf(\"Edge\") > -1\r\n );\r\n }\r\n\r\n /**\r\n * Gets a formatted list of ingredient displays\r\n * NOTE: This is for Recipes only\r\n */\r\n get ingredientDisplays(): IngredientDisplay[] {\r\n // If we're in a dish recipe, ingredients will be undefined, so we use an empty array\r\n return getIngredientDisplays(this.recipe.ingredients || [], this.exportLabelState.savedDisplays);\r\n }\r\n\r\n saveRecipeLabel() {\r\n RecipesRepository.saveRecipeLabel({\r\n recipeId: this.id,\r\n allergens: this.exportLabelState.allergens,\r\n nutritionCountryId: this.exportLabelState.nutritionCountry\r\n ? this.exportLabelState.nutritionCountry.id\r\n : 0,\r\n nutritionLabelId: this.exportLabelState.nutritionLabel ? this.exportLabelState.nutritionLabel.id : 0,\r\n primaryLanguage: this.exportLabelState.primaryLanguage ? this.exportLabelState.primaryLanguage.value : \"\",\r\n secondaryLanguage: this.exportLabelState.secondaryLanguage\r\n ? this.exportLabelState.secondaryLanguage.value\r\n : \"\",\r\n dietaryTypes: this.exportLabelState.dietary,\r\n ingredientsIncluded: this.exportLabelState.includeIngredients,\r\n additionalContents: this.exportLabelState.mayContain,\r\n cautionaryMessage: this.exportLabelState.cautionaryMessage,\r\n headerLabelTranslations: this.exportLabelState.headerLabelTranslations,\r\n freeTextPlaceholders: this.exportLabelState.freeTextPlaceholders,\r\n ingredientDisplayModels: this.exportLabelState.renderExpandedSubrecipes\r\n ? this.exportLabelState.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList\r\n : this.exportLabelState.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList,\r\n ingredientOtherDisplayModel: !this.exportLabelState.renderExpandedSubrecipes\r\n ? this.exportLabelState.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList\r\n : this.exportLabelState.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList,\r\n subRecipeDisplayModels: this.exportLabelState.getSubRecipeDisplays(this.recipe, this.subrecipeMeasurements),\r\n renderExpandedSubrecipes: this.exportLabelState.renderExpandedSubrecipes,\r\n labelTypes: this.exportLabelState.labelTypes\r\n }).then(() => {\r\n this.exportLabelState.textPlaceholdersOfSavedLabel =\r\n this.exportLabelState.freeTextPlaceholders; // Change to newly saved label\r\n this.$snotify.success(this.translations.get(\"labels_save_success\"));\r\n });\r\n }\r\n\r\n fetchRecipeLabel() {\r\n RecipesRepository.getRecipeLabel({ recipeId: this.id })\r\n .then((response: any) => this.fillLabelData(response.data.result))\r\n .catch(() => {});\r\n\r\n }\r\n\r\n fillLabelData(labelData: any) {\r\n this.fillAllergens(labelData.allergens);\r\n this.fillDietaryTypes(labelData.dietaryTypes);\r\n this.fillNutritionCountry(labelData.nutritionCountryId, labelData.nutritionLabelId);\r\n this.fillLanguages(labelData.primaryLanguage, labelData.secondaryLanguage);\r\n this.fillFreeTextPlaceholders(labelData.freeTextPlaceholders);\r\n this.fillIngredientDisplays(labelData.ingredientDisplayModels, labelData.ingredientOtherDisplayModel, labelData.renderExpandedSubrecipes);\r\n this.fillSavedSubRecipeDisplays(labelData.subRecipeDisplayModels);\r\n this.fillAdditionalProperties(labelData);\r\n }\r\n\r\n //Function to handle allergens.\r\n private fillAllergens(allergens: any[]) {\r\n if (allergens && allergens.length > 0) {\r\n allergens.forEach((x: any) => {\r\n let a = this.exportLabelState.allergens.find((y) => y.id === x.id);\r\n if (a) {\r\n a.isChecked = x.isChecked;\r\n a.primaryLanguageName = x.primaryLanguageName;\r\n a.secondaryLanguageName = x.secondaryLanguageName;\r\n }\r\n });\r\n }\r\n }\r\n\r\n //Function to handle dietary types.\r\n private fillDietaryTypes(dietaryTypes: number[]) {\r\n if (dietaryTypes) {\r\n this.exportLabelState.dietary = dietaryTypes;\r\n }\r\n }\r\n\r\n // Function to handle nutrition country and label ID.\r\n private fillNutritionCountry(nutritionCountryId: number, nutritionLabelId: number) {\r\n const nutritionCountry = this.nutritionCountries.find((x: any) => x.id === nutritionCountryId);\r\n if (nutritionCountry) {\r\n this.exportLabelState.nutritionCountry = nutritionCountry;\r\n this.exportLabelState.savedNutritionLabelId = nutritionLabelId;\r\n }\r\n }\r\n\r\n\r\n // Function to handle primary and secondary languages.\r\n private fillLanguages(primaryLanguage: string, secondaryLanguage: string) {\r\n if (this.exportLabelState.primaryLanguage) {\r\n this.exportLabelState.primaryLanguage.value = primaryLanguage;\r\n }\r\n if (this.exportLabelState.secondaryLanguage) {\r\n this.exportLabelState.secondaryLanguage.value = secondaryLanguage;\r\n }\r\n }\r\n\r\n //Function to handle free text placeholders.\r\n private fillFreeTextPlaceholders(freeTextPlaceholders: FreeTextPlaceholder[]) {\r\n if (freeTextPlaceholders) {\r\n this.exportLabelState.freeTextPlaceholders = freeTextPlaceholders;\r\n this.exportLabelState.textPlaceholdersOfSavedLabel = freeTextPlaceholders;\r\n }\r\n }\r\n\r\n // Function to handle ingredient displays and subrecipes.\r\n private fillIngredientDisplays(ingredientDisplayModels: any, ingredientOtherDisplayModel: any, renderExpandedSubrecipes: boolean) {\r\n if (ingredientDisplayModels) {\r\n this.exportLabelState.savedDisplays = ingredientDisplayModels;\r\n }\r\n\r\n if (renderExpandedSubrecipes) {\r\n this.exportLabelState.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList = this.synchronizeIngredientData(\r\n this.exportLabelState.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList,\r\n ingredientDisplayModels);\r\n if (ingredientOtherDisplayModel) {\r\n this.exportLabelState.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList = this.synchronizeRecipeIngredientData(\r\n this.exportLabelState.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList,\r\n ingredientOtherDisplayModel);\r\n }\r\n }\r\n else {\r\n this.exportLabelState.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList = this.synchronizeRecipeIngredientData(\r\n this.exportLabelState.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList,\r\n ingredientDisplayModels);\r\n if (ingredientOtherDisplayModel) {\r\n this.exportLabelState.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList = this.synchronizeIngredientData(\r\n this.exportLabelState.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList,\r\n ingredientOtherDisplayModel);\r\n }\r\n }\r\n }\r\n\r\n //Function to handle saved subrecipe displays.\r\n private fillSavedSubRecipeDisplays(subRecipeDisplayModels: any[]) {\r\n if (subRecipeDisplayModels) {\r\n this.exportLabelState.savedSubRecipeDisplays = subRecipeDisplayModels;\r\n }\r\n }\r\n\r\n //Function to handle additional properties.\r\n private fillAdditionalProperties(labelData: any) {\r\n this.exportLabelState.includeIngredients = labelData.ingredientsIncluded;\r\n this.exportLabelState.mayContain = labelData.additionalContents;\r\n this.exportLabelState.renderExpandedSubrecipes = labelData.renderExpandedSubrecipes;\r\n\r\n if (labelData.headerLabelTranslations) {\r\n this.exportLabelState.headerLabelTranslations = labelData.headerLabelTranslations;\r\n }\r\n\r\n if (labelData.cautionaryMessage) {\r\n this.exportLabelState.cautionaryMessage = labelData.cautionaryMessage;\r\n }\r\n\r\n // NOTE: This is done because during serialization, the enum from C# is cast to a string\r\n // as such to get the value, we need to convert it back to an enum.\r\n let name = [LabelTypeMetadata[LabelTypeMetadata.FrontOfPack]][0];\r\n name = name[0].toLowerCase() + name.slice(1);\r\n const frontOfPackData = labelData.labelTypes[name];\r\n\r\n this.exportLabelState.labelTypes = {\r\n [LabelTypeMetadata.FrontOfPack]: {\r\n fopFormat: frontOfPackData.fopFormat || 1,// Fallback to 1 as the default value if these aren't present while loading a saved label.\r\n pdsSize: frontOfPackData.pdsSize || 1,\r\n includeInDownload: frontOfPackData.includeInDownload || true,\r\n }\r\n };\r\n }\r\n\r\n private synchronizeIngredientData(originalList:IngredientDisplay[], modifiedList:IngredientDisplay[]){\r\n const modifiedListMap = new Map();\r\n\r\n modifiedList.forEach((display) => {\r\n if (display.ingredientId !== undefined) {\r\n modifiedListMap.set(display.ingredientId, display);\r\n }\r\n });\r\n\r\n const updatedSubRecipeList: IngredientDisplay[] = [];\r\n originalList.forEach((display) => {\r\n const otherDisplay = modifiedListMap.get(display.ingredientId);\r\n if (otherDisplay) {\r\n otherDisplay.weightInGrams = display.weightInGrams;\r\n updatedSubRecipeList.push(otherDisplay);\r\n modifiedListMap.delete(display.ingredientId);\r\n }\r\n else {\r\n updatedSubRecipeList.push(display);\r\n }\r\n });\r\n return updatedSubRecipeList;\r\n }\r\n\r\n private synchronizeRecipeIngredientData(originalList:IngredientDisplay[], modifiedList:IngredientDisplay[]){\r\n const modifiedRecipeListMap = new Map();\r\n const modifiedIngredientListMap = new Map();\r\n\r\n modifiedList.forEach((display) => {\r\n if (display.recipeId !== undefined) {\r\n modifiedRecipeListMap.set(display.recipeId, display);\r\n }\r\n });\r\n\r\n modifiedList.forEach((display) => {\r\n if (display.ingredientId !== undefined) {\r\n modifiedIngredientListMap.set(display.ingredientId, display);\r\n }\r\n });\r\n\r\n const updatedSubRecipeList: IngredientDisplay[] = [];\r\n originalList.forEach((display) => {\r\n const otherRecipeDisplay = modifiedRecipeListMap.get(display.recipeId);\r\n const otherIngredientDisplay = modifiedIngredientListMap.get(display.ingredientId);\r\n\r\n if (otherRecipeDisplay && otherRecipeDisplay.recipeId != 0) {\r\n otherRecipeDisplay.weightInGrams = display.weightInGrams;\r\n updatedSubRecipeList.push(otherRecipeDisplay);\r\n modifiedRecipeListMap.delete(display.recipeId);\r\n }\r\n else if(otherIngredientDisplay && otherIngredientDisplay.ingredientId != 0) {\r\n otherIngredientDisplay.weightInGrams = display.weightInGrams;\r\n updatedSubRecipeList.push(otherIngredientDisplay);\r\n modifiedIngredientListMap.delete(display.recipeId);\r\n }\r\n else {\r\n updatedSubRecipeList.push(display);\r\n }\r\n });\r\n return updatedSubRecipeList;\r\n }\r\n\r\n fetchPreview() {\r\n if (this.exportLabelState.nutritionCountry && this.exportLabelState.nutritionLabel && this.exportLabelState.primaryLanguage) {\r\n if (this.exportLabelState.nutritionCountry.name == \"UK\") {\r\n this.exportLabelState.headerLabelTranslations.ingredientsSecondaryLanguageTranslation =\r\n \"\";\r\n this.ingredientDisplays.map((ingredient) => {\r\n ingredient.displayTextInSecondaryLanguage = \"\";\r\n });\r\n }\r\n\r\n this.exportLabelState.disableDownload = true;\r\n this.exportLabelState.loading = true;\r\n NutritionLabelRepository.previewNutritionLabelForRecipe({\r\n recipeId: this.id,\r\n allergens: this.exportLabelState.checkedAllergens,\r\n nutritionLabelId: this.exportLabelState.nutritionLabel ? this.exportLabelState.nutritionLabel.id : 0,\r\n primaryLanguage: this.exportLabelState.primaryLanguage ? this.exportLabelState.primaryLanguage.value : \"\",\r\n secondaryLanguage: this.exportLabelState.secondaryLanguage ? this.exportLabelState.secondaryLanguage.value : \"\",\r\n dietaryTypes: this.exportLabelState.dietary,\r\n ingredientsIncluded: this.exportLabelState.includeIngredients,\r\n additionalContent: this.exportLabelState.mayContain,\r\n cautionaryMessage: this.exportLabelState.cautionaryMessage,\r\n containsLessThanPercentOfText: this.exportLabelState.containsLessThanPercentOf,\r\n headerTranslations: this.exportLabelState.headerLabelTranslations,\r\n nutritionLabelDownloadFileFormat: 0,\r\n labelWidth: 0,\r\n labelHeight: 0,\r\n freeTextPlaceholders: this.exportLabelState.freeTextPlaceholders,\r\n ingredientDisplayModels: this.exportLabelState.renderExpandedSubrecipes\r\n ? this.exportLabelState.ingredientAndSubRecipeDisplaysModel.expandedSubRecipeList\r\n : this.exportLabelState.ingredientAndSubRecipeDisplaysModel.combinedSubRecipeList,\r\n })\r\n .then((response) => {\r\n this.exportLabelState.labelPreview = response.data.result;\r\n this.exportLabelState.loading = false;\r\n this.exportLabelState.disableDownload = false;\r\n });\r\n }\r\n }\r\n\r\n loadFOPLabelCreator(){\r\n this.isFopDisplay = true;\r\n }\r\n\r\n loadBOPLabelCreator(){\r\n this.isFopDisplay = false;\r\n }\r\n\r\n fetchFreeTextFields() {\r\n if (this.exportLabelState.nutritionLabel) {\r\n NutritionLabelRepository.getFreeTextPlaceholdersForNutritionLabel(\r\n this.exportLabelState.nutritionLabel ? this.exportLabelState.nutritionLabel.id : 0\r\n )\r\n .then((response) => {\r\n if (response.data.result) {\r\n let freeTextPlaceholders = response.data.result.map((x: any) => {\r\n const freeTextPlaceholder = this.exportLabelState.freeTextPlaceholders.find(\r\n (y: any) => y.id == x.id\r\n );\r\n if (freeTextPlaceholder) {\r\n x.content = freeTextPlaceholder.content;\r\n }\r\n else if (this.exportLabelState.textPlaceholdersOfSavedLabel != null) {\r\n /*\r\n Check to see if the prevouosly saved label has a placeholder content,\r\n then populate the content of the placeholder with its value.\r\n Covers the scenario when the user has a saved label but shuffels through other ones.\r\n */\r\n const freeTextPlaceholder = this.exportLabelState.textPlaceholdersOfSavedLabel.find(\r\n (y: any) => y.id == x.id\r\n );\r\n if (freeTextPlaceholder) {\r\n x.content = freeTextPlaceholder.content;\r\n }\r\n }\r\n return x;\r\n });\r\n this.exportLabelState.freeTextPlaceholders = freeTextPlaceholders;\r\n this.fetchPreview();\r\n }\r\n })\r\n .catch(() => {\r\n this.$snotify.error(\"Something happened! :(\");\r\n });\r\n }\r\n }\r\n\r\n debouncedFetchPreview() {\r\n debounce(this.fetchPreview, 1000);\r\n }\r\n\r\n\r\n get translations() {\r\n return this.localizationState.translations;\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!./vExportLabel.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!./vExportLabel.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./vExportLabel.vue?vue&type=template&id=59c39753&scoped=true\"\nimport script from \"./vExportLabel.vue?vue&type=script&lang=ts\"\nexport * from \"./vExportLabel.vue?vue&type=script&lang=ts\"\nimport style0 from \"./vExportLabel.vue?vue&type=style&index=0&id=59c39753&prod&scoped=true&lang=css\"\nimport style1 from \"./vExportLabel.vue?vue&type=style&index=1&id=59c39753&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 \"59c39753\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}