{"version":3,"sources":["config/editor.js","components/QuillEditor.js","components/seo-tab.js","guillotina/views/cellar_editor/useSaveCellar.js","guillotina/views/cellar_editor/index.js","consts.js","common/dnd.js","components/accordion-card.js","components/product-name.js","components/select-taxonomy.js","components/region-selector.js","guillotina/views/cellar_editor/partials/location.js","guillotina/views/product/partials/images.js","guillotina/views/product/partials/options.js","product-prefix.js","utils.js","components/content-review-tab.js","components/price-comparator-table.js","guillotina/views/product/useSaveProduct.js","components/price-comparator-tab.js","guillotina/views/product/pack_editor.js","guillotina/views/product/index.js","components/tags-selector.js","components/grapes-selector.js","common/field.js","components/i18nfield.js","services/erp.js","components/product-selector.js","components/tab-panel-with-lock.js","common/auditlog.js","guillotina/views/cellar_editor/partials lazy /^/.//.*$/ groupOptions: {} namespace object","guillotina/views/product/partials lazy /^/.//.*$/ groupOptions: {} namespace object","common/menu.js","common/layout.js","components/login.js","services/auth.js","components/preview.js","guillotina/views/newsletter_editor/Preview.js","guillotina/column-headings/newsletters.js","services/client.js","common/error_boundary.js","components/error_zone.js","guillotina/forms/bodega.js","common/date.js","guillotina/forms/home.js","guillotina/forms/landing.js","guillotina/forms/newsletter.js","guillotina/forms/pack.js","components/cellar-selector.js","common/content-layout.js","components/label.js","components/select-orphan-options.js","pages/product/create-content.js","guillotina/forms/tags.js","guillotina/forms/zona.js","components/product.js","guillotina/properties/producto.js","guillotina/properties/tag.js","common/useSetState.js","guillotina/views/home_items.js","components/select-landing.js","guillotina/views/home_editor/blog_posts_form.js","components/json_editor.js","components/query-products.js","components/product-selector-or-query.js","guillotina/views/home_editor/catalog_form.js","guillotina/views/home_editor/home_section.js","guillotina/views/home_editor/image_form.js","guillotina/views/home_editor/offer_banner_form.js","components/color_picker.js","guillotina/views/home_editor/product_banner_form.js","guillotina/views/home_editor/Arrow.js","guillotina/views/home_editor/slider_images_form.js","guillotina/views/home_editor/index.js","guillotina/views/landing_editor/Preview.js","guillotina/views/landing_editor/usePatchLanding.js","guillotina/views/landing_editor/Data.js","components/confirm.js","guillotina/views/landing_editor/Sections.js","components/submenu-tab.js","guillotina/views/menu_editor.js","components/generate-product-image-with-triangle.js","components/deeplTranslatorComponent.js","guillotina/views/newsletter_editor/Content.js","guillotina/views/newsletter_editor/Schedule.js","guillotina/views/newsletter_editor/index.js","guillotina/views/promos_editor.js","guillotina/views/taxonomy.js","common/text_suggester.js","guillotina/views/zona_editor.js","common/sleep.js","guillotina/views/zonas.js","guillotina/config.js","guillotina/views/home.js","guillotina/views/landing_editor/index.js","guillotina/views/tags.js","guillotina/forms/product.js","guillotina/guillotina.js","pages/analytics/index.js","pages/customers.js","pages/offers/context.js","pages/offers/promo.js","pages/offers/form/index.js","pages/offers/index.js","pages/free-shipping-rates/createFreeShippingRatesForm.js","pages/free-shipping-rates/index.js","pages/opinions/OpinionForm.js","pages/opinions/filters.js","pages/opinions/index.js","common/csv-to-json.js","pages/orders/multi-order-invoice/add-order.js","pages/orders/multi-order-invoice/graphql.js","pages/orders/common.js","pages/orders/delays.js","pages/orders/order_preparation.js","components/user-selector.js","pages/orders/multi-order-invoice/list-invoices.js","pages/orders/order_edit/index.js","components/check_payment_multiorder.js","pages/orders/multi-order-invoice/view-invoice.js","pages/orders/index.js","pages/product/index.js","pages/users/index.js","components/import_invoices.js","pages/invoices/import_shipping_invoices.js","pages/invoices/import_commissions_collections_invoices.js","pages/invoices/import_invoice_eurotax.js","pages/invoices/import_cost_warehouse.js","pages/invoices/import_commissions_collections_v2.js","pages/invoices/index.js","pages/content_ai/content_ai.js","pages/content_ai/add_content.js","pages/content_ai/index.js","pages/market_place/match_products.js","pages/market_place/edit_matchs.js","pages/market_place/index.js","App.js","serviceWorker.js","index.js"],"names":["uploadImage","file","a","formData","FormData","append","fetch","method","body","response","ok","Error","json","data","url","console","error","QUILL_CONFIG","modules","toolbar","container","header","list","indent","align","handlers","image","input","document","createElement","setAttribute","click","onchange","files","imageUrl","range","quill","getSelection","insertEmbed","index","formats","QuillEditor","value","onChange","readOnly","height","id","style","theme","content","cleanContent","replace","seoField","SEOTab","withH1","Ctx","useTraversal","seo","state","context","useState","saving","setSaving","seo_title","setLangs","title","setTitle","seo_h1","titleH1","setTitleH1","seo_description","description","setDescription","h1","flashOk","flashKo","client","patch","path","status","flash","backgroundColor","display","padding","justifyContent","alignItems","className","type","disabled","onClick","Widget","lang","marginTop","placeholder","t","o","getFileFromUrl","filename","contentType","blob","arrayBuffer","createStore","useStore","getStore","loadComponent","key","lazy","catch","default","CellarEditor","useLocation","location","setLocation","defaultItem","get","item","cellar","Comp","setComp","setKey","ctx","folder","internal_id","fields","showMsg","r","oldMapURL","googlemap_url","mapUrlUpdated","deleteMapImage","uploadMapImage","message","success","refresh","transparent","info","getGoogleMapsDataFromURL","img","imgFile","upload","deleteFile","useSaveCellar","save","useEffect","setStore","menu","SITES","map","site","SITES_INFO","getDomain","getCellarMask","Item","window","open","nombre","overlay","EyeOutlined","DownOutlined","store","offsetTop","e","width","defaultSelectedKeys","mode","ItemGroup","icon","margin","overflowX","fallback","BodegaView","props","tabs","Items","PanelItems","Edit","Permissions","PanelPermissions","AuditLog","AuditLogTab","SEO","ContentReview","ContentReviewTab","calculated","filterTabs","currentTab","editableTabs","rightToolbar","LANGS","LANG_NAMES","es","it","de","fr","en","shop","country","Object","keys","SHOPS","values","TINYMCE_INIT_UNRESTRICTED","menubar","relative_urls","plugins","block_formats","isProd","valid_elements","URL","href","hostname","startsWith","getMediaUrl","getCdnUrl","reduce","frontThemes","emptyStringLangs","imageHome","buttonText","buttonTheme","filter","undefined","imageCover","imageRepeat","removePadding","textBanner","textBigger","widthSize","homeSectionsToAdd","query","bgColor","images","html","discount","discount_text","is_same_offer_for_all_products","link","text_banner","posts_ids","defaultHomeSections","buttonThemes","ALL_COUNTRIES","an","at","be","bg","lu","ho","pl","po","ro","uk","cz","ch","se","SELLING_COUNTRIES","DISTANCE_SELLING","COUNTRIES","capacityNames","b3","b5","dc","dm","ma","mt","na","pr","sa","sz","BOTTLE_CAPACITY_LITERS","10","17","20","25","33","35","37","50","62","65","70","72","75","cu","je","li","catalogs","FREE_SHIPPING_RATES","dtp","trd","trg","DnD","getChild","bind","dragulaOnDrop","this","el","i","_","data-index","dragula","getElementById","events","accepts","target","source","sibling","dataset","contains","on","component","currIndex","parseInt","dest","l","curr_arr","old_index","new_index","arr","length","k","push","splice","array_move","React","Component","AccordionCard","children","defaultCollapsed","renderCollapsed","onToggle","collapsed","setCollapsed","iconPosition","v","ProductName","label","field","setNames","names","required","maxLength","ref","useRef","prefix","fontSize","color","defaultValue","onInput","current","SelectTaxonomy","allowClear","multiple","filterByParentIds","startsWithSlash","taxonomy","allLabels","setAllLabels","defaultSeparator","labels","then","res","Array","isArray","includes","flatMap","loadLabels","loading","showCheckedStrategy","TreeSelect","SHOW_CHILD","showSearch","filterTreeNode","node","txt","trim","toLowerCase","normalize","indexOf","treeCheckable","mapChildren","parent","separator","name","fullId","TreeNode","RegionSelector","loadRegions","searchRegions","items","setItems","init","filterOption","option","Option","getLang","obj","zonas","EXAMPLE_MAP_URL","Location","codigo_postal","cp","setCp","localidad","locality","setLocality","provincia","id_provincia","province","setProvince","pais","id_pais","setCountry","mapLink","setMapLink","direccion","address","setAddress","provincias","paises","fieldConsts","setFieldConsts","latitude","longitude","zoom","rest","text","load","options","p","rel","alt","src","size","split","cdn","fallbackPackImg","fallbackProdImg","ImagesEditor","prod","opciones","anyada","referencia","Set","sort","reverse","ImageSection","uploading","setUploading","setError","valid_types","isUploading","imgPaths","setImgPaths","imgType","request","firstBatch","secondBatch","f","ext","expectedExt","Promise","all","flexWrap","marginRight","ImagePreview","paddingLeft","borderLeft","MultiFileUpload","accept","prod_type","tipo","substring","extension","textAlign","position","marginBottom","opacity","maxHeight","onError","currentTarget","changed","event","from","lightFileReader","statusColors","new_product","selling","notavailable","descatalogued","invalid","discontinued","Options","array","product","optionsByRef","rv","x","refs","b","getHeader","first","capacidad","defaultActiveKey","Panel","dataSource","pagination","columns","dataIndex","render","line","getDomainFromShop","Box","toUpperCase","toFixed","precio_oferta","impuestos","toString","rowKey","record","borderRadius","generic","domain","getShopCountryHeaders","withLang","host","sub","getHost","sleep","ms","resolve","reject","setTimeout","rsplit","str","delimiter","limit","join","usePromise","callback","trigger","setData","setStatus","toISOStringWithTimezone","date","d","utcToZonedTime","Date","tzoffset","getTimezoneOffset","getTime","toISOString","slice","formatStartEnd","start","end","s","startOfDay","endOfDay","isSameDay","d1","d2","getDate","getMonth","getFullYear","getOrSet","useClipboard","sessionStorage","getItem","JSON","parse","allowToMoveOnlyInAccordionHeader","moves","handle","querySelectorAll","some","n","arrayMove","fromIndex","toIndex","element","getFiltersByPath","localStorage","setMultiLangContent","getCapacityText","capacityKey","liters","toLocaleString","maximumFractionDigits","minimumFractionDigits","minimumIntegerDigits","getProductMask","isGeneric","maskItem","URLS","hexToRgb","hex","result","exec","formatStock","stock","Infinity","getTotalStock","availability","caracteristicas","avanzada","Math","max","isDtoOffer","precio","oferta","descuento_especial","mUnit","uni_compra","isPromoMXN","uni_promo","isPromoXN","getOfferPrice","realQuantity","displayUnitary","totalPrice","encodeAbsoluteLink","linkURL","getProductName","originalName","vintage","capacity","isStandardCapacity","capacityText","capacityWithoutSpaces","endsWith","getStoreFromCountry","contendidos_revisados","author","reviewed","review","setReview","langReview","Group","optionType","PriceComparatorTable","columnsFields","selectedInTables","setSelectedRowKeys","displayLinks","onUpdatePage","onAdd","page","dataToRender","dataInCountry","delivery_country","id_producto","competitors","our_name","our_offer_price","our_price","our_taxes","product_group","groupByRef","priceFormatter","Intl","NumberFormat","currency","dataToFilter","mapColumn","column","sorter","format","now","DateTimeFormat","filters","filterMode","filterSearch","onFilter","restColumns","showIcon","productUrl","editUrl","origin","linksEl","marginLeft","titleEl","offerPriceEl","fontWeight","priceEl","textDecoration","action","rowSelection","selectedRowKeys","border","gap","useSaveProduct","initial","PriceComparatorTab","Form","useForm","form","flat","erp","useContext","ErpClientContext","setRest","updating","setUpdating","deleting","setDeleting","drawer","showDrawer","productId","optionCountries","getSelectedURLs","urls","confirm","dataToRemove","group","deletePriceComparator","dataToUpate","upsertPriceComparator","dataToUpdate","resetFields","getPriceComparator","resData","restOfUrls","minWidth","c","onClose","visible","bodyStyle","paddingBottom","onFinish","initialValues","rules","flexDirection","fontStyle","htmlType","fallbackImg","DragHandle","sortableHandle","MenuOutlined","cursor","SortableItem","sortableElement","SortableContainer","sortableContainer","PackEditor","generating","setGenerating","cache","pack","anv800","setImg","nombres","setLabels","localized_text","descuento_del_pack","setDiscount","contenido_del_pack","orden","products","setProducts","somePresent","regalo","referenciaPack","referencia_pack","solo_venta_privada","otros","optionVentaPrivada","setOptionVentaPrivada","updateProductState","ps","cleanProduct","cantidad","onSave","ob","optionPack","messageSuccess","pack_descatalogado","stringify","endpoint","opciones_to_modify","headersForImageEndpoinds","vals","modifyContent","min","ProductColumn","checked","components","wrapper","useDragHandle","disableAutoscroll","helperClass","onSortEnd","oldIndex","newIndex","newProds","row","restProps","findIndex","direction","setCapacity","filteredProducts","onChangeProductInfo","pnames","productTypes","defaultProductInfo","disabledIds","add","prods","find","newCapacity","headers","getHeaders","removeItem","ProductEditor","region","tags_by_category","otras_props","new_otras_props","FileImageOutlined","VideoCameraOutlined","MoreOutlined","Complements","ProductView","isPack","isComplement","editors","tab","Product","permissions","Pack","TagsSelector","tagsType","searchGuillotinaItem","GrapesSelector","onEditPercentage","grape","formatter","otros_datos","porcentaje","g","BaseField","help","class","Field","readonly","ImageEditor","canModifyContent","uploadFieldName","caption","onChangeCaption","onChangeAlt","imgLoading","setImgLoading","sizeTxt","labelTxt","uploadFile","getImgDimensionsFromArrayBuffer","top","right","Fragment","FileReader","onload","Image","readAsDataURL","Blob","toDict","I18NField","defaultLang","langs","onChangeLang","Input","useSetState","setValues","setCurrent","ev","changeLang","I18NRichText","editorProps","dangerouslySetInnerHTML","__html","createContext","ErpClient","auth","RestClient","template","post","delete","params","groups","serializer","estado","sort_by","order","search","competence","acc","withoutOption","comp","prodCompetence","precio_sin_impuestos","pageSize","opinion","titulo","nombre_usuario","nota","offers","freeShippingRate","token","Accept","Authorization","foto_direccion","referencias","lines","new_taxes","tipo_iva","new_price","base_imponible","old_price","old_taxes","id_pedido","ProductSelector","onSearch","prodSugggestions","closable","debounceTimeout","productInfo","setProductInfo","suggestions","setSuggestions","setLoading","subdomain","getProdId","pinfo","op","clearTimeout","tagRender","object","pid","getName","prompt","isNaN","notFoundContent","fetchProductSuggestions","ids","prodId","isAvanzada","Boolean","has","TabsPanelWithLock","timeout","closeMsg","unmounted","hasPerm","lock","addEventListener","removeEventListener","unlock","duration","lastModDateStoraged","lastModDate","modification_date","setItem","visibilityState","loadAuditlog","searchAfter","resp","DiffViewser","diffText","whiteSpace","flexGrow","urljoin","logs","setLogs","setSearchAfter","nextSearchAfter","setNextSearchAfter","isLoadingMore","setIsLoadingMore","selectedRow","setSelectedRow","search_after","atTheEnd","getPrevDoc","getDetailedDiff","doc","oldDoc","payload","newDoc","diffString","getDiffKeys","diff","span","minutes","getMinutes","seconds","getSeconds","getHours","formatDateWithSeconds","user","webpackAsyncContext","req","__webpack_require__","code","module","exports","MainMenu","menus","subpath","Icon","FolderOutlined","SwitcherOutlined","DatabaseOutlined","EuroCircleOutlined","RobotOutlined","PlusOutlined","BarChartOutlined","LogoutOutlined","pathname","found","curr","findCurrent","logout","defaultOpenKeys","process","block","SubMenu","ele","idx","currentVersion","separatorCSS","zIndex","minHeight","createClient","fetchOptions","authorization","Layout","onLogout","isMenuOpened","setMenuOpened","checkUpdate","isLogged","version","warning","ERRORS","failed_to_fetch","invalid_credentials","Login","username","setUser","password","setPass","errors","setErrors","focus","doLogin","preventDefault","login","onSubmit","AuthToken","logged","setState","guillotina","log","tresp","email","uvas","Preview","CustomPreview","preview","moreItems","openAllOption","domains","onBeforeClick","prevs","setPrevs","firstpart","encodeURIComponent","loadPreviews","forEach","placement","previewNL","NLPreview","setEmail","setShop","setLang","setDomain","emailModal","setEmailModal","testEmailNL","recipient","isActive","setActive","draft","scheduled","verified","StatusTitle","setFilters","navigate","applyFilters","newFilters","cacheCanIDo","cachePaises","AdminClient","depth","efective_date","date_start","esQuery","Elastic","getItems","id_tipo","target_lang","child","m","dayjs","getNLColumnHeadings","initpath","folderWithoutTrailingSlash","match","stringToSlug","level","bool","gte","qs","should","fuzziness","max_expansions","match_phrase_prefix","boost","minimum_should_match","must","parseParams","unschedule","verify","parts","countries","GuillotinaClient","parser","URLSearchParams","val","term","ErrorBoundary","errorInfo","withScope","scope","setExtras","eventId","captureException","hasError","errorMsg","errorStack","ErrorZone","classnames","dateToString","month","day","year","DatePicker","onUpdate","Y","toJSON","today","addHours","startOfToday","tomorrow","endOfTomorrow","fixSlugs","slugs","entries","newSlugs","slug","weekday","buildProductContent","product_id","getProduct","lema","product_kind","bg_color_img","bg_color_product","image_src","product_side","a_que_sabe","btn_text","PackForm","setId","setRef","setName","CellarSelector","searchCellars","ContentLayout","displayBackBtn","buttonLabel","buttonAction","history","back","LeftOutlined","disable","Label","SelectOrphanOptions","searchOrphanOptions","unionBy","grupo","initProduct","nombre_corto","nombre_banner","initOptionBO","getState","useProduct","useOptionBO","getOptionBO","setProduct","setOptionBO","create","producto","optionBO","CreateProductContent","OrhpanOptions","ProductNewName","Reference","Vintage","Capacity","Graduation","Cellar","Type","Region","Grape","setProductId","id_tipo_producto","tienda","parentType","setParentType","removeVintageAndFormat","setCellar","setType","tree","setRegion","setVintage","graduacion","grad","setGrad","step","uva","grapes","setGrapes","MESSAGES","tag_type_required","uva_nombre_required","processTypes","member","prepareData","old_id","ProductSummary","DOMAINS","vinissimus","italvinus","ProductOpciones","opcion","overflow","getEstado","ultimas_unidades","proveedor","OfertaViewer","ESTADOS","notavaliable","OFERTAS","ProductProperties","Buttons","Panels","isEqual","Empty","TagPropView","title_text","comentario","isDirty","setDirty","alert","isUva","RelatedProducts","image_grape","image_infograph","image_header","opened","setOpened","getTagQuery","category","type_name","nested","_source","initialState","set","useCallback","prevState","assign","Function","total","HomeItems","PageSize","useConfig","sortedItems","setSortedItems","getItemsColumn","searchParsed","buildQs","items_count","doPaginate","pager","setPath","colSpan","SelectLandings","selectedLandings","landings","setLandings","noResults","loadingMsg","fetchLanding","searchLandings","BlogPostsForm","memo","selected","edit","errorStyles","JSONEditor","_onChange","QueryProducts","jsonError","setJsonError","queryResults","setQueryResults","q","getProducts","ProductSelectorOrQuery","setQuery","editQuery","setEditQuery","checkedChildren","EditOutlined","unCheckedChildren","CatalogForm","hasButton","subtitle","buttonLink","editable","HomeSection","onEdit","custom","isCatalog","hiddenClass","hidden","editClass","HTMLDivElement","sectionLangs","for_langs","ImageForm","setImages","onUploadBanner","isFirstImage","onUploadBannerMultipleImage","foldersLanguage","allImages","locale","TabPane","imageSrc","allLinks","onChangeMultipleLinks","defaultChecked","parseFloat","OfferBannerForm","COLORS","EXTRA_COLORS","ColorPicker","suggested","extraColors","change","isDefined","isValid","renderColor","colorInfo","isAnArray","rgb","textColor","round","onKeyDown","ProductBannerForm","reference","Arrow","ArrowUpOutlined","ArrowDownOutlined","ImageWithArrows","moveUp","moveDown","isFirst","isLast","arrowStyle","transform","arrowUpStyle","left","arrowDownStyle","imagesCopy","ImagesForm","getImageDeviceTypeFromArrayBuffer","deviceType","onerror","createObjectURL","desktopImageUploaded","newImages","desktop","mobile","temp","moveImageUp","moveImageDown","decodeURIComponent","ind","TemplateData","openReset","setOpenReset","initialContext","epoch","setStart","date_end","setEnd","editIndx","setEditIndx","sections","uuid","setSections","close","reset","newSections","lastSections","scroll","startDate","home","newSection","previewLang","i18n","config","section","EditHomeSection","remove","toogleRemove","setToogleRemove","$blockScrolling","PreviewWebsites","currentLang","ContentLink","usePatchLanding","newContext","forLangs","post_author","postAuthor","publish_date","publishDate","searchable","Data","DataForm","setTemplate","saveLanding","setPostAuthor","setPublishDate","setForLangs","setSearchable","setWithLang","fn","thumbnail_src","Confirm","yes","no","cdnPrefix","emptyLangs","templates","templatesAsObj","Sections","confirmation","setConfirmation","clipboard","setClipboard","historial","setHistorial","lastUndo","prevSectionsRef","copy","paste","updateSections","prev","onChangeSection","prevSections","oldSection","undo","lastChange","hist","emptySection","Section","onRemove","sectionId","sectionTitle","module_id","onUploadImg","handleInputChange","newData","typeSelector","defaultQuery","fontFamily","img_src","img_caption","img_position","img_alt","img_link","SubmenuTab","submenu","setMenu","rows","fetching","setFetching","upsert","deserialization_errors","tabsPermissions","trianglePositions","GenerateProductImageWithTriangle","productRef","defaultBgColor","onUpload","onChangeBgColor","setImageSrc","modal","setModal","triangleColor","trianglePosition","ballRadius","ballColor","ballBorderWidth","ballContentTxt","ballContentFooter","ballFontSize","ballFooterFontsize","zoomImg","zoomImgPosition","ballFooterTxt","background","ballStyle","pos","zoomWidth","zoomHeight","zoomTop","getZoomProps","imgStyle","objectFit","footerTextStyle","bottom","loadProductImage","html2canvas","allowTaint","useCORS","canvas","toBlob","FormatPainterOutlined","okText","onOk","onCancel","UndoOutlined","marks","1","valueAsNumber","crossorigin","newsletterTranslator","subject","contenido","translate","translated","btnTypesArray","buttonTypes","disabledStatuses","contentNames","b_multi_img","bd","h2","w","btn","getContentBrief","contentBrief","NLProducts","sectionKey","update","colors","bdValue","NewsletterSection","updateLang","updateI18nField","updateTemplate","updateAlt","updateLink","updatePath","updateImg","initFull","fieldContent","initialize","newContent","Button","transformOldInitialBannersToNew","initialBanner","SendToEmails","count","setCount","uploadEmails","emails","countNewsletter","textTransform","TextDecoder","decode","AudienceConditions","colectivos","FREQUENCIES","1000","setPreferences","sendto","setOpPreferences","newVal","frequency","maxWidth","ciudad","addonBefore","SelectOperation","ops","lt","gt","frecuencia","num_pedidos","importe_total_pds","addonAfter","avg_price_bot","max_price_bot","fav_region","colectivos_id","fecha_first_pd","fecha_last_pd","Content","dirty","verifying","setVerifying","firstRender","initial_banner","setCtx","lastSave","setLastSave","updateContent","lastContentLength","err","saveDraft","verifyNLToggle","querySelector","errSuffix","textContent","updateDiscount","active_shipping_discount","updateInitialBanner","scrollHeight","behavior","SyncOutlined","spin","CheckCircleTwoTone","twoToneColor","SaveOutlined","buttonStyle","Schedule","progress","setProgress","schedule_at_b","displayB","setDisplayB","setColectivos","printVal","btnLabel","sendtoSource","getColectivos","setTimeToDate","time","newDate","setHours","setMinutes","setSeconds","ScheduleAt","AB","finishField","currentDate","finishState","finishDate","picker","moment","missing","schedule_at","finish_at","finish_at_b","calculateProgress","sent","nosent","norendered","retry","progressNL","pending","rendered","scheduleNewsletter","defaultPromo","startOfTomorrow","bg_color","display_countdown","isNew","promos","setPromos","getMissingTranslation","promo","missingLang","missingTranslation","ko","scrollTo","oldPromo","controls","zoneDate","Taxonomy","setChildren","setSelected","newName","setNewName","newId","setNewId","affixStyle","getItemCursor","newChildren","addNewChild","newItem","emptynames","original","loadData","CarryOutOutlined","parentKey","showLine","defaultExpandedKeys","onSelect","treeData","Suggester","random","autocomplete","preventSubmit","currentValue","div","innerHTML","destroy","controlledProps","TIPO_ZONA","supraregion","subdivision","ao","ce","cg","do","oc","vp","vt","va","CONSEJO_REGULADOR","CALIFICACIONES","5","4","3","2","IMAGES_KEYS","GUILLOTINA_KEYS","ZonaEditor","zona","cachedBodegas","newClasificacionAnyadaPunt","newClasificacionAnyada","handleChange","handleEditorChange","consejo_regulador","suggestBodega","bodegas_emblematicas","borderBottom","float","anyo","punt","clasificaciones_anyada","calificiones","ignoreKeys","field_list","z","bodegas","moreResults","getBodegas","contextType","TraversalContext","Submenu","loadZonas","sortBy","prop","k2","localeCompare","selectPais","moveZone","copyContent","MoveProducts","toRegion","setTo","changeForm","onMove","htmlFor","appendDefault","CopyContent","ZonasWidget","setFilter","path_i18n","Zonas","setZonas","setPais","productos","setProductos","loadingRegion","setLoadingRegion","moveModal","setMoveModal","copyModal","setCopyModal","canModify","canDelete","paisParam","handlerRegion","getProductsRegion","route","doAction","supportedMessageType","registry","paths","Properties","PanelProperties","Behaviors","PanelBehaviors","Actions","PanelActions","views","Promos","Bodega","Menu","Landing","Producto","Tag","isGrape","ZonaGeo","Home","Newsletter","forms","actionName","setPaises","getPaises","submit","cancelAction","msg","onFocus","minLength","classWrap","optional","home_name","setSlug","setSlugByLang","inputs","fixedSlugs","pushState","Packs","campaign","setCampaign","setDate","productDisplay","setProductDisplay","dateString","tipos","setTipos","setField","st","properties","ProductProps","TagProps","Cfg","icons","properties_default","properties_ignore_fields","DelayActions","Guillo","getClient","GuilloCfg","Tabs","AnalyticsPage","ProductTrafficAndPerformance","Funnel","PriceComparator","erpService","getAnalytics","setUrls","setPage","setProd","FileSearchOutlined","danger","RedoOutlined","TestEui","Customers","OffersContext","isExpired","fecha_hasta","PromoTag","descuento_oferta","updateValue","cantidad_precio_especial","caducable","formatDateWithZeroMilliseconds","milliseconds","OffersForm","createOffers","onValuesChange","fecha_desde","validator","rule","RangePicker","showTime","valuePropName","Offers","offersCtx","lastSearch","formState","setFormState","last","layout","changedFields","allFields","onBlur","onKeyUp","per_page","showSizeChanger","renderDate","Expire","isFuture","doExpire","verb","expired","ArrowRightOutlined","tarifa","cart_amount","min_precio_uni","sortedCountries","nameA","nameB","CreateFreeShippingRatesForm","onCreateFreeShippingRates","createFreeShippingRate","changedValues","allValues","cartAmount","minPrecioUni","endDate","desde","hasta","FreeShippingRatesPage","fetchFreeShippingRates","getFreeShippingRates","DeleteRecord","isModalOpen","setIsModalOpen","handleOk","deleteFreeShippingRate","DeleteOutlined","tableColumns","bordered","showTotal","OpinionForm","id_opinion","initialData","statusTab","saved","validateFields","editOpinion","publishOpinion","refuseOpinion","TextArea","Select","OptGroup","SelectLanguage","idiomasSelected","idioma","optionLabelProp","ProductLink","UserLink","userUrl","OpinionsGroup","statusTabs","pend","npub","publ","getOpinions","getTotalOpinions","totalStatus","changePage","defaultCurrent","extra","zope_id","csvToJSON","csv","Papa","headings","hasContent","rowObj","heading","headingIndx","mandatoryAddressColumns","supportedAddressColumns","AddOrder","useMutation","createOrderMutation","setLines","quantity","setQuantity","price","setPrice","productLines","productSearch","setProductSearch","useQuery","variables","pause","gift","setGift","presentMessage","setPresentMessage","CSVs","setCSVs","reading","setReading","gift_paper","present_message","pedido_search_producto","suffix","uid","reader","cleanData","readAsText","originFileObj","InboxOutlined","linea1","showCount","linkOrder","provider","linkBackoffice","EditableField","dis","setValue","setDisabled","styles","paddingRight","getKind","id_prov_vino","groupOrders","orders","id_","cod_pedido","DelayedOrders","setSite","processOrder","elements","ped","getStyle","LinkUsuario","id_usuario","incidencia","precio_total","clasificacion","fecha_stock","fecha","ccompra","stock_real","sum2","onProcess","anada","agotado","delay","LinkReservas","InfoReservas","show","setShow","ReservasProducto","id_linea_pedido","dsp","cantidad_pedido","stock_agg","sites","getOrderUrl","ActionButtons","kind","actions","getDelaiedProducts","css","available","GroupOrderPreparation","empresas","setEmpresas","setProvider","setOrders","doLoad","setDoLoad","emp","buyer","mergeOrders","comprador","indx","getStatus","colspan","case","UserSelector","defaultEmail","lastSelected","setLastSelected","search_user","selectedEmail","ListInvoices","openCreate","setOpenCreate","requestPolicy","reloadList","invoice_multiorder_search","onRow","amount","CreateInvoice","onSuccess","FormToAddProductNoCatalog","getProductsOutCatalog","OrderEdit","originalOrder","setOriginalOrder","setOrder","forced","setForced","changePrice","setChangePrice","sumPrice","totalOld","newLine","outCatalog","updateOrderProducts","product_lines","change_price","responseJson","pack_products","Modal","fetchOrder","tip","rowClassName","getPriceLine","oldPriceLine","priceLine","newID","prodData","formato","onEditProduct","onEditQuantity","offer","oldLine","oldPrice","CheckPaymentMultiOrder","id_multifactura","id_factura","statusPayment","setStatusPayment","reload","confirmPayment","ViewInvoice","selectedRows","setSelectedRows","hibernateDate","setHibernateDate","selecting","setSelecting","observationType","setObservationType","comment","setComment","hibernate","commentOrder","confirmOrder","cancelOrder","selectBillingAddress","setInvoiced","removeOrders","resInvoice","invoice","invoice_multiorder","resUser","resetUser","customer","getTableAction","onAction","onConfirm","cancelText","promise","dataName","invoice_multiorder_set_invoiced","selectAddress","id_fac","id_datos_fac","optionFilterProp","datos_fac","linea2","linea3","selections","orderIds","disabledDate","endOfYesterday","toDate","getCheckboxProps","pedidos","CreateAddress","userId","user_add_datos_fac","fac","OrdersGroup","ProductGroup","Users","langWarn","setUserId","newsletter","subscription","unsubscribed","u","user_id","allowedExtensions","id_pedido_column","amount_order_column","id_comp","codigo_factura","fecha_factura","comision_fija","orderListByKey","elemA","elemB","hasOwnProperty","comparison","compareValues","formatCurrency","ImportInvoices","columnsTable","setColumnsTable","optionsColumns","setOptionsColumns","optionConfirmData","setOptionConfirmData","dataTransportCost","setDataTransportCost","disableInputFile","setDisableInputFile","filterData","setFilterData","optionFilter","setOptionFilter","totalFilter","setTotalFilter","companies","labelTemplate","getImportedInvoice","filterColumn","columnsAlignRight","columnKey","invoice_date","id_pasarela_company","dataColumnsImportedInvoices","dataRes","invoice_number","name_company","total_value_of_matched_costs","total_value_of_not_matched_costs","id_company","cod_order","cost","lines_file","responseValue","resConfirm","messageError","inputFile","fileExtension","typeFile","resFilterDate","data_filtered","dataFilterDate","dateResponse","idCompany","id_companyia","labelCompany","repetidos","company","total_amount","optionCol","_d","total_cost_with_referer","total_cost_without_referer","cost_calculate","sticky","y","ImportShippingInvoices","ImportCommissionsCollectionsInvoices","invoiceNumber","invoiceDate","amountCountries","ImportInvoiceEurotax","importInvoice","setImportInvoice","facturaDesglosada","setFacturaDesglosada","dataPaises","setDataPaises","columnsTablePaises","setColumnsTablePaises","getImportedInvoiceEurotax","status_code","desgloseFactura","id_factura_eurotax","mes_facturacion","coste_total_factura","coste_total_calculado","amount_countries","desglose_factura","coste","coste_paises","dataColumnsPaises","coste_total","countrie","updatedAmountCountries","monthlyCost","ImportCostWarehouse","stateImportCost","setStateImportCost","dataCostes","setDataCostes","getImportedInvoiceWarehouseCost","fecha_registro","id_coste","numero_botellas","numero_pedidos","coste_botella","ImportCommissionsCollectionsV2","setCompanies","setInputFile","dataTable","setDataTable","lecturaFichero","setLecturaFichero","comisionPedido","setComisionPedido","comisionExtra","setComisionExtra","getAllPaymentCommissionCompanies","resCompanies","getImportedInvoiceV2","queryString","pedido","comision","descripcion","comision_pedido","comision_extra","InvoicesGroup","ContentGenerated","checkedList","setCheckedList","setOptions","setNewCampaign","setContentData","forceImport","setForceImport","reorderedColumns","col","generateFeed","handleEdit","contentMap","force","columnsHidden","formatCampaignName","extractCampaignName","fullName","AddNewContent","showFeatureOptions","setShowFeatureOptions","showSelectProduct","setSelectProducts","idsProducts","setIdsProducts","useRoute","isEditMode","campaignType","setCampaignType","contentData","cleanCampaignName","campaign_name","dates","start_date","end_date","promoted_products","feature_badge","hasSinProductos","setFieldsValue","topic","promotion_topic","marketing_text","feature_value","feature_text","landing_page_url","sin_productos","oferta_producto","addNewProduct","productKey","prevIdsProducts","newIdsProducts","loadContentData","labelCol","wrapperCol","autoComplete","remember","pattern","invalidChars","offset","ContentAiGroup","MatchProducts","proveedores","setProveedores","totalProductos","setTotalProductos","proveedorSelected","setPorveedorSelected","botellas","setBotellas","opcionBotella","setOpcionBotella","currentPage","setCurrentPage","productsPerPage","setProductsPerPage","formValues","setFormValues","searchTerm","setSearchTerm","setFilteredProducts","getProvidersMarketplace","getProductsProviderMarketplace","id_proveedor","total_productos","filtered","indexOfLastProduct","indexOfFirstProduct","currentProducts","boxShadow","transition","onMouseEnter","onMouseLeave","CloseOutlined","familia_producto","id_producto_proveedor","setBottleProduct","EditMatchs","itemsPerPage","setItemsPerPage","selectedProvider","setSelectedProvider","providers","setProviders","editingProduct","setEditingProduct","excluir_venta","editForm","setEditForm","getProductsWithMatch","deleteMatch","uniqueProviders","matchesSearch","String","matchesProvider","handleModalClose","editMatchs","id_producto_old","id_producto_new","indexOfLastItem","indexOfFirstItem","currentItems","totalPages","ceil","hour","minute","second","pvp_proveedor","surtido","handleEditClick","handleDeleteMatch","pageNumbers","startPage","endPage","maxVisiblePages","renderPageNumbers","newSize","MarketPlaceGroup","App","erpClient","ensureLogin","base","Provider","Sentry","dsn","cssFile","head","appendChild","ReactDOM","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.23b41437.chunk.js","sourcesContent":["async function uploadImage(file) {\n try {\n const formData = new FormData()\n formData.append('file', file)\n\n const response = await fetch('/api/upload', {\n method: 'POST',\n body: formData,\n })\n\n if (!response.ok) {\n throw new Error('Error uploading image')\n }\n\n const data = await response.json()\n return data.url\n } catch (error) {\n console.error('Error uploading image:', error)\n throw error\n }\n}\n\nexport const QUILL_CONFIG = {\n modules: {\n toolbar: {\n container: [\n [{ header: [1, 2, 3, 4, 5, 6, false] }],\n ['bold', 'italic', 'underline', 'strike'],\n [{ list: 'ordered' }, { list: 'bullet' }],\n [{ indent: '-1' }, { indent: '+1' }],\n [{ align: [] }],\n ['link', 'image'],\n ['clean'],\n ],\n handlers: {\n image: function () {\n const input = document.createElement('input')\n input.setAttribute('type', 'file')\n input.setAttribute('accept', 'image/*')\n input.click()\n\n input.onchange = async () => {\n const file = input.files[0]\n if (file) {\n try {\n const imageUrl = await uploadImage(file)\n const range = this.quill.getSelection()\n this.quill.insertEmbed(range.index, 'image', imageUrl)\n } catch (error) {\n console.error('Error uploading image:', error)\n }\n }\n }\n },\n },\n },\n },\n formats: [\n 'header',\n 'bold',\n 'italic',\n 'underline',\n 'strike',\n 'list',\n 'bullet',\n 'indent',\n 'link',\n 'image',\n 'align',\n ],\n}\n\nexport const QUILL_CONFIG_RESTRICTED = {\n modules: {\n toolbar: {\n container: [\n ['bold', 'italic', 'underline'],\n [{ list: 'ordered' }, { list: 'bullet' }],\n ['link'],\n ['clean'],\n ],\n },\n },\n formats: ['bold', 'italic', 'underline', 'list', 'bullet', 'link'],\n}\n\nexport const QUILL_CONFIG_READONLY = {\n modules: {\n toolbar: false,\n },\n}\n\nexport const QUILL_CONFIG_NEWSLETTER = {\n modules: {\n toolbar: {\n container: [\n [{ header: [1, 2, false] }],\n ['bold', 'italic', 'underline'],\n [{ list: 'ordered' }, { list: 'bullet' }],\n [{ align: [] }],\n ['link'],\n ['clean'],\n ],\n },\n },\n formats: [\n 'header',\n 'bold',\n 'italic',\n 'underline',\n 'list',\n 'bullet',\n 'link',\n 'align',\n ],\n}\n\nexport const QUILL_STYLES = {\n editor: {\n minHeight: '200px',\n maxHeight: '400px',\n backgroundColor: '#ffffff',\n border: '1px solid #ddd',\n borderRadius: '4px',\n padding: '10px',\n },\n toolbar: {\n border: '1px solid #ddd',\n borderRadius: '4px',\n marginBottom: '5px',\n },\n}\n","import React from 'react'\nimport ReactQuill from 'react-quill'\nimport 'react-quill/dist/quill.snow.css'\nimport { QUILL_CONFIG } from '../config/editor'\n\nexport const QuillEditor = ({\n value = '',\n onChange,\n readOnly = false,\n height = '300px',\n id = '',\n}) => {\n const handleChange = (content) => {\n if (onChange) {\n // Eliminamos los divs vacíos que Quill puede añadir\n const cleanContent = content.replace(/
/g, '').replace(/<\\/div>/g, '')\n // Emulamos el comportamiento exacto de TinyMCE\n onChange(cleanContent || '')\n }\n }\n\n return (\n
\n \n
\n )\n}\n","import React, { useState } from 'react'\nimport { Button } from 'antd'\nimport { Input, Textarea, useTraversal } from '@guillotinaweb/react-gmi'\n\nimport { I18NField } from './i18nfield'\nimport { setLangs } from '../consts'\n\nconst seoField = 'api.behaviors.seo.ISeoBehavior'\n\nexport function SEOTab({ withH1 }) {\n const Ctx = useTraversal()\n const seo = Ctx.state.context[seoField] || {}\n const [saving, setSaving] = useState(false)\n const [title, setTitle] = useState(seo.seo_title || setLangs(''))\n const [titleH1, setTitleH1] = useState(seo.seo_h1 || setLangs(''))\n const [description, setDescription] = useState(\n seo.seo_description || setLangs('')\n )\n const h1 =\n typeof Ctx.state.context.title === 'string'\n ? Ctx.state.context.title\n : Ctx.state.context['@name']\n\n async function save() {\n setSaving(true)\n const flashOk = ['SEO fields saved', 'success']\n const flashKo = ['Error saving the SEO fields', 'danger']\n const { status } = await Ctx.client.patch(Ctx.path, {\n [seoField]: {\n seo_title: title,\n seo_description: description,\n seo_h1: titleH1,\n },\n })\n Ctx.flash(...(status === 204 ? flashOk : flashKo))\n setSaving(false)\n }\n\n return (\n <>\n \n

{h1}

\n \n
\n null}>\n {(lang) => (\n
\n setTitle((o) => ({ ...o, [lang]: t }))}\n />\n {withH1 && (\n setTitleH1((o) => ({ ...o, [lang]: t }))}\n />\n )}\n setDescription((o) => ({ ...o, [lang]: t }))}\n />\n
\n )}\n
\n \n )\n}\n","import { useTraversal } from '@guillotinaweb/react-gmi'\nimport { useState } from 'react'\nimport { message } from 'antd'\nimport { getGoogleMapsDataFromURL } from './partials/location'\n\nexport default function useSaveCellar() {\n const ctx = useTraversal()\n const [saving, setSaving] = useState(false)\n const cellar = ctx.state.context\n const folder = `bodegas/${cellar.internal_id}`\n\n async function save(fields = {}, showMsg = false) {\n setSaving(true)\n try {\n const r = await ctx.client.patch(ctx.path, fields)\n const oldMapURL = cellar.googlemap_url\n const mapUrlUpdated = fields.googlemap_url !== oldMapURL\n\n if (oldMapURL && fields.googlemap_url === '') {\n await deleteMapImage()\n } else if (mapUrlUpdated && fields.googlemap_url) {\n await uploadMapImage(fields)\n }\n\n if (r.status >= 400) throw new Error((await r.json()).message)\n setSaving(false)\n if (!showMsg) message.success(`Saved successfully.`)\n ctx.refresh({ transparent: true })\n } catch (e) {\n setSaving(false)\n message.error(`Error saving. ${e.message}`)\n }\n }\n\n async function uploadMapImage(fields) {\n message.info('Uploading location map image...')\n\n const { img } = getGoogleMapsDataFromURL(fields.googlemap_url)\n const imgFile = await getFileFromUrl(img, 'googlemap_img.png')\n\n let res = await ctx.client.upload(\n ctx.path,\n imgFile,\n folder,\n 'googlemap_img'\n )\n\n if (res.status !== 200)\n return message.error('Error uploading location map image')\n }\n\n async function deleteMapImage() {\n message.info('Deleting location map image...')\n let res = await ctx.client.deleteFile(ctx.path, 'googlemap_img')\n if (res.status !== 200)\n return message.error('Error deleting location map image')\n }\n\n return [saving, save]\n}\n\nasync function getFileFromUrl(url, filename, contentType = 'image/png') {\n const response = await fetch(url)\n const blob = await response.blob()\n return {\n contentType,\n data: await blob.arrayBuffer(),\n filename,\n }\n}\n","import React, { lazy, useState, Suspense, useEffect } from 'react'\nimport createStore from 'teaful'\nimport { Affix, Menu, Button, Dropdown } from 'antd'\nimport { ContextToolbar } from '@guillotinaweb/react-gmi'\nimport { PanelPermissions } from '@guillotinaweb/react-gmi'\nimport { useTraversal, useLocation } from '@guillotinaweb/react-gmi'\nimport { PanelItems } from '@guillotinaweb/react-gmi'\n\nimport { DownOutlined, EyeOutlined } from '@ant-design/icons'\n\nimport useSaveCellar from './useSaveCellar'\nimport { AuditLogTab } from '../../../common/auditlog'\nimport { ContentReviewTab } from '../../../components/content-review-tab'\nimport { SEOTab } from '../../../components/seo-tab'\nimport { SITES, SITES_INFO } from '../../../consts'\nimport { TabsPanelWithLock } from '../../../components/tab-panel-with-lock'\nimport { getDomain, getCellarMask } from '../../../utils'\n\nimport './styles.css'\n\nexport const { useStore, getStore } = createStore({})\n\nconst QUERY_PARAM = 'menu'\nconst loadComponent = (key) =>\n lazy(() =>\n import(`./partials/${key}`).catch(() => ({ default: () => 'No content' }))\n )\n\nfunction CellarEditor() {\n const [location, setLocation] = useLocation()\n const defaultItem = location.get('tab') === 'Images' ? 'images' : 'details'\n const item = location.get(QUERY_PARAM) || defaultItem\n const ctx = useTraversal()\n const cellar = ctx.state.context\n const [Comp, setComp] = useState()\n const [key, setKey] = useState(item)\n const [saving, save] = useSaveCellar()\n\n function onClick(e) {\n setLocation({ [QUERY_PARAM]: e.key })\n setComp(loadComponent(e.key))\n setKey(e.key)\n }\n\n function onSave() {\n const [store] = getStore()\n save(store)\n }\n\n useEffect(() => {\n const [, setStore] = getStore()\n setStore({})\n setComp(loadComponent(item))\n }, [])\n\n const menu = (\n \n {SITES.map((site) => {\n const lang = SITES_INFO[site].lang\n const url = `https://${getDomain(site)}${getCellarMask(\n cellar['@name'],\n lang\n )}`\n return (\n window.open(url, '_blank')}>\n {site}\n \n )\n })}\n \n )\n\n return (\n
\n \n \n

{cellar.nombre}

\n
\n \n \n \n \n
\n
\n \n
\n \n \n \n }\n >\n Winery details\n \n \n\n \n }\n >\n Origins and history\n \n }>\n The team\n \n }\n >\n Vineyards\n \n }\n >\n Winemaking\n \n }>\n The wines\n \n }\n >\n The company / group\n \n }\n >\n Town\n \n }\n >\n Contact\n \n \n \n \n
\n {Comp && (\n }>\n \n \n )}\n
\n
\n \n )\n}\n\nexport function BodegaView(props) {\n const ctx = useTraversal()\n\n let tabs = {\n Items: PanelItems,\n Edit: CellarEditor,\n Permissions: PanelPermissions,\n AuditLog: AuditLogTab,\n SEO: SEOTab,\n ContentReview: ContentReviewTab,\n }\n\n const permissions = {\n Edit: 'guillotina.ModifyContent',\n Permissions: 'guillotina.SeePermissions',\n SEO: 'guillotina.ModifyContent',\n ContentReview: 'guillotina.ModifyContent',\n }\n\n const calculated = ctx.filterTabs(tabs, permissions)\n\n return (\n }\n {...props}\n />\n )\n}\n","export const LANGS = ['es', 'it', 'fr', 'de', 'en']\nexport const LANG_NAMES = {\n es: 'Spanish',\n it: 'Italian',\n de: 'German',\n fr: 'French',\n en: 'English',\n}\n\nexport const SITES_INFO = {\n 'vinissimus.com': {\n shop: 'vinissimus',\n lang: 'es',\n country: 'es',\n },\n 'vinissimus.co.uk': {\n shop: 'uk',\n lang: 'en',\n country: 'uk',\n },\n 'vinissimus.fr': {\n shop: 'vinissimus',\n lang: 'fr',\n country: 'fr',\n },\n 'hispavinus.de': {\n shop: 'de',\n lang: 'de',\n country: 'de',\n },\n 'italvinus.it': {\n shop: 'italvinus',\n lang: 'it',\n country: 'it',\n },\n}\n\nexport const SITES = Object.keys(SITES_INFO)\n\nexport const SHOPS = Object.values(SITES_INFO).map(({ shop }) => shop)\n\n// export const TINYMCE_APIKEY = 'g1pc6d1ox3x0odwrdl2odk4fsxnn6d9dm6jhtjp9gsyli505'\nexport const TINYMCE_APIKEY = 'z7t65ku7as9m9oumznpl1tua2c0n39rtpdjg9wjlh3cosldo'\nexport const TINYMCE_INIT_UNRESTRICTED = {\n height: 500,\n width: '100%',\n menubar: false,\n // The following line is needed to preserve absolute urls like\n // '/es/content/vinos-ecologicos-y-biodinamicos/...'\n relative_urls: false,\n // plugins: [\n // 'advlist autolink lists link image charmap print preview anchor',\n // 'searchreplace visualblocks code fullscreen',\n // 'insertdatetime media table paste code help wordcount'\n // ],\n plugins: ['link paste code lists table image media'],\n toolbar:\n 'undo redo | formatselect | bold italic | numlist bullist | link | removeformat ' +\n ' | code | table | image | media',\n block_formats: 'Paragraph=p; Header 2=h2; Header 3=h3; Header 4=h4',\n}\nexport const TINYMCE_INIT = {\n ...TINYMCE_INIT_UNRESTRICTED,\n valid_elements:\n '@[id|title],a[rel|rev|charset|hreflang|tabindex|accesskey|type|' +\n 'name|href|target|title|class],strong/b,em/i,strike,u,' +\n '#p,-ol[type|compact],-ul[type|compact],-li,br,img[longdesc|usemap|' +\n 'src|border|alt=|title|hspace|vspace|width|height|align],-sub,-sup,' +\n '-blockquote,-div,-span,-code,-pre,-h2,-h3,-h4,hr[size|noshade]' +\n '-blockquote,-table[border=0|cellspacing|cellpadding|width|frame|rules|' +\n 'height|align|summary|bgcolor|background|bordercolor],-tr[rowspan|width|' +\n 'height|align|valign|bgcolor|background|bordercolor],tbody,thead,tfoot,' +\n '#td[colspan|rowspan|width|height|align|valign|bgcolor|background|bordercolor' +\n '|scope],#th[colspan|rowspan|width|height|align|valign|scope]' +\n 'iframe[align {\n const u = new URL(window.location.href)\n return u.hostname.startsWith('www')\n}\n\nexport const getMediaUrl = () => {\n if (isProd()) {\n return MEDIA_URL_prod\n }\n return MEDIA_URL_stage\n}\n\nexport const getCdnUrl = () => {\n if (isProd()) {\n return CDN_URL_prod\n }\n return CDN_URL_stage\n}\n\nexport function setLangs(t) {\n return LANGS.reduce((o, lang) => {\n o[lang] = t\n return o\n }, {})\n}\n\nexport const frontThemes = [\n 'clear',\n 'clear-grey-green',\n 'clear-pink',\n 'dark',\n 'golden',\n 'grey-green',\n 'light',\n 'light-blue',\n 'light-green',\n 'light-grey-green',\n 'light-orange',\n 'light-pink',\n 'light-purple',\n 'light-shine',\n 'orange',\n 'pink',\n 'shine',\n]\n\nconst emptyStringLangs = setLangs('')\n\nconst imageHome = {\n buttonText: emptyStringLangs,\n buttonTheme: 'primary',\n filter: undefined, // dark, clear\n height: 250,\n href: emptyStringLangs,\n id: 'image',\n image: emptyStringLangs,\n imageCover: true,\n imageRepeat: false,\n removePadding: false,\n textBanner: emptyStringLangs,\n textBigger: false,\n theme: 'clear',\n title: emptyStringLangs,\n widthSize: 'regular',\n}\n\nexport const homeSectionsToAdd = [\n {\n id: 'special',\n buttonText: emptyStringLangs,\n title: {\n es: 'Especial',\n fr: 'Spécial',\n de: 'Spezial',\n en: 'Special',\n it: 'Speciale',\n },\n type: 'Grid8Small',\n theme: 'grey-green',\n query: {},\n },\n {\n id: 'product-banner',\n bgColor: '#ffe8c5',\n },\n imageHome,\n {\n ...imageHome,\n id: 'image-slider',\n images: emptyStringLangs,\n },\n {\n ...imageHome,\n id: 'product-image',\n widthSize: 'big',\n query: {},\n },\n {\n id: 'html',\n html: emptyStringLangs,\n },\n {\n id: 'offer-banner',\n query: {},\n discount: 15,\n image: emptyStringLangs,\n title: emptyStringLangs,\n discount_text: emptyStringLangs,\n is_same_offer_for_all_products: true,\n link: emptyStringLangs,\n text_banner: emptyStringLangs,\n },\n {\n id: 'blog-posts',\n posts_ids: setLangs([]),\n },\n]\n\nexport const defaultHomeSections = [\n {\n id: 'trust-elements',\n },\n {\n id: 'bestsellers',\n title: {\n es: 'Los más vendidos del mes',\n de: 'Top-Verkäufe des Monats',\n en: \"This month's Best Sellers\",\n fr: 'Les plus vendus du mois',\n it: 'I più venduti del mese',\n },\n type: 'Catalog',\n theme: 'clear-grey-green',\n },\n {\n id: 'mini-banners',\n },\n {\n id: 'news',\n buttonText: {\n es: 'Más novedades',\n de: 'Mehr Neuheiten',\n en: 'More new wines',\n fr: 'Plus de nouveautés',\n it: 'Altre novità',\n },\n title: {\n es: 'Novedades',\n de: 'Neuheiten',\n en: 'New additions',\n fr: 'Nouveautés',\n it: 'Novità',\n },\n type: 'Catalog',\n theme: 'clear',\n },\n {\n id: 'offer-and-promo',\n buttonText: {\n es: 'Más ofertas y promociones',\n de: 'Mehr Angebote',\n en: 'More special offers',\n fr: \"Plus d'offres et promotions\",\n it: 'Altre offerte e promozioni',\n },\n title: {\n es: 'Ofertas',\n de: 'Angebote',\n en: 'Special offers',\n fr: 'Offres',\n it: 'Offerte',\n },\n type: 'Catalog',\n theme: 'golden',\n },\n {\n id: 'recomendations',\n title: {\n es: 'Recomendaciones para usted',\n de: 'Empfehlungen für Sie',\n en: 'Our recommendations for you',\n fr: 'Nos recommandations pour vous',\n it: 'Le nostre raccomandazioni',\n },\n type: 'Carousel',\n theme: 'light',\n },\n]\n\nexport const buttonThemes = [\n 'primary',\n 'default',\n 'btn-as-link',\n 'btn-black',\n 'btn-white',\n]\n\nexport const ALL_COUNTRIES = {\n fr: 'France',\n de: 'Germany',\n an: 'Andorra',\n at: 'Austria',\n be: 'Belgium',\n bg: 'Bulgaria',\n es: 'Spain',\n it: 'Italy',\n lu: 'Luxembourg',\n ho: 'Netherlands',\n pl: 'Poland',\n po: 'Portugal',\n ro: 'Romania',\n uk: 'United Kingdom',\n cz: 'Czech Republic',\n ch: 'Switzerland',\n se: 'Sweden',\n}\n\nexport const SELLING_COUNTRIES = [\n 'an',\n 'at',\n 'be',\n 'ch',\n 'de',\n 'es',\n 'fr',\n 'se',\n 'ho',\n 'it',\n 'uk',\n 'po',\n]\n\nexport const DISTANCE_SELLING = {\n fr: 'France',\n de: 'Germany',\n at: 'Austria',\n be: 'Belgium',\n ho: 'Netherlands',\n po: 'Portugal',\n se: 'Sweden',\n}\n\nexport const COUNTRIES = Object.keys(ALL_COUNTRIES)\n\nexport const capacityNames = {\n b3: 'Bag in box 3L',\n b5: 'Bag in box 5L',\n dc: 'Balthazar',\n dm: 'Doble Magnum',\n ma: 'Magnum',\n mt: 'Imperial',\n na: 'Nabuchodonosor',\n pr: 'Primat',\n sa: 'Melchior',\n sz: 'Salmanazar',\n}\n\nexport const BOTTLE_CAPACITY_LITERS = {\n 10: 0.1,\n 17: 1.75,\n 20: 0.2,\n 25: 2.5,\n 33: 0.33,\n 35: 0.35,\n 37: 0.37,\n 50: 0.5,\n 62: 0.62,\n 65: 0.65,\n 70: 0.7,\n 72: 0.72,\n 75: 0.75,\n b3: 3.0, // Bag in box 3L\n b5: 5.0, // Bag in box 5L\n cu: 0.025,\n dc: 12.0, // Balthazar\n dm: 3.0, // Doble Magnum\n je: 5.0,\n li: 1.0,\n ma: 1.5, // Magnum\n mt: 6.0, // Imperial\n na: 15.0, // Nabuchodonosor\n pr: 27.0, // Primat\n sa: 18.0, // Melchior\n sz: 9.0, // Salmanazar\n}\n\nexport const catalogs = [\n 'Carousel',\n 'CarouselSmall',\n 'Catalog',\n 'CatalogSmall',\n 'Grid12',\n 'Grid12Small',\n 'Grid8',\n 'Grid8Small',\n]\n\nexport const FREE_SHIPPING_RATES = {\n dtp: 'Descuento transporte producto',\n trd: 'Transporte con descuento',\n trg: 'Transporte gratis',\n}\n","import React from 'react'\nimport dragula from 'dragula'\n\nimport './dnd.css'\n\nfunction array_move(curr_arr, old_index, new_index) {\n const arr = [...curr_arr] // avoid mutating state\n if (new_index >= arr.length) {\n let k = new_index - arr.length + 1\n while (k--) {\n arr.push(undefined)\n }\n }\n arr.splice(new_index, 0, arr.splice(old_index, 1)[0])\n return arr // for testing\n}\n\nexport class DnD extends React.Component {\n constructor(props) {\n super(props)\n this.id = this.props.id || 'reordenable-list'\n this.getChild = this.getChild.bind(this)\n this.onChange = this.onChange.bind(this)\n this.dragulaOnDrop = this.dragulaOnDrop.bind(this)\n }\n\n render() {\n const className = this.props.className || ''\n\n return (\n
\n {this.props.list.map((el, i, _) => (\n \n {this.props.getChild(el, i)}\n
\n ))}\n \n )\n }\n\n getChild(el, i) {\n return this.props.getChild(el, i)\n }\n\n onChange(list) {\n return this.props.onChange(list)\n }\n\n componentDidMount() {\n dragula([document.getElementById(this.id)], {\n ...(this.props.events || {}),\n accepts: (el, target, source, sibling) => {\n // drop to existent item\n return sibling?.dataset?.index !== undefined && target.contains(el)\n },\n }).on('drop', this.dragulaOnDrop())\n }\n\n dragulaOnDrop() {\n let component = this\n return (el, target, source, sibling) => {\n let currIndex = parseInt(el.dataset.index)\n let dest = parseInt(sibling?.dataset?.index)\n\n if (dest > currIndex) {\n dest = dest - 1\n }\n const l = component.props.list\n component.onChange(array_move(l, currIndex, dest))\n }\n }\n}\n","import React, { useState } from 'react'\nimport { Icon } from '@guillotinaweb/react-gmi'\n\nimport './accordion-card.css'\n\n/**\n * This component is to dropdown content inside a card:\n *\n * ***************\n * * Title v *\n * ***************\n *\n * And on click to the caret icon:\n *\n * ***************\n * * Title ^ * -> props.title\n * ***************\n * * Some *\n * * Content * -> props.children\n * ***************\n *\n */\nexport function AccordionCard({\n children,\n className = '',\n defaultCollapsed = true,\n renderCollapsed = true,\n onToggle,\n title,\n ...props\n}) {\n const [collapsed, setCollapsed] = useState(defaultCollapsed)\n const toggle = () => setCollapsed((v) => !v)\n const iconPosition = collapsed ? 'down' : 'up'\n\n return (\n
\n
\n {title}\n {\n if (onToggle) onToggle(!collapsed)\n toggle()\n }}\n className=\"collapse\"\n >\n \n \n
\n {/* We want to render the children always (even when is collapsed) because otherwise\n form validation doesn't work */}\n {(!collapsed || renderCollapsed) && (\n
\n {children}\n
\n )}\n
\n )\n}\n","import React, { useRef } from 'react'\nimport { Input } from 'antd'\n\nexport function ProductName({\n lang,\n label,\n field = 'nombre',\n setNames,\n names,\n required,\n maxLength,\n}) {\n const ref = useRef()\n return (\n \n {label}\n \n )\n }\n defaultValue={names?.[lang]?.[field]}\n onInput={() =>\n setNames((o) => ({\n ...o,\n [lang]: {\n ...o[lang],\n [field]: ref.current.input.value,\n },\n }))\n }\n />\n )\n}\n","import React, { useEffect, useState } from 'react'\nimport { TreeSelect } from 'antd'\n\nexport function SelectTaxonomy({\n allowClear,\n lang = 'en',\n multiple = true,\n onChange,\n label,\n filterByParentIds,\n placeholder = 'Select labels',\n startsWithSlash = false,\n taxonomy = '',\n value,\n style = {},\n}) {\n const [allLabels, setAllLabels] = useState([])\n const defaultSeparator = startsWithSlash ? '/' : ''\n let labels = allLabels\n\n if (Array.isArray(filterByParentIds)) {\n labels = allLabels\n .filter((l) => filterByParentIds.includes(l.id))\n .flatMap((label) =>\n label.children.map((l) => ({\n ...l,\n id: label.id + defaultSeparator + l.id,\n }))\n )\n }\n\n function mapChildren(item = {}, parent = '', separator = defaultSeparator) {\n const { name = {}, children = [], id } = item\n const fullId = `${parent}${separator}${id}`\n const title = name[lang] || fullId\n\n return (\n \n {children.map((i) => mapChildren(i, fullId, '/'))}\n \n )\n }\n\n useEffect(() => {\n loadLabels()\n }, [])\n async function loadLabels() {\n const res = await fetch(\n `/db/guillotina/taxonomies/${taxonomy}/`\n ).then((r) => r.json())\n setAllLabels(res.children || [])\n }\n\n return (\n <>\n {label && (\n
{label}
\n )}\n {\n const txt = (t) =>\n t\n .trim()\n .toLowerCase()\n .normalize('NFD')\n .replace(/[\\u0300-\\u036f]/g, '')\n\n return txt(node.title).indexOf(txt(input)) >= 0\n }}\n style={{ width: '100%' }}\n treeCheckable={multiple}\n value={value}\n >\n {labels.map((i) => mapChildren(i))}\n \n \n )\n}\n","import React, { useEffect, useState } from 'react'\nimport { Select } from 'antd'\nimport { getLang } from '../utils'\n\nexport function RegionSelector({\n value,\n onChange,\n loadRegions = searchRegions,\n ...props\n}) {\n const [items, setItems] = useState()\n\n useEffect(() => {\n init()\n }, [])\n async function init() {\n const res = await loadRegions()\n setItems(res)\n }\n\n if (!items) return null\n\n return (\n \n option.children.toLowerCase().indexOf(input.toLowerCase()) >= 0\n }\n onChange={onChange}\n >\n {items.map((item) => (\n \n {item.name}\n \n ))}\n \n )\n}\n\nexport async function searchRegions() {\n const lang = getLang(new URL(window.location.href))\n const obj = await fetch(\n `/db/guillotina/@list-id-zonas?lang=${lang}`\n ).then((res) => res.json())\n return obj?.zonas\n ?.filter(\n (item) => item.type !== 'supraregion' && item.type !== 'subdivision'\n )\n ?.map?.((item) => ({ id: item.path, name: item.name }))\n}\n","import React, { useEffect, useState } from 'react'\nimport { Select, useTraversal } from '@guillotinaweb/react-gmi'\nimport { Input } from 'antd'\n\nimport { useStore } from '../'\n\n// Google Maps API has a cost per request, so we need to upload the images on save\n// when the cellar.googlemap_url is changed\nconst GOOGLE_MAPS_KEY = 'AIzaSyCjX3Uslfba9FtQxkeUAN2tKkwW9TIFWGY'\nconst EXAMPLE_MAP_URL =\n 'https://www.google.com/maps/@41.4564908,2.1829595,16.38z'\n\nexport default function Location({ cellar }) {\n const Ctx = useTraversal()\n const [cp, setCp] = useStore.codigo_postal(cellar.codigo_postal)\n const [locality, setLocality] = useStore.localidad(cellar.localidad)\n const [province, setProvince] = useStore.provincia(cellar.id_provincia)\n const [country, setCountry] = useStore.pais(cellar.id_pais)\n const [mapLink, setMapLink] = useStore.googlemap_url(\n cellar.googlemap_url || ''\n )\n const [address, setAddress] = useStore.direccion(cellar.direccion)\n const [fieldConsts, setFieldConsts] = useState({\n provincias: [],\n paises: [],\n })\n\n const { latitude, longitude, zoom, img } = getGoogleMapsDataFromURL(mapLink)\n\n useEffect(() => {\n async function load() {\n const r = await Ctx.client.rest.get('@field-constants')\n if (r.status === 200) {\n const data = await r.json()\n setFieldConsts(data)\n } else {\n console.error(r.text())\n }\n }\n load()\n }, [Ctx.path])\n\n return (\n <>\n

