{"version":3,"file":"3d-viewer-frontend.js","mappings":"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","sources":["webpack:///./src/blocks/3d-viewer/Components/Style.js","webpack:///./src/components/Icons/fullscreenOpen.js","webpack:///./src/components/Icons/Close.js","webpack:///./src/blocks/3d-viewer/Components/SliderControllder.js","webpack:///./src/blocks/3d-viewer/Components/ModelPagination.js","webpack:///./src/blocks/3d-viewer/Basic3DViewer.js","webpack:///./src/blocks/3d-viewer/Components/Viewer.js","webpack:///./src/public/product.js","webpack:///./src/public/index.js","webpack:///./src/utils.js","webpack:///../wp-utils/v1/hexToRGB.js","webpack:///../wp-utils/v1/jsonParse.js","webpack:///./public/images/envmaps/fishermans_bastion/negx.jpg","webpack:///./public/images/envmaps/fishermans_bastion/negy.jpg","webpack:///./public/images/envmaps/fishermans_bastion/negz.jpg","webpack:///./public/images/envmaps/fishermans_bastion/posx.jpg","webpack:///./public/images/envmaps/fishermans_bastion/posy.jpg","webpack:///./public/images/envmaps/fishermans_bastion/posz.jpg","webpack:///../../../../../../plugin-modules/node_modules/react-dom/client.js","webpack:///external var [\"React\"]","webpack:///external var [\"ReactDOM\"]","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/publicPath","webpack:///./src/blocks/3d-viewer/FrontEnd.js"],"sourcesContent":["import { useEffect, useState } from \"react\";\r\n\r\nconst Style = ({ attributes }) => {\r\n const { styles, uniqueId, woo, progressBar, additional } = attributes;\r\n const { progressBarColor, thumbSize = \"90px\" } = styles;\r\n\r\n const [CSS, setCSS] = useState(null);\r\n\r\n useEffect(() => {\r\n const CSS = `\r\n #${uniqueId} {\r\n width: ${`${styles?.width?.desktop || styles.width}`};\r\n height: calc(${styles?.height?.desktop || styles.height} + 100px);\r\n }\r\n .pop-up-content-wrap #${uniqueId} {\r\n height: ${styles?.height?.desktop || styles.height};\r\n }\r\n #${uniqueId} .select {display: none}\r\n #${uniqueId} .b3dviewer-wrapper {\r\n height: ${styles?.height?.desktop || styles.height};\r\n }\r\n\r\n #${uniqueId} model-viewer {\r\n background: ${styles?.bgColor} ${styles?.bgImage ? `url(${styles?.bgImage})` : \" \"} no-repeat center center; \r\n background-size: cover;\r\n }\r\n #${uniqueId} model-viewer::part(default-progress-bar) {\r\n display: ${!progressBar ? \"none\" : \"block\"}\r\n }\r\n @media screen and (max-width: 768px){\r\n #${uniqueId} {\r\n width: ${woo ? \"\" : `${styles?.width.tablet || styles.width}`};\r\n height: ${styles?.height.tablet || styles.height};\r\n }\r\n }\r\n @media screen and (max-width: 480px){\r\n #${uniqueId} {\r\n width: ${woo ? \"\" : `${styles?.width.mobile || styles.width}`};\r\n height: ${styles?.height.mobile || styles.height};\r\n }\r\n }\r\n #${uniqueId} model-viewer::part(default-progress-bar){\r\n background: ${progressBarColor};\r\n }\r\n #${uniqueId} .slides .slide{\r\n width: ${thumbSize};\r\n height: ${thumbSize};\r\n padding: calc(${thumbSize} * 0.04);\r\n }\r\n #${uniqueId} .slide-number span{\r\n font-size: calc(${thumbSize} * 0.8);\r\n }\r\n ${additional?.CSS}\r\n `.replaceAll(/\\n?\\s\\s/g, \"\");\r\n setCSS(CSS);\r\n }, [uniqueId, styles, additional, progressBar]);\r\n\r\n return ;\r\n};\r\n\r\nexport default Style;\r\n","const FullscreenOpen = ({ element }) => {\r\n const handleClick = () => {\r\n if (element) {\r\n element.requestFullscreen();\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default FullscreenOpen;\r\n","// import { withSelect } from \"@wordpress/data\";\r\n\r\n// const Close = ({ isSidebarOpened }) => {\r\n// return (\r\n// \r\n// \r\n// \r\n// );\r\n// };\r\n\r\n// export default withSelect((select) => {\r\n// const { isEditorSidebarOpened } = select(\"core/edit-post\");\r\n// return {\r\n// isSidebarOpened: isEditorSidebarOpened(),\r\n// };\r\n// })(Close);\r\n\r\nconst Close = () => {\r\n function closeFullscreen() {\r\n if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n } else if (document.webkitExitFullscreen) {\r\n // / Safari /;\r\n document.webkitExitFullscreen();\r\n } else if (document.msExitFullscreen) {\r\n // / IE11 /;\r\n document.msExitFullscreen();\r\n }\r\n }\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Close;\r\n","import React from \"react\";\r\n\r\nconst SliderController = ({ currentItem, setCurrentItem, models }) => {\r\n return (\r\n <>\r\n
\r\n setCurrentItem(currentItem > 0 ? currentItem - 1 : currentItem)} className={`arrow-left ${currentItem > 0 ? \"\" : \"disabled\"}`} width=\"24px\" height=\"24px\" viewBox=\"-78.5 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\r\n left\r\n \r\n \r\n setCurrentItem(currentItem < models.length - 1 ? currentItem + 1 : currentItem)} fill=\"#000000\" className={`arrow-right ${currentItem < models.length - 1 ? \"\" : \"disabled\"}`} width=\"24px\" height=\"24px\" viewBox=\"-77 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\r\n right\r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nexport default SliderController;\r\n","import React from \"react\";\r\n\r\nconst ModelPagination = ({ attributes, currentItem, setCurrentItem, isPagination }) => {\r\n const { multiple, woo, models } = attributes;\r\n return (\r\n <>\r\n {multiple && !woo && isPagination && (\r\n
\r\n
\r\n {models.map((model, index) => (\r\n setCurrentItem(index)}\r\n >\r\n {model.poster ? : {index + 1}}\r\n \r\n ))}\r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default ModelPagination;\r\n","import { useEffect, useRef, useState } from \"react\";\r\n\r\nimport posx from \"../../../public/images/envmaps/fishermans_bastion/posx.jpg\";\r\nimport posy from \"../../../public/images/envmaps/fishermans_bastion/posy.jpg\";\r\nimport posz from \"../../../public/images/envmaps/fishermans_bastion/posz.jpg\";\r\nimport negx from \"../../../public/images/envmaps/fishermans_bastion/negx.jpg\";\r\nimport negy from \"../../../public/images/envmaps/fishermans_bastion/negy.jpg\";\r\nimport negz from \"../../../public/images/envmaps/fishermans_bastion/negz.jpg\";\r\nimport { hexToRGB } from \"../../../../wp-utils/v1\";\r\nimport SliderController from \"./Components/SliderControllder\";\r\nimport ModelPagination from \"./Components/ModelPagination\";\r\n\r\nfunction copyObjectUsingJSON(originalObject) {\r\n return JSON.parse(JSON.stringify(originalObject));\r\n}\r\n\r\nconst Button = (props) => {\r\n return ;\r\n};\r\n\r\nconst Basic3DViewer = (props) => {\r\n const { attributes, currentItem, setCurrentItem, modelSrc, setAttributes, __ } = props;\r\n const { styles, models, multiple, O3DVSettings } = attributes;\r\n const { isNavigation, isPagination, camera, mouseControl } = O3DVSettings;\r\n\r\n const [viewerLoaded, setViewerLoaded] = useState(false);\r\n\r\n const parentDiv = useRef(null);\r\n const viewerRef = useRef(null);\r\n\r\n useEffect(() => {\r\n if (modelSrc) {\r\n viewerRef.current?.Destroy();\r\n viewerRef.current?.canvas?.remove();\r\n viewerRef.current = null;\r\n if (viewerRef.current === null) {\r\n OV.SetExternalLibLocation(\"../libs\");\r\n\r\n const defaultCamera =\r\n camera && !multiple\r\n ? { camera: new OV.Camera(new OV.Coord3D(...Object.values(camera.eye)), new OV.Coord3D(...Object.values(camera.center)), new OV.Coord3D(...Object.values(camera.up)), 45.0) }\r\n : {};\r\n\r\n let viewer = new OV.EmbeddedViewer(parentDiv.current, {\r\n ...defaultCamera,\r\n backgroundColor: new OV.RGBAColor(255, 255, 255, 255),\r\n edgeSettings: new OV.EdgeSettings(false, new OV.RGBColor(0, 0, 0), 1),\r\n environmentSettings: new OV.EnvironmentSettings([posx, posy, posz, negx, negy, negz], false),\r\n });\r\n\r\n const models = [modelSrc];\r\n viewer.LoadModelFromUrlList(models);\r\n viewerRef.current = viewer;\r\n window.VR = viewer;\r\n } else {\r\n viewerRef.current.LoadModelFromUrlList([modelSrc]);\r\n const Coord3D = new OV.Coord3D(0.0, 0.0, 0.0);\r\n viewerRef.current.viewer.SetCamera(new OV.Camera(new OV.Coord3D(0.0, 0.0, 1.0), Coord3D, new OV.Coord3D(0.0, 1.0, 0.0), 45.0));\r\n }\r\n }\r\n\r\n return () => {\r\n if (viewerRef.current !== null && parentDiv.current !== null && viewerLoaded) {\r\n delete viewerRef.current.model;\r\n viewerRef.current.viewer.renderer.resetState();\r\n viewerRef.current.viewer.Clear();\r\n if (viewerRef.current.viewer) {\r\n delete viewerRef.current.viewer;\r\n }\r\n const gl = viewerRef.current.canvas.getContext(\"webgl2\");\r\n gl.getExtension(\"WEBGL_lose_context\").loseContext();\r\n const tempClone = viewerRef.current.canvas.cloneNode(true);\r\n viewerRef.current.canvas.parentNode.replaceChild(tempClone, viewerRef.current.canvas);\r\n parentDiv.current?.removeChild(parentDiv.current.children[0]);\r\n viewerRef.current.canvas?.parentNode?.removeChild(viewerRef.current.canvas);\r\n viewerRef.current.canvas.remove();\r\n viewerRef.current = null;\r\n setViewerLoaded(false);\r\n }\r\n };\r\n }, [modelSrc]);\r\n\r\n useEffect(() => {\r\n if (styles.bgColor) {\r\n viewerRef.current?.viewer?.SetBackgroundColor(hexToRGB(styles.bgColor));\r\n }\r\n setTimeout(() => {\r\n viewerRef.current?.viewer?.Resize(parentDiv.current.offsetWidth, parentDiv.current.offsetHeight);\r\n }, 10);\r\n viewerRef.current.viewer.Render();\r\n window.viewer = viewerRef.current;\r\n }, [styles, modelSrc]);\r\n\r\n // resize if window is resized\r\n useEffect(() => {\r\n window.addEventListener(\"resize\", () => {\r\n viewerRef.current?.viewer?.Resize(parentDiv.current?.offsetWidth, parentDiv.current?.offsetHeight);\r\n });\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n \r\n {multiple && isNavigation && models.length > 1 && }\r\n {setAttributes && !multiple && (\r\n
\r\n {\r\n if (viewerRef.current) {\r\n const camera = copyObjectUsingJSON(viewerRef.current?.viewer?.GetCamera());\r\n setAttributes({ O3DVSettings: { ...O3DVSettings, camera } });\r\n }\r\n }}\r\n >\r\n {camera ? __(\"Reset Default View\", \"model-viewer\") : __(\"Set Default View\", \"model-viewer\")}\r\n \r\n {camera && (\r\n <>\r\n {\r\n viewerRef.current?.viewer.SetCamera(\r\n new OV.Camera(new OV.Coord3D(...Object.values(camera.eye)), new OV.Coord3D(...Object.values(camera.center)), new OV.Coord3D(...Object.values(camera.up)), 45.0)\r\n );\r\n }}\r\n >\r\n {__(\"See Default View\", \"model-viewer\")}\r\n \r\n \r\n \r\n )}\r\n
\r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default Basic3DViewer;\r\n","import { useEffect, useState, useRef, useCallback } from \"react\";\r\n\r\nimport Style from \"./Style\";\r\nimport FullscreenOpen from \"../../../components/Icons/fullscreenOpen\";\r\nimport Close from \"../../../components/Icons/Close\";\r\nimport modelRenderer from \"../../../public\";\r\nimport SliderController from \"./SliderControllder\";\r\nimport Basic3DViewer from \"../Basic3DViewer\";\r\n\r\nconst Viewer = ({ attributes, __, setAttributes, viewerRef }) => {\r\n const [isValid, setIsValid] = useState(false);\r\n const {\r\n loadingPercentage = false,\r\n uniqueId,\r\n model,\r\n models,\r\n fullscreen,\r\n variant,\r\n multiple,\r\n additional,\r\n exposure,\r\n selectedAnimation,\r\n animation,\r\n autoRotate,\r\n autoplay,\r\n rotateAlongX,\r\n align,\r\n woo,\r\n rotationPerSecond,\r\n preload,\r\n isPagination,\r\n isNavigation,\r\n zoom,\r\n currentViewer = \"modelViewer\",\r\n O3DVSettings = {},\r\n loading,\r\n texture = {},\r\n environmentImage,\r\n zoomLevel = 1,\r\n } = attributes;\r\n\r\n const { isFullscreen } = O3DVSettings;\r\n\r\n const [currentItem, setCurrentItem] = useState(0);\r\n const [modelSrc, setModelSrc] = useState(multiple ? models[currentItem]?.modelUrl : model?.modelUrl);\r\n\r\n const variantRef = useRef();\r\n const animationRef = useRef();\r\n\r\n useEffect(() => {\r\n setModelSrc(multiple ? models[currentItem]?.modelUrl : model?.modelUrl);\r\n }, [currentItem, multiple, models, model]);\r\n\r\n useEffect(() => {\r\n try {\r\n new URL(modelSrc);\r\n setIsValid(true);\r\n } catch (error) {\r\n setIsValid(false);\r\n }\r\n\r\n setTimeout(() => {\r\n modelRenderer({ animation, variant, wrapper: viewerRef.current?.parentElement });\r\n }, 10);\r\n }, [uniqueId, model, models, multiple, modelSrc]);\r\n\r\n useEffect(() => {\r\n if (!autoplay) {\r\n viewerRef.current?.pause();\r\n }\r\n }, [autoplay]);\r\n\r\n useEffect(() => {\r\n setTimeout(() => {\r\n if (viewerRef.current && animationRef.current) {\r\n viewerRef.current.animationName = selectedAnimation;\r\n const selectElement = animationRef.current.querySelector(\"select\");\r\n selectElement.value = selectedAnimation;\r\n }\r\n }, 10);\r\n }, [selectedAnimation]);\r\n\r\n useEffect(() => {\r\n if (variantRef.current) {\r\n if (variant) {\r\n variantRef.current.style.display = \"inline-block\";\r\n } else {\r\n variantRef.current.style.display = \"none\";\r\n }\r\n }\r\n }, [variant]);\r\n\r\n useEffect(() => {\r\n if (animationRef.current) {\r\n if (animation && viewerRef.current.loaded) {\r\n animationRef.current.style.display = \"inline-block\";\r\n } else {\r\n animationRef.current.style.display = \"none\";\r\n }\r\n }\r\n }, [animation, animationRef]);\r\n\r\n useEffect(() => {\r\n if (viewerRef.current?.turntableRotation) {\r\n viewerRef.current.resetTurntableRotation();\r\n }\r\n }, [rotateAlongX]);\r\n\r\n useEffect(() => {\r\n setTimeout(() => {\r\n const { mouseControl, autoplay, shadow, rotate, rotateAlongX, rotateAlongY, loading } = attributes;\r\n if (viewerRef.current) {\r\n mouseControl ? viewerRef.current.setAttribute(\"camera-controls\", \"\") : viewerRef.current.removeAttribute(\"camera-controls\");\r\n autoplay ? viewerRef.current.setAttribute(\"autoplay\", \"\") : viewerRef.current.removeAttribute(\"autoplay\");\r\n shadow ? viewerRef.current.setAttribute(\"shadow-intensity\", \"1\") : viewerRef.current.removeAttribute(\"shadow-intensity\");\r\n shadow ? viewerRef.current.setAttribute(\"shadow-softness\", \"1\") : viewerRef.current.removeAttribute(\"shadow-softness\");\r\n loading ? viewerRef.current.setAttribute(\"loading\", loading) : viewerRef.current.removeAttribute(\"loading\");\r\n if (autoRotate) {\r\n viewerRef.current.setAttribute(\"auto-rotate\", \"\");\r\n viewerRef.current.setAttribute(\"rotation-per-second\", rotationPerSecond + \"deg\");\r\n } else {\r\n viewerRef.current.removeAttribute(\"auto-rotate\");\r\n }\r\n rotate ? viewerRef.current.setAttribute(\"camera-orbit\", `${rotateAlongX}deg ${rotateAlongY}deg 105%`) : viewerRef.current.removeAttribute(\"camera-orbit\");\r\n viewerRef.current.setAttribute(\"reveal\", preload);\r\n viewerRef.current.dataset.animation = selectedAnimation;\r\n viewerRef.current.setAttribute(\"exposure\", exposure);\r\n\r\n if (!zoom) {\r\n viewerRef.current.setAttribute(\"disable-zoom\", \"\");\r\n } else {\r\n viewerRef.current.removeAttribute(\"disable-zoom\");\r\n }\r\n\r\n viewerRef.current?.addEventListener(\"load\", function () {\r\n // applyTexture();\r\n viewerRef.current.setAttribute(\"scale\", `${zoomLevel} ${zoomLevel} ${zoomLevel}`);\r\n });\r\n\r\n if (viewerRef.current?.loaded) {\r\n viewerRef.current.setAttribute(\"scale\", `${zoomLevel} ${zoomLevel} ${zoomLevel}`);\r\n }\r\n }\r\n\r\n setTimeout(() => {\r\n rotate ? viewerRef.current?.setAttribute(\"camera-orbit\", `${rotateAlongX}deg ${rotateAlongY}deg 105%`) : viewerRef.current?.removeAttribute(\"camera-orbit\");\r\n }, 500);\r\n }, 10);\r\n }, [uniqueId, attributes]);\r\n\r\n useEffect(() => {\r\n if (woo) {\r\n // change model when change product variation | woocommerce default template\r\n const variantElement = document.querySelector(\".variations_form .variations select\");\r\n variantElement?.addEventListener(\"change\", function (e) {\r\n const modelItem = models.find((item) => item.product_variant === e.target.value) || models.find((item) => item.product_variant === \"all\") || models?.[0];\r\n setModelSrc(modelItem.modelUrl);\r\n });\r\n\r\n // change model when change variation | unknow template\r\n document.querySelectorAll(\".variable-items-wrapper li\")?.forEach((variant) =>\r\n variant.addEventListener(\"click\", function () {\r\n const modelItem = models.find((item) => item.product_variant === variant.dataset?.value) || models.find((item) => item.product_variant === \"all\") || models?.[0];\r\n setModelSrc(modelItem.modelUrl);\r\n })\r\n );\r\n\r\n // change model when change variation | Swatchly – WooCommerce Variation Swatches\r\n if (container.current) {\r\n const slickItem = document.querySelector(\".wl-single-slider:not(.slick-cloned)\");\r\n if (slickItem && !slickItem.querySelector(\".modelViewerBlock\")) {\r\n console.log(\"moved\");\r\n slickItem.append(container.current.parentElement);\r\n container.current.parentElement.style.display = \"none\";\r\n setTimeout(() => {\r\n container.current.style.height = `calc(${getComputedStyle(container.current).height} - 100px)`;\r\n console.log(`calc(${getComputedStyle(container.current).height} - 100px)`);\r\n }, 100);\r\n }\r\n // if (document.querySelectorAll(\".swatchly-type-wrap\")) {\r\n // }\r\n\r\n document.querySelectorAll(\".swatchly-swatch\")?.forEach((variant) => {\r\n function handelClick() {\r\n slickItem?.classList.add(\"bp3d_slick_model_container\");\r\n const modelItem = models.find((item) => item.product_variant === variant.dataset?.attr_value) || models.find((item) => item.product_variant === \"all\") || models?.[0];\r\n setModelSrc(modelItem.modelUrl);\r\n container.current.parentElement.style.display = \"block\";\r\n }\r\n variant.removeEventListener(\"click\", handelClick);\r\n variant.addEventListener(\"click\", handelClick);\r\n });\r\n }\r\n\r\n setTimeout(() => {\r\n const targetElement = document.querySelector(\".select2-selection__rendered\");\r\n // Create a new MutationObserver\r\n const observer = new MutationObserver(function (mutationsList) {\r\n // This callback function will be called when the innerText changes\r\n for (const mutation of mutationsList) {\r\n if (mutation.type === \"childList\" && mutation.target === targetElement) {\r\n const modelItem = models.find((item) => item.product_variant === targetElement.innerText) || models.find((item) => item.product_variant === \"all\") || models?.[0];\r\n setModelSrc(modelItem.modelUrl);\r\n }\r\n }\r\n });\r\n\r\n // Configure and start observing the target element\r\n if (targetElement) {\r\n const config = { childList: true, subtree: true };\r\n observer.observe(targetElement, config);\r\n }\r\n }, 1000);\r\n }\r\n }, [woo]);\r\n\r\n const modelPoster = multiple ? models[0]?.poster : model?.poster;\r\n\r\n useEffect(() => {}, [model]);\r\n\r\n const container = useRef();\r\n\r\n return (\r\n
\r\n
\r\n