\n \n Town\n

\n
Address:
\n setAddress(e.target.value)} />\n
Postal code:
\n setCp(e.target.value)} />\n
Town:
\n setLocality(e.target.value)} />\n
Province:
\n {\n setProvince(e.target.value)\n }}\n options={[\n { value: null, text: '' },\n ...fieldConsts.provincias.map((p) => ({ value: p, text: p })),\n ]}\n />\n
Country:
\n {\n setCountry(e.target.value)\n }}\n options={fieldConsts.paises.map((p) => ({ value: p, text: p }))}\n />\n\n
\n\n
Display map:
\n\n \n Paste here a{' '}\n \n Google Map\n {' '}\n Link (with the absolute URL, from https://www.google.com/maps/@...)\n \n setMapLink(e.target.value)}\n />\n\n {latitude && longitude && zoom && (\n <>\n
Map image:
\n\n \n \"map\"\n \n \n )}\n \n )\n}\n\nexport function getGoogleMapsDataFromURL(url) {\n let [latitude, longitude, zoom] = url.split('/@')[1]?.split(',') || []\n\n zoom = zoom?.split('z')[0] || 16\n\n function getMapImg(size) {\n return `https://maps.googleapis.com/maps/api/staticmap?center=${latitude},${longitude}&zoom=${zoom}&size=${size}&key=${GOOGLE_MAPS_KEY}&markers=color:red%7C${latitude},${longitude}`\n }\n\n return {\n latitude,\n longitude,\n zoom,\n img: getMapImg('600x400'),\n }\n}\n","import React, { useState } from 'react'\nimport {\n useTraversal,\n useLocation,\n lightFileReader,\n} from '@guillotinaweb/react-gmi'\nimport { Alert, Spin } from 'antd'\nimport { AccordionCard } from '../../../../components/accordion-card'\nimport { getCdnUrl } from '../../../../consts'\n\nimport '../styles.css'\n\nconst cdn = getCdnUrl()\nconst fallbackPackImg = `${cdn}frontend/pack_fallback.svg`\nconst fallbackProdImg = `${cdn}frontend/bottle_fallback.svg`\nconst imgBehavior = 'api.behaviors.images.IImagesBehavior'\n\nexport default function ImagesEditor() {\n const ctx = useTraversal()\n const [location, setLocation] = useLocation()\n const prod = ctx.state.context\n\n let opciones = Object.values(prod.opciones).map(\n (o) => `${o.anyada}_${o.referencia}`\n )\n opciones = [...new Set(opciones)] // uniqe\n opciones = opciones.sort().reverse()\n\n return (\n
\n

Images

\n \n {opciones.map((o) => {\n const [anyada, ref] = o.split('_')\n // We want to the accordion open when the url hash matches the reference\n const collapsed = location.get('id_producto') !== ref\n\n return (\n
\n \n {anyada} - {ref}\n \n }\n >\n \n \n
\n )\n })}\n
\n )\n}\n\nfunction ImageSection({ prod, referencia }) {\n const ctx = useTraversal()\n const [uploading, setUploading] = useState({})\n const [error, setError] = useState('')\n const valid_types = ['anv800', 'rev800', 'art800', 'o4', 'o5']\n const isUploading = Object.keys(uploading).length > 0\n\n const [imgPaths, setImgPaths] = useState(prod[imgBehavior]?.images || {})\n\n async function uploadImage(file, referencia, imgType) {\n const res = await ctx.client.rest.request(\n `${ctx.path}@upload-image/${referencia}/${imgType}`,\n {\n method: 'POST',\n body: file.data,\n }\n )\n if (res.status >= 300) {\n setUploading(({ ...state }) => {\n delete state[imgType]\n return state\n })\n setError(\n (error) => error + `Error ${res.status} uploading image ${imgType}`\n )\n } else {\n const body = await res.json()\n setImgPaths((imgPaths) => ({\n ...imgPaths,\n [`${referencia}_${imgType}`]: {\n path: body.path,\n },\n }))\n setUploading(({ ...state }) => {\n delete state[imgType]\n return state\n })\n }\n }\n\n async function onChange(files) {\n setError('')\n const firstBatch = []\n const secondBatch = []\n\n // 1. Validate filename and extension\n for (const i in files) {\n const f = files[i]\n const [filename, ext] = f.filename.split('.')\n let imgType = filename.split('_')\n imgType = imgType[imgType.length - 1]\n\n if (!valid_types.includes(imgType)) {\n setError(\n `Invalid image type \"${imgType}\". Must be one of these: ${valid_types}`\n )\n return\n }\n\n const expectedExt = ['o4', 'o5', 'art800'].includes(imgType)\n ? 'jpg'\n : 'png'\n\n if (expectedExt !== ext) {\n setError(\n `Expected \"${expectedExt}\" extension for img ${imgType}, got \"${ext}\"`\n )\n return\n }\n\n if (['o4', 'o5'].includes(imgType)) {\n secondBatch.push([f, referencia, imgType])\n } else {\n firstBatch.push([f, referencia, imgType])\n }\n }\n\n // 2. if the validation passed, now we upload the images\n // We upload images in two batched to prevent API conflicts\n await Promise.all(\n firstBatch.map(([f, ref, imgType]) => {\n setUploading((state) => ({ ...state, [imgType]: true }))\n return uploadImage(f, ref, imgType)\n })\n )\n\n await Promise.all(\n secondBatch.map(([f, ref, imgType]) => {\n setUploading((state) => ({ ...state, [imgType]: true }))\n return uploadImage(f, ref, imgType)\n })\n )\n }\n\n return (\n
\n
\n \n \n \n
\n \n \n \n
\n
\n {error && }\n

Use the following button to upload multiple images at once:

\n \n
\n

\n IMPORTANT: Make sure each file name ends with one of these\n identifiers:
\n anv800.png, rev800.png, art800.jpg, o4.jpg{' '}\n or o5.jpg\n

\n
\n \n )\n}\n\nfunction ImagePreview({ prod, referencia, imgType, path, uploading }) {\n const prod_type = prod.tipo.substring(1, 3)\n const folder = ['o4', 'o5'].includes(imgType) ? 'proriginal' : 'prfmtgrande'\n const extension = ['o4', 'o5', 'art800'].includes(imgType) ? 'jpg' : 'png'\n\n return (\n
\n {uploading && (\n \n )}\n
\n {\n e.currentTarget.src =\n prod_type === 'pk' ? fallbackPackImg : fallbackProdImg\n }}\n src={\n path\n ? `${cdn}${path}`\n : `${cdn}${folder}/${prod_type}/${referencia}_${imgType}.${extension}`\n }\n />\n
\n \n {imgType}.{extension}\n \n
\n )\n}\n\nexport function MultiFileUpload({ label, onChange, ...props }) {\n const changed = async (event) => {\n const files = Array.from(event.target.files)\n await onChange(await Promise.all(files.map((f) => lightFileReader(f))))\n }\n\n return (\n
\n \n
\n )\n}\n","import React from 'react'\nimport { Table, Collapse } from 'antd'\nimport { getDomainFromShop } from '../../../../utils'\n\nconst statusColors = {\n new_product: '#6c6f00',\n selling: '#2e7d32',\n notavailable: '#d32f2f',\n descatalogued: '#707070',\n invalid: '#707070',\n discontinued: '#707070',\n}\n\nexport default function Options({ product }) {\n const options = Object.values(product.opciones || {})\n const optionsByRef = groupBy(options, 'referencia')\n const refs = unify(\n options.sort((a, b) => b.anyada - a.anyada).map((a) => a.referencia)\n )\n\n function getHeader(ref) {\n const [first] = optionsByRef[ref]\n return (\n <>\n {first.anyada && (\n \n Year: \n {first.anyada}{' '}\n \n )}\n {first.capacidad && (\n \n Capacity: \n {first.capacidad}{' '}\n \n )}\n {(first.anyada || first.capacidad) && ' - '}\n {ref}\n \n )\n }\n\n return (\n \n {refs.map((ref) => (\n \n (\n \n {country}\n \n ),\n },\n {\n title: 'State',\n dataIndex: 'estado',\n width: 30,\n render: (v) => (\n {v.toUpperCase()}\n ),\n },\n {\n title: 'Price',\n dataIndex: 'precio_sin_impuestos',\n width: 30,\n render: (v) => v.toFixed(2) + ' €',\n },\n {\n title: 'Offer',\n dataIndex: 'oferta',\n width: 30,\n render: (v) =>\n v &&\n v.precio_oferta && (\n \n {v.precio_oferta.toFixed(2) + ' €'}\n \n ),\n },\n {\n title: 'P.IVA',\n dataIndex: 'precio_sin_impuestos',\n width: 30,\n render: (v, line) => (v + v * line.impuestos).toFixed(2) + ' €',\n },\n {\n title: 'Prov',\n dataIndex: 'proveedor',\n width: 30,\n },\n {\n title: 'Last units',\n dataIndex: 'ultimas_unidades',\n width: 30,\n render: (v) => v.toString(),\n },\n ]}\n rowKey={(record) => record.index}\n size=\"small\"\n />\n \n ))}\n \n )\n}\n\nfunction Box({ color, children }) {\n return (\n \n {children}\n \n )\n}\n\nfunction groupBy(xs, key) {\n return xs.reduce((rv, x) => {\n ;(rv[x[key]] = rv[x[key]] || []).push(x)\n return rv\n }, {})\n}\n\nfunction unify(array) {\n return [...new Set(array)]\n}\n","/*\n * IMPORTANT NOTICE!!\n * Everytime someone changes this file, tell @masipcat to update this in the api as well.\n * This is used to build the sitemap!\n *\n * Important: This file is duplicated in front repo\n */\n\nexport default {\n '/vi/es/cha': {\n de: '/champagner',\n default: '/champagne',\n },\n '/vi/es/cav': {\n default: '/cava',\n },\n '/de/lh': {\n de: '/krauterlikor',\n en: '/herb-liqueur',\n es: '/licor-de-hierbas',\n fr: '/liqueur-aux-herbes',\n it: '/liquori-alle-erbe',\n },\n '/de/cc': {\n default: '/cachaca',\n },\n '/de/pi': {\n default: '/pisco',\n },\n '/de/pa': {\n default: '/pacharan',\n },\n '/de/bo': {\n default: '/bourbon',\n },\n '/de/ws': {\n default: '/whisky-single-malt',\n },\n '/de/ca': {\n default: '/calvados',\n },\n '/de/te': {\n default: '/tequila',\n },\n '/de/vo': {\n default: '/vodka',\n },\n '/de/gr': {\n default: '/grappa',\n },\n '/de/mc': {\n default: '/marc-de-cava',\n },\n '/de/wb': {\n default: '/whisky-blended',\n },\n '/de/br': {\n default: '/brandy',\n },\n '/de/gi': {\n default: '/gin',\n es: '/ginebra',\n },\n '/de/or': {\n default: '/orujo',\n },\n '/de/co': {\n default: '/cognac',\n },\n '/de/ro': {\n default: '/rum',\n es: '/ron',\n fr: '/rhum',\n },\n '/de/ar': {\n default: '/armagnac',\n },\n '/de/cm': {\n default: '/marc-de-champagne',\n },\n '/de/ap': {\n default: '/aperitivos',\n },\n '/de/dg': {\n de: '/verdauungsschnaps',\n en: '/digestifs',\n default: '/digestivo',\n fr: '/digestif',\n },\n '/de/mz': {\n default: '/mezcal',\n },\n '/de/ve': {\n de: '/wermut',\n en: '/vermouth',\n default: '/vermut',\n fr: '/vermouth',\n },\n '/de/ra': {\n default: '/ratafia',\n },\n '/de/li': {\n default: '/limoncello',\n },\n '/de/an': {\n de: '/anisschnaps',\n en: '/anise-liqueur',\n es: '/anis',\n fr: '/liqueur-d-anis',\n it: '/anisetta',\n },\n '/de/ot': {\n de: '/andere-likore',\n en: '/other-liqueurs',\n es: '/otros-licores',\n fr: '/autres-liqueurs',\n it: '/altri-liquori',\n },\n '/de/cw': {\n default: '/crema',\n fr: '/liqueur-de-creme',\n it: '/liquore-di-crema',\n },\n '/de/sh': {\n default: '/sidra-de-hielo',\n },\n '/de/sa': {\n default: '/sangria',\n },\n '/de/ao': {\n de: '/likor',\n en: '/liquor',\n es: '/aguardiente',\n fr: '/eau-de-vie',\n it: '/aquavite',\n },\n '/de/sk': {\n default: '/sake',\n },\n '/de/wg': {\n default: '/whisky-single-grain',\n },\n '/de/si': {\n default: '/sidra',\n },\n '/de/tw': {\n default: '/tennessee-whiskey',\n },\n generic: {\n de: '/produkt',\n en: '/product',\n es: '/producto',\n fr: '/produit',\n it: '/prodotto',\n },\n default: {\n de: '/wein',\n en: '/wine',\n es: '/vino',\n fr: '/vin',\n it: '/vino',\n },\n}\n","import { useEffect, useState } from 'react'\nimport { utcToZonedTime } from 'date-fns-tz'\nimport endOfDay from 'date-fns/endOfDay'\nimport startOfDay from 'date-fns/startOfDay'\nimport URLS from './product-prefix'\nimport {\n BOTTLE_CAPACITY_LITERS,\n capacityNames,\n setLangs,\n SITES_INFO,\n} from './consts'\n\nexport const getLang = (domain) => {\n const site = SITES_INFO[domain] || SITES_INFO['vinissimus.com']\n return site.lang\n}\n\nexport function getShopCountryHeaders(info) {\n const domain = window.location.hostname.replace(/www\\.|stage\\./, '')\n const { shop, country } =\n info || SITES_INFO[domain] || SITES_INFO['vinissimus.com']\n return { 'x-shop': shop, 'x-country': country }\n}\n\nexport function getDomain(domain, withLang = true) {\n let url = new URL(window.location.href)\n const lang = withLang ? `/${getLang(domain)}` : ''\n if (url.host.includes('www.')) {\n return `www.${domain}${lang}`\n }\n if (url.host.includes('localhost')) {\n return `stage.${domain}${lang}`\n }\n\n let sub = url.host.split('.')[0]\n return `${sub}.${domain}${lang}`\n}\n\nexport function getHost(domain) {\n let url = new URL(window.location.href)\n if (url.host.includes('www.')) {\n return `www.${domain}`\n }\n if (url.host.includes('localhost')) {\n return `stage.${domain}`\n }\n\n let sub = url.host.split('.')[0]\n return `${sub}.${domain}`\n}\n\nexport function sleep(ms) {\n return new Promise((resolve, reject) => {\n setTimeout(function () {\n resolve()\n }, ms)\n })\n}\n\nexport function rsplit(str, delimiter, limit) {\n delimiter = str.split(delimiter)\n return limit\n ? [\n delimiter.splice(0, delimiter.length - limit).join('/'),\n ...delimiter.splice(-limit),\n ]\n : delimiter\n}\n\nexport function usePromise(callback, trigger = undefined) {\n if (trigger === undefined) trigger = [callback]\n\n const [data, setData] = useState()\n const [status, setStatus] = useState('loading')\n\n async function load() {\n try {\n const data = await callback()\n setData(data)\n setStatus('success')\n } catch (e) {\n setStatus('failed')\n }\n }\n\n useEffect(() => {\n setStatus('loading')\n load()\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, trigger)\n\n return { data, status, setData }\n}\n\nexport function toISOStringWithTimezone(date) {\n const d = utcToZonedTime(new Date(date), 'Europe/Madrid')\n const tzoffset = d.getTimezoneOffset() * 60000 //offset in milliseconds\n return new Date(d.getTime() - tzoffset).toISOString().slice(0, -1)\n}\n\nexport function formatStartEnd(start, end) {\n const s = startOfDay(new Date(start))\n const e = endOfDay(new Date(end))\n return [toISOStringWithTimezone(s), toISOStringWithTimezone(e)]\n}\n\nexport function isSameDay(d1, d2) {\n return (\n d1.getDate() === d2.getDate() &&\n d1.getMonth() === d2.getMonth() &&\n d1.getFullYear() === d2.getFullYear()\n )\n}\n\nexport function getOrSet(obj, key, value) {\n if (obj[key] == null) return (obj[key] = value)\n return obj[key]\n}\n\nexport function useClipboard(key) {\n return useState(() => {\n const value = sessionStorage.getItem(key)\n if (!value) return\n return JSON.parse(value)\n }, [key])\n}\n\nexport const allowToMoveOnlyInAccordionHeader = {\n moves: (el, source, handle) =>\n [...document.querySelectorAll('.accordion-card header')].some((n) =>\n n.contains(handle)\n ),\n}\n\nexport function arrayMove(array, fromIndex, toIndex) {\n const arr = [...array]\n const element = arr[fromIndex]\n arr.splice(fromIndex, 1)\n arr.splice(toIndex, 0, element)\n return arr\n}\n\nexport function getFiltersByPath(path) {\n try {\n return JSON.parse(localStorage.getItem(`filters:${path}`) || '[]')\n } catch (e) {\n return []\n }\n}\n\n// First time is setting to all languages the same content\n// But then you can edit a particular language content\nexport function setMultiLangContent(content, lang, obj = {}) {\n if (Object.values(obj).filter((v) => v).length > 0) {\n return { ...obj, [lang]: content }\n }\n return setLangs(content)\n}\n\nexport function getCapacityText(capacityKey) {\n if (capacityNames[capacityKey]) return capacityNames[capacityKey]\n\n const liters = BOTTLE_CAPACITY_LITERS[capacityKey]\n\n if (!liters) return ''\n\n const value = liters.toLocaleString('en-EN', {\n maximumFractionDigits: 2,\n minimumFractionDigits: 2,\n minimumIntegerDigits: 1,\n })\n\n return `${value} L`\n}\n\nexport function getDomainFromShop(shop) {\n for (const domain in SITES_INFO) {\n if (SITES_INFO[domain].shop === shop) {\n return getDomain(domain, false)\n }\n }\n return getDomain('vinissimus.com', false)\n}\n\nexport function getProductMask({ id, type = '' } = {}, lang) {\n const isGeneric = type.startsWith('/pk') || type.startsWith('/co')\n const maskItem = isGeneric ? URLS.generic : URLS[type] || URLS.default\n\n return `${maskItem[lang] || maskItem.default}/${id}/`\n}\n\nexport function getCellarMask(id, lang) {\n const maskItem = {\n de: '/weingut',\n en: '/winery',\n es: '/bodega',\n fr: '/domaine',\n it: '/cantina',\n }\n\n return `${maskItem[lang]}/${id}/`\n}\n\nexport function hexToRgb(hex) {\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex)\n if (!result) return [0, 0, 0]\n return [\n parseInt(result[1], 16), // R\n parseInt(result[2], 16), // G\n parseInt(result[3], 16), // B\n ]\n}\n\nfunction formatStock(stock) {\n if ([null, undefined].includes(stock)) return 0\n\n return [-1, 9999].includes(stock) ? Infinity : stock\n}\n\nexport function getTotalStock({\n availability = [],\n caracteristicas = {},\n} = {}) {\n if (caracteristicas?.avanzada) return Infinity\n if (availability.length === 0) return 0\n\n return Math.max(...availability.map((a) => formatStock(a.stock)))\n}\n\n/**\n * Check if is dto offer\n */\nexport function isDtoOffer({ precio, oferta } = {}) {\n const { precio_oferta, descuento_especial, mUnit, uni_compra } = oferta || {}\n\n return (\n precio > 0 &&\n precio_oferta > 0 &&\n !descuento_especial &&\n !mUnit &&\n !uni_compra\n )\n}\n\n/**\n * Check if is MxN Promo\n */\nexport function isPromoMXN({ oferta } = {}) {\n const { uni_promo, uni_compra } = oferta || {}\n const mUnit = uni_promo ? uni_compra + uni_promo : undefined\n\n return typeof mUnit === 'number' && typeof uni_compra === 'number'\n}\n\n/**\n * Check if is xN Promo\n */\nexport function isPromoXN({ oferta } = {}) {\n const { uni_promo, uni_compra } = oferta || {}\n const mUnit = uni_promo ? uni_compra + uni_promo : undefined\n\n return typeof mUnit !== 'number' && typeof uni_compra === 'number'\n}\n\n/**\n * Get the offer price depending the quantity.\n *\n * Only is returning the price if there are some offer.\n * Otherwise is returning undefined.\n *\n * @param {number} realQuantity\n * @param {object} product - Product Context Consumer object\n * @returns {number|undefined}\n */\nexport function getOfferPrice(realQuantity, option, displayUnitary = false) {\n const { precio, oferta } = option || {}\n const { precio_oferta, uni_compra, uni_promo } = oferta || {}\n const mUnit = uni_promo ? uni_compra + uni_promo : undefined\n\n if (isDtoOffer(option)) {\n return precio_oferta * realQuantity\n }\n\n if (isPromoXN(option)) {\n return realQuantity >= uni_compra ? precio_oferta * realQuantity : undefined\n }\n\n if (isPromoMXN(option)) {\n if (realQuantity < mUnit) return undefined\n const totalPrice =\n precio *\n (parseInt(realQuantity / mUnit, 10) * uni_compra + (realQuantity % mUnit))\n\n return displayUnitary ? totalPrice / realQuantity : totalPrice\n }\n\n return undefined\n}\n\nexport function encodeAbsoluteLink(linkURL) {\n try {\n return new URL(linkURL).href\n } catch (e) {\n return linkURL\n }\n}\n\nexport function getProductName(originalName, vintage, capacity) {\n let name = originalName\n let isStandardCapacity = capacity === '75'\n\n if (vintage) name += ` ${vintage}`\n\n if (!isStandardCapacity) {\n const capacityText = getCapacityText(capacity)\n const capacityWithoutSpaces = capacityText.replace(/\\s/g, '')\n if (\n capacityText &&\n !name.endsWith(capacityText) &&\n !name.endsWith(capacityWithoutSpaces)\n ) {\n name += ` (${capacityText})`\n }\n }\n\n return name\n}\n\nexport function getStoreFromCountry(country) {\n if (country === 'uk') return 'uk'\n if (['it', 'ch'].includes(country)) return 'italvinus'\n return 'vinissimus'\n}\n","import React, { useState } from 'react'\nimport { Button, Radio } from 'antd'\nimport { Input, Textarea, useTraversal } from '@guillotinaweb/react-gmi'\n\nimport { I18NField } from './i18nfield'\nimport { setLangs } from '../consts'\n\nconst field = 'api.behaviors.content_review.IContenidosRevisadosBehavior'\n\nexport function ContentReviewTab() {\n const Ctx = useTraversal()\n const [review, setReview] = useState(\n Ctx.state.context[field]?.contendidos_revisados ||\n setLangs({\n date: new Date().toISOString(),\n author: '',\n description: '',\n reviewed: false,\n })\n )\n // const superAdmin = Ctx.state.permissions['vinissimus.Superuser']\n const superAdmin = true\n const [saving, setSaving] = useState(false)\n\n const h1 =\n typeof Ctx.state.context.title === 'string'\n ? Ctx.state.context.title\n : Ctx.state.context['@name']\n\n async function save() {\n setSaving(true)\n const flashOk = ['Content review fields saved', 'success']\n const flashKo = ['Error saving the content review fields', 'danger']\n const { status } = await Ctx.client.patch(Ctx.path, {\n [field]: { contendidos_revisados: review },\n })\n Ctx.flash(...(status === 204 ? flashOk : flashKo))\n setSaving(false)\n }\n\n return (\n <>\n \n

{h1}

\n \n \n null}>\n {(lang) => {\n const langReview = review[lang] || {\n date: new Date().toISOString(),\n author: '',\n description: '',\n }\n\n return (\n
\n \n setReview((o) => ({\n ...o,\n [lang]: {\n ...langReview,\n reviewed: e.target.value,\n date: new Date().toISOString(),\n author: localStorage.getItem('email'),\n },\n }))\n }\n disabled={!superAdmin}\n value={langReview.reviewed ?? false}\n optionType=\"button\"\n >\n Reviewed\n No reviewed\n \n
\n {\n setReview((o) => ({\n ...o,\n [lang]: {\n ...langReview,\n description,\n date: new Date().toISOString(),\n author: localStorage.getItem('email'),\n },\n }))\n }}\n />\n \n \n
\n )\n }}\n \n \n )\n}\n","import React, { Fragment } from 'react'\nimport { Spin, Tag, Table, Alert, Button } from 'antd'\nimport {\n ArrowLeftOutlined,\n ArrowRightOutlined,\n EditOutlined,\n FrownOutlined,\n LinkOutlined,\n PlusOutlined,\n} from '@ant-design/icons'\n\nexport default function PriceComparatorTable({\n columnsFields = ['url', 'date', 'price'],\n data,\n country = 'es',\n rest,\n selectedInTables = [],\n setSelectedRowKeys,\n displayLinks = true,\n onUpdatePage,\n onAdd,\n page = 0,\n}) {\n const dataToRender = groupByRef(data, country)\n const priceFormatter = new Intl.NumberFormat('es', {\n style: 'currency',\n currency: country === 'uk' ? 'GBP' : 'EUR',\n })\n const dataToFilter = {\n url: [...new Set(data?.map?.((item) => item.url))],\n }\n\n function mapColumn(key) {\n let column = {\n title: key,\n dataIndex: key,\n key,\n sorter: (a, b) => {\n if (a[key] < b[key]) return -1\n if (a[key] > b[key]) return 1\n return 0\n },\n }\n\n if (key === 'url') {\n column.render = (text, record) => {\n if (!text) {\n return (\n <>\n {' '}\n \n No results found.{' '}\n {onAdd ? (\n <>\n You can{' '}\n onAdd(record.product_group)}>\n add\n {' '}\n competitor URLs.\n \n ) : (\n ''\n )}\n \n \n )\n }\n const url = new URL(text)\n return (\n \n {url.hostname}\n \n )\n }\n }\n\n if (key === 'price') {\n column.render = (text, record) => {\n if (!text) return ''\n return new Intl.NumberFormat('es', {\n style: 'currency',\n currency: record.currency,\n }).format(text)\n }\n }\n\n if (key === 'date') {\n column.render = (text, record) => {\n if (!text) return ''\n const date = new Date(text)\n const isNew = date.getTime() > Date.now() - 5000\n\n return isNew ? (\n Now\n ) : (\n new Intl.DateTimeFormat('es').format(date)\n )\n }\n }\n\n if (dataToFilter[key]) {\n column = {\n ...column,\n filters: dataToFilter[key].map((value) => ({ text: value, value })),\n filterMode: 'tree',\n filterSearch: true,\n onFilter: (value, record) => record[key].includes(value),\n }\n }\n\n return column\n }\n\n const restColumns = [\n 'anyada',\n 'capacity',\n 'product_group',\n 'url',\n 'price',\n ].map(mapColumn)\n const columns = columnsFields.map(mapColumn)\n\n if (!data) {\n return (\n
\n \n
\n )\n }\n\n return (\n <>\n {dataToRender.length === 0 && (\n <>\n \n There is no data to show.{' '}\n {onAdd ? (\n <>\n You can{' '}\n onAdd()}>\n add\n {' '}\n competitor URLs.\n \n ) : (\n ''\n )}\n \n }\n type=\"info\"\n showIcon\n />\n {onUpdatePage && page > 0 && (\n \n \n
\n )}\n \n )}\n {dataToRender.map((p) => {\n const productUrl = `https://www.vinissimus.com/es/vino/${p.product_group}`\n const editUrl = p.path\n ? window.location.origin +\n `/-admin/?path=${p.path}/&tab=Price+comparator`\n : undefined\n\n const linksEl = (\n <>\n {editUrl && (\n \n \n \n )}\n \n \n \n {onAdd && (\n onAdd(p.product_group)}\n title=\"Add new URL\"\n style={{ marginLeft: 10 }}\n >\n \n \n )}\n \n )\n\n const titleEl = (\n <>\n {p.our_name} -{' ('}\n {p.id_producto}\n {')'}\n {displayLinks && linksEl}\n \n )\n const offerPriceEl = p.our_offer_price ? (\n \n {priceFormatter.format(\n p.our_offer_price + p.our_offer_price * p.our_taxes\n )}\n \n ) : null\n const priceEl = p.our_price ? (\n <>\n \n {priceFormatter.format(p.our_price + p.our_price * p.our_taxes)}\n \n {offerPriceEl}\n \n ) : null\n\n return (\n \n \n \n `${record.url}-///-${record.anyada}-${record.capacity}`\n }\n size=\"small\"\n rowSelection={\n setSelectedRowKeys\n ? {\n selectedRowKeys: selectedInTables[p.id_producto] || [],\n onChange: (v) =>\n setSelectedRowKeys((r) => ({\n ...r,\n [p.id_producto]: v,\n })),\n }\n : undefined\n }\n />\n \n )\n })}\n {rest?.length > 0 && (\n
\n \n More {rest.length} URLs - we do not have this option to\n compare with our price.\n \n \n `${record.url}-///-${record.anyada}-${record.capacity}`\n }\n size=\"small\"\n />\n
\n )}\n {onUpdatePage && (\n \n {page > 0 && (\n \n )}\n \n \n )}\n \n )\n}\n\nfunction groupByRef(data = [], country) {\n const dataInCountry = data?.filter?.(\n (item) => item.delivery_country === country\n )\n\n if (!dataInCountry) return []\n\n const result = {}\n\n for (let item of dataInCountry) {\n const ref = item.id_producto || 'more'\n result[ref] = {\n competitors: result[ref] ? [...result[ref].competitors, item] : [item],\n id_producto: ref,\n our_name: item.our_name || 'More',\n our_offer_price: item.our_offer_price,\n our_price: item.our_price,\n our_taxes: item.our_taxes,\n path: item.path,\n product_group: item.product_group,\n }\n }\n\n return Object.values(result)\n}\n","import { useTraversal } from '@guillotinaweb/react-gmi'\nimport { useState } from 'react'\nimport { message } from 'antd'\n\nexport default function useSaveProduct() {\n const ctx = useTraversal()\n const [saving, setSaving] = useState(false)\n\n async function save(fields = {}, showMsg = false) {\n setSaving(true)\n try {\n const r = await ctx.client.patch(ctx.path, fields)\n if (r.status >= 400) throw new Error((await r.json()).message)\n setSaving(false)\n if (!showMsg) message.success(`Saved successfully.`)\n ctx.refresh({ transparent: true })\n } catch (e) {\n setSaving(false)\n message.error(`Error saving. ${e.message}`)\n }\n }\n\n return [saving, save]\n}\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useContext, useEffect, useState } from 'react'\nimport { useTraversal } from '@guillotinaweb/react-gmi'\nimport { Button, Drawer, Form, Input, message, Select } from 'antd'\nimport { ErpClientContext } from '../services/erp'\nimport { ALL_COUNTRIES } from '../consts'\nimport PriceComparatorTable from './price-comparator-table'\nimport { ConsoleSqlOutlined } from '@ant-design/icons'\n\nconst initial = {\n URL: '',\n}\n\nexport function PriceComparatorTab() {\n const [form] = Form.useForm()\n const [selectedInTables, setSelectedRowKeys] = useState({})\n const selectedRowKeys = Object.values(selectedInTables).flat()\n const erp = useContext(ErpClientContext)\n const [data, setData] = useState()\n const [rest, setRest] = useState()\n const [country, setCountry] = useState('es')\n const [updating, setUpdating] = useState(false)\n const [deleting, setDeleting] = useState(false)\n const [drawer, showDrawer] = useState(false)\n const Ctx = useTraversal()\n const product = Ctx.state.context\n const productId = product['@name']\n const optionCountries = [\n ...new Set(\n Object.keys(product.opciones).map((key) => `${key[0]}${key[1]}`)\n ),\n ]\n\n function getSelectedURLs() {\n const urls = selectedRowKeys.map((key) => key.split('-///-')[0])\n return [...new Set(urls)]\n }\n\n async function deleteRows() {\n const urls = getSelectedURLs()\n if (\n window.confirm(\n `Are you sure you want to remove the selected URLs?\\n\\n- ${urls.join(\n '\\n- '\n )}`\n )\n ) {\n setDeleting(true)\n try {\n const dataToRemove = urls.map((url) => ({ group: productId, url }))\n await erp.deletePriceComparator(dataToRemove)\n setData((d) => d.filter((d) => !urls.includes(d.url)))\n } catch (e) {\n message.error(`There was an error removing the data: ${e.message}`)\n } finally {\n setDeleting(false)\n }\n }\n }\n\n async function updateRows() {\n const urls = getSelectedURLs()\n if (\n window.confirm(\n `Are you sure you want to update the selected URLs?\\n\\n- ${urls.join(\n '\\n- '\n )}`\n )\n ) {\n setUpdating(true)\n try {\n const dataToUpate = urls.map((url) => ({ group: productId, url }))\n await erp.upsertPriceComparator(dataToUpate, country)\n await init()\n setSelectedRowKeys({})\n message.success('Updated successfully')\n } catch (e) {\n message.error(`There was an error updating the data: ${e.message}`)\n } finally {\n setUpdating(false)\n }\n }\n }\n\n async function onFinish({ URL }) {\n try {\n const dataToUpdate = [{ group: productId, url: URL }]\n await erp.upsertPriceComparator(dataToUpdate, country)\n await init()\n setSelectedRowKeys({})\n message.success('Data updated with the new values')\n form.resetFields()\n } catch (e) {\n message.error(`There was an error adding the URL: ${e.message}`)\n } finally {\n showDrawer(false)\n }\n }\n\n useEffect(() => {\n init()\n }, [])\n async function init() {\n const [resData, restOfUrls] = await erp.getPriceComparator(productId)\n setData(resData)\n setRest(restOfUrls)\n }\n\n return (\n <>\n \n

Price comparator

\n
\n \n {optionCountries.map((c) => (\n {ALL_COUNTRIES[c]}\n ))}\n \n \n {updating ? 'Deleting...' : 'Delete selected'}\n \n \n {updating ? 'Updating...' : 'Update selected'}\n \n showDrawer(true)}\n >\n + Add URL\n \n
\n showDrawer(false)}\n visible={drawer}\n bodyStyle={{ paddingBottom: 80 }}\n >\n
\n \n \n \n \n
\n The delivery county of this URL is:{' '}\n {ALL_COUNTRIES[country]}\n
\n \n \n \n \n \n \n \n \n \n )\n}\n","import React, { useState, useRef, Fragment } from 'react'\nimport { useTraversal, FileUpload } from '@guillotinaweb/react-gmi'\nimport {\n Button,\n Table,\n InputNumber,\n Switch,\n message,\n Affix,\n Select,\n Radio,\n Space,\n} from 'antd'\nimport { MenuOutlined } from '@ant-design/icons'\nimport {\n sortableContainer,\n sortableElement,\n sortableHandle,\n} from 'react-sortable-hoc'\nimport useSaveProduct from './useSaveProduct'\nimport { I18NField, I18NRichText } from '../../../components/i18nfield'\nimport { ProductSelector } from '../../../components/product-selector'\nimport { SelectTaxonomy } from '../../../components/select-taxonomy'\nimport { arrayMove, getCapacityText } from '../../../utils'\nimport { getCdnUrl, BOTTLE_CAPACITY_LITERS } from '../../../consts'\nimport { ProductName } from '../../../components/product-name'\n\nimport './styles.css'\n\nconst cdn = getCdnUrl()\nconst fallbackImg = `${cdn}frontend/pack_fallback.svg`\n\nconst DragHandle = sortableHandle(() => (\n \n))\n\nconst SortableItem = sortableElement((props) => )\nconst SortableContainer = sortableContainer((props) => )\n\nexport function PackEditor() {\n const ctx = useTraversal()\n const [generating, setGenerating] = useState(false)\n const [saving, save] = useSaveProduct()\n const [uploading, setUploading] = useState(false)\n const cache = useRef({})\n const pack = ctx.state.context\n const imgPath = 'api.behaviors.images.IImagesBehavior'\n const [img, setImg] = useState(pack[imgPath]?.images?.anv800?.path)\n const [names, setNames] = useState(pack.nombres)\n const [labels, setLabels] = useState(pack.labels || [])\n const [description, setDescription] = useState(pack.localized_text || {})\n const [discount, setDiscount] = useState((pack.descuento_del_pack || 0) * 100)\n const [selectedRowKeys, setSelectedRowKeys] = useState([])\n const [products, setProducts] = useState(() =>\n Object.keys(pack.contenido_del_pack)\n .sort(\n (a, b) =>\n pack.contenido_del_pack[a].orden - pack.contenido_del_pack[b].orden\n )\n .map((ref, index) => ({\n ...pack.contenido_del_pack[ref],\n ref,\n index,\n }))\n )\n\n const somePresent = products.some((p) => p.regalo)\n\n const referenciaPack = `es_${pack.referencia_pack}`\n const solo_venta_privada =\n pack.opciones[referenciaPack].otros.solo_venta_privada\n const [optionVentaPrivada, setOptionVentaPrivada] = useState(\n solo_venta_privada\n )\n const onChangeVentaPrivada = (e) => {\n setOptionVentaPrivada(e.target.value)\n }\n\n function updateProductState(product) {\n setProducts((ps) =>\n ps.map((p) => (p.index === product.index ? product : p))\n )\n }\n\n function cleanProduct(p) {\n return {\n cantidad: p.cantidad || 1,\n orden: p.index,\n regalo: p.regalo || false,\n }\n }\n\n async function onSave(transparent = false) {\n if (products.some((p) => typeof p.ref === 'undefined')) {\n return message.error(\n 'You seem to have left out filling in product information! Fill in all fields and save again.'\n )\n }\n await save(\n {\n nombre: names.es.nombre || pack.nombre,\n localized_text: description,\n labels,\n descuento_del_pack: discount / 100,\n nombres: names,\n contenido_del_pack: products.reduce((ob, c) => {\n ob[c.ref] = cleanProduct(c)\n return ob\n }, {}),\n },\n transparent\n )\n }\n\n async function descataloguePack() {\n var optionPack = null\n var messageSuccess = ''\n if (pack.pack_descatalogado) {\n optionPack = false\n messageSuccess = 'Pack available'\n } else {\n optionPack = true\n messageSuccess = 'Pack descatalogued'\n }\n try {\n const res = await ctx.client.rest.request(ctx.path, {\n method: 'PATCH',\n body: JSON.stringify({ pack_descatalogado: optionPack }),\n })\n if (res.status === 204) {\n message.success(messageSuccess)\n ctx.refresh()\n } else {\n message.error('Error when changing pack status')\n }\n } catch (e) {\n message.error(`Oops! ${e.message}`)\n }\n }\n\n async function ventaPrivada() {\n var messageSuccess = 'The private sale status has been changed'\n const endpoint = `${ctx.path}@opciones`\n try {\n const res = await ctx.client.rest.request(endpoint, {\n method: 'PATCH',\n body: JSON.stringify({\n opciones_to_modify: {\n solo_venta_privada: optionVentaPrivada,\n },\n }),\n })\n if (res.status === 204) {\n message.success(messageSuccess)\n ctx.refresh()\n } else {\n message.error('Error when changing pack status')\n }\n } catch (e) {\n message.error(`Oops! ${e.message}`)\n }\n }\n\n async function generateImage() {\n setGenerating(true)\n try {\n await onSave(true)\n const res = await ctx.client.rest.request(\n `${ctx.path}@generate-image`,\n { method: 'POST' },\n headersForImageEndpoinds(ctx)\n )\n const { path } = await res.json()\n setImg(path)\n message.success('Image generated and saved')\n ctx.refresh()\n } catch (e) {\n message.error(`Oops! ${e.message}`)\n }\n setGenerating(false)\n }\n\n async function uploadImage(file) {\n setUploading(true)\n\n try {\n const res = await ctx.client.rest.request(\n `${ctx.path}@upload-image/${pack.referencia_pack}/anv800`,\n {\n method: 'POST',\n body: file.data,\n },\n headersForImageEndpoinds(ctx, file)\n )\n if (res.status >= 300)\n throw new Error('There was an error uploading the image')\n const { path } = await res.json()\n setImg(path)\n message.success('Image uploaded and saved')\n ctx.refresh()\n } catch (e) {\n message.error(`Oops! ${e.message}`)\n }\n setUploading(false)\n }\n\n return (\n
\n \n \n

{pack.nombre}

\n \n
\n \n {pack['tipo'] === '/pk' && (\n
\n

\n {pack.pack_descatalogado\n ? 'Make the pack available'\n : 'Descatalogue the pack when the products in the pack are in a selling condition.'}\n

\n \n
\n )}\n
\n

Pack name

\n null}>\n {(lang) => (\n \n \n \n \n \n )}\n \n
\n

Description

\n \n
\n

Labels

\n \n
\n

Discount in % (optional)

\n setDiscount(v)}\n placeholder=\"Write the discount in %\"\n value={discount}\n />\n {somePresent && (\n
\n Disable the products that are gifts in order to add a discount to\n the pack.\n
\n )}\n
\n

Pack Products

\n ,\n },\n {\n title: 'Quantity',\n dataIndex: 'cantidad',\n width: 100,\n className: 'drag-visible',\n key: 'cantidad',\n render: (v, o) => (\n \n updateProductState({ ...o, cantidad })\n }\n min={1}\n />\n ),\n },\n {\n title: 'Product',\n key: 'ref',\n className: 'drag-visible',\n width: 500,\n dataIndex: 'ref',\n render: (v, o) => (\n \n ),\n },\n {\n title: 'Present',\n dataIndex: 'regalo',\n width: 30,\n key: 'regalo',\n render: (v, o) => (\n {\n setDiscount(0)\n updateProductState({ ...o, regalo })\n }}\n />\n ),\n },\n ]}\n rowSelection={{\n selectedRowKeys,\n onChange: setSelectedRowKeys,\n }}\n components={{\n body: {\n wrapper: (props) => (\n {\n if (oldIndex !== newIndex) {\n const newProds = arrayMove(\n products,\n oldIndex,\n newIndex\n ).map((p, index) => ({ ...p, index }))\n\n setProducts(newProds)\n }\n }}\n {...props}\n />\n ),\n row: ({ className, style, ...restProps }) => {\n const index = products.findIndex(\n (x) => x.index === restProps['data-row-key']\n )\n return \n },\n },\n }}\n rowKey={(record) => record.index}\n size=\"small\"\n />\n \n {selectedRowKeys.length > 0 && (\n {\n setProducts((ps) =>\n ps.filter((p) => !selectedRowKeys.includes(p.index))\n )\n setSelectedRowKeys([])\n }}\n >\n Remove selected\n \n )}\n \n setProducts((p) => [\n ...p,\n { cantidad: 1, regalo: false, index: p.length },\n ])\n }\n >\n Add new product\n \n
\n
\n

Pack Image

\n
\n \n {generating ? 'Generating...' : 'Generate image'}\n \n \n
\n
\n {\n e.currentTarget.src = fallbackImg\n e.currentTarget.style.display = 'block'\n }}\n src={\n img\n ? `${cdn}${img}`\n : `${cdn}prfmtgrande/pk/${pack.referencia_pack}_anv800.png`\n }\n />\n
\n

Venta privada

\n \n \n Venta privada\n Venta publica\n \n \n \n \n \n )\n}\n\nfunction ProductColumn({ products, updateProductState, cache, value, column }) {\n const type = value?.includes('#') ? 'group' : 'refs'\n const [capacity, setCapacity] = useState(value?.split('#')?.[1] || '75')\n const filteredProducts = (value ? [value.split('#')[0]] : []).filter(\n (v) => v && v !== '#'\n )\n\n function onChangeType(e) {\n updateProductState({\n ...column,\n ref: e === 'group' ? '#' : '',\n nombre: undefined,\n })\n }\n\n return (\n
\n \n {\n cache.current[value] = pnames\n }}\n productTypes={['!/pk', '!/co/pk']}\n defaultProductInfo={cache.current[value]}\n disabledIds={new Set(products.filter((p) => !p.add).map((p) => p.ref))}\n products={filteredProducts}\n type={type}\n onChange={(refs, prods) => {\n let ref = refs[refs.length - 1]\n\n if (type === 'group') ref += `#${capacity}`\n\n updateProductState({\n ...column,\n ref,\n nombre: prods.find((p) => p.ref === ref)?.nombre,\n })\n }}\n />\n {type === 'group' && (\n {\n setCapacity(newCapacity)\n updateProductState({\n ...column,\n ref: column.ref.replace(`#${capacity}`, `#${newCapacity}`),\n })\n }}\n >\n {Object.keys(BOTTLE_CAPACITY_LITERS).map((c) => (\n {getCapacityText(c)}\n ))}\n \n )}\n
\n )\n}\n\nfunction headersForImageEndpoinds(ctx, file) {\n const key = `last-mod-date:${ctx.path}`\n const headers = ctx.client.rest.getHeaders()\n\n headers['last-mod-date'] = sessionStorage.getItem(key)\n\n if (file) {\n headers['Content-Type'] = file['content-type']\n }\n\n // As just after the requests we do a ctx.refresh,\n // we clean up the last-mod-date to take the value\n // from the refresh response.\n sessionStorage.removeItem(key)\n\n return headers\n}\n","import React, { lazy, useState, Suspense, useEffect } from 'react'\nimport createStore from 'teaful'\nimport { Affix, Menu, Button, Dropdown } from 'antd'\nimport { ContextToolbar } from '@guillotinaweb/react-gmi'\nimport { PanelPermissions } from '@guillotinaweb/react-gmi'\nimport { useTraversal, useLocation } from '@guillotinaweb/react-gmi'\n\nimport {\n FileImageOutlined,\n MoreOutlined,\n VideoCameraOutlined,\n DownOutlined,\n EyeOutlined,\n} from '@ant-design/icons'\n\nimport ProductOptions from './partials/options'\nimport useSaveProduct from './useSaveProduct'\nimport { AuditLogTab } from '../../../common/auditlog'\nimport { ContentReviewTab } from '../../../components/content-review-tab'\nimport { PriceComparatorTab } from '../../../components/price-comparator-tab'\nimport { PackEditor } from './pack_editor'\nimport { SEOTab } from '../../../components/seo-tab'\nimport { SITES, SITES_INFO } from '../../../consts'\nimport { TabsPanelWithLock } from '../../../components/tab-panel-with-lock'\nimport { getDomain, getProductMask } from '../../../utils'\n\nimport './styles.css'\n\nexport const { useStore, getStore } = createStore({})\n\nconst QUERY_PARAM = 'menu'\nconst loadComponent = (key) =>\n lazy(() =>\n import(`./partials/${key}`).catch(() => ({ default: () => 'No content' }))\n )\n\nfunction ProductEditor() {\n const [location, setLocation] = useLocation()\n const defaultItem = location.get('tab') === 'Images' ? 'images' : 'details'\n const item = location.get(QUERY_PARAM) || defaultItem\n const ctx = useTraversal()\n const product = ctx.state.context\n const [Comp, setComp] = useState()\n const [key, setKey] = useState(item)\n const [saving, save] = useSaveProduct()\n\n // Initialize\n useStore.region(product.region)\n useStore.tags_by_category(product.tags_by_category)\n useStore.otras_props(product.otras_props)\n useStore.new_otras_props(product.new_otras_props)\n\n function onClick(e) {\n setLocation({ [QUERY_PARAM]: e.key })\n setComp(loadComponent(e.key))\n setKey(e.key)\n }\n\n function onSave() {\n const [store] = getStore()\n save(store)\n }\n\n useEffect(() => {\n const [, setStore] = getStore()\n setStore({})\n setComp(loadComponent(item))\n }, [])\n\n const menu = (\n \n {SITES.map((site) => {\n const data = { id: product['@name'], type: product.tipo }\n const lang = SITES_INFO[site].lang\n const url = `https://${getDomain(site)}${getProductMask(data, lang)}`\n return (\n window.open(url, '_blank')}>\n {site}\n \n )\n })}\n \n )\n\n return (\n
\n \n \n

{product.nombre}

\n
\n \n \n \n \n
\n
\n \n
\n \n \n }>\n Product details\n \n \n\n \n }\n >\n El vino (description)\n \n }\n >\n ¿A qué sabe este vino?\n \n }\n >\n Consumo y conservación\n \n }\n >\n Maridajes\n \n }>\n Premios y puntuaciones\n \n }\n >\n Elaboración\n \n }\n >\n Viñedo\n \n }\n >\n Experts rating\n \n \n\n \n }>\n Product images\n \n }>\n Product video\n \n }>\n Options\n \n \n \n
\n {Comp && (\n }>\n \n \n )}\n
\n
\n \n )\n}\n\nfunction Complements() {\n const ctx = useTraversal()\n const complement = ctx.state.context\n const ref = complement.opciones?.[0]?.referencia\n return (\n
\n For now use the{' '}\n {ref ? (\n \n old backoffice page\n \n ) : (\n 'old backoffice page'\n )}{' '}\n for complements.\n
\n )\n}\n\nexport function ProductView(props) {\n const isPack = props.state.path.startsWith('/packs')\n const isComplement = props.state.path.startsWith('/complementos')\n const ctx = useTraversal()\n const Options = () => \n const editors = ['Product', 'Pack', 'Complements']\n let tab = editors[0]\n if (isPack) tab = editors[1]\n if (isComplement) tab = editors[2]\n\n let tabs = {\n Product: ProductEditor,\n Permissions: PanelPermissions,\n AuditLog: AuditLogTab,\n SEO: SEOTab,\n ContentReview: ContentReviewTab,\n 'Price comparator': PriceComparatorTab,\n }\n const permissions = {\n [tab]: 'guillotina.ModifyContent',\n Permissions: 'guillotina.SeePermissions',\n SEO: 'guillotina.ModifyContent',\n ContentReview: 'guillotina.ModifyContent',\n 'Price comparator': 'guillotina.ModifyContent',\n }\n\n if (isPack) {\n delete tabs.Product\n tabs = { Pack: PackEditor, Options, ...tabs }\n }\n\n if (isComplement) {\n delete tabs.Product\n tabs = { Complements, Options, ...tabs }\n }\n\n const calculated = ctx.filterTabs(tabs, permissions)\n\n return (\n }\n {...props}\n />\n )\n}\n","import React, { useEffect, useState } from 'react'\nimport { Select } from 'antd'\nimport { getLang } from '../utils'\n\nexport function TagsSelector({ value, onChange, tagsType = 'uva' }) {\n const [items, setItems] = useState()\n\n useEffect(() => {\n init()\n }, [])\n async function init() {\n const res = await searchGuillotinaItem(tagsType)\n setItems(res)\n }\n\n if (!items) return null\n\n return (\n \n option.children.toLowerCase().indexOf(input.toLowerCase()) >= 0\n }\n onChange={onChange}\n >\n {items.map((item) => (\n \n {item.name}\n \n ))}\n \n )\n}\n\nexport async function searchGuillotinaItem(tagsType) {\n const lang = getLang(new URL(window.location.href))\n const obj = await fetch(\n `/db/guillotina/@tags/${tagsType}?lang=${lang}`\n ).then((res) => res.json())\n return Object.keys(obj)\n .map((key) => ({ name: obj[key], id: key.replace(`${tagsType}/`, '') }))\n .filter((v) => v.name)\n}\n","import React from 'react'\nimport { InputNumber } from 'antd'\nimport { TagsSelector } from './tags-selector'\n\nexport function GrapesSelector({ value = [], onChange, onEditPercentage }) {\n return (\n <>\n v.id)}\n onChange={onChange}\n />\n {value.length > 0 && (\n <>\n
\n Percentages:\n
\n
\n {value.map((grape, index) => (\n `${grape.id}: ${value}%`}\n style={{ margin: 10, width: 400 }}\n max={100}\n value={grape.otros_datos.porcentaje}\n onChange={(porcentaje) =>\n onEditPercentage(\n value.map((g, i) =>\n i === index ? { ...g, otros_datos: { porcentaje } } : g\n )\n )\n }\n onInput={(txt) => {\n const porcentaje = parseInt(\n txt.split(':')[1].replace('%', '').trim(),\n 10\n )\n onEditPercentage(\n value.map((g, i) =>\n i === index ? { ...g, otros_datos: { porcentaje } } : g\n )\n )\n }}\n />\n ))}\n
\n \n )}\n \n )\n}\n","import React from 'react'\nimport { Loading } from '@guillotinaweb/react-gmi'\nimport { FileUpload } from '@guillotinaweb/react-gmi'\nimport { message, Input } from 'antd'\n\nimport { I18NField } from '../components/i18nfield'\nimport { getMediaUrl } from '../consts'\n\nexport function BaseField({ label, help, children, ...props }) {\n return (\n
\n
\n \n
\n
\n
\n
\n {children}\n
\n {help &&

{help}

}\n
\n
\n
\n )\n}\n\nexport function Field({\n label,\n value,\n onChange,\n placeholder,\n readonly = false,\n disabled = false,\n type = 'text',\n className = [],\n help = '',\n ...rest\n}) {\n return (\n \n onChange(e.target.value)}\n readOnly={readonly}\n disabled={disabled}\n {...rest}\n />\n \n )\n}\n\nexport function ImageEditor({\n Ctx,\n canModifyContent,\n field,\n uploadFieldName,\n label,\n caption,\n alt,\n onChangeCaption,\n onChangeAlt,\n size,\n folder = null,\n style = { width: 300 },\n}) {\n const [imgLoading, setImgLoading] = React.useState(false)\n const sizeTxt = size ? ` (${size})` : ''\n const labelTxt = label ? `${label}${sizeTxt}:` : ''\n\n const uploadFile = async (file) => {\n // @TODO implement some kind of file validation\n setImgLoading(true)\n\n if (size) {\n const [width, height] = await getImgDimensionsFromArrayBuffer(file)\n if (size.trim() !== `${width}x${height}`) {\n message.error(\n `Image size must be ${size} instead of ${width}x${height}`\n )\n setImgLoading(false)\n return\n }\n }\n\n const resp = await Ctx.client.upload(\n Ctx.path,\n file,\n folder,\n uploadFieldName\n )\n if (resp.status !== 200) Ctx.flash('error_uploading_file', 'danger')\n else Ctx.refresh()\n setImgLoading(false)\n }\n\n return (\n <>\n {labelTxt && (\n
{labelTxt}
\n )}\n {field && (\n
\n \"\"\n {canModifyContent && (\n {\n const resp = await Ctx.client.deleteFile(\n Ctx.path,\n uploadFieldName\n )\n if (resp.status !== 200) {\n Ctx.flash('error_deleting_file', 'danger')\n } else {\n Ctx.flash('Imagen borrada', 'success')\n Ctx.refresh()\n }\n }}\n >\n )}\n
\n )}\n {canModifyContent &&\n (!imgLoading ? (\n \n ) : (\n \n ))}\n {(caption || alt) && (\n null}>\n {(lang) => (\n \n {alt && (\n \n onChangeAlt?.({ ...alt, [lang]: e.target.value })\n }\n prefix={\n \n Alt / title\n \n }\n />\n )}\n {caption && (\n \n onChangeCaption?.({ ...caption, [lang]: e.target.value })\n }\n prefix={\n \n Caption\n \n }\n />\n )}\n \n )}\n \n )}\n \n )\n}\n\nfunction getImgDimensionsFromArrayBuffer(file) {\n return new Promise((res) => {\n const fr = new FileReader()\n\n fr.onload = () => {\n const img = new Image()\n\n img.onload = () => {\n res([img.width, img.height])\n }\n\n img.src = fr.result\n }\n\n fr.readAsDataURL(new Blob([file.data]))\n })\n}\n","import React from 'react'\nimport { Input } from '@guillotinaweb/react-gmi'\nimport { useSetState } from 'react-use'\nimport { QuillEditor } from './QuillEditor'\n\nconst LANGS = ['es', 'en', 'fr', 'de', 'it']\n\nconst toDict = (list) =>\n list.reduce((b, x) => {\n b[x] = ''\n return b\n }, {})\n\nexport function I18NField({\n defaultLang,\n langs = LANGS,\n onChangeLang,\n onChange,\n vals = {},\n label,\n Widget = Input,\n children,\n modifyContent = true,\n placeholder,\n}) {\n const initial = toDict(LANGS)\n\n const [values, setValues] = useSetState({ ...initial, ...vals })\n const [current, setCurrent] = React.useState(defaultLang || langs[0])\n const ref = React.useRef()\n\n const changeValue = (lang) => (ev) => {\n setValues({ [lang]: ev })\n }\n\n React.useEffect(() => {\n if (ref.current) {\n if (onChange) onChange(values)\n } else {\n ref.current = true\n }\n }, [values])\n\n const props = {\n placeholder: `${placeholder || 'Nombre'} ${current.toUpperCase()}`,\n value: values[current] || '',\n onChange: changeValue(current),\n className: 'is-size-6',\n }\n\n function changeLang(lang) {\n setCurrent(lang)\n if (onChangeLang) onChangeLang(lang)\n }\n\n return (\n
\n
{label}
\n
\n
\n \n
\n {modifyContent && }\n {!modifyContent && }\n {typeof children === 'function' ? children(current) : children}\n
\n
\n )\n}\n\nexport function I18NRichText({\n langs = LANGS,\n onChange,\n vals = {},\n label,\n id = '',\n modifyContent = true,\n editorProps = {},\n}) {\n const initial = toDict(LANGS)\n\n const [values, setValues] = useSetState({ ...initial, ...vals })\n const [current, setCurrent] = React.useState(langs[0])\n const ref = React.useRef()\n\n const changeValue = (lang) => (ev) => {\n setValues({ [lang]: ev })\n }\n\n React.useEffect(() => {\n if (ref.current) {\n if (onChange) onChange(values)\n } else {\n ref.current = true\n }\n }, [values])\n\n return (\n
\n {label &&
{label}
}\n
\n
\n \n
\n {modifyContent && (\n changeValue(current)(content)}\n height=\"200px\"\n {...editorProps}\n />\n )}\n {!modifyContent && (\n
\n )}\n
\n \n )\n}\n","import React from 'react'\nimport { RestClient } from '@guillotinaweb/react-gmi'\nimport {\n getProductName,\n getShopCountryHeaders,\n getStoreFromCountry,\n getTotalStock,\n} from '../utils'\n\nexport const ErpClientContext = React.createContext(null)\n\nexport class ErpClient {\n constructor(url, auth) {\n url = url || '/db/erp'\n this.url = url\n this.rest = new RestClient(url, auth)\n }\n\n async getImportedInvoice(template) {\n const res = await this.rest.post('/orders/@imported_invoice_data', {\n template,\n })\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async getImportedInvoiceV2(template) {\n const res = await this.rest.post('/orders/@imported_invoice_data_v2', {\n template,\n })\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async getAllPaymentCommissionCompanies() {\n const res = await this.rest.get(\n '/orders/@get_all_payment_commission_companies'\n )\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async getImportedInvoiceEurotax() {\n const res = await this.rest.get('/orders/@get_all_invoices_eurotax')\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async getImportedInvoiceWarehouseCost() {\n const res = await this.rest.get('/orders/@get-worker-cost')\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async getProvidersMarketplace() {\n const res = await this.fetch('/@proveedores-marketplace')\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async getProductsWithMatch() {\n const res = await this.fetch('/@get-products-with-match')\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async editMatchs(data) {\n const res = await this.rest.post('/@edit-product-with-match', {\n data,\n })\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async deleteMatch(data) {\n const res = await this.rest.post('/@delete-product-match', {\n data,\n })\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async getTotalOpinions() {\n const res = await this.fetch(`/opinions/@total`)\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async deletePriceComparator(data) {\n const res = await this.rest.delete('/@price-comparator', {\n data,\n })\n return await res.json()\n }\n\n async upsertPriceComparator(data, country) {\n const res = await this.rest.patch('/@price-comparator', {\n data,\n country,\n })\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n return await res.json()\n }\n\n async getPriceComparator(group, country = 'es', page = 0) {\n let params = {\n groups: [group],\n serializer: 'summary-all-opts',\n opciones: {\n estado: ['selling'],\n },\n }\n\n // Load top 25 ranking products (with pagination)\n if (!group) {\n const size = 25\n params = {\n size,\n cursor: page * size,\n serializer: 'summary-all-opts',\n sort_by: [\n {\n field: 'opciones.in_stock',\n order: 'asc',\n },\n {\n field: 'ranking',\n order: 'asc',\n },\n ],\n tipo: '/vi',\n opciones: {\n estado: ['selling'],\n },\n }\n }\n\n const { search } = await fetch(`/db/guillotina/@search-product`, {\n method: 'POST',\n headers: this.getHeaders({ country, shop: getStoreFromCountry(country) }),\n body: JSON.stringify(params),\n }).then((r) => r.json())\n\n const prods = await this.rest\n .post('/@price-comparator', { country, groups: search.map((p) => p.id) })\n .then((r) => r.json())\n\n const competence = prods.reduce((acc, c) => {\n if (!acc[c.product_group]) acc[c.product_group] = [c]\n else acc[c.product_group].push(c)\n return acc\n }, {})\n let result = []\n let withoutOption = []\n\n for (let prod of search) {\n const options = prod.opciones || []\n const comp = competence[prod.id] || [null]\n\n for (let prodCompetence of comp) {\n let [option] = options\n\n if (prodCompetence) {\n option = options.filter(\n (o) =>\n o.anyada === prodCompetence.anyada &&\n o.capacidad === prodCompetence.capacity\n )[0]\n }\n\n if (!option) {\n withoutOption.push(prodCompetence)\n continue\n }\n\n result.push({\n product_group: prod.id,\n delivery_country: country,\n ...(prodCompetence || {}),\n id_producto: option.referencia,\n our_price: option.precio_sin_impuestos,\n our_name: getProductName(\n prod.nombre,\n option.anyada,\n option.capacidad\n ),\n our_offer_price: option.oferta?.precio_oferta,\n our_taxes: option.impuestos,\n path: prod.path,\n })\n }\n }\n\n return [result, withoutOption]\n }\n\n async getOpinions(status = 'pend', page = 0, pageSize = 10) {\n const res = await this.fetch(\n `/opinions/@list?status=${status}&page=${page}&page_size=${pageSize}`\n )\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return res.json()\n }\n\n async editOpinion(id, opinion, titulo, nombre_usuario, nota, estado, shop) {\n const path = `/opinions/${shop[0].toUpperCase()}${id}/`\n const body = JSON.stringify({\n opinion,\n titulo,\n nombre_usuario,\n nota,\n estado,\n })\n const res = await this.fetch(path, { method: 'PATCH', body })\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return true\n }\n\n async createOffers(offers) {\n const path = '/offers/'\n const body = JSON.stringify(offers)\n const res = await this.fetch(path, { method: 'POST', body })\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return true\n }\n\n async getFreeShippingRates() {\n const path = '/promos_trg/@search'\n const method = 'POST'\n const response = await this.fetch(path, { method })\n\n return response\n }\n\n async createFreeShippingRate(freeShippingRate) {\n const path = '/promos_trg/'\n const method = 'POST'\n const body = JSON.stringify(freeShippingRate)\n const res = await this.fetch(path, { method, body })\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return true\n }\n\n async deleteFreeShippingRate(id) {\n const path = `/promos_trg/${id}`\n const method = 'DELETE'\n const response = await this.fetch(path, { method })\n\n return response\n }\n\n async publishOpinion(id, shop) {\n const path = `/opinions/${shop[0].toUpperCase()}${id}/@publish`\n const res = await this.fetch(path, { method: 'POST' })\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return true\n }\n\n async refuseOpinion(id, shop) {\n const path = `/opinions/${shop[0].toUpperCase()}${id}/@refuse`\n const res = await this.fetch(path, { method: 'POST' })\n\n if (res.status >= 300) {\n throw new Error(await res.text())\n }\n\n return true\n }\n\n async getAnalytics(since, to, interval = 'month') {\n const res = await this.rest.post('/analytics/@billing', {\n since,\n to,\n interval,\n })\n return await res.json()\n }\n\n async fetch(path, { method = 'GET', body } = {}) {\n let data = { method, body }\n data.headers = this.getHeaders() || {}\n return await fetch(`${this.url}${path}`, data)\n }\n\n async get(path, shop = 'vinissimus') {\n let data = {}\n data.headers = this.getHeaders() || {}\n data.headers['x-shop'] = shop\n return await fetch(`${this.url}${path}`, data)\n }\n\n getHeaders(info) {\n const token = localStorage.getItem('token')\n if (!token) {\n return {}\n }\n return {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: 'Bearer ' + token,\n ...getShopCountryHeaders(info),\n }\n }\n\n async request(path, method, body, headers) {\n let data = {}\n body = body || {}\n data.method = method\n data.body = JSON.stringify(body)\n data.headers = headers || this.getHeaders()\n return await fetch(`${this.url}${path}`, data)\n }\n\n async fetchOrder(id) {\n const token = localStorage.getItem('token')\n if (!token) return {}\n\n const res = await this.fetch(`/orders/${id}/@full`, {\n headers: this.getHeaders(),\n })\n\n if (!res.ok) return null\n\n const order = await res.json()\n const info = { shop: order.shop, country: order.foto_direccion.id_pais }\n\n // Add new unitary prices to each line\n const prods = await fetch('/db/guillotina/@prod-by-referencia', {\n method: 'POST',\n headers: this.getHeaders(info),\n body: JSON.stringify({\n referencias: order.lines.map((line) => line.id_producto),\n opciones: {\n estado: ['selling', 'notavailable'],\n },\n }),\n }).then((res) => res.json())\n\n order.lines = order.lines.map((l) => {\n const option = prods[l.id_producto]?.opciones?.[0] || {}\n const stock = getTotalStock(option)\n\n return {\n ...l,\n new_taxes: option.impuestos ?? l.tipo_iva,\n new_price: option.precio_sin_impuestos ?? l.base_imponible,\n old_price: l.base_imponible,\n old_taxes: l.tipo_iva,\n stock: Math.max(stock, l.cantidad),\n option,\n }\n })\n\n return order\n }\n\n async getProductsOutCatalog() {\n const response = await this.fetch('/@ids-products-out-catalog', {\n method: 'GET',\n headers: this.getHeaders(),\n })\n\n return response.json()\n }\n\n getAnalytics() {\n return this.fetch('/analytics/@product-traffic-and-performance', {\n headers: this.getHeaders(),\n }).then((r) => r.json())\n }\n\n /**\n * Update Order Products\n *\n * @param {object} order\n * @param {object} data\n * @example data = {\n * \"product_lines\": [\n * {\"id_producto\": \"p1\", \"cantidad\": 333},\n * {\"id_producto\": \"p3\", \"cantidad\": 3},\n * ],\n * \"check_last_bottles\": true,\n * \"change_price\": false,\n * \"forced\": true,\n * }\n * @returns Promise\n */\n async updateOrderProducts(order, data) {\n const shop = order.shop\n const id = `${shop[0].toUpperCase()}${order.id_pedido}`\n return this.fetch(`/orders/${id}/@update-products`, {\n method: 'POST',\n headers: this.getHeaders({\n shop,\n country: order.foto_direccion.id_pais,\n }),\n body: JSON.stringify(data),\n })\n }\n}\n","import React, { useEffect, useRef, useState } from 'react'\nimport { Select, Spin, Tag } from 'antd'\nimport { EyeOutlined, SortAscendingOutlined } from '@ant-design/icons'\n\nimport { getCapacityText, arrayMove, getShopCountryHeaders } from '../utils'\nimport { isProd } from '../consts'\n\nimport './product-selector.css'\n\n/**\n * This component is to render a searcher with product suggestions,\n * and select some products with this tool.\n */\nexport function ProductSelector({\n defaultProductInfo,\n disabled,\n disabledIds = new Set([]),\n onChange,\n onChangeProductInfo = () => {},\n onSearch,\n placeholder = 'Search products to add',\n prodSugggestions,\n productTypes,\n width = '100%',\n style = {},\n closable = true,\n products = [],\n state,\n type = 'group',\n}) {\n const DEBOUNCE_TIME = 320\n const debounceTimeout = useRef()\n const [productInfo, setProductInfo] = useState({})\n const [suggestions, setSuggestions] = useState([])\n const [loading, setLoading] = useState(false)\n const subdomain = isProd() ? 'www' : 'stage'\n\n function getProdId(product) {\n return type === 'refs' ? product.ref : product.id\n }\n\n function getName(pid) {\n return productInfo[pid]?.name ? `${productInfo[pid].name} (${pid})` : pid\n }\n\n function onSearchProduct(text) {\n setLoading(true)\n if (onSearch) return onSearch(text)\n\n clearTimeout(debounceTimeout.current)\n debounceTimeout.current = setTimeout(() => {\n fetchProductSuggestions({ text, type, productTypes, state })\n .then(setSuggestions)\n .then(() => setLoading(false))\n }, DEBOUNCE_TIME)\n }\n\n useEffect(() => {\n if (!Array.isArray(prodSugggestions)) return\n setSuggestions(prodSugggestions)\n setLoading(false)\n }, [prodSugggestions])\n\n useEffect(() => {\n if (type !== 'refs') return\n if (defaultProductInfo) return setProductInfo(defaultProductInfo)\n\n // ⚠️ This prevents doing an expensive open search\n if (!products || products.length === 0) return\n\n fetch(`/db/guillotina/@search-product`, {\n method: 'POST',\n headers,\n body: JSON.stringify({\n referencias: products,\n serializer: 'summary-all-opts',\n }),\n })\n .then((r) => r.json())\n .then(({ search }) => {\n const pinfo = search.reduce((o, c, index) => {\n const op =\n c.opciones.find((p) => p.referencia === products[index]) || {}\n const vintage = op.anyada ? ` ${op.anyada}` : ''\n const capacity = op.capacidad\n ? ` ${getCapacityText(op.capacidad)}`\n : ''\n\n o[op.referencia] = {\n name: c.nombre + vintage + capacity,\n url: `${c.id}/#${op.id}`,\n }\n\n return o\n }, {})\n setProductInfo(pinfo)\n onChangeProductInfo(pinfo)\n })\n .catch((e) => console.error(e))\n return () => clearTimeout(debounceTimeout.current)\n }, [])\n\n function renderTag(object) {\n const { value, label, onClose } = object\n\n return (\n \n {getName(label)}\n \n window.open(\n `https://${subdomain}.vinissimus.com/es/vino/${\n productInfo[value]?.url || value\n }/`,\n '_blank'\n )\n }\n style={{\n margin: '0 5px',\n color: '#1890ff',\n fontSize: 14,\n cursor: 'pointer',\n }}\n />\n {\n const index = products.indexOf(value)\n const prompt = window.prompt('Change product index', `${index}`)\n const newIndex = parseInt(prompt)\n\n if (prompt === undefined || isNaN(newIndex)) return\n\n onChange(arrayMove(products, index, newIndex))\n }}\n />\n \n )\n }\n\n return (\n : null}\n placeholder={placeholder}\n onSearch={onSearchProduct}\n style={{ width, ...style }}\n onChange={(ids) => {\n onChange(ids, suggestions)\n if (type !== 'refs') return\n\n setProductInfo((n) => {\n const pinfo = ids\n .map((id) => suggestions.find((s) => getProdId(s) === id))\n .filter((v) => v)\n .reduce(\n (o, c) => {\n o[c.id] = { name: c.nombre, url: `${c.id}/#${c.option.id}` }\n return o\n },\n { ...n }\n )\n onChangeProductInfo(pinfo)\n return pinfo\n })\n }}\n >\n {suggestions.map((s) => {\n const prodId = getProdId(s)\n const isAvanzada = Boolean(s.option?.caracteristicas?.avanzada)\n return (\n \n {s.nombre} {`(${prodId})`} {isAvanzada && ' (PR)'}\n \n )\n })}\n \n )\n}\n\nconst headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n ...getShopCountryHeaders(),\n}\n\nasync function fetchProductSuggestions({ text, type, state, productTypes }) {\n // ⚠️ This prevents doing an expensive open search when the input text is empty\n if (!text) return []\n\n const size = 15\n const res = await fetch(`/db/guillotina/@search-product`, {\n method: 'POST',\n headers,\n body: JSON.stringify({\n // ⚠️ 'summary-all-opts' is a lot more expensive than summary. Only use it when necessary\n serializer: type === 'group' ? 'summary' : 'summary-all-opts',\n nombre: text,\n cursor: 0,\n size,\n tipo: productTypes,\n opciones: {\n estado: state || ['selling', 'notavailable'],\n },\n }),\n })\n\n if (res.status >= 300) return []\n\n const { search } = await res.json()\n\n if (!Array.isArray(search)) return []\n\n if (type === 'group') {\n return search.map((p) => ({\n id: p.id,\n nombre: p.nombre,\n ref: p.opciones?.[0]?.referencia,\n }))\n }\n\n return search\n .reduce(\n (all, p) => [\n ...all,\n ...p.opciones.map((o) => {\n const vintage = o.anyada ? ` ${o.anyada}` : ''\n const capacity = o.capacidad ? ` ${getCapacityText(o.capacidad)}` : ''\n\n return {\n id: p.id,\n nombre: p.nombre + vintage + capacity,\n ref: o.referencia,\n option: o,\n }\n }),\n ],\n []\n )\n .slice(0, size)\n}\n","import React, { useEffect } from 'react'\nimport { TabsPanel, useTraversal, useLocation } from '@guillotinaweb/react-gmi'\nimport { message } from 'antd'\n\nexport function TabsPanelWithLock({ editableTabs = [], ...props }) {\n const Ctx = useTraversal()\n const [location] = useLocation()\n const tab = location.get('tab') || props.currentTab\n\n // onMount\n useEffect(() => {\n let unmounted = false\n let timeout, closeMsg\n\n if (!editableTabs.includes(tab)) return\n\n if (!Ctx.hasPerm('guillotina.ModifyContent')) {\n closeMsg = message.error({\n content: 'You do not have authorization to modify the content',\n key: 'modify-perm-error',\n duration: 0, // infinite\n })\n\n return () => {\n if (closeMsg) closeMsg()\n }\n }\n\n async function lock() {\n clearTimeout(timeout)\n\n let date, res\n const key = `last-mod-date:${Ctx.path}`\n const lastModDateStoraged = sessionStorage.getItem(key)\n const lastModDate =\n lastModDateStoraged || Ctx.state.context.modification_date\n\n // save to sessionStorage\n if (!lastModDateStoraged) {\n sessionStorage.setItem(key, lastModDate)\n }\n\n // It only locks if the current browser tab is this one.\n // If the focus is on the other tab, it will continue to\n // set timeouts and lock again when the window is open.\n if (document.visibilityState === 'visible') {\n res = await Ctx.client.lock(Ctx.path)\n date = res.modification_date\n\n // If there is an error, it means that another user has\n // locked the resource, then, we show a message that is\n // only removed when unmounting the tab component, that\n //is, when leaving the resource act\n if (res.error) {\n closeMsg = message.error({\n content: res.error,\n key: 'lock-error',\n duration: 0, // infinite\n })\n }\n }\n\n // If it has the date of the last modification that returns the\n // lock is different from the last one we have registered, it\n // means that it has left the window so long inactive that it\n // has stopped locking the resource to the point that another\n // user has modified content. It may be that the resource is now\n // locked by someone or not, but it is outdated, so we force a refresh.\n if (\n date &&\n new Date(date).getTime() !== new Date(lastModDate).getTime()\n ) {\n Ctx.refresh({ transparent: true })\n }\n\n if (!res?.error && !unmounted) {\n // The lock expires after 60s, so we need to constantly call the endpoint\n // @lock to keep it alive\n timeout = setTimeout(lock, 30 * 1000)\n }\n }\n\n lock()\n window.addEventListener('focus', lock)\n\n // cleanup (unmount)\n return () => {\n unmounted = true\n clearTimeout(timeout)\n if (closeMsg) closeMsg()\n sessionStorage.removeItem(`last-mod-date:${Ctx.path}`)\n window.removeEventListener('focus', lock)\n Ctx.client.unlock(Ctx.path)\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [tab])\n\n return \n}\n","import React, { useEffect, useState } from 'react'\nimport { useLocation } from '@guillotinaweb/react-gmi'\nimport { Loading } from '@guillotinaweb/react-gmi'\nimport { useTraversal } from '@guillotinaweb/react-gmi'\nimport { diff, diffString } from 'json-diff'\nimport urljoin from 'urljoin'\n\nconst loadAuditlog = async (client, path, searchAfter) => {\n let endpoint = `@get-logs?path=${path}&size=20&backend=ch`\n if (searchAfter !== null) endpoint += `&search_after=${searchAfter}`\n const resp = await client.get(endpoint)\n const data = await resp.json()\n return [resp, data]\n}\n\nexport const formatDateWithSeconds = (str) => {\n const d = new Date(str)\n const minutes = d.getMinutes() < 10 ? `0${d.getMinutes()}` : d.getMinutes()\n const seconds = d.getSeconds() < 10 ? `0${d.getSeconds()}` : d.getSeconds()\n return `${d.getDate()}/${\n d.getMonth() + 1\n }/${d.getFullYear()} ${d.getHours()}:${minutes}:${seconds}`\n}\n\nfunction DiffViewser({ diffText, onClick }) {\n return (\n
\n \n {diffText.split('\\n').map((l) => {\n if (l.startsWith('+'))\n return (\n {l + '\\n'}\n )\n else if (l.startsWith('-'))\n return (\n {l + '\\n'}\n )\n else return l + '\\n'\n })}\n \n
\n \n
\n
\n )\n}\n\nfunction AuditLogTab() {\n const Ctx = useTraversal()\n const { client } = Ctx\n const [url] = useLocation()\n const path = urljoin(client.rest.url, url.get('path'))\n\n const [logs, setLogs] = useState([])\n const [searchAfter, setSearchAfter] = useState(null)\n const [nextSearchAfter, setNextSearchAfter] = useState(null)\n\n const [isLoadingMore, setIsLoadingMore] = useState(true)\n const [selectedRow, setSelectedRow] = useState(null)\n\n useEffect(() => {\n async function load() {\n setIsLoadingMore(true)\n const [resp, data] = await loadAuditlog(client, path, searchAfter)\n if (resp.status === 200) {\n setLogs([...logs, ...data.logs])\n setNextSearchAfter(data.search_after)\n } else {\n Ctx.flash(`${resp.status} - ${JSON.stringify(data)}`, 'danger')\n }\n setIsLoadingMore(false)\n }\n load()\n }, [client, path, searchAfter])\n\n const atTheEnd = logs.length > 0 && searchAfter === nextSearchAfter\n\n const getPrevDoc = (i, arr, fallback) => {\n return i + 1 < arr.length ? arr[i + 1] : fallback\n }\n\n const getDetailedDiff = (doc, i, arr) => {\n const oldDoc = getPrevDoc(i, arr, doc).payload\n const newDoc = doc.payload\n return diffString(oldDoc, newDoc, { color: false })\n }\n\n const getDiffKeys = (doc, i, arr) => {\n const oldDoc = getPrevDoc(i, arr, doc).payload\n const newDoc = doc.payload\n return Object.keys(diff(oldDoc, newDoc) || {}).join(', ')\n }\n\n return (\n
\n \n \n \n \n \n \n \n \n \n Date\n User\n Action\n Payload\n \n \n \n {logs.map((doc, i, arr) => (\n \n {formatDateWithSeconds(doc.date)}\n {doc.user}\n {doc.action}\n \n \n setSelectedRow(selectedRow === doc.date ? null : doc.date)\n }\n diffText={\n selectedRow === doc.date\n ? getDetailedDiff(doc, i, arr)\n : getDiffKeys(doc, i, arr)\n }\n />\n \n \n ))}\n \n \n {isLoadingMore && }\n {!isLoadingMore && (\n !atTheEnd && setSearchAfter(nextSearchAfter)}\n >\n {atTheEnd ? 'No more logs to load' : 'Load more'}\n \n )}\n
\n )\n}\n\nexport { AuditLogTab }\n","var map = {\n\t\"./company\": [\n\t\t421,\n\t\t1\n\t],\n\t\"./company.js\": [\n\t\t421,\n\t\t1\n\t],\n\t\"./contact\": [\n\t\t422,\n\t\t2\n\t],\n\t\"./contact.js\": [\n\t\t422,\n\t\t2\n\t],\n\t\"./details\": [\n\t\t423,\n\t\t3\n\t],\n\t\"./details.js\": [\n\t\t423,\n\t\t3\n\t],\n\t\"./elaboration\": [\n\t\t424,\n\t\t4\n\t],\n\t\"./elaboration.js\": [\n\t\t424,\n\t\t4\n\t],\n\t\"./location\": [\n\t\t234\n\t],\n\t\"./location.js\": [\n\t\t234\n\t],\n\t\"./origins\": [\n\t\t425,\n\t\t5\n\t],\n\t\"./origins.js\": [\n\t\t425,\n\t\t5\n\t],\n\t\"./team\": [\n\t\t426,\n\t\t6\n\t],\n\t\"./team.js\": [\n\t\t426,\n\t\t6\n\t],\n\t\"./territory\": [\n\t\t427,\n\t\t7\n\t],\n\t\"./territory.js\": [\n\t\t427,\n\t\t7\n\t],\n\t\"./wines\": [\n\t\t428,\n\t\t8\n\t],\n\t\"./wines.js\": [\n\t\t428,\n\t\t8\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 721;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./a_que_sabe\": [\n\t\t429,\n\t\t9\n\t],\n\t\"./a_que_sabe.js\": [\n\t\t429,\n\t\t9\n\t],\n\t\"./como_beber\": [\n\t\t430,\n\t\t10\n\t],\n\t\"./como_beber.js\": [\n\t\t430,\n\t\t10\n\t],\n\t\"./description\": [\n\t\t431,\n\t\t11\n\t],\n\t\"./description.js\": [\n\t\t431,\n\t\t11\n\t],\n\t\"./details\": [\n\t\t432,\n\t\t12\n\t],\n\t\"./details.js\": [\n\t\t432,\n\t\t12\n\t],\n\t\"./elaboration\": [\n\t\t433,\n\t\t13\n\t],\n\t\"./elaboration.js\": [\n\t\t433,\n\t\t13\n\t],\n\t\"./experts_rating\": [\n\t\t434,\n\t\t14\n\t],\n\t\"./experts_rating.js\": [\n\t\t434,\n\t\t14\n\t],\n\t\"./images\": [\n\t\t235\n\t],\n\t\"./images.js\": [\n\t\t235\n\t],\n\t\"./maridajes\": [\n\t\t435,\n\t\t15\n\t],\n\t\"./maridajes.js\": [\n\t\t435,\n\t\t15\n\t],\n\t\"./options\": [\n\t\t236\n\t],\n\t\"./options.js\": [\n\t\t236\n\t],\n\t\"./score\": [\n\t\t436,\n\t\t0\n\t],\n\t\"./score.js\": [\n\t\t436,\n\t\t0\n\t],\n\t\"./video\": [\n\t\t437,\n\t\t16\n\t],\n\t\"./video.js\": [\n\t\t437,\n\t\t16\n\t],\n\t\"./vineyard\": [\n\t\t438,\n\t\t17\n\t],\n\t\"./vineyard.js\": [\n\t\t438,\n\t\t17\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 747;\nmodule.exports = webpackAsyncContext;","import React from 'react'\nimport { Menu } from 'antd'\nimport { useLocation } from 'wouter'\nimport {\n BarChartOutlined,\n DatabaseOutlined,\n FolderOutlined,\n LogoutOutlined,\n PlusOutlined,\n RobotOutlined,\n EuroCircleOutlined,\n SwitcherOutlined,\n} from '@ant-design/icons'\nimport { Divider } from 'antd'\nimport { Affix } from 'antd'\n\nconst findCurrent = (items) => {\n const url = new URL(window.location.href)\n const path = url.pathname + url.search\n let found = ['Content', 0]\n for (let i = 0; i < items.length; i++) {\n if (path.startsWith(items[i].subpath)) {\n found[0] = items[i].name\n for (let k = 0; k < items[i].items.length; k++) {\n let curr = items[i].items[k]\n if (path.startsWith(curr.path)) {\n found[1] = k\n break\n }\n }\n break\n }\n }\n return found\n}\n\nexport function MainMenu({ auth }) {\n const [, setLocation] = useLocation()\n\n const clickMenu = (ev) => {\n if (ev.item?.props?.href) {\n setLocation(ev.item.props.href)\n }\n if (ev.key === 'Logout') {\n return auth.logout()\n }\n }\n\n const menus = [\n {\n name: 'Catalogue',\n subpath: '/-admin/?',\n items: [\n { title: 'Products', path: '/-admin/?path=/bodegas/' },\n { title: 'Promos', path: '/-admin/?path=/promos/' },\n { title: 'Home', path: '/-admin/?path=/home/' },\n { title: 'Landings', path: '/-admin/?path=/landings/' },\n { title: 'Packs', path: '/-admin/?path=/packs/' },\n { title: 'Grappes & Tags', path: '/-admin/?path=/tags/' },\n { title: 'Regions', path: '/-admin/?path=/zonas/' },\n { title: 'Opinions', path: '/-admin/opinions' },\n { title: 'Offers', path: '/-admin/offers' },\n { title: 'Free Shipping Rates', path: '/-admin/promos_trg' },\n { title: 'Newsletter', path: '/-admin/?path=/newsletters/' },\n { title: 'Users', path: '/-admin/users' },\n ],\n Icon: FolderOutlined,\n },\n {\n name: 'Market Place',\n subpath: '/-admin/market-place',\n items: [\n {\n title: 'Match products',\n path: '/-admin/market-place/match-products',\n },\n { title: 'Edit matchs', path: '/-admin/market-place/edit-matchs' },\n ],\n Icon: SwitcherOutlined,\n },\n {\n name: 'Orders',\n subpath: '/-admin/orders/',\n items: [\n { title: 'Delays & Notifications', path: '/-admin/orders/delays' },\n { title: 'Group Orders', path: '/-admin/orders/preparation-group' },\n {\n title: 'Multi order invoice',\n path: '/-admin/orders/multi-order-invoice',\n },\n ],\n Icon: DatabaseOutlined,\n },\n {\n name: 'Invoices',\n subpath: '/-admin/invoices/',\n items: [\n {\n title: 'Import shipping invoices',\n path: '/-admin/invoices/import-shipping-invoices',\n },\n {\n title: 'Import commissions collections',\n path: '/-admin/invoices/import-commissions-collections-v2',\n },\n {\n title: 'Import invoice Eurotax',\n path: '/-admin/invoices/import-invoice-eurotax',\n },\n {\n title: 'Import cost warehouse',\n path: '/-admin/invoices/import-cost-warehouse',\n },\n ],\n Icon: EuroCircleOutlined,\n },\n {\n name: 'Content AI',\n subpath: '/-admin/content_ai/',\n items: [\n {\n title: 'Content generated for AI',\n path: '/-admin/content_ai/content_generated',\n },\n ],\n Icon: RobotOutlined,\n },\n {\n name: 'Create product content',\n path: '/-admin/product/create-content',\n Icon: PlusOutlined,\n },\n {\n name: 'Analytics',\n path: '/-admin/analytics',\n Icon: BarChartOutlined,\n },\n {\n name: 'Backoffice',\n path: '/administracion/',\n Icon: RobotOutlined,\n },\n {\n name: 'Logout',\n Icon: LogoutOutlined,\n },\n ]\n\n const [sub, key] = findCurrent(menus)\n\n return (\n \n \n \n \n \n \n {menus.map((block) => {\n if (!block.items) {\n return (\n \n \n {block.name}\n \n )\n }\n\n return (\n \n {block.name}\n \n }\n >\n {block.items.map((ele, idx) => (\n \n {ele.title}\n \n ))}\n \n )\n })}\n \n \n )\n}\n","import React from 'react'\nimport { Affix, message } from 'antd'\nimport { createClient, Provider } from 'urql'\n\nimport { MainMenu } from './menu'\nimport { getShopCountryHeaders } from '../utils'\nimport { isProd } from '../consts'\n\nimport './layout.css'\n\nlet currentVersion\nconst separatorCSS = {\n height: '100%',\n width: 20,\n backgroundColor: '#f3f3f3',\n right: 0,\n top: 0,\n zIndex: 30,\n position: 'absolute',\n minHeight: '100%',\n}\n\nconst client = createClient({\n url: '/db/erp/@graphql',\n fetchOptions: () => {\n const token = localStorage.getItem('token')\n return {\n headers: {\n authorization: token ? `Bearer ${token}` : '',\n ...getShopCountryHeaders(),\n },\n }\n },\n})\n\nexport function Layout({ children, onLogout, auth }) {\n const [isMenuOpened, setMenuOpened] = React.useState(true)\n\n // Check admin updates and display a message if an update is available\n React.useEffect(() => {\n checkUpdate()\n }, [])\n\n return (\n \n
\n
\n {auth.isLogged && (\n \n {isMenuOpened && }\n {\n setMenuOpened(!!!isMenuOpened)\n }}\n >
\n \n )}\n\n
{children}
\n \n
\n
\n )\n}\n\nasync function checkUpdate() {\n const url = document.location.origin + '/-admin/version.txt'\n const version = await fetch(url)\n .then((r) => r.text())\n .catch(() => {})\n\n if (!currentVersion) currentVersion = version\n\n if (!version || currentVersion === version) {\n const timeout = setTimeout(checkUpdate, 60000) // every minute\n return () => clearTimeout(timeout)\n }\n\n message.warning({\n icon: '🚀 \\u00A0',\n content: (\n <>\n There is a new admin version available! To avoid possible bugs,\n please refresh the page in your browser.\n \n ),\n key: 'new-version',\n duration: 0, // infinite\n })\n}\n","import React from 'react'\nimport { useState } from 'react'\nimport { useEffect } from 'react'\nimport { useRef } from 'react'\nimport { Button } from '@guillotinaweb/react-gmi'\n\nconst ERRORS = {\n failed_to_fetch: 'Failed to fetch data: Backend not running?',\n invalid_credentials: 'Failed! Invalid credentials',\n}\n\nexport function Login({ auth }) {\n const [username, setUser] = useState('')\n const [password, setPass] = useState('')\n const [errors, setErrors] = useState(undefined)\n const [loading, setLoading] = useState(false)\n const ref = useRef()\n\n useEffect(() => {\n ref.current.focus()\n }, [])\n\n const doLogin = async (ev) => {\n ev.preventDefault()\n if (username === '' || password === '') {\n setErrors('invalid_credentials')\n return\n }\n setLoading(true)\n try {\n await auth.login(username, password)\n } catch {\n setErrors('invalid_credentials')\n }\n setLoading(false)\n }\n\n return (\n \n
\n
\n \n setUser(ev.target.value)}\n value={username}\n ref={ref}\n />\n
\n
\n \n setPass(ev.target.value)}\n value={password}\n />\n
\n
\n \n
\n
\n {errors && (\n

\n {ERRORS[errors] || 'Generic error'}\n

\n )}\n
\n
\n
\n )\n}\n","import { useState } from 'react'\n\n// Vinissimus Backoffice auth\nexport class AuthToken {\n constructor(url) {\n const [state, setState] = useState({\n token: null,\n logged: undefined,\n })\n\n this.guillotina = url\n this.state = state\n this.setState = setState\n }\n\n getToken() {\n // this method is expected by GuillotinaClient\n return this.state.token\n }\n\n get isLogged() {\n const { logged, token } = this.state\n // Can return undefined/false/true\n return logged === true ? !!token : logged\n }\n\n async authGetToken() {\n const resp = await fetch('/v2/auth/get_token')\n const data = await resp.json()\n const token = data.token\n this.setState({ token })\n localStorage.setItem('ctoken', token)\n }\n\n async ensureLogin() {\n if (this.isLogged) {\n return this.isLogged\n }\n\n // try to fetch token from localstorage\n let token = localStorage.getItem('token')\n console.log('token', token)\n if (!token) {\n const logged = false\n this.setState({ logged, token: null })\n return logged\n }\n\n const resp = await fetch(`${this.guillotina}`, {\n method: 'get',\n headers: {\n Authorization: 'Bearer ' + token,\n },\n })\n\n const logged = resp.status === 200\n if (logged) this.setState({ logged, token })\n else {\n this.setState({ logged, token: null })\n localStorage.removeItem('token')\n }\n return logged\n }\n\n async login(username, password) {\n const tresp = await fetch('/v2/auth/get_token')\n let data = await tresp.json()\n const resp = await fetch(`/v2/auth/login`, {\n method: 'post',\n headers: {\n Authorization: 'Bearer ' + data.token,\n },\n body: JSON.stringify({\n email: username,\n password,\n }),\n })\n\n if (resp.status !== 200) {\n throw new Error('Invalid Login')\n }\n\n data = await resp.json()\n localStorage.setItem('token', data.token)\n localStorage.setItem('email', username)\n this.setState({ logged: true, token: data.token })\n return data\n }\n\n async logout() {\n const { token } = this.state\n localStorage.removeItem('token')\n localStorage.removeItem('email')\n this.setState({ logged: false, token: null })\n await fetch('/v2/auth/logout', {\n method: 'post',\n headers: {\n Authorization: 'Bearer ' + token,\n },\n })\n }\n}\n","import React, { useEffect, useState } from 'react'\nimport { getDomain } from '../utils'\nimport { SITES, isProd } from '../consts'\nimport { Menu, Dropdown } from 'antd'\nimport { Button } from '@guillotinaweb/react-gmi'\n\nconst URLS = {\n uvas: {\n 'vinissimus.com': '/uva',\n 'vinissimus.co.uk': '/grape',\n 'vinissimus.fr': '/raisin',\n 'hispavinus.de': '/traube',\n 'italvinus.it': '/uva',\n },\n}\n\nexport function Preview({ url, id }) {\n return (\n <>\n View\n
\n {SITES.map((site) => (\n \n {site}\n \n ))}\n
\n \n )\n}\n\nconst subdomain = isProd() ? 'www' : 'stage'\n\nexport function CustomPreview({\n label = 'Preview',\n preview = (v) => v,\n children,\n disabled,\n moreItems = null,\n openAllOption = true,\n domains,\n onBeforeClick = () => {},\n ...props\n}) {\n const [prevs, setPrevs] = useState([])\n\n useEffect(() => {\n async function loadPreviews() {\n setPrevs([])\n setPrevs(\n domains ||\n (await Promise.all(\n [\n `https://${subdomain}.vinissimus.com/es/`,\n `https://${subdomain}.vinissimus.com/en/`,\n `https://${subdomain}.vinissimus.fr/fr/`,\n `https://${subdomain}.vinissimus.co.uk/en/`,\n `https://${subdomain}.hispavinus.de/de/`,\n `https://${subdomain}.italvinus.it/it/`,\n ].map(async (label) => {\n const res = preview(label)\n const url = res.then ? await res : res\n const [firstpart, query] = url.split('=')\n\n return {\n label,\n url: `${firstpart}=${encodeURIComponent(query)}`,\n }\n })\n ))\n )\n }\n loadPreviews()\n }, [preview])\n\n return (\n \n {prevs.map(({ label, url }) => (\n \n {\n onBeforeClick(url)\n window.open(url, '_blank')\n }}\n >\n {label}\n \n \n ))}\n {moreItems}\n {openAllOption && (\n \n {\n prevs.forEach((p) => {\n onBeforeClick(p.url)\n window.open(p.url, '_blank')\n })\n }}\n >\n Open all\n \n \n )}\n \n }\n placement=\"bottomCenter\"\n >\n {children ? (\n children\n ) : (\n \n )}\n \n )\n}\n","import React, { useState } from 'react'\nimport { Menu, Select } from 'antd'\nimport { Button, Modal, useTraversal } from '@guillotinaweb/react-gmi'\nimport { CustomPreview } from '../../../components/preview'\nimport { BaseField, Field } from '../../../common/field'\nimport { ALL_COUNTRIES, COUNTRIES, LANGS, SHOPS, SITES } from '../../../consts'\n\nfunction previewNL(id) {\n return (s) =>\n s.replace(\n /\\/\\w\\w\\/$$/g,\n (l) =>\n `/db/guillotina/newsletters/${id}/@previsualize?lang=${l.replace(\n /\\//g,\n ''\n )}`\n )\n}\n\nexport default function NLPreview({ id, ...props }) {\n const Ctx = useTraversal()\n const [email, setEmail] = useState('')\n const [country, setCountry] = useState('')\n const [shop, setShop] = useState('')\n const [status, setStatus] = useState({})\n const [lang, setLang] = useState('')\n const [domain, setDomain] = useState('')\n const [emailModal, setEmailModal] = useState(false)\n\n async function sendEmail(e) {\n e.preventDefault()\n setStatus({ type: 'loading' })\n\n if (!email || !country || !shop || !lang || !domain) {\n setStatus({\n type: 'error',\n message: 'Please, fill all fields in order to send the email',\n })\n return\n }\n\n const res = await Ctx.client.testEmailNL(id, {\n recipient: email,\n ctx: {\n country,\n shop,\n lang,\n domain,\n },\n })\n\n if (res.status >= 300) {\n setStatus({\n type: 'error',\n message: 'There is an error sending the email',\n })\n return\n }\n\n setEmailModal(false)\n setStatus({})\n Ctx.flash(`Email sent to ${email} successfully`, 'success')\n }\n\n return (\n <>\n \n
setEmailModal(true)}>Send a test email
\n \n }\n {...props}\n />\n setEmailModal(false)}>\n

Send a test email

\n
\n \n \n \n {LANGS.map((lang) => (\n {lang.toUpperCase()}\n ))}\n \n \n \n \n {COUNTRIES.map((c) => (\n {`${\n ALL_COUNTRIES[c]\n } (${c.toUpperCase()})`}\n ))}\n \n \n \n \n {SHOPS.map((c) => (\n {c.toUpperCase()}\n ))}\n \n \n \n \n {SITES.map((c) => (\n {c}\n ))}\n \n \n
\n \n
\n {status.type === 'error' && (\n
\n {status.message}\n
\n )}\n \n
\n \n )\n}\n","import * as dayjs from 'dayjs'\nimport React, { useState } from 'react'\nimport { DownOutlined } from '@ant-design/icons'\nimport { Icon, useTraversal } from '@guillotinaweb/react-gmi'\nimport { Menu, Dropdown } from 'antd'\n\nimport NLPreview from '../views/newsletter_editor/Preview'\nimport { getFiltersByPath } from '../../utils'\nimport { useLocation } from 'wouter'\n\nconst color = {\n draft: 'is-light',\n scheduled: 'is-primary',\n verified: 'is-success',\n}\n\nfunction StatusTitle() {\n const Ctx = useTraversal()\n const [filters, setFilters] = useState(getFiltersByPath('/newsletters/'))\n const status = filters.map((s) => s.prefix?.status).find((v) => v)\n const [, navigate] = useLocation()\n\n function applyFilters(status) {\n return () => {\n const newFilters = status ? [{ prefix: { status } }] : []\n setFilters(newFilters)\n localStorage.setItem('filters:/newsletters/', JSON.stringify(newFilters))\n navigate('/?path=/newsletters/')\n Ctx.refresh()\n }\n }\n\n return (\n <>\n \n \n
draft
\n
\n \n
verified
\n
\n \n
scheduled
\n
\n \n
all status
\n
\n \n }\n >\n
\n Status \n
\n \n {status &&
{status}
}\n \n )\n}\n\nexport function getNLColumnHeadings([icon, , name]) {\n const status = {\n label: ,\n child: (m, navigate) => {\n const s = m.item.status || 'draft'\n\n return (\n \n {s}\n \n )\n },\n }\n\n const id = {\n label: 'Id',\n child: (m) => (\n \n {m.id}\n \n ),\n }\n const scheduled_at = {\n label: 'Scheduled at',\n child: (m, navigate) => (\n \n \n {dayjs(new Date(m.item.efective_date)).format('D/MM/YY - HH:mm')}\n \n \n ),\n }\n const preview = {\n label: '',\n child: (m) => (\n \n }\n style={{\n fontSize: 12,\n marginTop: -3,\n borderRadius: '50%',\n backgroundColor: '#efefef',\n }}\n />\n \n ),\n }\n const campaignName = { ...name, label: 'Campaign name' }\n\n return [icon, status, scheduled_at, campaignName, id, preview]\n}\n","import urljoin from 'urljoin'\nimport { GuillotinaClient, stringToSlug } from '@guillotinaweb/react-gmi'\nimport { RestClient } from '@guillotinaweb/react-gmi'\n\nimport { getFiltersByPath, rsplit } from '../utils'\nimport { getNLColumnHeadings } from '../guillotina/column-headings/newsletters'\n\nconst cacheCanIDo = {}\nlet cachePaises = []\n\nexport class AdminClient extends GuillotinaClient {\n async getItems(path, start = 0, pageSize = 10) {\n const filters = getFiltersByPath(path)\n const depth = path.split('/').length\n const sort =\n path === '/newsletters/'\n ? { efective_date: { order: 'desc' } }\n : path === '/home/'\n ? { date_start: { order: 'desc' } }\n : ['id']\n\n const result = await this.esQuery({\n ...Elastic.getItems(path, depth, start, pageSize, filters),\n sort,\n })\n return await result.json()\n }\n\n async getTypeSchema(path, name) {\n const res = await this.rest.get(`@types/${name}`)\n return res.json()\n }\n\n async translate(item, id_tipo) {\n const res = await this.rest.request('/@translate_content', {\n method: 'POST',\n body: JSON.stringify({\n text: item,\n target_lang: ['en', 'de', 'fr', 'it'],\n id_tipo: id_tipo,\n }),\n })\n return res.json()\n }\n\n getItemsColumn(items, path) {\n const column = super.getItemsColumn(items, path)\n\n if (path === '/newsletters/') {\n return getNLColumnHeadings(column)\n }\n\n return column\n }\n\n async upsert(path, body) {\n if (path.endsWith('/')) path = path.replace(/\\/$/, '')\n\n let [initpath, id] = rsplit(path, '/', 1)\n return await this.rest.post(urljoin(initpath, '@upsert'), { ...body, id })\n }\n\n lock(path) {\n return this.rest\n .post(`${path.replace(/(^\\/|\\/$)/g, '')}/@lock`)\n .then((r) => r.json())\n .catch(() => ({}))\n }\n\n unlock(path) {\n return this.rest.post(`${path.replace(/(^\\/|\\/$)/g, '')}/@unlock`)\n }\n\n patch(path, item) {\n const key = `last-mod-date:${path}`\n const lastModDate = sessionStorage.getItem(key)\n\n return this.rest\n .request(\n path,\n {\n method: 'PATCH',\n body: JSON.stringify(item),\n },\n lastModDate\n ? { ...this.rest.getHeaders(), 'last-mod-date': lastModDate }\n : this.rest.getHeaders()\n )\n .then(async (r) => {\n // @todo remove this \"get\" in the future (the patch should return\n // the modification_date).\n const res = await this.rest.get(path).then((r) => r.json())\n sessionStorage.setItem(key, res.modification_date)\n return r\n })\n .catch(() => ({}))\n }\n\n async upload(path, file, folder, field = null) {\n // console.log({ path, file, folder, field })\n\n // Remove folder trailing slash\n const folderWithoutTrailingSlash = folder.replace(/\\/$/, '')\n const name = file.name || file.filename\n // take .png, .jpg, etc\n const [format] = name.match(/\\.([a-z]|[0-9])+$/g) || ['']\n // Remove bad characters + add again the format\n const filename = stringToSlug(name.replace(format, '')) + format\n\n const headers = this.rest.getHeaders()\n delete headers['Content-Type']\n headers['Content-Type'] = file['content-type']\n headers['X-UPLOAD-FILENAME'] = `${folderWithoutTrailingSlash}/${filename}`\n if (field === null) field = `files/${filename}`\n return await this.rest.request(\n urljoin(path, '@upload', field),\n {\n method: 'PATCH',\n body: file.data,\n },\n headers\n )\n }\n\n async deleteFile(path, field) {\n const url = urljoin(\n path.replace(/^\\//, ''),\n '@delete',\n field.replace(/^\\//, '')\n )\n return await this.rest.delete(url)\n }\n\n async search(\n path,\n params,\n container = false,\n prepare = true,\n start = 0,\n pageSize = 10\n ) {\n const level = path.split('/').length\n const query = Elastic.getItems(path, level, start, pageSize)\n query.query.bool.filter[1] = { range: { depth: { gte: level } } }\n\n // @TODO this is a bit hacky, but will refactor on future\n if (params.startsWith('title__in=')) {\n let qs = params.replace('title__in', '')\n query.query.bool.should = [\n {\n match: {\n title: {\n query: qs,\n fuzziness: 'AUTO',\n max_expansions: 15,\n },\n },\n },\n {\n match_phrase_prefix: {\n title: {\n query: qs,\n boost: 2,\n },\n },\n },\n ]\n query.query.bool.minimum_should_match = 1\n } else {\n query.query.bool.must = { match: { ...parseParams(params) } }\n }\n const res = await this.esQuery(query)\n return await res.json()\n }\n\n async esQuery(query) {\n const result = await this.rest.post('@search', query)\n return result\n }\n\n async getProducts(query, lang = null) {\n const result = await this.rest.post(\n lang !== null\n ? `@search-aggs-product?lang=${lang}`\n : '@search-aggs-product',\n query\n )\n return [result.status, await result.json()]\n }\n\n async prodByReferencia(referencias) {\n const result = await this.rest.post('@prod-by-referencia', { referencias })\n return await result.json()\n }\n\n countNewsletter(id) {\n return this.rest.get(`newsletters/${id}/@count`).then((r) => r.json())\n }\n\n progressNL(id) {\n return this.rest.get(`newsletters/${id}/@progress`).then((r) => r.json())\n }\n\n scheduleNewsletter(id, unschedule = false) {\n const endpoint = unschedule ? '@unschedule' : '@schedule'\n return this.rest.post(`newsletters/${id}/${endpoint}`).then((r) => r.json())\n }\n\n testEmailNL(id, body) {\n return this.rest.post(`newsletters/${id}/@send-test-email`, body)\n }\n\n verifyNLToggle(id, verify = true) {\n const endpoint = verify ? '@mark-as-verified' : '@mark-as-draft'\n return this.rest.post(`newsletters/${id}/${endpoint}`)\n }\n\n getColectivos(id) {\n return this.rest\n .get(`newsletters/${id}/@getColectivos`)\n .then((r) => r.json())\n }\n\n async getProductsRegion(region) {\n /*\n * Search for products in that region or it's subregions\n */\n const result = await this.rest.get(region + '/@products')\n return await result.json()\n }\n\n async getGroups() {\n return {\n json: async () => [],\n }\n }\n\n async getRoles() {\n return {\n json: async () => [],\n }\n }\n\n async delete(path, data) {\n if (path.startsWith('http')) {\n const url = new URL(path)\n const parts = url.pathname.split('/').slice(3).join('/')\n return await this.rest.delete(`${parts}`)\n }\n return await this.rest.delete(path)\n }\n\n // A cached implementation that at some point could be opensourced\n async canido(path, permissions) {\n // Hardcoded permissions needed in admin\n permissions = [\n ...permissions,\n 'vinissimus.ViewLogs',\n 'vinissimus.ScheduleNewsletters',\n 'vinissimus.ReviewContent',\n ]\n\n if (path.startsWith('/')) {\n path = path.slice(1)\n }\n if (Array.isArray(permissions)) {\n permissions.join(',')\n }\n\n const key = `${path}/${permissions}`\n if (!cacheCanIDo[key]) {\n const url = `${path}@canido?permissions=${permissions}`\n const res = await this.rest.get(url)\n if (res.status === 200) {\n cacheCanIDo[key] = await res.json()\n } else {\n return res\n }\n }\n return {\n json: async () => cacheCanIDo[key],\n }\n }\n\n async getTypes(path) {\n if (path === '/tags/') {\n return ['Tag']\n }\n\n if (path === '/bodegas/') {\n return ['Bodega']\n }\n\n if (path === '/home/') {\n return ['Home']\n }\n\n if (path === '/newsletters/') {\n return ['Newsletter']\n }\n\n if (path === '/promos/') {\n return ['Promos']\n }\n\n if (path === '/landings/') {\n return ['Landing']\n }\n\n if (path === '/packs/') {\n return ['Producto']\n }\n\n if (path === '/taxonomies/') {\n return ['Taxonomy']\n }\n\n if (path.startsWith('/bodegas/')) {\n // we dont want to be able to create anything inside bodegas\n if (path.split('/').length > 4) {\n return []\n }\n return ['Producto']\n }\n\n if (path.startsWith('/tags/')) {\n return ['Tag']\n }\n return await super.getTypes(path)\n }\n\n async getPaises() {\n if (cachePaises.length > 0) {\n return cachePaises\n }\n const req = await fetch('/v2/@constants')\n let data = await req.json()\n cachePaises = data.countries.map((item) => ({\n text: item.nombre,\n value: item.id_pais,\n }))\n return cachePaises\n }\n}\n\nexport function getClient(url, auth) {\n return new AdminClient(new RestClient(url, auth))\n}\n\nconst parseParams = (params) => {\n const parser = new URLSearchParams(params)\n const result = {}\n parser.forEach((val, key) => {\n const [field] = key.split('__')\n // result[field] = val\n result[field] = { query: val }\n })\n return result\n}\n\nconst Elastic = {\n getItems: (path, depth, start, size, filters = []) => {\n return {\n ...Elastic.query({\n filter: [{ prefix: { path } }, { term: { depth } }, ...filters],\n }),\n from: start,\n size,\n }\n },\n\n query: (params) => ({ query: { bool: params } }),\n}\n","import React from 'react'\nimport { withScope, captureException } from '@sentry/browser'\n\nconst style = { color: '#F44336', fontSize: 20, paddingBottom: 20 }\n\nexport class ErrorBoundary extends React.Component {\n constructor(props) {\n super(props)\n this.state = {}\n }\n\n static getDerivedStateFromError(error) {\n // Update state so the next render will show the fallback UI.\n return { hasError: true, errorMsg: error.message }\n }\n\n componentDidCatch(error, errorInfo) {\n if (\n typeof window === 'undefined' ||\n new URL(window.location.href).host.includes('localhost')\n ) {\n return\n }\n\n // https://docs.sentry.io/platforms/javascript/react/#error-boundaries\n withScope((scope) => {\n scope.setExtras(errorInfo)\n const eventId = captureException(error)\n this.setState({ eventId })\n })\n }\n\n render() {\n const { hasError, errorMsg, errorStack } = this.state\n\n if (hasError) {\n return (\n
\n
Something went wrong.
\n {errorMsg && (\n

\n {errorMsg}\n

\n )}\n {errorStack &&

{errorStack}

}\n
\n )\n }\n\n return this.props.children\n }\n}\n","import React from 'react'\nimport { classnames } from '@guillotinaweb/react-gmi'\n\nexport const ErrorZone = ({ children, id, className }) => {\n return (\n \n {children}\n \n )\n}\n","import React from 'react'\nimport { Form } from '@guillotinaweb/react-gmi'\nimport { ErrorZone } from '../../components/error_zone'\nimport { Select } from '@guillotinaweb/react-gmi'\nimport { useTraversal } from '@guillotinaweb/react-gmi'\nimport { useSetState } from 'react-use'\nimport { Input } from '@guillotinaweb/react-gmi'\nimport { stringToSlug } from '@guillotinaweb/react-gmi'\nimport { Button } from '@guillotinaweb/react-gmi'\nimport { useLocation } from '@guillotinaweb/react-gmi'\n\nconst initial = {\n '@type': 'Bodega',\n nombre: '',\n id: '',\n internal_id: '',\n id_pais: '',\n}\n\nexport function BodegaForm({ onSubmit, actionName, title }) {\n const Ctx = useTraversal()\n const [error, setError] = React.useState(undefined)\n const [paises, setPaises] = React.useState([])\n const [state, setState] = useSetState(initial)\n const [loading, setLoading] = React.useState(false)\n const [, navigate] = useLocation()\n\n React.useEffect(() => {\n ;(async () => {\n let data = await Ctx.client.getPaises()\n setPaises(data)\n })()\n }, [])\n\n const submit = async () => {\n if (state.nombre === '' || state.id === '' || state['id_pais'] === '') {\n setError('Todos los campos son necesarios')\n return\n }\n\n setLoading(true)\n const res = await Ctx.client.post('/bodegas/', state)\n if (res.status === 201) {\n Ctx.flash('Bodega creada', 'success')\n Ctx.cancelAction()\n navigate({ path: `/bodegas/${state.id}/` }, true)\n } else {\n setLoading(false)\n const response = await res.json()\n setError('Server Error:' + response.msg || res.status)\n }\n }\n\n const rest = {\n onFocus: () => setError(undefined),\n }\n\n return (\n
\n

Añadir Bodega

\n {error && {error}}\n\n {\n let slug = stringToSlug(ev)\n let internal_id = slug.replace('-', '').substring(0, 4)\n setState({ nombre: ev, id: slug, internal_id })\n }}\n id=\"Nombre\"\n placeholder=\"Nombre\"\n value={state.nombre}\n {...rest}\n />\n\n setState({ id: ev })}\n id=\"Url\"\n placeholder=\"Url Amigable\"\n value={state.id}\n {...rest}\n />\n\n setState({ internal_id: ev })}\n id=\"id_bodega\"\n minLength={4}\n maxLength={4}\n placeholder=\"id_bodega\"\n value={state.internal_id}\n {...rest}\n />\n\n
\n \n setState({ id_pais: ev.target.value })}\n classWrap={'is-small'}\n />\n
\n\n

 

\n
\n \n
\n \n )\n}\n\n/**\n'{\"@type\": \"Bodega\", \"nombre\": \"Prova jordi\", \"@id\": \"prova-jordi\",\n \"internal_id\": \"prvj\", \"id_pais\": \"es\"}\n */\n","import React, { Component } from 'react'\n\nconst fromString = (val) => new Date(Date.parse(val))\n\nfunction dateToString(date) {\n var d = new Date(date),\n month = '' + (d.getMonth() + 1),\n day = '' + d.getDate(),\n year = d.getFullYear()\n\n if (month.length < 2) month = '0' + month\n if (day.length < 2) day = '0' + day\n\n return [year, month, day].join('-')\n}\n\nexport class DatePicker extends Component {\n onUpdate(ev) {\n if (ev === '' || ev === null) {\n this.props.onUpdate({ target: { value: null } })\n } else {\n let [Y, m, d] = ev.split('-')\n // need to add 2 hours for UTC\n let date = new Date(Y, m - 1, d, 2, 0)\n this.props.onUpdate({ target: { value: date.toJSON() } })\n }\n }\n\n render() {\n return (\n
\n \n this.onUpdate(e.target.value)}\n id={this.id}\n required={this.props.required || false}\n />\n
\n )\n }\n}\n\nexport function genYears() {\n const start = 2006\n const current = new Date().getFullYear()\n return Array(current - start + 1)\n .fill()\n .map((_, i) => start + i)\n}\n","import React, { useState } from 'react'\nimport addHours from 'date-fns/addHours'\nimport endOfTomorrow from 'date-fns/endOfTomorrow'\nimport startOfToday from 'date-fns/startOfToday'\n\nimport { DatePicker } from '../../common/date'\nimport { ErrorZone } from '../../components/error_zone'\nimport { Form, Button, Input, stringToSlug } from '@guillotinaweb/react-gmi'\nimport { defaultHomeSections } from '../../consts'\nimport { formatStartEnd } from '../../utils'\n\nconst today = addHours(startOfToday(), 2)\nconst tomorrow = addHours(endOfTomorrow(), 2)\n\nexport function HomeForm({ onSubmit }) {\n const [name, setName] = useState('')\n const [error, setError] = useState('')\n const [start, setStart] = useState(today.toISOString())\n const [end, setEnd] = useState(tomorrow.toISOString())\n const [loading, setLoading] = useState(false)\n\n async function submit() {\n const [date_start, date_end] = formatStartEnd(start, end)\n const optional = name\n ? {\n id: stringToSlug(name),\n home_name: name,\n }\n : {}\n\n if (new Date(date_start) >= new Date(date_end)) {\n setError('The end date must be greater than the start date.')\n return\n }\n\n setError('')\n setLoading(true)\n await onSubmit({\n ...optional,\n '@type': 'Home',\n date_start,\n date_end,\n sections: defaultHomeSections,\n })\n setLoading(false)\n }\n\n return (\n
\n

Add Home content

\n {error && {error}}\n \n \n setStart(e.target.value)}\n />\n setEnd(e.target.value)}\n />\n\n
\n \n
\n \n )\n}\n","import React, { useState } from 'react'\nimport { Input, Form, stringToSlug, Button } from '@guillotinaweb/react-gmi'\nimport { setLangs } from '../../consts'\nimport { useLocation } from 'wouter'\n\nfunction fixSlugs(slugs) {\n return Object.entries(slugs).reduce((newSlugs, [lang, slug]) => {\n newSlugs[lang] = slug\n if (slug.startsWith('/')) {\n if (lang && !slug.startsWith(`/${lang}/`))\n newSlugs[lang] = slug.replace('/', `/${lang}/`)\n if (!newSlugs[lang].endsWith('/')) newSlugs[lang] += '/'\n newSlugs[lang] = newSlugs[lang].split('/').map(stringToSlug).join('/')\n } else {\n newSlugs[lang] = stringToSlug(newSlugs[lang])\n }\n return newSlugs\n }, {})\n}\n\nexport function LandingForm({ onSubmit }) {\n const [loading, setLoading] = useState(false)\n const [slug, setSlug] = useState(setLangs(''))\n const setSlugByLang = (lang) => (v) =>\n setSlug((n) => ({\n ...n,\n [lang]: v.startsWith('/')\n ? v.split('/').map(stringToSlug).join('/')\n : stringToSlug(v),\n }))\n const inputs = Object.keys(slug)\n const [, navigate] = useLocation()\n\n async function submit() {\n setLoading(true)\n const fixedSlugs = fixSlugs(slug)\n const id = stringToSlug(fixedSlugs.es).replace(/(^-|-$)/g, '')\n\n await onSubmit({\n '@type': 'Landing',\n template: 'landing',\n description: setLangs(''),\n id,\n products: [],\n for_langs: [],\n slug: fixedSlugs,\n title: slug,\n })\n setLoading(false)\n navigate(`/?path=/landings/${id}/`)\n }\n\n return (\n
\n

Add new Landing

\n\n {inputs.map((lang) => (\n \n ))}\n\n
\n \n
\n \n )\n}\n","import React, { useState } from 'react'\nimport addHours from 'date-fns/addHours'\nimport endOfTomorrow from 'date-fns/endOfTomorrow'\nimport { useLocation } from 'wouter'\nimport * as dayjs from 'dayjs'\n\nimport { DatePicker } from '../../common/date'\nimport { Form, Button, Input, stringToSlug } from '@guillotinaweb/react-gmi'\nimport { setLangs, LANGS, SELLING_COUNTRIES } from '../../consts'\nimport { toISOStringWithTimezone } from '../../utils'\nimport { Switch } from 'antd'\nimport { ProductSelector } from '../../components/product-selector'\nimport { getProductMask } from '../../utils'\n\nconst tomorrow = addHours(endOfTomorrow(), 2)\n\nexport function NewsletterForm({ onSubmit }) {\n const [id, setId] = useState('')\n const [campaign, setCampaign] = useState('')\n const [date, setDate] = useState(tomorrow.toISOString())\n const [loading, setLoading] = useState(false)\n const [productDisplay, setProductDisplay] = useState(false)\n const [product, setProduct] = useState()\n const [, navigate] = useLocation()\n const dateString = dayjs(date).format('D_MM_YY_')\n\n async function submit() {\n setLoading(true)\n\n await onSubmit({\n '@type': 'Newsletter',\n id: dateString + id,\n subject: setLangs(''),\n title: campaign,\n contenido:\n product?.length > 0 && productDisplay\n ? await buildProductContent(product[0])\n : [],\n schedule_at: date,\n sendto: {\n langs: LANGS,\n countries: SELLING_COUNTRIES,\n },\n })\n setLoading(false)\n navigate(`/?path=/newsletters/${dateString + id}/`)\n }\n\n return (\n
\n

Add Newsletter

\n\n \n
\n
\n \n
\n
\n setId(stringToSlug(v))}\n value={id}\n />\n
\n
\n \n \n\n setDate(toISOStringWithTimezone(e.target.value))}\n />\n\n
\n \n\n {productDisplay && (\n \n )}\n\n
\n \n
\n \n )\n}\n\nfunction weekday(lang) {\n const formatter = Intl.DateTimeFormat(lang, {\n weekday: 'long',\n year: 'numeric',\n month: 'long',\n day: 'numeric',\n })\n return formatter.format(new Date())\n}\n\nasync function buildProductContent(product_id) {\n const prod = await getProduct(product_id)\n const option = prod.opciones[0]\n const data = { id: prod.id, type: prod.tipo }\n\n let content = [\n {\n id_tipo: 'h1',\n es: prod.lema?.es || '',\n fr: prod.lema?.fr || '',\n de: prod.lema?.de || '',\n it: prod.lema?.it || '',\n en: prod.lema?.en || '',\n },\n {\n id_tipo: 'bd',\n product_kind: 'full',\n referencia: option.referencia,\n bg_color_img: '#e9edeb',\n bg_color_product: '#e9edeb',\n alt: setLangs(''),\n image_src: setLangs(''),\n product_side: 'left',\n },\n {\n id_tipo: 'h2',\n es: '',\n fr: '',\n de: '',\n it: '',\n en: '',\n },\n {\n id_tipo: 'p',\n es: prod.description?.es || '',\n fr: prod.description?.fr || '',\n de: prod.description?.de || '',\n it: prod.description?.it || '',\n en: prod.description?.en || '',\n },\n {\n id_tipo: 'h2',\n es: prod.otras_props?.a_que_sabe?.es ? '¿A qué sabe este vino?' : '',\n fr: prod.otras_props?.a_que_sabe?.fr\n ? 'Quel est le goût de ce vin ?'\n : '',\n de: prod.otras_props?.a_que_sabe?.de ? 'Wie schmeckt dieser Wein?' : '',\n it: prod.otras_props?.a_que_sabe?.it ? 'Che sapore ha questo vino?' : '',\n en: prod.otras_props?.a_que_sabe?.en\n ? 'What does this wine taste like?'\n : '',\n },\n {\n id_tipo: 'p',\n es: prod.otras_props?.a_que_sabe?.es || '',\n fr: prod.otras_props?.a_que_sabe?.fr || '',\n de: prod.otras_props?.a_que_sabe?.de || '',\n it: prod.otras_props?.a_que_sabe?.it || '',\n en: prod.otras_props?.a_que_sabe?.en || '',\n },\n {\n id_tipo: 'h2',\n es: '',\n fr: '',\n de: '',\n it: '',\n en: '',\n },\n {\n id_tipo: 'tri_down',\n text: {\n es: '¡Solo hoy en oferta!',\n fr: \"En promotion aujourd'hui seulement !\",\n de: 'Nur heute im Angebot!',\n it: 'Solo oggi in offerta!',\n en: 'On offer today only!',\n },\n path: {\n es: getProductMask(data, 'es'),\n fr: getProductMask(data, 'fr'),\n de: getProductMask(data, 'de'),\n it: getProductMask(data, 'it'),\n en: getProductMask(data, 'en'),\n },\n btn_text: {\n es: 'COMPRAR',\n fr: 'ACHETER',\n de: 'KAUFEN',\n it: 'ACQUISTA',\n en: 'BUY',\n },\n },\n {\n id_tipo: 'w',\n es: `Oferta válida solo hoy, ${weekday(\n 'es'\n )}, o hasta agotar existencias.`,\n fr: `Offre valable uniquement aujourd'hui, ${weekday(\n 'fr'\n )}, ou jusqu'à épuisement des stocks.`,\n de: `Angebot gültig nur heute, ${weekday(\n 'de'\n )} oder solange der Vorrat reicht.`,\n it: `Offerta valida solo oggi, ${weekday(\n 'it'\n )}, o ad esaurimento scorte.`,\n en: `Offer valid only today, ${weekday('en')}, or while stocks last.`,\n },\n ]\n return content\n}\n\nasync function getProduct(group) {\n const resp = await fetch(`/db/guillotina/@product?id=${group}`)\n const prod = await resp.json()\n return prod.product\n}\n","import React, { useState } from 'react'\nimport { Input, Form, stringToSlug, Button } from '@guillotinaweb/react-gmi'\nimport { LANGS, setLangs } from '../../consts'\nimport { useLocation } from 'wouter'\n\nexport function PackForm({ onSubmit }) {\n const [loading, setLoading] = useState(false)\n const [, navigate] = useLocation()\n const [id, setId] = useState('')\n const [ref, setRef] = useState('')\n const [name, setName] = useState(setLangs(''))\n\n async function submit() {\n setLoading(true)\n\n const state = {\n '@type': 'Producto',\n id,\n nombre: name.es,\n tipo: '/pk',\n referencia_pack: ref,\n nombres: LANGS.reduce(\n (o, lang) => ({\n ...o,\n [lang]: {\n nombre: name[lang],\n },\n }),\n {}\n ),\n }\n\n await onSubmit(state)\n setLoading(false)\n navigate(`/?path=/packs/${id}/`)\n }\n\n return (\n
\n

Add new Pack

\n\n setName(setLangs(n))}\n />\n\n setId(stringToSlug(n))}\n />\n\n setRef(stringToSlug(n))}\n />\n
\n \n
\n \n )\n}\n","import React, { useEffect, useState } from 'react'\nimport { Select } from 'antd'\nimport { getLang } from '../utils'\n\nexport function CellarSelector({ value, onChange }) {\n const [items, setItems] = useState()\n\n useEffect(() => {\n init()\n }, [])\n async function init() {\n const res = await searchCellars()\n setItems(res)\n }\n\n if (!items) return null\n\n return (\n \n option.children.toLowerCase().indexOf(input.toLowerCase()) >= 0\n }\n onChange={onChange}\n >\n {items.map((item) => (\n \n {item.name}\n \n ))}\n \n )\n}\n\nexport async function searchCellars() {\n const res = await fetch(`/db/guillotina/@list-all-bodegas`).then((res) =>\n res.json()\n )\n return res?.map?.((item) => ({ id: item.id, name: item.nombre }))\n}\n","import React from 'react'\nimport { Button, Affix, Alert } from 'antd'\nimport { Loading } from '@guillotinaweb/react-gmi'\nimport { LeftOutlined } from '@ant-design/icons'\n\nimport 'antd/dist/antd.css'\n\nexport function ContentLayout({\n title,\n displayBackBtn,\n buttonLabel,\n buttonAction,\n children,\n loading,\n error,\n className = '',\n}) {\n return (\n \n \n
\n
\n

{title}

\n
\n {buttonLabel && (\n
\n {displayBackBtn && (\n <>\n \n   \n \n )}\n \n
\n )}\n
\n
\n {(() => {\n if (loading) return \n if (error) return \n return children\n })()}\n \n )\n}\n\nexport function Error({ message }) {\n return \n}\n","import React from 'react'\n\nexport function Label({ label, children }) {\n return (\n \n )\n}\n","import React, { useEffect, useState } from 'react'\nimport { Select } from 'antd'\nimport unionBy from 'lodash/unionBy'\n\nexport function SelectOrphanOptions({ value, onChange }) {\n const [items, setItems] = useState([])\n\n useEffect(() => {\n init()\n }, [])\n async function init() {\n const res = await searchOrphanOptions()\n setItems(res)\n }\n\n function onChangeOption(id) {\n // Necessary to return the name and the type\n onChange(items.find((item) => item.id === id))\n }\n\n if (!items) return null\n\n return (\n \n option.children.toLowerCase().indexOf(input.toLowerCase()) >= 0\n }\n onChange={onChangeOption}\n >\n {items.map((item) => (\n \n {item.name}\n \n ))}\n \n )\n}\n\nexport async function searchOrphanOptions() {\n const res = await fetch('/db/guillotina/@list-orphan-opciones').then((res) =>\n res.json()\n )\n return unionBy(\n res?.products?.map?.((item) => ({\n ...item,\n // id and name are required by antd\n id: item.grupo,\n name: item.nombre,\n })),\n 'id'\n )\n}\n","import React, { useEffect } from 'react'\nimport createStore from 'teaful'\nimport { Form, Button, Input } from '@guillotinaweb/react-gmi'\nimport { InputNumber, message, Select } from 'antd'\n\nimport { BOTTLE_CAPACITY_LITERS, setLangs } from '../../consts'\nimport { CellarSelector } from '../../components/cellar-selector'\nimport { ContentLayout } from '../../common/content-layout'\nimport { GrapesSelector } from '../../components/grapes-selector'\nimport { I18NField } from '../../components/i18nfield'\nimport { Label } from '../../components/label'\nimport { ProductName } from '../../components/product-name'\nimport { RegionSelector } from '../../components/region-selector'\nimport { SelectOrphanOptions } from '../../components/select-orphan-options'\nimport { SelectTaxonomy } from '../../components/select-taxonomy'\nimport { getShopCountryHeaders } from '../../utils'\n\nconst NAME_BANNER_LENGTH = 40\nconst NAME_SHORT_LENGTH = 30\n\nconst initProduct = {\n '@type': 'Producto',\n nombres: setLangs({\n nombre: '',\n nombre_corto: '',\n nombre_banner: '',\n }),\n}\n\nconst initOptionBO = {\n capacidad: '75',\n}\n\nexport const { useStore: useState, getStore: getState } = createStore()\nexport const { useStore: useProduct, getStore: getProduct } = createStore(\n initProduct\n)\nexport const { useStore: useOptionBO, getStore: getOptionBO } = createStore(\n initOptionBO\n)\nconst [, setState] = getState()\nconst [, setProduct] = getProduct()\nconst [, setOptionBO] = getOptionBO()\n\nfunction resetStores() {\n setProduct(initProduct)\n setOptionBO(initOptionBO)\n setState({ loading: false })\n}\n\nfunction create() {\n const [state] = getState()\n const [producto] = getProduct()\n const [optionBO] = getOptionBO()\n const token = localStorage.getItem('token')\n const options = { ...optionBO }\n\n if (state.loading) return\n if (!producto.id) return message.warning('Selecciona un producto')\n if (!producto.tipo) return message.warning('Selecciona el tipo')\n if (!state.cellar) return message.warning('Selecciona una bodega')\n if (!options.anyada) options.anyada = null\n\n setState((s) => ({ ...s, loading: true }))\n fetch(\n `/db/guillotina/bodegas/${state.cellar}/@create-vino-destilado-from-opcion`,\n {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n authorization: token ? `Bearer ${token}` : '',\n ...getShopCountryHeaders(),\n },\n body: JSON.stringify({ producto, ...options }),\n }\n )\n .then(async (r) => {\n if (r.status >= 300) {\n const error = await r.json()\n throw new Error(error.message)\n }\n window.location.href = `/-admin?path=/bodegas/${state.cellar}/${producto.id}/`\n })\n .catch((e) => {\n message.error(\n `Error: No se ha podido dar de alta el producto. ${e.message}`\n )\n setState((s) => ({ ...s, loading: false }))\n })\n}\n\nexport function CreateProductContent() {\n const [loading] = useState.loading(false)\n const [name] = useProduct.nombre()\n\n useEffect(() => () => resetStores(), [])\n\n return (\n \n
\n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n
\n )\n}\n\nfunction OrhpanOptions() {\n const [productId, setProductId] = useProduct.id()\n\n return (\n <>\n \n {\n const [, setNames] = getProduct.nombres()\n const [, setParentType] = getState.parentType()\n const nombre = removeVintageAndFormat(name)\n setProductId(id)\n setParentType(type)\n setOptionBO((options) => ({ ...options, tienda, referencia }))\n setNames(\n setLangs({\n nombre,\n nombre_corto: nombre.slice(0, NAME_SHORT_LENGTH),\n nombre_banner: nombre.slice(0, NAME_BANNER_LENGTH),\n })\n )\n }}\n />\n \n )\n}\n\nfunction ProductNewName() {\n const [productId] = useProduct.id()\n const [, setName] = useProduct.nombre()\n const [names, setNames] = useProduct.nombres()\n\n useEffect(() => {\n setName(names.es.nombre)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [names.es.nombre])\n\n return (\n <>\n \n null}>\n {(lang) => (\n \n \n \n \n \n )}\n \n \n )\n}\n\nfunction Cellar() {\n const [cellar, setCellar] = useState.cellar()\n\n return (\n <>\n \n \n \n )\n}\n\nfunction Type() {\n const [parentType] = useState.parentType()\n const [type, setType] = useProduct.tipo()\n\n return (\n <>\n \n \n \n )\n}\n\nfunction Region() {\n const [region, setRegion] = useProduct.region.tree()\n\n return (\n <>\n \n ({\n id: m.path.replace('/zonas', ''),\n name: m.title || m.id,\n })}\n value={region}\n onChange={setRegion}\n />\n \n )\n}\n\nfunction Reference() {\n const [ref, setRef] = useOptionBO.referencia()\n return (\n <>\n \n \n \n )\n}\n\nfunction Vintage() {\n const [vintage, setVintage] = useOptionBO.anyada()\n return (\n <>\n \n \n \n )\n}\n\nfunction Capacity() {\n const [capacity, setCapacity] = useOptionBO.capacidad()\n return (\n <>\n \n \n {Object.keys(BOTTLE_CAPACITY_LITERS).map((capacity) => (\n \n {capacity}\n \n ))}\n \n \n )\n}\n\nfunction Graduation() {\n const [grad, setGrad] = useOptionBO.graduacion()\n return (\n <>\n \n \n \n )\n}\n\nfunction Grape() {\n const [grapes, setGrapes] = useProduct.tags_by_category.uva()\n return (\n <>\n \n \n setGrapes(\n ids.map((id) => {\n const grape = (grapes || []).find((g) => g.id === id)\n if (!grape) return { id, otros_datos: { porcentaje: 0 } }\n return grape\n })\n )\n }\n onEditPercentage={setGrapes}\n />\n \n )\n}\n\nfunction removeVintageAndFormat(name) {\n return name\n .replace(/\\[(.*)\\]/, '')\n .replace(/\\((.*)\\)/, '')\n .replace(/(1|2)\\d\\d\\d/, '')\n .trim()\n}\n","import React from 'react'\nimport { Input } from '@guillotinaweb/react-gmi'\nimport { Form } from '@guillotinaweb/react-gmi'\nimport { useSetState } from 'react-use'\nimport { stringToSlug } from '@guillotinaweb/react-gmi'\nimport { Loading } from '@guillotinaweb/react-gmi'\nimport { useTraversal } from '@guillotinaweb/react-gmi'\nimport { useLocation } from '@guillotinaweb/react-gmi'\nimport { Select } from '@guillotinaweb/react-gmi'\nimport { I18NField } from '../../components/i18nfield'\nimport { ErrorZone } from '../../components/error_zone'\nimport { LANGS } from '../../consts'\nimport { sleep } from '../../utils'\nimport { Button } from '@guillotinaweb/react-gmi'\n\nimport { useState } from 'react'\n\nconst MESSAGES = {\n tag_type_required: 'Debes especificar un tipo de tag',\n uva_nombre_required: 'El campo nombre es obligatorio',\n}\n\nconst processTypes = (data) => {\n return data.member.map((item) => ({\n text: item.title || item.id,\n value: item.path,\n }))\n}\n\nconst prepareData = (data) => {\n const result = {\n slug: {},\n ...data,\n '@type': 'Tag',\n }\n\n if (result.type !== '/tags/uva') {\n delete result.id\n }\n\n LANGS.map((lang) => {\n if (result.localized_text[lang] === '') {\n result.localized_text[lang] = result.localized_text.es\n }\n // patch slugs\n result.slug[lang] = stringToSlug(result.localized_text[lang])\n })\n return result\n}\n\nexport function TagForm() {\n const Ctx = useTraversal()\n const [, navigate] = useLocation()\n const [tipos, setTipos] = useState(undefined)\n const [state, setState] = useSetState({ type: '', localized_text: {} })\n const [error, setError] = useState(undefined)\n const [loading, setLoading] = useState(false)\n\n React.useEffect(() => {\n // Get current tag from context, removing leading, and trail /\n const path = Ctx.path.split('/').slice(1, -1)\n if (path.length >= 2) {\n setState({ type: `/tags/${path[1]}` })\n }\n }, [])\n\n React.useEffect(() => {\n ;(async () => {\n let data = await Ctx.client.getItems('/tags/', 0, 100)\n setTipos(processTypes(data))\n })()\n }, [])\n\n const submit = async () => {\n if (state.type === '') {\n setError('tag_type_required')\n return\n }\n if (!state.localized_text.es || state.localized_text.es === '') {\n setError('uva_nombre_required')\n return\n }\n const { type, ...data } = prepareData(state)\n const path = type\n setLoading(true)\n\n const result = await Ctx.client.post(path + '/', data)\n const response = await result.json()\n if (result.status === 201) {\n await sleep(1000)\n Ctx.flash('Tag creado', 'success')\n Ctx.cancelAction()\n navigate({ path: `${type}/${response['@name']}/` }, true)\n } else if (result.status === 409) {\n setLoading(false)\n setError('An error has ocurred: This ID already exists')\n } else {\n setLoading(false)\n const errorMsg =\n response.error?.message || response.message || result.status\n setError(`Server Error: ${errorMsg}`)\n }\n }\n\n return (\n
\n

Añadir Tag

\n {!tipos && }\n {tipos && (\n \n {error && (\n \n {MESSAGES[error] || error}\n \n )}\n
\n \n setState({ type: ev.target.value })}\n classWrap={'is-small'}\n />\n
\n {\n const id = ev.es !== '' ? stringToSlug(ev.es).substring(0, 3) : ''\n setState({ localized_text: ev, id: id })\n }}\n />\n\n {state.type === '/tags/uva' && (\n
\n setState({ id: ev })}\n id=\"ID\"\n placeholder=\"id_uva\"\n value={state.id}\n />\n
\n )}\n\n

 

\n
\n \n
\n
\n )}\n \n )\n}\n","import React from 'react'\nimport { Input } from '@guillotinaweb/react-gmi'\nimport { Form } from '@guillotinaweb/react-gmi'\nimport { useSetState } from 'react-use'\nimport { stringToSlug } from '@guillotinaweb/react-gmi'\n\nconst LANGS = ['es', 'en', 'fr', 'de', 'it']\n\nconst initial = {\n nombre: {\n es: '',\n fr: '',\n de: '',\n it: '',\n },\n old_id: '',\n tipo: 'do',\n '@type': 'ZonaGeo',\n id: '',\n}\n\nexport function ZonaForm({ onSubmit, actionName, title }) {\n const [state, setState] = useSetState(initial)\n const [error, setError] = React.useState(undefined)\n\n const submit = (ev) => {\n if (state.id === '' || state.nombre.es === '') {\n setError('Id y Nombre requeridos')\n return\n }\n onSubmit(state)\n }\n\n const setField = (lang) => (value) =>\n setState((st) => ({\n nombre: { ...st.nombre, [lang]: value },\n }))\n\n const setNombreEs = (value) => {\n setState((st) => ({\n id: stringToSlug(value),\n nombre: { ...st.nombre, es: value },\n }))\n }\n\n return (\n
\n {error &&

{error}

}\n\n \n\n {LANGS.slice(1).map((lang) => (\n \n ))}\n\n setState({ id: ev })}\n id=\"id\"\n placeholder=\"ID\"\n value={state.id}\n />\n\n setState({ old_id: ev.target.value })}\n id=\"old_id\"\n placeholder=\"Old Id\"\n value={state.old_id}\n />\n\n
\n \n
\n \n )\n}\n","import React from 'react'\nimport { useTraversal } from '@guillotinaweb/react-gmi'\nimport { useLocation } from '@guillotinaweb/react-gmi'\nimport { getHost } from '../utils'\n\nexport function ProductSummary(props) {\n const Ctx = useTraversal()\n const [, navigate] = useLocation()\n\n return (\n
\n

\n \n {props.tipo}\n \n navigate({ path: props.path + '/' }, true)}\n >\n {props.nombre || props.id}\n \n

\n
\n )\n}\n\nconst DOMAINS = {\n fr: 'vinissimus.fr',\n vinissimus: 'vinissimus.com',\n italvinus: 'italvinus.it',\n}\n\nexport function ProductOpciones({ product }) {\n const gotoProd = (prod) => (ev) => {\n console.log(prod)\n const domain = getHost(DOMAINS[prod.tienda])\n window.open(\n `https://${domain}/administracion/contenidos/edicion_producto.html?id_producto=${prod.referencia}`\n )\n }\n\n const opciones = Object.keys(product.opciones)\n .map((opcion) => product.opciones[opcion])\n .sort((a, b) => (a.anyada > b.anyada ? -1 : 1))\n\n return (\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {opciones.map((opcion, idx) => (\n \n \n \n \n \n \n \n \n \n \n \n ))}\n \n
RefEstadoUltimasPrecioP.IVAProvCap.AñoO
\n \n {opcion.tienda} / {opcion.referencia}\n \n {getEstado(opcion.estado)}{opcion.ultimas_unidades}{opcion.precio_sin_impuestos} €{opcion.precio} €{opcion.proveedor}{opcion.capacidad}{opcion.anyada}\n \n
\n
\n
\n )\n}\n\nconst ESTADOS = {\n selling: 'tag is-success',\n notavaliable: 'tag is-danger',\n new_product: 'tag is-light',\n invalid: 'tag is-warning',\n}\n\nconst getEstado = (estado) => {\n return (\n \n {estado.toUpperCase()}\n \n )\n}\n\nconst OFERTAS = {\n o: 'Oferta',\n}\n\nexport function OfertaViewer({ oferta }) {\n if (!oferta) return null\n return (\n \n \n {OFERTAS[oferta.id_tipo] || oferta.id_tipo}\n \n {oferta.precio_oferta}€\n \n )\n}\n","import React from 'react'\nimport { ProductOpciones } from '../../components/product'\nimport { useTraversal } from '@guillotinaweb/react-gmi'\n\nfunction ProductProperties() {\n const Ctx = useTraversal()\n\n return (\n \n
\n

Opciones

\n \n
\n )\n}\n\nconst props = {\n Buttons: null,\n Panels: ,\n}\n\nexport default props\n","import React, { Fragment } from 'react'\n\nimport { Button } from '@guillotinaweb/react-gmi'\nimport { Loading } from '@guillotinaweb/react-gmi'\nimport { FileUpload } from '@guillotinaweb/react-gmi'\n\nimport { I18NRichText, I18NField } from '../../components/i18nfield'\nimport { Preview } from '../../components/preview'\nimport { ProductSummary } from '../../components/product'\nimport { getMediaUrl, TINYMCE_INIT_UNRESTRICTED } from '../../consts'\n\nconst isEqual = (a, b) => {\n let result = true\n Object.keys(b).forEach((key) => {\n if (a[key] !== b[key]) result = false\n })\n return result\n}\n\nconst Empty = () => null\n\nfunction ImageEditor({ Ctx, modifyContent, field, uploadFieldName }) {\n const [imgLoading, setImgLoading] = React.useState(false)\n\n const uploadFile = async (file) => {\n // @TODO implement some kind of file validation\n setImgLoading(true)\n\n const folder = `tags/${Ctx.context.parent['@name']}`\n const resp = await Ctx.client.upload(\n Ctx.path,\n file,\n folder,\n uploadFieldName\n )\n if (resp.status !== 200) {\n Ctx.flash('error_uploading_file', 'danger')\n } else {\n Ctx.flash('Imagen cabecera subida!', 'success')\n Ctx.refresh()\n }\n setImgLoading(false)\n }\n\n return (\n \n {field && (\n
\n \"\"\n {\n const resp = await Ctx.client.deleteFile(\n Ctx.path,\n uploadFieldName\n )\n if (resp.status !== 200) {\n Ctx.flash('error_deleting_file', 'danger')\n } else {\n Ctx.flash('Imagen borrada', 'success')\n Ctx.refresh()\n }\n }}\n >\n
\n )}\n {modifyContent &&\n (!imgLoading ? (\n \n ) : (\n \n ))}\n
\n )\n}\n\nfunction TagPropView({ Ctx }) {\n const title_text = Ctx.context.title_text || {}\n const localized_text = Ctx.context.localized_text || {}\n const comentario = Ctx.context.comentario || {}\n\n const [isDirty, setDirty] = React.useState(false)\n const [loading, setLoading] = React.useState(false)\n const [state, setState] = React.useState({ localized_text, comentario })\n\n const modifyContent = Ctx.hasPerm('guillotina.ModifyContent')\n\n const onSubmit = async (ev) => {\n ev.preventDefault()\n if (loading) {\n alert('uploading en curso')\n return\n }\n setLoading(true)\n const result = await Ctx.client.patch(Ctx.path, state)\n if (result.status === 204) {\n Ctx.flash('Tag actualizado', 'success')\n } else {\n Ctx.flash('Fallo al actualizar el tag', 'danger')\n }\n setLoading(false)\n }\n\n const isUva = Ctx.context.parent['@name'] === 'uva'\n\n return (\n
\n
\n {isUva && (\n \n
\n \n
\n )}\n
\n \n

Imágenes

\n
\n {isUva ? (\n \n

Imágen de la uva

\n \n
\n

Infografia

\n \n {(lang) => (\n \n )}\n \n
\n ) : (\n \n \n \n )}\n
\n
\n
\n {\n if (!isEqual(localized_text, values)) {\n setDirty(true)\n }\n setState({ localized_text: values })\n }}\n modifyContent={modifyContent}\n />\n {\n if (!isEqual(comentario, values)) {\n setDirty(true)\n }\n setState({ comentario: values })\n }}\n modifyContent={modifyContent}\n editorProps={{ init: TINYMCE_INIT_UNRESTRICTED }}\n />\n \n Guardar\n \n \n
\n )\n}\n\nexport function RelatedProducts({ Ctx }) {\n const [opened, setOpened] = React.useState(false)\n const [loading, setLoading] = React.useState(true)\n const [products, setProducts] = React.useState([])\n\n React.useEffect(() => {\n ;(async () => {\n if (opened === false) return\n setLoading(true)\n const result = await Ctx.client.esQuery(\n getTagQuery(Ctx.context['@name'], Ctx.context.parent['@name'])\n )\n const data = await result.json()\n setProducts(data.member)\n setLoading(false)\n })()\n }, [opened])\n\n return (\n
\n
\n

Productos

\n

\n {!opened && (\n {\n setOpened(!opened)\n }}\n >\n Ver Productos\n \n )}\n {opened && (\n {\n setOpened(!opened)\n }}\n >\n Productos: {products.length}\n \n )}\n

\n
\n
\n {opened && (\n \n {loading && }\n {products.length > 0 &&\n products.map((item) => )}\n
\n )}\n
\n \n )\n}\n\nconst getTagQuery = (id, category) => ({\n query: {\n bool: {\n filter: [\n { term: { type_name: 'Producto' } },\n {\n nested: {\n path: 'tags',\n query: {\n bool: {\n filter: [\n { term: { 'tags.id': `${id}` } },\n { term: { 'tags.category': category } },\n ],\n },\n },\n },\n },\n ],\n },\n },\n _source: ['id', 'path', 'nombre', 'tipo', 'title'],\n size: 200,\n})\n\nconst props = {\n Buttons: null,\n Panels: ,\n}\n\nexport default props\n","import { useCallback, useState } from 'react'\n\nconst useSetState = (initialState) => {\n const [state, set] = useState(initialState)\n const setState = useCallback(\n (patch) => {\n set((prevState) =>\n Object.assign(\n {},\n prevState,\n patch instanceof Function ? patch(prevState) : patch\n )\n )\n },\n [set]\n )\n\n return [state, setState]\n}\n\nexport default useSetState\n","import React, { useState } from 'react'\n\nimport {\n AllItemsCheckbox,\n ItemsActionsDropdown,\n ItemsActionsProvider,\n Pagination,\n RItem,\n SearchLabels,\n buildQs,\n parser,\n useConfig,\n useLocation,\n useTraversal,\n} from '@guillotinaweb/react-gmi'\nimport { useEffect } from 'react'\nimport useSetState from '../../common/useSetState'\n\nconst initialState = {\n page: 0,\n items: [],\n loading: true,\n total: 0,\n}\n\nexport function HomeItems(props) {\n const [location, setLocation] = useLocation()\n const { PageSize } = useConfig()\n\n const Ctx = useTraversal()\n const [state, setState] = useSetState(initialState)\n\n const { items, loading, total } = state\n const [sortedItems, setSortedItems] = useState([])\n\n const columns = Ctx.client.getItemsColumn(items, Ctx.path)\n\n let search = location.get('q')\n let page\n\n try {\n page = parseInt(location.get('page')) || 0\n } catch {\n page = 0\n }\n\n let searchParsed = undefined\n if (search && search !== '') {\n searchParsed = parser(search)\n }\n\n useEffect(() => {\n if (Ctx.state.loading) return\n ;(async () => {\n let data\n setState({ loading: true, total: Ctx.context.length })\n if (search) {\n let qs = buildQs(searchParsed)\n\n data = await Ctx.client.search(\n Ctx.path,\n qs,\n false,\n false,\n page * PageSize,\n PageSize\n )\n } else {\n data = await Ctx.client.getItems(Ctx.path, page * PageSize, PageSize)\n }\n setState({\n items: data.member,\n loading: false,\n total: data.items_count,\n })\n setSortedItems(data.member)\n })()\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [search, Ctx.state.refresh, page])\n\n const doPaginate = (page) => {\n setLocation({ page: page })\n }\n\n return (\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n {loading &&
}\n {!loading && (\n \n \n \n \n {columns.map((i) => (\n \n ))}\n \n \n \n \n {sortedItems &&\n sortedItems.map((item) => {\n return (\n \n )\n })}\n {sortedItems && sortedItems.length === 0 && (\n \n \n \n )}\n \n
\n \n \n {i.label}\n  
\n Anything here!\n
\n )}\n
\n \n
\n
\n )\n}\n","import React, { useEffect, useRef, useState } from 'react'\nimport { Select, Spin } from 'antd'\n\nexport function SelectLandings({\n value: selectedLandings,\n template,\n onChange,\n}) {\n const timeout = useRef()\n const [loading, setLoading] = useState(false)\n const [landings, setLandings] = useState([])\n const noResults = !loading && landings.length === 0 ? 'No results' : ''\n const loadingMsg = loading ? : ''\n\n async function searchLandings(query) {\n setLoading(true)\n setLandings(await fetchLanding({ query, template }))\n setLoading(false)\n }\n\n // Clear debounce fn on unmount\n useEffect(() => () => clearTimeout(timeout.current), [])\n\n return (\n {\n clearTimeout(timeout.current)\n timeout.current = setTimeout(() => searchLandings(text), 320)\n }}\n style={{ width: '100%' }}\n onChange={onChange}\n >\n {landings.map((s) => {\n return (\n \n {s.title}\n \n {' '}\n - {s.id}\n \n \n )\n })}\n \n )\n}\n\nconst headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n 'x-country': 'es',\n 'x-shop': 'vinissimus',\n}\n\nasync function fetchLanding({ query, template }) {\n const body = {\n query: {\n bool: {\n must: [\n {\n prefix: {\n path: '/landings/',\n },\n },\n {\n range: {\n depth: {\n gte: 3,\n },\n },\n },\n ],\n should: [\n {\n match: {\n title: {\n query,\n fuzziness: 'AUTO',\n max_expansions: 15,\n },\n },\n },\n {\n match_phrase_prefix: {\n title: {\n query,\n boost: 2,\n },\n },\n },\n ],\n minimum_should_match: 1,\n },\n },\n from: 0,\n size: 15,\n }\n\n if (template) {\n body.query.bool.must.push({\n match: {\n template: {\n query: template,\n },\n },\n })\n }\n\n const res = await fetch(`/db/guillotina/@search`, {\n method: 'POST',\n headers,\n body: JSON.stringify(body),\n })\n const result = await res.json()\n\n return result.member\n}\n","import React, { memo } from 'react'\nimport { Select } from '@guillotinaweb/react-gmi'\nimport { I18NField } from '../../../components/i18nfield'\nimport { frontThemes } from '../../../consts'\nimport { SelectLandings } from '../../../components/select-landing'\n\nconst Empty = () => null\n\nexport const BlogPostsForm = memo(({ selected, edit, langs }) => {\n return (\n \n {(lang) => (\n <>\n \n \n edit('posts_ids', {\n ...selected.posts_ids,\n [lang]: ids,\n })\n }\n />\n\n \n ({ label: k, value: k }))}\n value={selected.theme}\n onChange={(e) => edit('theme', e.target.value)}\n />\n \n )}\n \n )\n})\n","import React, { useState } from 'react'\nimport { Textarea } from '@guillotinaweb/react-gmi'\n\nconst errorStyles = {\n fontSize: 12,\n textAlign: 'right',\n color: 'red',\n marginBottom: 10,\n}\n\nexport function JSONEditor({ value, onChange }) {\n const [error, setError] = useState(false)\n\n const _onChange = (e, v = null) => {\n setError(e)\n onChange(e, v)\n }\n\n return (\n <>\n {\n try {\n const value = JSON.parse(v)\n typeof value === 'object'\n ? _onChange(false, value)\n : _onChange(true)\n } catch (e) {\n _onChange(true)\n }\n }}\n />\n {error &&
JSON inválido
}\n \n )\n}\n","import React, { useState } from 'react'\nimport { Button, useTraversal } from '@guillotinaweb/react-gmi'\nimport { message } from 'antd'\nimport { JSONEditor } from './json_editor'\n\nexport function QueryProducts({ title, query, onChange }) {\n const Ctx = useTraversal()\n const [jsonError, setJsonError] = useState(false)\n const [queryResults, setQueryResults] = useState()\n\n async function test_query() {\n const q = { ...query }\n // transform i18n fields\n for (let field in q)\n if (field.startsWith('%') && field.endsWith('%'))\n q[field.substring(1, field.length - 1)] = q[field]['es']\n const [status, json] = await Ctx.client.getProducts(q, 'es')\n if (status === 200) setQueryResults(json)\n else message.error('error: ' + JSON.stringify(json))\n }\n\n return (\n <>\n {title && }\n {\n setJsonError(error)\n if (!error) onChange(v)\n }}\n />\n \n
\n        {queryResults &&\n          queryResults.search.map((p) => `${p.opciones[0].id} - ${p.nombre}\\n`)}\n      
\n \n )\n}\n","import { EditOutlined } from '@ant-design/icons'\nimport { Switch } from 'antd'\nimport React, { useState } from 'react'\nimport { ProductSelector } from './product-selector'\nimport { QueryProducts } from './query-products'\n\nexport default function ProductSelectorOrQuery({ id, query = {}, setQuery }) {\n const [editQuery, setEditQuery] = useState(\n () => Object.keys(query).length !== 1 || !Array.isArray(query.groups)\n )\n\n function changeMode() {\n setEditQuery((v) => !v)\n }\n\n return (\n
\n \n \n }\n unCheckedChildren={}\n onChange={changeMode}\n />\n
\n {editQuery ? (\n \n ) : (\n setQuery({ ...query, groups })}\n />\n )}\n \n )\n}\n","import React, { memo } from 'react'\nimport { Input, Select } from '@guillotinaweb/react-gmi'\nimport ProductSelectorOrQuery from '../../../components/product-selector-or-query'\nimport { I18NField } from '../../../components/i18nfield'\nimport { catalogs } from '../../../consts'\nimport { frontThemes } from '../../../consts'\n\nconst Empty = () => null\n\nexport const CatalogForm = memo(({ selected, edit, langs }) => {\n const hasButton =\n selected.id === 'special' || !(selected.type || '').startsWith('Carousel')\n\n return (\n \n {(lang) => (\n <>\n \n edit('title', { ...selected.title, [lang]: v })}\n />\n {selected.id === 'special' && (\n <>\n \n \n edit('subtitle', { ...selected.subtitle, [lang]: v })\n }\n />\n \n )}\n\n {hasButton && (\n <>\n \n \n edit('buttonText', { ...selected.buttonText, [lang]: v })\n }\n />\n \n )}\n {selected.id === 'special' && (\n <>\n \n \n edit('buttonLink', { ...selected.buttonLink, [lang]: v })\n }\n />\n \n )}\n \n ({\n label: k,\n value: k,\n }))}\n value={selected.type}\n onChange={(e) => edit('type', e.target.value)}\n />\n \n ({ label: k, value: k }))}\n value={selected.theme}\n onChange={(e) => edit('theme', e.target.value)}\n />\n {selected.id === 'special' && (\n edit('query', query)}\n />\n )}\n \n )}\n \n )\n})\n","import React from 'react'\n\nconst editable = ['product-', 'offer-banner', 'html', 'blog-posts']\n\nexport function HomeSection({ id, onEdit, custom, lang = 'es', edit = true }) {\n const isCatalog = custom && custom.type\n const { title = {} } = custom || {}\n const hiddenClass = custom.hidden ? 'hidden' : ''\n const editClass =\n (editable.some((t) => id?.includes(t)) || isCatalog) && edit\n ? 'display-edit'\n : ''\n\n const className = `home-section ${editClass} ${hiddenClass}`\n\n function onClick(e) {\n const isDiv = e.target instanceof HTMLDivElement\n if (isDiv && onEdit) onEdit(id)\n }\n\n const sectionLangs = custom.for_langs?.length ? (\n \n {custom.for_langs.join(', ').toUpperCase()}\n \n ) : null\n\n if (isCatalog) {\n return (\n
\n {id} {title && ` - Title: ${title[lang]}`}{' '}\n {custom.query?.groups && `- Products: ${custom.query.groups.length}`}\n {sectionLangs}\n
\n )\n }\n\n return (\n
\n {id}\n {sectionLangs}\n
\n )\n}\n","import {\n Checkbox,\n FileUpload,\n Input,\n Select,\n useTraversal,\n} from '@guillotinaweb/react-gmi'\nimport { Switch, Tabs, message } from 'antd'\nimport React, { memo, useState } from 'react'\nimport { I18NField } from '../../../components/i18nfield'\nimport { ProductSelector } from '../../../components/product-selector'\nimport { buttonThemes, frontThemes, getCdnUrl, setLangs } from '../../../consts'\n\nconst Empty = () => null\n\nexport const ImageForm = memo(({ selected, edit, langs, id }) => {\n const Ctx = useTraversal()\n const [uploading, setUploading] = useState(false)\n const [images, setImages] = useState(setLangs([]))\n\n function onUploadBanner(lang) {\n return async (file) => {\n setUploading(true)\n const filename = `home/${Ctx.state.context['@name']}`\n const res = await Ctx.client.upload(Ctx.path, file, filename)\n\n if (res.status >= 300) {\n message.error('Error uploading the image')\n setUploading(false)\n return\n }\n\n const { path } = await res.json()\n const src = `/${path}`\n const image = selected.image || {}\n const isFirstImage = !Object.values(image).find((v) => {\n return v\n })\n\n edit('image', isFirstImage ? setLangs(src) : { ...image, [lang]: src })\n setUploading(false)\n }\n }\n\n function onUploadBannerMultipleImage(lang) {\n return async (file) => {\n setUploading(true)\n const filename = `home/${Ctx.state.context['@name']}`\n const res = await Ctx.client.upload(Ctx.path, file, filename)\n\n if (res.status >= 300) {\n message.error('Error uploading the image')\n setUploading(false)\n return\n }\n\n const { path } = await res.json()\n const src = `/${path}`\n const foldersLanguage = setLangs(src)\n const allImages = { ...selected.images } || images\n if (lang === langs[0]) {\n Object.keys(allImages).map(\n (locale) =>\n (allImages[locale] = [\n ...allImages[locale],\n foldersLanguage[locale],\n ])\n )\n } else {\n allImages[lang] = [...allImages[lang], foldersLanguage[lang]]\n }\n setImages(allImages)\n edit('images', allImages)\n setUploading(false)\n }\n }\n\n const onChangeMultipleLinks = (value, lang, imageSrc) => {\n const allLinks = { ...(selected.buttonLink || setLangs([])) }\n const allImages = { ...selected.images }\n const imagesList = allImages[lang]\n const index = imagesList.indexOf(imageSrc)\n\n allLinks[lang][index] = value\n\n edit('buttonLink', allLinks)\n }\n\n return (\n \n {(lang) => (\n \n \n {id === 'image' ? (\n <>\n \n \n \n ) : (\n <>\n \n \n \n )}\n {id === 'image' && selected.image?.[lang] ? (\n \n ) : (\n selected.images?.[lang].length !== 0 &&\n selected.images?.[lang].map((image, index) => {\n return (\n
\n {\n const images = selected.images\n images[lang].splice(index, 1)\n edit('images', images)\n }}\n className=\"button-delete-image\"\n >\n X\n \n \"Banner\n
\n )\n })\n )}\n \n ({ label: k, value: k }))}\n value={selected.theme}\n onChange={(e) => edit('theme', e.target.value)}\n />\n
\n \n {selected.id !== 'image-slider' && (\n <>\n \n \n edit('title', { ...selected.title, [lang]: v })\n }\n />\n \n \n edit('textBanner', { ...selected.textBanner, [lang]: v })\n }\n />\n edit('textBigger', v)}\n />\n \n \n edit('buttonText', { ...selected.buttonText, [lang]: v })\n }\n />\n \n ({ label: k, value: k }))}\n value={selected.buttonTheme}\n onChange={(e) => edit('buttonTheme', e.target.value)}\n />\n \n )}\n\n \n {id === 'image' ? (\n \n edit('buttonLink', { ...selected.buttonLink, [lang]: v })\n }\n />\n ) : (\n selected.images[lang] &&\n selected.images[lang].map((imageSrc, index) => {\n return (\n
\n \n {\n onChangeMultipleLinks(v, lang, imageSrc)\n }}\n />\n
\n )\n })\n )}\n
\n {selected.id === 'product-image' && (\n \n \n {\n if (groups.length > 4) {\n return message.error(\n 'This section can show a maximum of 4 products.'\n )\n }\n edit('query', { groups })\n }}\n />\n \n )}\n \n
\n \n ({\n label: k,\n value: k,\n }))}\n value={selected.filter ? selected.filter : 'no filter'}\n onChange={(e) => {\n const v = e.target.value\n edit('filter', v === 'no filter' ? undefined : v)\n }}\n />\n {selected.id === 'image' && (\n <>\n \n edit('imageRepeat', v)}\n />\n \n )}\n\n \n edit('imageCover', v)}\n />\n {selected.id === 'image' && (\n <>\n \n edit('removePadding', v)}\n />\n \n )}\n
\n {selected.id === 'image' && (\n
\n \n ({\n label: k,\n value: k,\n }))}\n value={selected.widthSize}\n onChange={(e) => edit('widthSize', e.target.value)}\n />\n\n \n edit('height', parseFloat(v))}\n />\n
\n )}\n \n
\n )}\n
\n )\n})\n","import React, { memo, useState } from 'react'\nimport {\n Checkbox,\n FileUpload,\n Input,\n useTraversal,\n} from '@guillotinaweb/react-gmi'\nimport { InputNumber } from 'antd'\nimport { message, Tabs } from 'antd'\nimport { I18NField } from '../../../components/i18nfield'\nimport { ProductSelector } from '../../../components/product-selector'\nimport { getCdnUrl, setLangs } from '../../../consts'\n\nconst Empty = () => null\n\nexport const OfferBannerForm = memo(({ selected, edit, langs }) => {\n const Ctx = useTraversal()\n const [uploading, setUploading] = useState(false)\n\n function onUploadBanner(lang) {\n return async (file) => {\n setUploading(true)\n const filename = `home/${Ctx.state.context['@name']}`\n const res = await Ctx.client.upload(Ctx.path, file, filename)\n\n if (res.status >= 300) {\n message.error('Error uploading the image')\n setUploading(false)\n return\n }\n\n const { path } = await res.json()\n const src = `/${path}`\n const image = selected.image || {}\n const isFirstImage = !Object.values(image).find((v) => v)\n\n edit('image', isFirstImage ? setLangs(src) : { ...image, [lang]: src })\n setUploading(false)\n }\n }\n\n return (\n \n {(lang) => (\n \n \n \n \n {selected.image?.[lang] && (\n \n )}\n \n \n \n edit('title', { ...selected.title, [lang]: v })}\n />\n \n \n edit('text_banner', { ...selected.text_banner, [lang]: v })\n }\n />\n \n edit('link', { ...selected.link, [lang]: v })}\n />\n \n \n \n {\n if (groups.length > 2) {\n return message.error(\n 'This section can show a maximum of 2 products.'\n )\n }\n edit('query', { groups })\n }}\n />\n \n edit('discount', v)}\n />\n \n \n edit('discount_text', { ...selected.discount_text, [lang]: v })\n }\n />\n edit('is_same_offer_for_all_products', v)}\n />\n \n \n )}\n \n )\n})\n","import React, { useState } from 'react'\nimport { hexToRgb } from '../utils'\n\nimport './color_picker.css'\n\nconst COLORS = [\n '#f1c9bc',\n '#ebe9d5',\n '#e9edeb',\n '#f1e5e1',\n '#ffe8c5',\n '#ffd7b4',\n '#dcd3dd',\n '#b9d0ee',\n '#bce1d2',\n '#dd7758',\n '#ccc897',\n '#c9d1ce',\n '#dbbcb3',\n '#ffd28c',\n '#ffaf69',\n '#965a9b',\n '#73a0dc',\n '#78c3a5',\n]\n\nconst EXTRA_COLORS = [['#fbe89d', 'offers']]\n\nexport function ColorPicker({\n label,\n value,\n onChange,\n suggested = true,\n extraColors = EXTRA_COLORS,\n}) {\n const [error, setError] = useState('')\n const errorStyles = {\n fontSize: 12,\n textAlign: 'right',\n color: 'red',\n marginBottom: 10,\n }\n\n function change(e) {\n const color = e.target.value\n const isDefined = color && color.length\n const isValid = color.match(/^#[0-9A-Fa-f]{6}$/)\n setError(isDefined && !isValid ? `The color ${color} doesn't exist` : '')\n onChange(e)\n }\n\n function renderColor(colorInfo) {\n const isAnArray = Array.isArray(colorInfo)\n const color = isAnArray ? colorInfo[0] : colorInfo\n const label = isAnArray ? colorInfo[1] : ''\n const rgb = hexToRgb(color)\n const brightness = Math.round(\n (parseInt(rgb[0]) * 299 +\n parseInt(rgb[1]) * 587 +\n parseInt(rgb[2]) * 114) /\n 1000\n )\n const textColor = brightness > 125 ? 'black' : 'white'\n\n return (\n \n

\n {label ? `${label}: ` : ''}\n {color}\n

\n \n )\n }\n\n return (\n
\n {label && }\n
\n

\n \n

\n

\n \n

\n
\n {error && (\n
\n The color {value} is not correct\n
\n )}\n {suggested && (\n
\n Suggested colors\n {extraColors.map(renderColor)}\n {extraColors?.length > 0 && (\n
More suggestions:
\n )}\n {COLORS.map(renderColor)}\n
\n )}\n
\n )\n}\n","import React, { memo, useState } from 'react'\nimport { message } from 'antd'\nimport { FileUpload, useTraversal } from '@guillotinaweb/react-gmi'\n\nimport { ColorPicker } from '../../../components/color_picker'\nimport { I18NField } from '../../../components/i18nfield'\nimport { ProductSelector } from '../../../components/product-selector'\nimport { getCdnUrl, setLangs } from '../../../consts'\nimport { Fragment } from 'react'\n\nconst Empty = () => null\n\nexport const ProductBannerForm = memo(({ selected, edit, langs }) => {\n const Ctx = useTraversal()\n const [uploading, setUploading] = useState(false)\n\n function onUploadBanner(lang) {\n return async (file) => {\n setUploading(true)\n const filename = `home/${Ctx.state.context['@name']}`\n const res = await Ctx.client.upload(Ctx.path, file, filename)\n\n if (res.status >= 300) {\n message.error('Error uploading the image')\n setUploading(false)\n return\n }\n\n const { path } = await res.json()\n const src = `/${path}`\n const image = selected.image || {}\n const isFirstImage = !Object.values(image).find((v) => v)\n\n edit('image', isFirstImage ? setLangs(src) : { ...image, [lang]: src })\n setUploading(false)\n }\n }\n\n return (\n \n {(lang) => (\n \n edit('bgColor', e.target.value)}\n value={selected.bgColor}\n />\n \n \n {selected.image?.[lang] && (\n \n )}\n \n {\n edit('title', {\n ...(selected.title || {}),\n [lang]: e.target.value,\n })\n }}\n value={selected.title?.[lang]}\n />\n\n \n {\n if (refs.length > 1) {\n return message.error('Only 1 product is allows.')\n }\n edit('reference', refs[0])\n }}\n />\n \n )}\n \n )\n})\n","import React from 'react'\nimport { ArrowUpOutlined, ArrowDownOutlined } from '@ant-design/icons'\n\nconst Arrow = ({ direction, onClick, style }) => {\n const arrowStyle = {\n color: 'white',\n padding: '5px',\n borderRadius: '50%',\n cursor: 'pointer',\n fontSize: '25px',\n }\n\n return (\n
\n {direction === 'up' ? : }\n
\n )\n}\n\nexport default Arrow\n","import { Input, Select, useTraversal } from '@guillotinaweb/react-gmi'\nimport { Switch, Tabs, message } from 'antd'\nimport React, { memo, useState } from 'react'\nimport { I18NField } from '../../../components/i18nfield'\nimport { ProductSelector } from '../../../components/product-selector'\nimport { frontThemes, getCdnUrl, setLangs } from '../../../consts'\nimport { MultiFileUpload } from '../product/partials/images'\nimport Arrow from './Arrow'\n\nconst Empty = () => null\n\nconst ImageWithArrows = ({\n imageUrl,\n moveUp,\n moveDown,\n isFirst,\n isLast,\n selected,\n lang,\n index,\n edit,\n}) => {\n const arrowStyle = {\n position: 'absolute',\n top: '50%',\n transform: 'translateY(-50%)',\n zIndex: 1,\n backgroundColor: 'black',\n color: 'white',\n borderRadius: '50%',\n padding: '5px',\n cursor: 'pointer',\n }\n\n const arrowUpStyle = {\n ...arrowStyle,\n left: '10px', // Ajustar la posición lateral de la flecha hacia la izquierda\n }\n\n const arrowDownStyle = {\n ...arrowStyle,\n right: '10px', // Ajustar la posición lateral de la flecha hacia la derecha\n }\n\n return (\n \n {!isFirst && (\n \n )}\n \"Image\"\n {!isLast && (\n \n )}\n {\n const imagesCopy = [...selected.images[lang]]\n imagesCopy.splice(index, 1)\n edit('images', { ...selected.images, [lang]: imagesCopy })\n }}\n className=\"button-delete-image\"\n >\n X\n \n \n )\n}\n\nexport const ImagesForm = memo(({ selected, edit, langs, id }) => {\n const Ctx = useTraversal()\n const [uploading, setUploading] = useState(false)\n const [images, setImages] = useState(setLangs([]))\n\n const moveImageUp = (index, lang) => {\n if (index > 0 && index < selected.images[lang].length) {\n const imagesCopy = [...selected.images[lang]]\n const temp = imagesCopy[index]\n imagesCopy[index] = imagesCopy[index - 1]\n imagesCopy[index - 1] = temp\n edit('images', { ...selected.images, [lang]: imagesCopy })\n }\n }\n\n const moveImageDown = (index, lang) => {\n if (index >= 0 && index < selected.images[lang].length - 1) {\n const imagesCopy = [...selected.images[lang]]\n const temp = imagesCopy[index]\n imagesCopy[index] = imagesCopy[index + 1]\n imagesCopy[index + 1] = temp\n edit('images', { ...selected.images, [lang]: imagesCopy })\n }\n }\n\n function onUploadBannerMultipleImage(lang) {\n // Función para leer un archivo como un ArrayBuffer\n\n // Función para obtener las dimensiones de una imagen desde un ArrayBuffer\n function getImageDeviceTypeFromArrayBuffer(arrayBuffer) {\n return new Promise((resolve, reject) => {\n const blob = new Blob([arrayBuffer])\n const img = new Image()\n img.onload = () => {\n const deviceType = img.width > 768 ? 'desktop' : 'mobile'\n resolve(deviceType)\n }\n img.onerror = reject\n img.src = URL.createObjectURL(blob)\n })\n }\n\n return async (files) => {\n setUploading(true)\n let desktopImageUploaded = false\n try {\n const newImages = {\n desktop: '',\n link: '', // Aquí puedes definir la ruta del enlace según sea necesario\n mobile: '',\n }\n\n for (const file of files) {\n const deviceType = await getImageDeviceTypeFromArrayBuffer(file.data)\n const filename = `home/${Ctx.state.context['@name']}_desktop`\n const res = await Ctx.client.upload(Ctx.path, file, filename)\n\n if (res.status >= 300) {\n message.error('Error uploading image')\n setUploading(false)\n return\n }\n\n const { path } = await res.json()\n const src = `/${path}`\n\n if (deviceType === 'desktop') {\n newImages.desktop = src\n desktopImageUploaded = true\n } else {\n newImages.mobile = src\n }\n }\n\n // Si solo se ha subido una imagen de escritorio, usarla también para mobile\n if (desktopImageUploaded && !newImages.mobile) {\n newImages.mobile = newImages.desktop\n }\n\n const allImages = { ...selected.images } || images\n\n if (lang === 'es') {\n // Si el idioma es \"ES\", actualizamos las imágenes en todos los idiomas\n Object.keys(allImages).forEach((locale) => {\n if (Array.isArray(allImages[locale])) {\n allImages[locale].push(newImages)\n } else {\n allImages[locale] = [newImages]\n }\n })\n } else {\n // Para otros idiomas, solo actualizamos las imágenes del idioma seleccionado\n if (Array.isArray(allImages[lang])) {\n allImages[lang].push(newImages)\n } else {\n allImages[lang] = [newImages]\n }\n }\n\n setImages(allImages)\n edit('images', allImages)\n setUploading(false)\n } catch (error) {\n console.log('Error processing images:', error)\n message.error('Error processing images. Please try again.')\n setUploading(false)\n }\n }\n }\n\n const onChangeMultipleLinks = (value, lang, imageSrc) => {\n // Hacemos una copia profunda de selected.images\n const allImages = selected.images\n ? JSON.parse(JSON.stringify(selected.images))\n : {}\n\n let index = -1\n // Buscamos el índice del elemento que tiene el imageSrc dado\n allImages[lang].map((val, ind) => {\n // Aquí `val` representa el valor actual del elemento y `ind` es su índice\n // Compara `val` con el diccionario que se está modificando (imageSrc)\n if (JSON.stringify(val) === JSON.stringify(imageSrc)) {\n index = ind\n }\n })\n\n if (index !== -1) {\n // Si se encontró el índice, actualizamos el valor en la posición correspondiente\n allImages[lang][index]['link'] = value\n edit('images', allImages)\n } else {\n console.log('El elemento no se encontró en la lista de imágenes.')\n }\n }\n\n return (\n \n {(lang) => (\n \n \n <>\n \n \n \n {selected.images?.[lang].map((image, index) => {\n const isFirst = index === 0\n const isLast = index === selected.images[lang].length - 1\n\n return (\n
\n moveImageUp(index, lang)}\n moveDown={() => moveImageDown(index, lang)}\n isFirst={isFirst}\n isLast={isLast}\n selected={selected}\n lang={lang}\n index={index}\n edit={edit}\n />\n
\n )\n })}\n \n ({ label: k, value: k }))}\n value={selected.theme}\n onChange={(e) => edit('theme', e.target.value)}\n />\n
\n\n \n {selected.images?.[lang].length !== 0 &&\n selected.images?.[lang].map((image, index) => {\n return (\n
\n {\n const images = selected.images\n images[lang].splice(index, 1)\n edit('images', images)\n }}\n className=\"button-delete-image\"\n >\n X\n \n \n
\n )\n })}\n \n ({ label: k, value: k }))}\n value={selected.theme}\n onChange={(e) => edit('theme', e.target.value)}\n />\n
\n \n \n {selected.images[lang] &&\n selected.images[lang].map((value) => {\n return (\n
\n \n {\n onChangeMultipleLinks(v, lang, value)\n }}\n />\n
\n )\n })}\n
\n {selected.id === 'product-image' && (\n \n \n {\n if (groups.length > 4) {\n return message.error(\n 'This section can show a maximum of 4 products.'\n )\n }\n edit('query', { groups })\n }}\n />\n \n )}\n \n
\n \n ({\n label: k,\n value: k,\n }))}\n value={selected.filter ? selected.filter : 'no filter'}\n onChange={(e) => {\n const v = e.target.value\n edit('filter', v === 'no filter' ? undefined : v)\n }}\n />\n {selected.id === 'image' && (\n <>\n \n edit('imageRepeat', v)}\n />\n \n )}\n\n \n edit('imageCover', v)}\n />\n {selected.id === 'image' && (\n <>\n \n edit('removePadding', v)}\n />\n \n )}\n
\n {selected.id === 'image' && (\n
\n \n ({\n label: k,\n value: k,\n }))}\n value={selected.widthSize}\n onChange={(e) => edit('widthSize', e.target.value)}\n />\n\n \n edit('height', parseFloat(v))}\n />\n
\n )}\n \n
\n )}\n
\n )\n})\n","import {\n Button,\n Checkbox,\n ContextToolbar,\n Input,\n Modal,\n PanelPermissions,\n useTraversal,\n} from '@guillotinaweb/react-gmi'\nimport { Affix, Dropdown, Menu, Select } from 'antd'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\nimport AceEditor from 'react-ace'\nimport uuid from 'uuid'\nimport { AuditLogTab } from '../../../common/auditlog'\nimport { DatePicker } from '../../../common/date'\nimport { DnD } from '../../../common/dnd'\nimport { I18NField } from '../../../components/i18nfield'\nimport { CustomPreview } from '../../../components/preview'\nimport { TabsPanelWithLock } from '../../../components/tab-panel-with-lock'\nimport { LANGS, defaultHomeSections, homeSectionsToAdd } from '../../../consts'\nimport { formatStartEnd, isSameDay } from '../../../utils'\nimport { BlogPostsForm } from './blog_posts_form'\nimport { CatalogForm } from './catalog_form'\nimport { HomeSection } from './home_section'\nimport { ImageForm } from './image_form'\nimport { OfferBannerForm } from './offer_banner_form'\nimport { ProductBannerForm } from './product_banner_form'\nimport { ImagesForm } from './slider_images_form'\n\nimport 'ace-builds/src-noconflict/mode-html'\nimport 'ace-builds/src-noconflict/theme-textmate'\n\nimport './home_editor.css'\n\nfunction TemplateData({ state }) {\n const timeout = useRef()\n const [openReset, setOpenReset] = useState(false)\n const initialContext = useRef(state.context)\n const [loading, setLoading] = useState(false)\n const Ctx = useTraversal()\n const canModifyContent = Ctx.hasPerm('guillotina.ModifyContent')\n const epoch = useRef(Date.now())\n const [start, setStart] = useState(state.context.date_start)\n const [end, setEnd] = useState(state.context.date_end)\n const [editIndx, setEditIndx] = useState()\n const [sections, setSections] = useState(\n state.context.sections.map((s) => ({ ...s, key: uuid() }))\n )\n const selected = sections[editIndx] || {}\n const close = () => setEditIndx()\n\n function edit(key, value) {\n clearTimeout(timeout.current)\n timeout.current = setTimeout(() => {\n setSections((c) =>\n c.map((s, i) =>\n i === editIndx\n ? {\n ...s,\n [key]: value,\n }\n : s\n )\n )\n }, 150)\n }\n\n function onSavePreview(site) {\n const [, previewLang] = site.split('?preview=')\n const i18n = (t) => (t ? t[previewLang] : undefined)\n const config = {\n sections: sections\n .filter(\n (s) =>\n !s.hidden &&\n (!s.for_langs?.length || s.for_langs.includes(previewLang))\n )\n .map((s) => ({\n ...s,\n title: i18n(s.title),\n html: encodeURIComponent(s.html?.[previewLang]),\n buttonText: i18n(s.buttonText),\n buttonLink: Object.entries(s.buttonLink || {}).reduce(\n (o, [lang, v]) => {\n o[lang] = encodeURIComponent(v)\n return o\n },\n {}\n ),\n })),\n }\n window.localStorage.setItem('preview', JSON.stringify(config))\n }\n\n function reset(newSections) {\n const {\n sections: lastSections,\n date_start,\n date_end,\n } = initialContext.current\n epoch.current = Date.now()\n setSections(newSections || lastSections)\n setStart(date_start)\n setEnd(date_end)\n setOpenReset(false)\n }\n\n async function save() {\n const [date_start, date_end] = formatStartEnd(start, end)\n\n if (new Date(date_start) >= new Date(date_end)) {\n Ctx.flash('The end date must be greater than the start date.', 'danger')\n window.scroll({ top: 0 })\n return\n }\n\n if (sections.some((s) => s.id === 'product-banner' && !s.reference)) {\n Ctx.flash(\n \"It's mandatory to put a product in the product-banner section.\",\n 'danger'\n )\n window.scroll({ top: 0 })\n return\n }\n\n const startDate = new Date(start)\n const { format } = new Intl.DateTimeFormat('es-ES')\n const message = isSameDay(startDate, new Date())\n ? 'The changes will be applied in approximately 12 minutes.'\n : `Changes will be applied on ${format(startDate)}`\n\n const flashOk = [`Home stored correctly. ${message}`, 'success']\n const flashKo = ['Error updating home page', 'danger']\n const home = { sections, date_start, date_end }\n setLoading(true)\n const { status } = await Ctx.client.patch(Ctx.path, home)\n Ctx.flash(...(status === 204 ? flashOk : flashKo))\n Ctx.refresh()\n window.scroll({ top: 0 })\n setLoading(false)\n }\n\n function addCustomSection({ key }) {\n const newSection = {\n ...homeSectionsToAdd.find((s) => s.id === key),\n key: uuid(),\n }\n if (newSection) setSections([newSection, ...sections])\n window.scroll({ top: 200 })\n }\n\n useEffect(() => () => clearTimeout(timeout.current), [])\n\n return (\n \n \n
\n setStart(e.target.value)}\n />\n setEnd(e.target.value)}\n />\n \n {homeSectionsToAdd.map((s) => (\n Section \"{s.id}\"\n ))}\n \n }\n >\n \n \n \n \n \n
\n
\n
\n (\n setEditIndx(index)}\n id={section.id}\n />\n )}\n />\n
\n \n {\n setSections(sections.filter((s, i) => i !== editIndx))\n close()\n }}\n />\n \n\n setOpenReset(false)}\n >\n

Reset

\n Are you sure to remove the latest changes?\n
\n \n \n \n
\n \n
\n )\n}\n\nfunction EditHomeSection({ selected, edit, close, remove }) {\n const [toogleRemove, setToogleRemove] = useState(false)\n const langs = selected.for_langs?.length ? selected.for_langs : LANGS\n\n if (toogleRemove) {\n return (\n
\n

Remove {(selected.title || {}).es}

\n

Are you sure?

\n
\n {\n remove()\n setToogleRemove(false)\n }}\n >\n Yes\n \n \n
\n
\n )\n }\n\n return (\n <>\n

Edit {(selected.title || {}).es}

\n
\n edit('hidden', !v)}\n />\n {homeSectionsToAdd.some((s) => s.id === selected.id) && (\n setToogleRemove(true)}\n >\n Remove section\n \n )}\n
\n {!selected.hidden && (\n <>\n \n edit('for_langs', l)}\n style={{ width: '100%' }}\n >\n {LANGS.map((lang) => (\n {lang}\n ))}\n \n \n )}\n {!selected.hidden && selected.id === 'html' && (\n null}>\n {(lang) => (\n \n \n \n edit('title', { ...selected.title, [lang]: v })\n }\n />\n \n \n edit('html', { ...selected.html, [lang]: text })\n }\n name=\"HTML_editor\"\n editorProps={{ $blockScrolling: true }}\n />\n \n )}\n \n )}\n {!selected.hidden && selected.id?.includes('image-slider') && (\n \n )}\n {!selected.hidden &&\n selected.id?.includes('image') &&\n selected.id !== 'image-slider' && (\n \n )}\n {!selected.hidden && selected.id === 'product-banner' && (\n \n )}\n {!selected.hidden && selected.id === 'offer-banner' && (\n \n )}\n {!selected.hidden && selected.id === 'blog-posts' && (\n \n )}\n {!selected.hidden && selected.type && (\n \n )}\n
\n \n
\n \n )\n}\n\nexport function HomeView(props) {\n const ctx = useTraversal()\n const calculated = ctx.filterTabs(\n {\n Data: TemplateData,\n Permissions: PanelPermissions,\n AuditLog: AuditLogTab,\n },\n {\n Data: 'guillotina.ViewContent',\n Sections: 'guillotina.ModifyContent',\n }\n )\n\n return (\n }\n {...props}\n />\n )\n}\n","import React from 'react'\nimport { isProd } from '../../../consts'\n\nexport function PreviewWebsites({ data, currentLang }) {\n const prefix = isProd() ? 'www' : 'stage'\n const ContentLink = ({ site, lang }) => {\n const path = data.slug[lang].startsWith('/')\n ? data.slug[lang]\n : `/${lang}/content/${data.slug[lang]}/`\n\n if (currentLang !== lang) return null\n return (\n {`${site}/${lang}/`}\n )\n }\n\n return (\n
\n Preview:\n \n \n \n \n \n \n
\n )\n}\n","import { useState } from 'react'\nimport { useTraversal } from '@guillotinaweb/react-gmi'\n\nexport function usePatchLanding() {\n const [loading, setLoading] = useState(false)\n const Ctx = useTraversal()\n\n async function patch(data) {\n setLoading(true)\n const newContext = { ...Ctx.context, ...data }\n const flashOk = ['Landing updated', 'success']\n const flashKo = ['Error updating the landing', 'danger']\n const { status } = await Ctx.client.patch(Ctx.path, {\n description: newContext.description,\n for_langs: newContext.forLangs,\n image_src: newContext.image_src,\n sections: newContext.sections,\n slug: newContext.slug,\n template: newContext.template,\n title: newContext.title,\n labels: newContext.labels,\n post_author: newContext.postAuthor,\n publish_date: newContext.publishDate,\n searchable: newContext.searchable,\n })\n Ctx.flash(...(status === 204 ? flashOk : flashKo))\n Ctx.refresh({ transparent: true })\n setLoading(false)\n }\n\n return [loading, patch]\n}\n","import React, { useState } from 'react'\nimport {\n Form,\n Textarea,\n Input,\n Checkbox,\n Button,\n Select,\n useTraversal,\n} from '@guillotinaweb/react-gmi'\nimport { I18NField } from '../../../components/i18nfield'\nimport { SelectTaxonomy } from '../../../components/select-taxonomy'\nimport { DatePicker } from '../../../common/date'\nimport { ImageEditor } from '../../../common/field'\nimport { PreviewWebsites } from './Preview'\nimport { usePatchLanding } from './usePatchLanding'\n\nconst Empty = () => null\n\nexport function Data({ state }) {\n return (\n <>\n \n {(lang) => (\n <>\n \n \n \n )}\n \n \n )\n}\n\nfunction DataForm(props) {\n const { lang } = props\n const [title, setTitle] = useState(props.title)\n const [template, setTemplate] = useState(props.template)\n const [loading, saveLanding] = usePatchLanding()\n const [description, setDescription] = useState(props.description)\n const [labels, setLabels] = useState(props.labels || [])\n const [postAuthor, setPostAuthor] = useState(props.post_author)\n const [publishDate, setPublishDate] = useState(props.publish_date)\n const [forLangs, setForLangs] = useState(props.for_langs)\n const [searchable, setSearchable] = useState(props.searchable)\n const setWithLang = (fn) => (v) => fn((o) => ({ ...o, [lang]: v }))\n\n const ctx = useTraversal()\n\n const landingTemplates = [\n { value: 'landing', text: 'Landing' },\n { value: 'blog-post', text: 'Blog Post' },\n ]\n\n async function onSubmit() {\n saveLanding({\n title,\n description,\n forLangs,\n template,\n labels,\n postAuthor,\n publishDate,\n searchable,\n })\n }\n\n function reset() {\n setTitle(props.title)\n setDescription(props.description)\n }\n\n return (\n
\n \n v\n ? setForLangs([...forLangs, lang])\n : setForLangs([...forLangs].filter((l) => l !== lang))\n }\n />\n \n \n \n setTemplate(e.target.value)}\n value={template || ''}\n options={landingTemplates}\n />\n \n \n \n {template === 'blog-post' && (\n <>\n

Blog post specific fields

\n \n \n \n \n \n setLabels(v)}\n placeholder=\"Post Author\"\n />\n setPublishDate(e.target.value)}\n />\n \n )}\n
\n
\n \n Reset\n \n \n
\n \n )\n}\n","import React from 'react'\nimport { Modal, Button } from '@guillotinaweb/react-gmi'\n\nexport default function Confirm({ open, yes, no, children }) {\n return (\n \n {children}\n
\n \n \n
\n
\n )\n}\n","import React, { useState, useRef } from 'react'\nimport uuid from 'uuid'\nimport AceEditor from 'react-ace'\nimport {\n FileUpload,\n Button,\n Icon,\n Input,\n useTraversal,\n Select,\n} from '@guillotinaweb/react-gmi'\n\nimport { QuillEditor } from '../../../components/QuillEditor'\nimport Confirm from '../../../components/confirm'\nimport { AccordionCard } from '../../../components/accordion-card'\nimport { DnD } from '../../../common/dnd'\nimport { I18NField } from '../../../components/i18nfield'\nimport { PreviewWebsites } from './Preview'\nimport { ProductSelector } from '../../../components/product-selector'\nimport { QueryProducts } from '../../../components/query-products'\nimport { isProd, setLangs } from '../../../consts'\nimport {\n allowToMoveOnlyInAccordionHeader,\n useClipboard,\n setMultiLangContent,\n} from '../../../utils'\nimport { usePatchLanding } from './usePatchLanding'\n\nconst HISTORIAL_MAX = 20\nconst Empty = () => null\nconst cdnPrefix = isProd() ? '' : 'stage-'\nconst cdn = `https://${cdnPrefix}cdn.vinissimus.com/img/unsafe/keep/plain/local://`\nconst emptyLangs = setLangs('')\nconst epoch = () => new Date().getTime()\nconst templates = [\n { text: 'Carousels', value: 'carousels' },\n { text: 'Text + Image', value: 'text-image' },\n { text: 'HTML', value: 'just-html' },\n { text: 'HTML (deprecated)', value: 'html' },\n { text: 'Product list', value: 'product-list' },\n { text: 'Blog Product list', value: 'blog-product-list' },\n { text: 'View more Button', value: 'view-more-button' },\n { text: 'View more Anchor', value: 'view-more-anchor' },\n { text: 'Email Signup Form', value: 'email-signup' },\n]\nconst templatesAsObj = templates.reduce((o, c) => {\n o[c.value] = c.text\n return o\n}, {})\n\nexport function Sections({ state }) {\n const key = useRef(epoch())\n const Ctx = useTraversal()\n const [confirmation, setConfirmation] = useState(null)\n const [clipboard, setClipboard] = useClipboard('copy-landing')\n const [loading, saveLanding] = usePatchLanding()\n const [sections, setSections] = useState(state.context.sections)\n const [historial, setHistorial] = useState([sections])\n const lastUndo = useRef()\n const prevSectionsRef = useRef(sections)\n\n React.useEffect(() => {\n if (state.context.sections !== prevSectionsRef.current) {\n setSections(\n state.context.sections.map((s) => ({ ...s, id: s.id || uuid() }))\n )\n prevSectionsRef.current = state.context.sections\n }\n }, [state.context.sections])\n\n function copy(el) {\n sessionStorage.setItem('copy-landing', JSON.stringify(el))\n setClipboard(el)\n Ctx.flash('Copied!', 'success')\n }\n\n function paste() {\n const newSection = { ...clipboard, id: uuid() }\n setSections((s) => [...s, newSection])\n sessionStorage.removeItem('copy-landing')\n setClipboard(null)\n }\n\n function updateSections(newSections) {\n if (Date.now() - (lastUndo.current || 0) < 100) return\n setSections(newSections)\n setHistorial((prev) => [newSections, ...prev].slice(0, HISTORIAL_MAX))\n }\n\n function onChangeSection(newSection) {\n setSections((prevSections) =>\n prevSections.map((oldSection) =>\n oldSection.id === newSection.id ? newSection : oldSection\n )\n )\n }\n\n function undo() {\n const [, lastChange, ...hist] = historial\n lastUndo.current = Date.now()\n setHistorial([lastChange, ...hist])\n setSections(lastChange)\n }\n\n function onRemoveSection(sectionId) {\n updateSections(sections.filter(({ id }) => id !== sectionId))\n }\n\n function reset() {\n key.current = epoch()\n updateSections(state.context.sections)\n }\n\n function add() {\n const emptySection = {\n id: uuid(),\n template: 'carousels',\n title: emptyLangs,\n description: emptyLangs,\n alt: emptyLangs,\n text: emptyLangs,\n slug: emptyLangs,\n products: {\n type: 'group',\n value: [],\n },\n query: {},\n image_src: null,\n collapsed: false,\n }\n updateSections([...sections, emptySection])\n }\n\n return (\n \n {(lang) => (\n <>\n \n {sections.length === 0 && (\n
There aren't sections yet.
\n )}\n (\n \n )}\n />\n setConfirmation(null)}\n yes={() => {\n onRemoveSection(confirmation)\n setConfirmation(null)\n }}\n >\n Are you sure to remove this section?\n \n\n
\n
\n \n \n \n \n + Add new Section\n \n \n Undo\n \n \n Reset\n \n
\n
\n saveLanding({ sections })}\n className=\"is-primary\"\n >\n SAVE AND PUBLISH\n \n
\n \n )}\n
\n )\n}\n\nfunction Section({ data, onChange, onRemove, lang, copy }) {\n const Ctx = useTraversal()\n const [uploading, setUploading] = useState(false)\n const sectionTitle = data.title?.[lang] || data.module_id || 'Untitled'\n const title = `${sectionTitle} | ${templatesAsObj[data.template]}`\n\n function onUploadImg(callback) {\n async function uploader(file) {\n setUploading(true)\n const res = await Ctx.client.upload(Ctx.path, file, `landings/${data.id}`)\n\n if (res.status >= 300) {\n alert('Error uploading the image')\n setUploading(false)\n return\n }\n\n const { path } = await res.json()\n callback(`/${path}`)\n setUploading(false)\n }\n return uploader\n }\n\n const handleInputChange = (field, value) => {\n const newData = {\n ...data,\n [field]: {\n ...(data[field] || {}),\n [lang]: typeof value === 'object' ? value.target.value : value,\n },\n }\n onChange(newData)\n }\n\n let productTypes = [\n { value: 'groups', text: 'Lista de grupos de productos' },\n { value: 'referencias', text: 'Lista de referencias de productos' },\n ]\n\n let carrouselTypes = [\n { value: 'group', text: 'Lista de grupos de productos' },\n { value: 'refs', text: 'Lista de referencias de productos' },\n { value: 'query', text: 'Query de búsqueda' },\n ]\n\n return (\n onChange({ ...data, collapsed })}\n defaultCollapsed={data.collapsed}\n title={\n
\n
{title}
\n
\n copy(data)} title=\"Copy\">\n \n \n onRemove(data.id)} title=\"Delete\">\n \n \n
\n
\n }\n className=\"template-section\"\n >\n
\n \n \n onChange({\n ...data,\n template: e.target.value,\n products: data.products || {\n type: 'group',\n value: [],\n },\n title: data.title || emptyLangs,\n description: data.description || emptyLangs,\n slug: data.slug || emptyLangs,\n alt: data.alt || emptyLangs,\n })\n }\n value={data.template || ''}\n options={templates}\n />\n {['carousels', 'html', 'product-list', 'blog-product-list'].includes(\n data.template\n ) && (\n <>\n \n handleInputChange('title', e)}\n />\n \n handleInputChange('text', value)}\n />\n \n )}\n {\n // TEXT (html) + IMAGE (both optional)\n data.template === 'text-image' && (\n <>\n \n handleInputChange('text', value)}\n />\n \n )\n }\n
\n\n {(() => {\n // BLOG PRODUCT LIST\n if (data.template === 'blog-product-list') {\n const type = data.query?.referencias ? 'referencias' : 'groups'\n const typeSelector = data.query?.referencias ? 'refs' : 'group'\n const defaultQuery = {\n opciones: { estado: ['selling', 'notavailable'] },\n serializer: 'full',\n }\n\n return (\n
\n \n \n onChange({\n ...data,\n query: {\n ...defaultQuery,\n [e.target.value]: [],\n },\n type: e.target.value,\n })\n }\n value={type}\n options={productTypes}\n />\n \n \n onChange({\n ...data,\n query: {\n ...defaultQuery,\n [type]: products,\n },\n })\n }\n />\n
\n )\n }\n })()}\n {\n // CAROUSELS DATA\n data.template === 'carousels' && (\n
\n \n

\n min-width: 150px; max-height: 330px (vert) or proportional to\n height: 330px.\n

\n {data.image_src && (\n \n )}\n \n onChange({\n ...data,\n image_src: setMultiLangContent(path, lang, data.image_src),\n })\n )}\n label={uploading ? 'Uploading...' : 'Upload an image'}\n />\n \n \n onChange({\n ...data,\n products: {\n ...data.products,\n type: e.target.value,\n value: null,\n },\n })\n }\n value={data.products.type || ''}\n options={carrouselTypes}\n />\n {(data.products.type === 'group' ||\n data.products.type === 'refs') && (\n <>\n \n \n onChange({\n ...data,\n products: { ...data.products, value: products },\n })\n }\n />\n \n )}\n {data.products.type === 'query' && (\n \n onChange({\n ...data,\n products: { ...data.products, value },\n })\n }\n />\n )}\n
\n )\n }\n\n {\n // PRODUCT LIST\n data.template === 'product-list' && (\n
\n onChange({ ...data, query })}\n />\n
\n )\n }\n\n {\n // JUST HTML\n data.template === 'just-html' && (\n \n onChange({\n ...data,\n html: {\n ...(data.html || {}),\n [lang]: html,\n },\n })\n }\n width=\"100%\"\n name=\"HTML_editor\"\n fontFamily=\"Menlo, Consolas, Ubuntu Mono\"\n editorProps={{\n $blockScrolling: Infinity,\n }}\n />\n )\n }\n\n {\n // DEPRECATED: IMAGE + HTML\n data.template === 'html' && (\n
\n {\n onChange({\n ...data,\n html: {\n ...(data.html || {}),\n [lang]: value,\n },\n })\n }}\n />\n \n

max-width: 300px; max-height: 200px

\n {data.image_src && (\n \n )}\n \n onChange({ ...data, image_src: setLangs(path) })\n )}\n label={uploading ? 'Uploading...' : 'Upload an image'}\n />\n handleInputChange('alt', e)}\n />\n
\n )\n }\n\n {\n // Text + Image\n data.template === 'text-image' && (\n
\n \n

\n Free size. (Left and Right position, max size recommended:\n 400x400. For Top and Bottom position and big images, max-width\n recommended: 1200px)\n

\n {data.img_src && (\n \n )}\n \n onChange({\n ...data,\n img_src: setMultiLangContent(path, lang, data.img_src),\n })\n )}\n label={uploading ? 'Uploading...' : 'Upload an image'}\n />\n \n {\n onChange({\n ...data,\n img_caption: {\n ...(data.img_caption || {}),\n [lang]: value,\n },\n })\n }}\n />\n \n \n onChange({ ...data, img_position: e.target.value })\n }\n value={data.img_position || 'left'}\n options={[\n { value: 'left', text: 'Left' },\n { value: 'top', text: 'Top' },\n { value: 'bottom', text: 'Bottom' },\n { value: 'right', text: 'Right' },\n ]}\n />\n handleInputChange('img_alt', e)}\n />\n handleInputChange('img_link', e)}\n />\n
\n )\n }\n\n {\n // EMAIL SIGNUP FORM - Versión simplificada\n data.template === 'email-signup' && (\n
\n

\n Este componente utilizará el formulario de registro predefinido\n del frontend.\n

\n
\n )\n }\n \n )\n}\n","import React, { useState } from 'react'\nimport { Button } from 'antd'\nimport { useTraversal, Textarea } from '@guillotinaweb/react-gmi'\n\nimport { I18NField } from './i18nfield'\nimport { setLangs } from '../consts'\n\nconst seoField = 'api.behaviors.submenu.ISubmenuBehavior'\nconst example = `[\n {\"selector\": \"link\", \"value\": \"/\", \"label\": \"Vinissimus\" }\n]`\n\nexport function SubmenuTab() {\n const Ctx = useTraversal()\n const submenu = Ctx.state.context[seoField].submenu || {}\n const [saving, setSaving] = useState(false)\n const [menu, setMenu] = useState(submenu || setLangs(''))\n const [jsonError, setJsonError] = useState(false)\n\n const h1 =\n typeof Ctx.state.context.title === 'string'\n ? Ctx.state.context.title\n : Ctx.state.context['@name']\n\n async function save() {\n if (jsonError) {\n alert('invalid json')\n return\n }\n setSaving(true)\n const flashOk = ['SEO fields saved', 'success']\n const flashKo = ['Error saving the SEO fields', 'danger']\n const { status } = await Ctx.client.patch(Ctx.path, {\n [seoField]: { submenu: menu },\n })\n Ctx.flash(...(status === 204 ? flashOk : flashKo))\n setSaving(false)\n }\n\n return (\n <>\n \n

{h1}

\n \n \n null}>\n {(lang) => (\n
\n

Lang {lang}

\n\n {\n let err = null\n let val = undefined\n try {\n val = JSON.parse(v)\n setJsonError(false)\n } catch (e) {\n err = 'invalid'\n val = v\n setJsonError(true)\n }\n setMenu((o) => ({ ...o, [lang]: val }))\n }}\n rows={15}\n style={{\n fontFamily: 'Menlo, Consolas, Courier New',\n fontSize: '12px',\n }}\n error={jsonError}\n />\n
\n )}\n
\n {example}\n \n )\n}\n","import React, { useState, useEffect } from 'react'\nimport AceEditor from 'react-ace'\nimport { ContextToolbar } from '@guillotinaweb/react-gmi'\nimport { useTraversal } from '@guillotinaweb/react-gmi'\nimport { PanelPermissions } from '@guillotinaweb/react-gmi'\nimport { Loading } from '@guillotinaweb/react-gmi'\nimport { TabsPanelWithLock } from '../../components/tab-panel-with-lock'\nimport { AuditLogTab } from '../../common/auditlog'\n\nfunction MenuEditor(props) {\n const Ctx = useTraversal()\n const [fetching, setFetching] = useState(true)\n const [menu, setMenu] = useState(null)\n\n const canModifyContent = Ctx.hasPerm('guillotina.ModifyContent')\n\n useEffect(() => {\n async function load() {\n setFetching(true)\n const r = await Ctx.client.rest.get(Ctx.path)\n const data = await r.json()\n const keys = ['html']\n setMenu(keys.reduce((acc, k) => ({ ...acc, [k]: data[k] }), {}))\n setFetching(false)\n }\n load()\n }, [Ctx.path])\n\n async function save(ev) {\n ev.preventDefault()\n\n const r = await Ctx.client.upsert(Ctx.path, {\n '@type': 'Menu',\n ...menu,\n })\n\n if (r.status >= 200 && r.status < 300)\n Ctx.flash('Guardado satisfactoriamente', 'success')\n else {\n const resp = await r.json()\n const error =\n resp.type === 'DeserializationError'\n ? JSON.stringify(resp.deserialization_errors)\n : resp\n Ctx.flash('Error al gaurdar:\\n' + JSON.stringify(error), 'danger', 15)\n }\n }\n\n if (fetching) return \n\n return (\n
\n setMenu({ ...menu, html })}\n width=\"100%\"\n name=\"HTML_editor\"\n fontFamily=\"Menlo, Consolas, Ubuntu Mono\"\n editorProps={{\n $blockScrolling: Infinity,\n }}\n />\n\n \n Guardar\n \n \n )\n}\n\nconst tabs = {\n Edit: MenuEditor,\n Permissions: PanelPermissions,\n AuditLog: AuditLogTab,\n}\n\nconst tabsPermissions = {\n Edit: 'guillotina.ModifyContent',\n Permissions: 'guillotina.SeePermissions',\n AuditLog: 'vinissimus.ViewLogs',\n}\n\nexport function MenuView(props) {\n const ctx = useTraversal()\n const calculated = ctx.filterTabs(tabs, tabsPermissions)\n return (\n }\n {...props}\n />\n )\n}\n","import React, { useEffect, useRef, useState } from 'react'\nimport html2canvas from 'html2canvas'\nimport { Button, Input, Modal, Select, message, Slider } from 'antd'\nimport { FormatPainterOutlined, UndoOutlined } from '@ant-design/icons'\nimport { ColorPicker } from './color_picker'\nimport { getCdnUrl } from '../consts'\n\nconst fn = () => {}\nconst STORAGE_KEY = 'generate-nl-image-state'\nconst trianglePositions = [\n 'top left',\n 'top right',\n 'bottom right',\n 'bottom left',\n]\n\nconst COLORS = [\n ['#b50018', 'Gambero'],\n ['#663d5e', 'Jancis Robinson'],\n ['#30161f', 'Parker'],\n ['#004a39', 'Penin'],\n ['#4d4d4e', 'Suckling'],\n ['#ba3c40', 'Vinous'],\n ['#aa3130', 'Viti'],\n ['#930223', 'Wine Spectator'],\n ['#460418', 'Decanter'],\n ['#9d0a41', 'Tim Atkins'],\n ['#FDD203', 'Offers'],\n]\n\nexport function GenerateProductImageWithTriangle({\n productRef,\n defaultBgColor,\n onUpload = fn,\n onChangeBgColor = fn,\n ...props\n}) {\n const container = useRef()\n const [uploading, setUploading] = useState(false)\n const [imageSrc, setImageSrc] = useState()\n const [modal, setModal] = useState()\n\n const initialState = {\n bgColor: defaultBgColor || '#e9edeb',\n triangleColor: '#fbe89d',\n width: 400,\n height: 352,\n trianglePosition: trianglePositions[0],\n ballRadius: 70,\n ballColor: '#000000',\n ballBorderWidth: 1,\n ballContentTxt: '10%',\n ballContentFooter: '',\n ballFontSize: 40,\n ballFooterFontsize: 40,\n zoomImg: 1,\n zoomImgPosition: 10,\n }\n\n const [state, setState] = useState(() => {\n const state = localStorage.getItem(STORAGE_KEY)\n return state ? JSON.parse(state) : initialState\n })\n\n const {\n width,\n height,\n bgColor,\n triangleColor,\n trianglePosition,\n ballRadius,\n ballBorderWidth,\n ballColor,\n ballContentTxt,\n ballFooterTxt,\n ballFontSize,\n ballFooterFontsize,\n zoomImg,\n zoomImgPosition,\n } = state\n\n const style = {\n width,\n height,\n overflow: 'hidden',\n position: 'relative',\n margin: '20px auto',\n background: `linear-gradient(to ${trianglePosition}, ${bgColor} 0%, ${bgColor} 50%, ${triangleColor} 50%, ${triangleColor} 100%)`,\n }\n\n const ballStyle = {\n border: `${ballBorderWidth}px solid ${ballColor}`,\n color: ballColor,\n borderRadius: '50%',\n width: ballRadius * 2,\n height: ballRadius * 2,\n position: 'absolute',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n fontSize: ballFontSize,\n ...trianglePosition\n .split(' ')\n .reduce((o, pos) => ({ ...o, [pos]: width * 0.05 }), {}),\n }\n\n const { zoomWidth, zoomHeight, zoomTop } = getZoomProps(\n zoomImg,\n zoomImgPosition\n )\n const imgStyle = {\n height: zoomHeight,\n objectFit: 'cover',\n width: zoomWidth,\n top: zoomTop,\n position: 'absolute',\n ...(trianglePosition.includes('right') ? { left: 45 } : { right: 45 }),\n }\n\n const footerTextStyle = {\n position: 'absolute',\n fontSize: ballFooterFontsize,\n bottom: -25 - ballFooterFontsize - ballBorderWidth,\n }\n\n async function onOpenModal() {\n if (!productRef) return message.warning('No product selected')\n setModal(true)\n if (!imageSrc) setImageSrc(await loadProductImage(productRef))\n }\n\n async function upload() {\n setUploading(true)\n const canvas = await html2canvas(container.current, {\n allowTaint: true,\n useCORS: true,\n })\n const blob = await new Promise((res) => canvas.toBlob(res))\n onChangeBgColor(bgColor)\n onUpload(\n {\n contentType: 'image/png',\n data: await blob.arrayBuffer(),\n filename: `generated_image_${Date.now()}.png`,\n },\n (ok) => {\n setUploading(false)\n if (ok) {\n message.success('Image uploaded')\n setModal(false)\n }\n }\n )\n }\n\n useEffect(saveToStorage, [state])\n function saveToStorage() {\n localStorage.setItem(STORAGE_KEY, JSON.stringify(state))\n }\n\n return (\n <>\n \n \n Generate image\n \n }\n width={1000}\n visible={modal}\n okText={uploading ? 'Uploading...' : 'Upload generated image'}\n onOk={upload}\n onCancel={() => setModal(false)}\n >\n
\n {\n setState(initialState)\n }}\n >\n Reset to initial state\n \n
\n
\n
\n \n setState({ ...state, zoomImg: v })}\n value={zoomImg}\n />\n \n\n setState({ ...state, zoomImgPosition: v })}\n value={zoomImgPosition}\n />\n setState({ ...state, bgColor: e.target.value })}\n value={bgColor}\n />\n \n setState({ ...state, triangleColor: e.target.value })\n }\n value={triangleColor}\n />\n \n setState({ ...state, ballColor: e.target.value })\n }\n value={ballColor}\n />\n \n setState({ ...state, trianglePosition: v })}\n >\n {trianglePositions.map((position) => (\n \n {position}\n \n ))}\n \n \n \n setState({ ...state, ballContentTxt: e.target.value })\n }\n />\n \n \n setState({ ...state, ballFontSize: e.target.valueAsNumber })\n }\n />\n \n \n setState({ ...state, ballFooterTxt: e.target.value })\n }\n />\n \n \n setState({\n ...state,\n ballFooterFontsize: e.target.valueAsNumber,\n })\n }\n />\n \n \n setState({ ...state, ballRadius: e.target.valueAsNumber })\n }\n />\n\n \n \n setState({ ...state, ballBorderWidth: e.target.valueAsNumber })\n }\n />\n \n\n
\n
\n {ballContentTxt}\n {ballFooterTxt && (\n
{ballFooterTxt}
\n )}\n
\n {imageSrc && (\n \n )}\n
\n
\n \n \n )\n}\n\nasync function loadProductImage(ref) {\n const res = await fetch(\n `/db/guillotina/@product?id=${ref}&lang=es&bodega_extras=1`\n ).then((r) => r.json())\n const path =\n res.product.images?.[`${ref}_anv800`]?.path ||\n `/prfmtgrande/vi/${ref}_anv800.png`\n return getCdnUrl() + path\n}\n\nfunction getZoomProps(zoomImg, zoomImgPosition) {\n const defaultWidth = 24\n const zoomWidth = defaultWidth + zoomImg + '%'\n const zoomHeight = (zoomWidth * 100) / defaultWidth + '%'\n const zoomTop = -zoomImg * zoomImgPosition\n\n return { zoomWidth, zoomHeight, zoomTop }\n}\n","export async function newsletterTranslator(context, payload) {\n const subject = payload.subject?.['es'] ?? null\n const contenido = payload.contenido ?? null\n if (subject) {\n payload.subject = await context.client.translate(subject, 'subject')\n }\n if (contenido) {\n for (let i = 0; i < contenido.length; i++) {\n console.log(contenido[i])\n const val = contenido[i]\n if (\n val['id_tipo'] === 'h1' ||\n val['id_tipo'] === 'p' ||\n val['id_tipo'] === 'h2' ||\n val['id_tipo'] === 'w'\n ) {\n const translated = await context.client.translate(\n val['es'],\n val['id_tipo']\n )\n Object.keys(val).forEach((key) => {\n if (translated[key]) {\n val[key] = translated[key]\n }\n })\n }\n // if (val['id_tipo'] === 'btn_primary') {\n // const translated = await context.client.translate(\n // val['btn_text']['es'],\n // val['id_tipo']\n // )\n // Object.keys(val['btn_text']).forEach((key) => {\n // if (translated[key]) {\n // val['btn_text'][key] = translated[key]\n // }\n // })\n // }\n }\n }\n\n return payload\n}\n","import React, { useState, useEffect, useRef } from 'react'\nimport uuid from 'uuid'\nimport {\n Affix,\n Dropdown,\n Menu,\n Empty,\n Radio,\n message,\n Space,\n Checkbox,\n} from 'antd'\nimport { QuillEditor } from '../../../components/QuillEditor'\nimport {\n Button,\n FileUpload,\n Icon,\n Input,\n Textarea,\n useTraversal,\n} from '@guillotinaweb/react-gmi'\nimport {\n SyncOutlined,\n CheckCircleTwoTone,\n SaveOutlined,\n} from '@ant-design/icons'\n\nimport { AccordionCard } from '../../../components/accordion-card'\nimport * as dayjs from 'dayjs'\nimport { DnD } from '../../../common/dnd'\nimport { Field, BaseField } from '../../../common/field'\nimport { I18NField } from '../../../components/i18nfield'\nimport { ProductSelector } from '../../../components/product-selector'\nimport {\n allowToMoveOnlyInAccordionHeader,\n encodeAbsoluteLink,\n useClipboard,\n} from '../../../utils'\nimport { getCdnUrl, isProd, setLangs, SHOPS } from '../../../consts'\nimport { ColorPicker } from '../../../components/color_picker'\nimport NLPreview from './Preview'\nimport { GenerateProductImageWithTriangle } from '../../../components/generate-product-image-with-triangle'\nimport { newsletterTranslator } from '../../../components/deeplTranslatorComponent'\n\nconst prefix = isProd() ? 'www' : 'stage'\n\nconst PRODUCT_ROW_NUM = 2\n\nconst btnTypesArray = [\n 'btn',\n 'btn_arrow',\n 'btn_primary',\n 'btn_primary_arrow',\n 'tri_up',\n 'tri_down',\n]\nconst buttonTypes = new Set(btnTypesArray)\nconst disabledStatuses = new Set(['scheduled', 'verified'])\n\nconst contentNames = {\n b_multi_img: 'Banner',\n bd: 'Product banner',\n f: `Row of ${PRODUCT_ROW_NUM} products`,\n h1: 'Title',\n h2: 'Subtitle',\n p: 'Text block',\n w: 'Conditions',\n btn: 'Button',\n html: 'Html',\n}\n\nfunction getContentBrief(content, { lang, limit = 80 } = {}) {\n let contentBrief =\n content.btn_text?.[lang] ||\n content[lang] ||\n content.content?.join(' - ') ||\n ''\n\n if (contentBrief.length > limit) {\n contentBrief = contentBrief.slice(0, limit - 3) + '...'\n }\n\n return contentBrief\n}\n\nfunction NLProducts({\n sectionKey,\n content,\n limit,\n id,\n update,\n colors = [['Background color', 'bg_color']],\n}) {\n const bdValue = content.referencia ? [content.referencia] : []\n const value =\n id === 'bd' ? bdValue : content.content.filter((c) => c && c !== '0')\n\n return (\n <>\n {\n if (c.length > limit) {\n message.warning(\n `This section is limited to ${limit} products. If you want to add another one, you must first remove one.`\n )\n return\n }\n if (id === 'bd') return update({ ...content, referencia: c[0] || '' })\n update({ ...content, content: c })\n }}\n />\n {content.content?.length < limit && content.content.length !== 0 && (\n
\n You must add another product, this section is for {limit} products\n
\n )}\n {colors.map(([label, field], index) => (\n update({ ...content, [field]: e.target.value })}\n value={content[field] || '#c9d1ce'}\n />\n ))}\n \n )\n}\n\nfunction NewsletterSection({ id, sectionKey, content, lang, update }) {\n const [uploading, setUploading] = useState(false)\n const Ctx = useTraversal()\n const updateLang = updateI18nField()\n const updateTemplate = updateI18nField('template')\n const updateAlt = updateI18nField('alt')\n const updateLink = updateI18nField('link')\n const updatePath = updateI18nField('path')\n const updateImg = updateI18nField('image_src', true)\n\n function updateI18nField(field, initFull = false) {\n return (e) => {\n const v = e?.target?.value !== undefined ? e.target.value : e\n const fieldContent = content[field] || {}\n const c = field ? fieldContent : content\n const initialize = field && !Object.values(fieldContent).join('')\n const initial = initFull ? setLangs(v) : { ...setLangs(''), [lang]: v }\n\n const newContent = initialize ? { ...c, ...initial } : { ...c, [lang]: v }\n\n update(field ? { ...content, [field]: newContent } : newContent)\n }\n }\n\n async function onUploadBanner(file, callback = () => {}) {\n setUploading(true)\n const filename = `newsletters/${Ctx.state.context.id}`\n const res = await Ctx.client.upload(Ctx.path, file, filename)\n\n if (res.status >= 300) {\n message.error('Error uploading the image')\n setUploading(false)\n callback(false)\n return\n }\n\n const { path } = await res.json()\n const src = `/${path}`\n\n updateImg(src)\n setUploading(false)\n callback(true)\n }\n\n switch (id) {\n case 'h1':\n case 'tpp':\n return \n case 'p':\n case 'p2':\n return (\n \n )\n case 'h2':\n case 'w':\n return