@ikas/storefront 2.0.0-alpha.11 → 2.0.0-alpha.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/_virtual/index.js_commonjs-proxy2.js +1 -1
- package/build/_virtual/index.js_commonjs-proxy3.js +1 -1
- package/build/_virtual/index.js_commonjs-proxy4.js +1 -1
- package/build/components/index.d.ts +1 -1
- package/build/components/page-editor/ThemeComponentEditor.js +1 -1
- package/build/components/page-editor/index.d.ts +3 -1
- package/build/components/page-editor/index.js +1 -1
- package/build/components/page-editor/loader/index.d.ts +5 -1
- package/build/components/page-editor/loader/index.js +1 -1
- package/build/components/page-editor/loader/style.module.scss.js +1 -1
- package/build/components/page-editor/model.d.ts +5 -4
- package/build/components/page-editor/model.js +1 -1
- package/build/pages/editor.d.ts +5 -2
- package/build/pages/editor.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import o from'../ext/split-on-first/index.js';export{default}from"../node_modules/split-on-first/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from'../ext/
|
|
1
|
+
import e from'../ext/strict-uri-encode/index.js';export{default}from"../node_modules/strict-uri-encode/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import e from'../ext/decode-uri-component/index.js';export{default}from"../node_modules/decode-uri-component/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__extends as e,__assign as o}from'../../ext/tslib/tslib.es6.js';import*as t from"react";import r from"./error/index.js";import"../../models/data/blog/index.js";import"../../models/data/brand/index.js";import"../../models/data/category/index.js";import{IkasCheckout as i}from"../../models/data/checkout/index.js";import"../../models/data/customer/address/index.js";import"../../models/data/customer/index.js";import"../../models/data/customer-review/index.js";import"../../models/data/html-meta-data/index.js";import"../../models/data/image/index.js";import"../../models/data/installment-info/index.js";import"../../models/data/order/index.js";import{IkasOrderLineItem as n}from"../../models/data/order/line-item/index.js";import{reaction as s,makeObservable as a,computed as
|
|
1
|
+
import{__extends as e,__assign as o}from'../../ext/tslib/tslib.es6.js';import*as t from"react";import r from"./error/index.js";import"../../models/data/blog/index.js";import"../../models/data/brand/index.js";import"../../models/data/category/index.js";import{IkasCheckout as i}from"../../models/data/checkout/index.js";import"../../models/data/customer/address/index.js";import"../../models/data/customer/index.js";import"../../models/data/customer-review/index.js";import"../../models/data/html-meta-data/index.js";import"../../models/data/image/index.js";import"../../models/data/installment-info/index.js";import"../../models/data/order/index.js";import{IkasOrderLineItem as n}from"../../models/data/order/line-item/index.js";import{reaction as s,makeObservable as a,computed as m}from"mobx";import"../../models/data/product/index.js";import"../../models/data/variant-type/index.js";import"../../models/data/product/variant/index.js";import"../../models/data/product/variant/price/index.js";import"../../models/data/product-attribute/index.js";import"../../models/data/product/attribute-value/index.js";import"../../models/data/product-filter/index.js";import"../../models/data/variant-type/variant-value/index.js";import"../../models/data/order-transaction/index.js";import"../../models/data/product-option-set/index.js";import"../../models/data/raffle/index.js";import"../../models/theme/theme.js";import{IkasThemePageType as d}from"../../models/theme/page/index.js";import"../../models/theme/component/prop/index.js";import"../../models/theme/page/component/prop-value/link.js";import"../../models/ui/brand-list/index.js";import"../../models/ui/blog-list/index.js";import"../../models/ui/blog-category-list/index.js";import"../../models/ui/category-list/index.js";import"../../models/ui/product-detail/index.js";import"../../models/ui/product-list/index.js";import"../../models/ui/product-attribute-detail/index.js";import"../../models/ui/product-attribute-list/index.js";import"../../models/ui/customer-review-list/index.js";import"../../models/ui/validator/index.js";import"../../models/ui/validator/rules/index.js";import"../../models/ui/validator/form/login.js";import"../../models/ui/validator/form/address.js";import"../../models/ui/validator/form/register.js";import"../../models/ui/validator/form/contact-form.js";import"../../models/ui/validator/form/forgot-password.js";import"../../models/ui/validator/form/recover-password.js";import"../../models/ui/validator/form/account-info.js";import"../../models/ui/validator/form/raffle-form.js";import"../../models/ui/validator/form/customer-review.js";import"../../models/ui/raffle-list/index.js";import"../../models/theme/settings/index.js";import"../../models/theme/custom-data/index.js";import{IkasStorefrontConfig as p}from"../../storefront/index.js";import{IkasCheckoutSettings as l}from"../../models/data/checkout-settings/index.js";import u from"../checkout/index.js";import{IkasCart as c}from"../../models/data/cart/index.js";import{IkasPageDataInit as v}from"../../providers/page-data-init.js";import{Observer as f}from"mobx-react-lite";var j=function(j){function g(e){var o=j.call(this,e)||this;return o.state={hasError:!1},o.onMouseEnter=function(){var e=o.props,t=e.vm,r=e.pageComponent;t.onMouseOver(r.id)},o.onMouseLeave=function(){var e=o.props,t=e.vm,r=e.pageComponent;t.onMouseLeave(r.id)},o.onClick=function(){var e=o.props,t=e.vm,r=e.pageComponent;t.onClick(r.id)},o.ref=t.createRef(),a(o,{pageComponentPropValue:m,propValues:m,isSelected:m,isHovered:m,hasNullValue:m,rendered:m,Component:m}),o}return e(g,j),g.prototype.componentDidMount=function(){var e=this.props.vm;this.disposer&&this.disposer(),this.disposer=s((function(){var o;return null===(o=e.theme)||void 0===o?void 0:o.settings}),(function(){var o;null===(o=e.theme)||void 0===o||o.settings.colors.map((function(e){return document.documentElement.style.setProperty(e.key,e.color)}))}))},g.prototype.componentWillUnmount=function(){this.disposer&&this.disposer()},g.getDerivedStateFromError=function(e){return console.error(e),{hasError:!0}},Object.defineProperty(g.prototype,"pageComponentPropValue",{get:function(){var e=this.props,o=e.vm,t=e.pageComponent;return o.pageDataProvider.pageComponentPropValues.find((function(e){return e.pageComponent.id===t.id}))},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"propValues",{get:function(){var e,t,r=this.props.vm,s=null===(e=this.pageComponentPropValue)||void 0===e?void 0:e.propValues;(null===(t=r.page)||void 0===t?void 0:t.type)===d.CHECKOUT&&(s={checkout:new i({cart:new c({items:[new n({currencyCode:"TRY",finalPrice:100,finalPriceWithQuantity:100,price:100,priceWithQuantity:100,quantity:1})]})}),checkoutSettings:new l,merchantSettings:null,customizationProps:o({},s),returnPolicy:"",privacyPolicy:"",termsOfService:""});return s},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"isSelected",{get:function(){var e=this.props,o=e.vm,t=e.pageComponent;return o.selectedPageComponentId===t.id},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"isHovered",{get:function(){var e=this.props,o=e.vm,t=e.pageComponent;return o.hoveredPageComponentId===t.id},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"hasNullValue",{get:function(){var e,o=this;return!!(null===(e=this.pageComponentPropValue)||void 0===e?void 0:e.component.props.some((function(e){if(e.isRequired){var t=(o.propValues||{})[e.name];return null===t||null==t}})))},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"rendered",{get:function(){var e,i,n=this.Component,s=this.props.vm,a=p.store;return this.hasNullValue||this.state.hasError?t.createElement(r,{name:null===(e=this.pageComponentPropValue)||void 0===e?void 0:e.component.displayName}):t.createElement(n,o({},this.propValues,{store:a,settings:null===(i=s.theme)||void 0===i?void 0:i.settings,pageSpecificData:v.pageSpecificData}))},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"Component",{get:function(){var e,o=this.props,t=o.vm,r=o.pageComponent,i=p.currentPageComponents;if(!i)return null;var n=i[r.componentId];return(null===(e=t.page)||void 0===e?void 0:e.type)===d.CHECKOUT&&(n=u),n},enumerable:!1,configurable:!0}),g.prototype.render=function(){var e=this;return t.createElement(f,null,(function(){var o;return e.state.hasError?t.createElement("div",{ref:e.ref,style:{position:"relative"},onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave,onClick:e.onClick},t.createElement(r,{name:null===(o=e.pageComponentPropValue)||void 0===o?void 0:o.component.displayName}),";"):p.currentPageComponents?t.createElement("div",{ref:e.ref,style:{position:"relative"},onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave},e.rendered):(console.error("Components for the page not found."),null)}))},g}(t.Component);export{j as ThemeEditorComponent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{__extends as e}from'../../ext/tslib/tslib.es6.js';import*as t from"react";import{Observer as o}from"mobx-react-lite";import{withRouter as n}from"next/router.js";import{ThemeEditorComponent as r}from"./ThemeComponentEditor.js";import i from"./model.js";import{IkasPageHead as a}from"../page/head.js";import{IkasEditorComponentLoader as m}from"./loader/index.js";import{makeObservable as p,computed as l}from"mobx";var d=n(function(n){function d(e){var t=n.call(this,e)||this;return t.href=window.location.href,t.interceptClickEvent=function(e){var t=e.target;"A"===t.tagName&&(t.getAttribute("href"),e.preventDefault())},t.handleRouteChangeStart=function(e,o){throw o.shallow||t.vm.onPageChange(e),""},t.vm=new i(e.router),p(t,{headerPageComponent:l,footerPageComponent:l,otherComponents:l}),t}return e(d,n),d.prototype.componentDidMount=function(){this.props.router.events.on("routeChangeStart",this.handleRouteChangeStart),document.addEventListener&&document.addEventListener("click",this.interceptClickEvent)},d.prototype.componentWillUnmount=function(){this.props.router.events.off("routeChangeStart",this.handleRouteChangeStart),document.removeEventListener("click",this.interceptClickEvent)},Object.defineProperty(d.prototype,"headerPageComponent",{get:function(){var e,t=this.vm;return null===(e=t.pageComponents)||void 0===e?void 0:e.find((function(e){var o,n;return e.componentId===(null===(n=null===(o=t.theme)||void 0===o?void 0:o.headerComponent)||void 0===n?void 0:n.id)}))},enumerable:!1,configurable:!0}),Object.defineProperty(d.prototype,"footerPageComponent",{get:function(){var e,t=this.vm;return null===(e=t.pageComponents)||void 0===e?void 0:e.find((function(e){var o,n;return e.componentId===(null===(n=null===(o=t.theme)||void 0===o?void 0:o.footerComponent)||void 0===n?void 0:n.id)}))},enumerable:!1,configurable:!0}),Object.defineProperty(d.prototype,"otherComponents",{get:function(){var e,t=this.vm;return null===(e=t.pageComponents)||void 0===e?void 0:e.filter((function(e){var o,n,r,i;return e.componentId!==(null===(n=null===(o=t.theme)||void 0===o?void 0:o.headerComponent)||void 0===n?void 0:n.id)&&e.componentId!==(null===(i=null===(r=t.theme)||void 0===r?void 0:r.footerComponent)||void 0===i?void 0:i.id)}))},enumerable:!1,configurable:!0}),d.prototype.render=function(){var e=this,n=this.vm;return t.createElement(o,null,(function(){var o;return n.isLoading?t.createElement(m,{isFullPage:!0}):t.createElement(t.Fragment,null,!!n.page&&t.createElement(a,{pageType:n.page.type,pageTitle:n.page.pageTitle,pageDescription:n.page.description}),t.createElement("div",{style:u},t.createElement("div",null,!!e.headerPageComponent&&t.createElement(r,{key:e.headerPageComponent.id,vm:n,pageComponent:e.headerPageComponent}),null===(o=e.otherComponents)||void 0===o?void 0:o.map((function(e){return t.createElement(r,{key:e.id,vm:n,pageComponent:e})}))),!!e.footerPageComponent&&t.createElement(r,{key:e.footerPageComponent.id,vm:n,pageComponent:e.footerPageComponent})))}))},d}(t.Component)),u={minHeight:"100vh",width:"100vw",display:"flex",flexDirection:"column",justifyContent:"space-between"};export{d as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as e from"react";import
|
|
1
|
+
import*as e from"react";import a from"./style.module.scss.js";var r=function(r){var t=r.isFullPage;return e.createElement("div",{className:[a.Container,t?a.fullPage:""].join(" ")},e.createElement("div",{className:a.loader}))};export{r as IkasEditorComponentLoader};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from'../../../ext/style-inject/dist/style-inject.es.js';var n={Container:"style-module_Container__1eB6f",loader:"style-module_loader__1ahiK",load8:"style-module_load8__1jjFg"};e(".style-module_Container__1eB6f {\n width: 100%;\n height: 300px;\n background-color: white;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.style-module_Container__1eB6f .style-module_loader__1ahiK,\n.style-module_Container__1eB6f .style-module_loader__1ahiK:after {\n border-radius: 50%;\n width: 5em;\n height: 5em;\n}\n.style-module_Container__1eB6f .style-module_loader__1ahiK {\n font-size: 6px;\n position: relative;\n text-indent: -9999em;\n border-top: 0.5em solid rgba(255, 255, 255, 0.2);\n border-right: 0.5em solid rgba(255, 255, 255, 0.2);\n border-bottom: 0.5em solid rgba(255, 255, 255, 0.2);\n border-left: 0.5em solid black;\n -webkit-transform: translateZ(0);\n -ms-transform: translateZ(0);\n transform: translateZ(0);\n -webkit-animation: style-module_load8__1jjFg 1.1s infinite linear;\n animation: style-module_load8__1jjFg 1.1s infinite linear;\n}\n@-webkit-keyframes style-module_load8__1jjFg {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@keyframes style-module_load8__1jjFg {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}");export{n as default};
|
|
1
|
+
import e from'../../../ext/style-inject/dist/style-inject.es.js';var n={Container:"style-module_Container__1eB6f",fullPage:"style-module_fullPage__3P2Pz",loader:"style-module_loader__1ahiK",load8:"style-module_load8__1jjFg"};e(".style-module_Container__1eB6f {\n width: 100%;\n height: 300px;\n background-color: white;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.style-module_Container__1eB6f.style-module_fullPage__3P2Pz {\n height: 100vh;\n}\n.style-module_Container__1eB6f .style-module_loader__1ahiK,\n.style-module_Container__1eB6f .style-module_loader__1ahiK:after {\n border-radius: 50%;\n width: 5em;\n height: 5em;\n}\n.style-module_Container__1eB6f .style-module_loader__1ahiK {\n font-size: 6px;\n position: relative;\n text-indent: -9999em;\n border-top: 0.5em solid rgba(255, 255, 255, 0.2);\n border-right: 0.5em solid rgba(255, 255, 255, 0.2);\n border-bottom: 0.5em solid rgba(255, 255, 255, 0.2);\n border-left: 0.5em solid black;\n -webkit-transform: translateZ(0);\n -ms-transform: translateZ(0);\n transform: translateZ(0);\n -webkit-animation: style-module_load8__1jjFg 1.1s infinite linear;\n animation: style-module_load8__1jjFg 1.1s infinite linear;\n}\n@-webkit-keyframes style-module_load8__1jjFg {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@keyframes style-module_load8__1jjFg {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}");export{n as default};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { NextRouter } from "next/router.js";
|
|
2
2
|
import { IkasThemePage, IkasThemePageComponent, IkasTheme, IkasThemeComponent } from "../../models";
|
|
3
3
|
import { IkasPageDataProvider } from "../../providers/page-data-get";
|
|
4
|
-
import { IkasThemePageSpecification } from "../../models/theme/page";
|
|
4
|
+
import { IkasThemePageSpecification, IkasThemePageType } from "../../models/theme/page";
|
|
5
5
|
export default class IkasPageEditorViewModel {
|
|
6
6
|
theme?: IkasTheme | null;
|
|
7
7
|
page?: IkasThemePage | null;
|
|
@@ -12,7 +12,6 @@ export default class IkasPageEditorViewModel {
|
|
|
12
12
|
locale: string;
|
|
13
13
|
translations?: Record<string, any>;
|
|
14
14
|
pageParams: Record<string, any>;
|
|
15
|
-
queryParams: Record<string, any>;
|
|
16
15
|
apiKey?: string | null;
|
|
17
16
|
pageDataProvider?: IkasPageDataProvider | null;
|
|
18
17
|
router: NextRouter;
|
|
@@ -26,8 +25,9 @@ export default class IkasPageEditorViewModel {
|
|
|
26
25
|
onClick: (id: string) => void;
|
|
27
26
|
onMouseOver: (id: string) => void;
|
|
28
27
|
onMouseLeave: (id: string) => void;
|
|
28
|
+
onPageChange: (url: string) => Promise<void>;
|
|
29
29
|
sendMessage: (type: BridgeMessageType, data?: any) => void;
|
|
30
|
-
getPagePropValues: () => Promise<
|
|
30
|
+
getPagePropValues: (theme: IkasTheme, pageType: IkasThemePageType, pageParams: Record<string, any>) => Promise<IkasPageDataProvider>;
|
|
31
31
|
setComponentRef: (element: React.ElementType, component: IkasThemePageComponent) => void;
|
|
32
32
|
isScrolledIntoView: (el: HTMLElement) => boolean;
|
|
33
33
|
handleUpdateFrameData: (data: any) => Promise<void>;
|
|
@@ -61,5 +61,6 @@ export declare enum BridgeMessageType {
|
|
|
61
61
|
SET_SELECTED_COMPONENT = "SET_SELECTED_COMPONENT",
|
|
62
62
|
SET_HOVERED_COMPONENT = "SET_HOVERED_COMPONENT",
|
|
63
63
|
SCROLL_TO_COMPONENT = "SCROLL_TO_COMPONENT",
|
|
64
|
-
UPDATE_THEME_SETTINGS = "UPDATE_THEME_SETTINGS"
|
|
64
|
+
UPDATE_THEME_SETTINGS = "UPDATE_THEME_SETTINGS",
|
|
65
|
+
EDITOR_PAGE_CHANGE = "EDITOR_PAGE_CHANGE"
|
|
65
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as t}from'../../ext/tslib/tslib.es6.js';import{makeAutoObservable as o,runInAction as n}from"mobx";import"../../models/data/blog/index.js";import"../../models/data/brand/index.js";import"../../models/data/category/index.js";import"../../models/data/checkout/index.js";import"../../models/data/customer/address/index.js";import"../../models/data/customer/index.js";import"../../models/data/customer-review/index.js";import"../../models/data/html-meta-data/index.js";import"../../models/data/image/index.js";import"../../models/data/installment-info/index.js";import"../../models/data/order/index.js";import"../../models/data/order/line-item/index.js";import"../../models/data/product/index.js";import"../../models/data/variant-type/index.js";import"../../models/data/product/variant/index.js";import"../../models/data/product/variant/price/index.js";import"../../models/data/product-attribute/index.js";import"../../models/data/product/attribute-value/index.js";import"../../models/data/product-filter/index.js";import"../../models/data/variant-type/variant-value/index.js";import"../../models/data/order-transaction/index.js";import"../../models/data/product-option-set/index.js";import"../../models/data/raffle/index.js";import{IkasTheme as i}from"../../models/theme/theme.js";import{IkasThemePageType as r}from"../../models/theme/page/index.js";import{IkasThemePageComponent as s}from"../../models/theme/page/component/index.js";import{IkasThemeComponent as a}from"../../models/theme/component/index.js";import{IkasThemeComponentPropType as d}from"../../models/theme/component/prop/index.js";import"../../models/theme/page/component/prop-value/link.js";import"../../models/ui/brand-list/index.js";import"../../models/ui/blog-list/index.js";import"../../models/ui/blog-category-list/index.js";import"../../models/ui/category-list/index.js";import"../../models/ui/product-detail/index.js";import"../../models/ui/product-list/index.js";import"../../models/ui/product-attribute-detail/index.js";import"../../models/ui/product-attribute-list/index.js";import"../../models/ui/customer-review-list/index.js";import"../../models/ui/validator/index.js";import"../../models/ui/validator/rules/index.js";import"../../models/ui/validator/form/login.js";import"../../models/ui/validator/form/address.js";import"../../models/ui/validator/form/register.js";import"../../models/ui/validator/form/contact-form.js";import"../../models/ui/validator/form/forgot-password.js";import"../../models/ui/validator/form/recover-password.js";import"../../models/ui/validator/form/account-info.js";import"../../models/ui/validator/form/raffle-form.js";import"../../models/ui/validator/form/customer-review.js";import"../../models/ui/raffle-list/index.js";import{IkasThemeSettings as p}from"../../models/theme/settings/index.js";import"../../models/theme/custom-data/index.js";import{IkasPageDataProvider as m}from"../../providers/page-data-get.js";import{IkasPageDataInit as l}from"../../providers/page-data-init.js";import"../../api/blog/index.js";import"../../api/brand/index.js";import"../../api/cart/index.js";import"../../api/category/index.js";import"../../api/checkout/index.js";import"../../api/city/index.js";import"../../api/country/index.js";import"../../api/customer/index.js";import"../../api/customer-review/index.js";import"../../api/district/index.js";import"../../api/html-meta-data/index.js";import"../../api/merchant/index.js";import"../../api/product-search/index.js";import{apollo as u}from"../../api/apollo.js";import"../../api/favorite-product/index.js";import"../../api/contact-form/index.js";import"../../api/state/index.js";import"../../api/product-option-set/index.js";import"../../api/raffle/index.js";import"../../api/back-in-stock-reminder/index.js";import{IkasStorefrontConfig as c}from"../../storefront/index.js";import{IkasStorefront as h}from"../../models/data/storefront/index.js";var f,g=function(){function g(g){var P=this;this.theme=null,this.page=null,this.selectedPageComponentId=null,this.hoveredPageComponentId=null,this.componentRefs={},this.isLoading=!1,this.locale="en",this.pageParams={},this.queryParams={},this.apiKey=null,this.pageDataProvider=null,this.startMessaging=function(){window.addEventListener("message",P.onMessage,!1),P.sendMessage(f.FRAME_DID_LOAD,"0.2.0")},this.onMessage=function(o){return e(P,void 0,void 0,(function(){var e,n;return t(this,(function(t){switch(t.label){case 0:switch(e=o.data.type,n=o.data.data,e){case f.UPDATE_FRAME_DATA:return[3,1];case f.UPDATE_PROP_VALUE:return[3,3];case f.UPDATE_PAGE_PARAMS:return[3,5];case f.UPDATE_PAGE_COMPONENT_ORDER:return[3,7];case f.ADD_COMPONENT:return[3,9];case f.DELETE_COMPONENT:return[3,10];case f.UPDATE_COMPONENT:return[3,11];case f.ADD_PAGE_COMPONENT:return[3,12];case f.DELETE_PAGE_COMPONENT:return[3,14];case f.SET_SELECTED_COMPONENT:return[3,15];case f.SET_HOVERED_COMPONENT:return[3,16];case f.SCROLL_TO_COMPONENT:return[3,17];case f.UPDATE_THEME_SETTINGS:return[3,18]}return[3,19];case 1:return[4,this.handleUpdateFrameData(n)];case 2:case 4:case 6:case 8:case 13:return t.sent(),[3,20];case 3:return[4,this.handleUpdatePropValue(n)];case 5:return[4,this.handleUpdatePageParams(n)];case 7:return[4,this.handleUpdatePageComponentOrder(n)];case 9:return this.handleAddNewComponent(n),[3,20];case 10:return this.handleDeleteComponent(n),[3,20];case 11:return this.handleUpdateComponent(n),[3,20];case 12:return[4,this.handleAddNewPageComponent(n)];case 14:return this.handleDeletePageComponent(n),[3,20];case 15:return this.handleSetSelectedComponent(n),[3,20];case 16:return this.handleSetHoveredComponent(n),[3,20];case 17:return this.handleScrollToComponent(n),[3,20];case 18:return this.updateThemeSettings(n),[3,20];case 19:return[3,20];case 20:return[2]}}))}))},this.onClick=function(e){P.sendMessage(f.COMPONENT_CLICK,{componentId:e})},this.onMouseOver=function(e){P.sendMessage(f.COMPONENT_MOUSE_OVER,{componentId:e})},this.onMouseLeave=function(e){P.sendMessage(f.COMPONENT_MOUSE_LEAVE,{componentId:e})},this.sendMessage=function(e,t){window.parent.postMessage({type:e,data:t},"*")},this.getPagePropValues=function(){return e(P,void 0,void 0,(function(){var e,o,i,s,a,d=this;return t(this,(function(t){switch(t.label){case 0:return e=new m(this.theme,this.pageParams,null===(o=this.page)||void 0===o?void 0:o.type),((null===(i=this.pageParams)||void 0===i?void 0:i.blogId)||(null===(s=this.pageParams)||void 0===s?void 0:s.blogCategoryId))&&(e.possiblePageTypes=[r.BLOG,r.BLOG_CATEGORY]),(null===(a=this.pageParams)||void 0===a?void 0:a.raffleId)&&(e.possiblePageTypes=[r.RAFFLE_DETAIL]),this.isLoading=!0,[4,e.getPageData()];case 1:return t.sent(),e.pageSpecificData&&l.setPageSpecificData(JSON.stringify(e.pageSpecificData),this.page.type,!0),e.pageComponentPropValues=l.initPropValues(JSON.stringify(e.pageComponentPropValues),this.router,JSON.stringify(this.theme.settings),!1),n((function(){d.pageDataProvider=e,d.isLoading=!1})),[2]}}))}))},this.setComponentRef=function(e,t){P.componentRefs[t.id]=e},this.isScrolledIntoView=function(e){var t=e.getBoundingClientRect(),o=t.top,n=t.bottom;return o<window.innerHeight&&n>=0&&n<window.innerHeight&&o>0},this.handleUpdateFrameData=function(o){return e(P,void 0,void 0,(function(){var e,n,r,s=this;return t(this,(function(t){switch(t.label){case 0:return this.theme=new i(o.theme),this.page=this.theme.pages.find((function(e){return e.id===o.selectedPage.id})),this.pageParams=o.pageParams,this.queryParams=o.queryParams,this.apiKey=o.apiKey,this.locale=o.locale||"en",this.translations=o.translations||void 0,(e=o.storefront)&&(n=new h(e),r=n.routings.find((function(e){return e.locale===s.locale})),c.storefrontId=n.id,c.storefrontRoutingId=null==r?void 0:r.id,n.mainStorefrontThemeId&&(c.storefrontThemeId=n.mainStorefrontThemeId),n.salesChannelId&&(c.salesChannelId=n.salesChannelId),(null==r?void 0:r.priceListId)&&(c.priceListId=r.priceListId),c.routings=n.routings,c.stockPreference=this.theme.settings.stockPreference),this.translations&&(c.translations=this.translations),c.isEditor=!0,u.createApolloClient(this.apiKey||void 0),window.editorApiKey=o.apiKey,[4,this.getPagePropValues()];case 1:return t.sent(),[2]}}))}))},this.handleUpdatePropValue=function(o){return e(P,void 0,void 0,(function(){var e,i,r,s,a,p,m,u,c=this;return t(this,(function(t){switch(t.label){case 0:return e=o.propName,i=o.value,(r=null===(m=null===(p=this.selectedComponent)||void 0===p?void 0:p.props)||void 0===m?void 0:m.find((function(t){return t.name===e})))&&this.selectedPageComponent?(s=null===(u=this.pageDataProvider)||void 0===u?void 0:u.pageComponentPropValues.find((function(e){return e.pageComponent.id===c.selectedPageComponentId})),this.selectedPageComponent.propValues[e]=i,this.pageDataProvider?[4,this.pageDataProvider.getPageComponentPropValue(this.selectedPageComponent,r)]:[2]):[2];case 1:return a=t.sent(),n((function(){s&&(s.propValues[e]=a,r.type===d.CUSTOM?l.initCustomDataPropValue(r,a,s,c.router,c.theme.settings,!0):r.type===d.COMPONENT?l.initComponentPropValue(r,a,s,c.router,c.theme.settings,!0):r.type===d.COMPONENT_LIST&&l.initComponentListPropValue(r,a,s,c.router,c.theme.settings,!0))})),[2]}}))}))},this.handleUpdatePageParams=function(o){return e(P,void 0,void 0,(function(){return t(this,(function(e){switch(e.label){case 0:return this.pageParams=o.pageParams,this.queryParams=o.queryParams,[4,this.getPagePropValues()];case 1:return e.sent(),[2]}}))}))},this.handleUpdatePageComponentOrder=function(o){return e(P,void 0,void 0,(function(){return t(this,(function(e){return this.specification?this.specification.components=o.pageComponents.map((function(e){return new s(e)})):this.page.components=o.pageComponents.map((function(e){return new s(e)})),[2]}))}))},this.handleAddNewComponent=function(e){var t,o=new a(e.component);null===(t=P.theme)||void 0===t||t.components.push(o)},this.handleDeleteComponent=function(e){var t,o;(null===(t=P.theme)||void 0===t?void 0:t.components)&&(P.theme.components=P.theme.components.filter((function(t){return t.id!==e.componentId})));var n=P.pageComponents.filter((function(t){return t.componentId!==e.componentId}))||[];P.specification&&P.specification.components&&(P.specification.components=n),!P.specification&&(null===(o=P.page)||void 0===o?void 0:o.components)&&(P.page.components=n)},this.handleUpdateComponent=function(e){var t=P.theme.components.findIndex((function(t){return t.id===e.component.id}));-1!==t&&(P.theme.components[t]=new a(e.component))},this.handleAddNewPageComponent=function(o){return e(P,void 0,void 0,(function(){var e,i,r=this;return t(this,(function(t){switch(t.label){case 0:return e=new s(o.pageComponent),this.pageComponents.some((function(t){return t.id===e.id}))?[2]:[4,this.pageDataProvider.getPageComponentPropValues(e)];case 1:return i=t.sent(),n((function(){i.component.props.filter((function(e){return e.type===d.CUSTOM})).forEach((function(e){l.initCustomDataPropValue(e,i.propValues[e.name],i,r.router,r.theme.settings,!0)})),r.pageDataProvider.pageComponentPropValues.push(i),r.pageComponents.push(e)})),[2]}}))}))},this.handleDeletePageComponent=function(e){P.specification?P.specification.components=P.pageComponents.filter((function(t){return t.id!==e.pageComponentId})):P.page.components=P.pageComponents.filter((function(t){return t.id!==e.pageComponentId}))},this.handleSetSelectedComponent=function(e){P.selectedPageComponentId=e.componentId},this.handleSetHoveredComponent=function(e){P.hoveredPageComponentId=e.componentId},this.handleScrollToComponent=function(e){var t=e.componentId,o=P.componentRefs[t];o&&(P.isScrolledIntoView(o)||window.scrollTo({top:o.offsetTop,behavior:"smooth"}))},this.updateThemeSettings=function(e){var t=e.settings;P.theme&&(P.theme.settings=new p(t))},this.router=g,o(this),this.startMessaging()}return Object.defineProperty(g.prototype,"specification",{get:function(){var e,t,o,n,i,s,a,d=this,p=this.page;return(null==p?void 0:p.type)===r.PRODUCT&&(a=null===(e=p.specifications)||void 0===e?void 0:e.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.productId)}))),(null==p?void 0:p.type)===r.CATEGORY&&(a=null===(t=p.specifications)||void 0===t?void 0:t.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.categoryId)}))),(null==p?void 0:p.type)===r.BRAND&&(a=null===(o=p.specifications)||void 0===o?void 0:o.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.brandId)}))),(null==p?void 0:p.type)===r.BLOG&&(a=null===(n=p.specifications)||void 0===n?void 0:n.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.blogId)}))),(null==p?void 0:p.type)===r.BLOG_CATEGORY&&(a=null===(i=p.specifications)||void 0===i?void 0:i.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.blogCategoryId)}))),(null==p?void 0:p.type)===r.RAFFLE_DETAIL&&(a=null===(s=p.specifications)||void 0===s?void 0:s.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.raffleId)}))),a},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"pageComponents",{get:function(){var e;return this.specification?this.specification.components:(null===(e=this.page)||void 0===e?void 0:e.components)||[]},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"selectedPageComponent",{get:function(){var e=this;return this.pageComponents.find((function(t){return t.id===e.selectedPageComponentId}))},enumerable:!1,configurable:!0}),Object.defineProperty(g.prototype,"selectedComponent",{get:function(){var e,t=this;return null===(e=this.theme)||void 0===e?void 0:e.components.find((function(e){var o;return e.id===(null===(o=t.selectedPageComponent)||void 0===o?void 0:o.componentId)}))},enumerable:!1,configurable:!0}),g}();!function(e){e.FRAME_DID_LOAD="FRAME_DID_LOAD",e.UPDATE_FRAME_DATA="UPDATE_FRAME_DATA",e.UPDATE_PROP_VALUE="UPDATE_PROP_VALUE",e.UPDATE_PAGE_PARAMS="UPDATE_PAGE_PARAMS",e.UPDATE_PAGE_COMPONENT_ORDER="UPDATE_PAGE_COMPONENT_ORDER",e.ADD_COMPONENT="ADD_COMPONENT",e.DELETE_COMPONENT="DELETE_COMPONENT",e.UPDATE_COMPONENT="UPDATE_COMPONENT",e.ADD_PAGE_COMPONENT="ADD_PAGE_COMPONENT",e.DELETE_PAGE_COMPONENT="DELETE_PAGE_COMPONENT",e.COMPONENT_MOUSE_OVER="COMPONENT_MOUSE_OVER",e.COMPONENT_MOUSE_LEAVE="COMPONENT_MOUSE_LEAVE",e.COMPONENT_CLICK="COMPONENT_CLICK",e.SET_SELECTED_COMPONENT="SET_SELECTED_COMPONENT",e.SET_HOVERED_COMPONENT="SET_HOVERED_COMPONENT",e.SCROLL_TO_COMPONENT="SCROLL_TO_COMPONENT",e.UPDATE_THEME_SETTINGS="UPDATE_THEME_SETTINGS"}(f||(f={}));export{f as BridgeMessageType,g as default};
|
|
1
|
+
import{__awaiter as e,__generator as t}from'../../ext/tslib/tslib.es6.js';import{makeAutoObservable as i,runInAction as o}from"mobx";import{IkasBlogMetadataTargetType as n}from"../../models/data/blog/index.js";import"../../models/data/brand/index.js";import"../../models/data/category/index.js";import"../../models/data/checkout/index.js";import"../../models/data/customer/address/index.js";import"../../models/data/customer/index.js";import"../../models/data/customer-review/index.js";import{IkasHTMLMetaDataTargetType as a}from"../../models/data/html-meta-data/index.js";import"../../models/data/image/index.js";import"../../models/data/installment-info/index.js";import"../../models/data/order/index.js";import"../../models/data/order/line-item/index.js";import"../../models/data/product/index.js";import"../../models/data/variant-type/index.js";import"../../models/data/product/variant/index.js";import"../../models/data/product/variant/price/index.js";import"../../models/data/product-attribute/index.js";import"../../models/data/product/attribute-value/index.js";import"../../models/data/product-filter/index.js";import"../../models/data/variant-type/variant-value/index.js";import"../../models/data/order-transaction/index.js";import"../../models/data/product-option-set/index.js";import"../../models/data/raffle/index.js";import{IkasTheme as s}from"../../models/theme/theme.js";import{IkasThemePageType as r}from"../../models/theme/page/index.js";import{IkasThemePageComponent as d}from"../../models/theme/page/component/index.js";import{IkasThemeComponent as p}from"../../models/theme/component/index.js";import{IkasThemeComponentPropType as l}from"../../models/theme/component/prop/index.js";import"../../models/theme/page/component/prop-value/link.js";import"../../models/ui/brand-list/index.js";import"../../models/ui/blog-list/index.js";import"../../models/ui/blog-category-list/index.js";import"../../models/ui/category-list/index.js";import"../../models/ui/product-detail/index.js";import"../../models/ui/product-list/index.js";import"../../models/ui/product-attribute-detail/index.js";import"../../models/ui/product-attribute-list/index.js";import"../../models/ui/customer-review-list/index.js";import"../../models/ui/validator/index.js";import"../../models/ui/validator/rules/index.js";import"../../models/ui/validator/form/login.js";import"../../models/ui/validator/form/address.js";import"../../models/ui/validator/form/register.js";import"../../models/ui/validator/form/contact-form.js";import"../../models/ui/validator/form/forgot-password.js";import"../../models/ui/validator/form/recover-password.js";import"../../models/ui/validator/form/account-info.js";import"../../models/ui/validator/form/raffle-form.js";import"../../models/ui/validator/form/customer-review.js";import"../../models/ui/raffle-list/index.js";import{IkasThemeSettings as m}from"../../models/theme/settings/index.js";import"../../models/theme/custom-data/index.js";import{IkasPageDataProvider as c}from"../../providers/page-data-get.js";import{IkasPageDataInit as u}from"../../providers/page-data-init.js";import{IkasBlogAPI as h}from"../../api/blog/index.js";import"../../api/brand/index.js";import"../../api/cart/index.js";import"../../api/category/index.js";import"../../api/checkout/index.js";import"../../api/city/index.js";import"../../api/country/index.js";import"../../api/customer/index.js";import"../../api/customer-review/index.js";import"../../api/district/index.js";import{IkasHTMLMetaDataAPI as g}from"../../api/html-meta-data/index.js";import"../../api/merchant/index.js";import"../../api/product-search/index.js";import{apollo as f}from"../../api/apollo.js";import"../../api/favorite-product/index.js";import"../../api/contact-form/index.js";import"../../api/state/index.js";import"../../api/product-option-set/index.js";import{IkasRaffleAPI as E}from"../../api/raffle/index.js";import"../../api/back-in-stock-reminder/index.js";import{IkasStorefrontConfig as P}from"../../storefront/index.js";import{IkasStorefront as O}from"../../models/data/storefront/index.js";var v,C=function(){function C(C){var T=this;this.theme=null,this.page=null,this.selectedPageComponentId=null,this.hoveredPageComponentId=null,this.componentRefs={},this.isLoading=!1,this.locale="en",this.pageParams={},this.apiKey=null,this.pageDataProvider=null,this.startMessaging=function(){window.addEventListener("message",T.onMessage,!1),T.sendMessage(v.FRAME_DID_LOAD,"2.0.0")},this.onMessage=function(i){return e(T,void 0,void 0,(function(){var e,o;return t(this,(function(t){switch(t.label){case 0:switch(e=i.data.type,o=i.data.data,e){case v.UPDATE_FRAME_DATA:return[3,1];case v.UPDATE_PROP_VALUE:return[3,3];case v.UPDATE_PAGE_PARAMS:return[3,5];case v.UPDATE_PAGE_COMPONENT_ORDER:return[3,7];case v.ADD_COMPONENT:return[3,9];case v.DELETE_COMPONENT:return[3,10];case v.UPDATE_COMPONENT:return[3,11];case v.ADD_PAGE_COMPONENT:return[3,12];case v.DELETE_PAGE_COMPONENT:return[3,14];case v.SET_SELECTED_COMPONENT:return[3,15];case v.SET_HOVERED_COMPONENT:return[3,16];case v.SCROLL_TO_COMPONENT:return[3,17];case v.UPDATE_THEME_SETTINGS:return[3,18]}return[3,19];case 1:return[4,this.handleUpdateFrameData(o)];case 2:case 4:case 6:case 8:case 13:return t.sent(),[3,20];case 3:return[4,this.handleUpdatePropValue(o)];case 5:return[4,this.handleUpdatePageParams(o)];case 7:return[4,this.handleUpdatePageComponentOrder(o)];case 9:return this.handleAddNewComponent(o),[3,20];case 10:return this.handleDeleteComponent(o),[3,20];case 11:return this.handleUpdateComponent(o),[3,20];case 12:return[4,this.handleAddNewPageComponent(o)];case 14:return this.handleDeletePageComponent(o),[3,20];case 15:return this.handleSetSelectedComponent(o),[3,20];case 16:return this.handleSetHoveredComponent(o),[3,20];case 17:return this.handleScrollToComponent(o),[3,20];case 18:return this.updateThemeSettings(o),[3,20];case 19:return[3,20];case 20:return[2]}}))}))},this.onClick=function(e){T.sendMessage(v.COMPONENT_CLICK,{componentId:e})},this.onMouseOver=function(e){T.sendMessage(v.COMPONENT_MOUSE_OVER,{componentId:e})},this.onMouseLeave=function(e){T.sendMessage(v.COMPONENT_MOUSE_LEAVE,{componentId:e})},this.onPageChange=function(i){return e(T,void 0,void 0,(function(){var e,s,d,p,l,m,c,u=this;return t(this,(function(t){switch(t.label){case 0:return e=i.slice(1),s=e.split("?"),e=s[0],this.pageParams={},i.startsWith("/account/orders/")?d=r.ORDER_DETAIL:i.startsWith("/account/orders")?d=r.ORDERS:i.startsWith("/account/addresses")?d=r.ADDRESSES:i.startsWith("/account/favorite-products")?d=r.FAVORITE_PRODUCTS:i.startsWith("/account/forgot-password")?d=r.FORGOT_PASSWORD:i.startsWith("/account/login")?d=r.LOGIN:i.startsWith("/account/raffles")?d=r.RAFFLE_ACCOUNT:i.startsWith("/account/recover-password")?d=r.RECOVER_PASSWORD:i.startsWith("/account/register")?d=r.REGISTER:i.startsWith("/account")?d=r.ACCOUNT:i.startsWith("/blog/")?d=r.BLOG:i.startsWith("/blog")?d=r.BLOG_INDEX:i.startsWith("/pages")?(d=r.CUSTOM,this.pageParams={slug:e.split("/")[1]}):d=i.startsWith("/raffle/")?r.RAFFLE_DETAIL:i.startsWith("/raffle")?r.RAFFLE:i.startsWith("/404")?r.NOT_FOUND:i.startsWith("/cart")?r.CART:i.startsWith("/checkout")?r.CHECKOUT:"/"===i?r.INDEX:i.startsWith("/search")?r.SEARCH:r.PRODUCT,d!==r.PRODUCT?[3,2]:[4,g.listHTMLMetaData(e)];case 1:if(!(p=t.sent()).length)return[2];if((l=p[0]).targetType===a.PRODUCT)this.pageParams={productId:l.targetId,slug:e};else if(l.targetType===a.CATEGORY)d=r.CATEGORY,this.pageParams={categoryId:l.targetId,slug:e};else{if(l.targetType!==a.BRAND)return[2];d=r.BRAND,this.pageParams={brandId:l.targetId,slug:e}}t.label=2;case 2:return d!==r.BLOG?[3,4]:[4,h.listBlogMetaData(e)];case 3:if(!(p=t.sent()).length)return[2];if((l=p[0]).targetType===n.BLOG)this.pageParams={blogId:l.targetId,slug:e};else{if(l.targetType!==n.BLOG_CATEGORY)return[2];d=r.BLOG_CATEGORY,this.pageParams={blogCategoryId:l.targetId,slug:e}}t.label=4;case 4:return d!==r.RAFFLE_DETAIL?[3,6]:[4,E.listRaffleMetaData(e)];case 5:if(!(p=t.sent()).length)return[2];l=p[0],this.pageParams={raffleId:l.targetId,slug:e},t.label=6;case 6:return[4,this.getPagePropValues(this.theme,d,this.pageParams)];case 7:return m=t.sent(),o((function(){var e,t;P.store.currentPageType=d,u.pageDataProvider=m,d===r.CUSTOM?u.page=null===(e=u.theme)||void 0===e?void 0:e.pages.find((function(e){return e.type===d&&e.slug===u.pageParams.slug})):u.page=null===(t=u.theme)||void 0===t?void 0:t.pages.find((function(e){return e.type===d})),requestAnimationFrame((function(){document.body.scrollTop=0,document.scrollingElement&&(document.scrollingElement.scrollTop=0)}))})),this.sendMessage(v.EDITOR_PAGE_CHANGE,{pageType:d,pageParams:this.pageParams,pageSpecificData:(null===(c=this.pageDataProvider)||void 0===c?void 0:c.pageSpecificData)||null}),[2]}}))}))},this.sendMessage=function(e,t){window.parent.postMessage({type:e,data:JSON.parse(JSON.stringify(t))},"*")},this.getPagePropValues=function(i,o,n){return e(T,void 0,void 0,(function(){var e,a,s;return t(this,(function(t){switch(t.label){case 0:return e=new c(i,n,o),(n.blogId||n.blogCategoryId)&&(e.possiblePageTypes=[r.BLOG,r.BLOG_CATEGORY]),n.raffleId&&(e.possiblePageTypes=[r.RAFFLE_DETAIL]),[4,e.getPageData()];case 1:return t.sent(),e.pageSpecificData&&(u.setPageSpecificData(JSON.stringify(e.pageSpecificData),o,!0),o===r.PRODUCT&&u.pageSpecificData&&(a=u.pageSpecificData,(s=a.product.variants.find((function(e){return e.id===n.variantId})))&&(a.selectedVariantValues=s.variantValues))),e.pageComponentPropValues=u.initPropValues(JSON.stringify(e.pageComponentPropValues),this.router,JSON.stringify(i.settings),!1),[2,e]}}))}))},this.setComponentRef=function(e,t){T.componentRefs[t.id]=e},this.isScrolledIntoView=function(e){var t=e.getBoundingClientRect(),i=t.top,o=t.bottom;return i<window.innerHeight&&o>=0&&o<window.innerHeight&&i>0},this.handleUpdateFrameData=function(i){return e(T,void 0,void 0,(function(){var e,o,n,a,r=this;return t(this,(function(t){switch(t.label){case 0:return this.theme=new s(i.theme),this.page=this.theme.pages.find((function(e){return e.id===i.selectedPage.id})),this.pageParams=i.pageParams,this.apiKey=i.apiKey,this.locale=i.locale||"en",this.translations=i.translations||void 0,this.page?((e=i.storefront)&&(o=new O(e),n=o.routings.find((function(e){return e.locale===r.locale})),P.storefrontId=o.id,P.storefrontRoutingId=null==n?void 0:n.id,o.mainStorefrontThemeId&&(P.storefrontThemeId=o.mainStorefrontThemeId),o.salesChannelId&&(P.salesChannelId=o.salesChannelId),(null==n?void 0:n.priceListId)&&(P.priceListId=n.priceListId),P.routings=o.routings,P.stockPreference=this.theme.settings.stockPreference),this.translations&&(P.translations=this.translations),P.isEditor=!0,f.createApolloClient(this.apiKey||void 0),window.editorApiKey=i.apiKey,this.isLoading=!0,[4,this.getPagePropValues(this.theme,this.page.type,this.pageParams||{})]):[2];case 1:return a=t.sent(),this.pageDataProvider=a,this.isLoading=!1,[2]}}))}))},this.handleUpdatePropValue=function(i){return e(T,void 0,void 0,(function(){var e,n,a,s,r,d,p,m,c=this;return t(this,(function(t){switch(t.label){case 0:return e=i.propName,n=i.value,(a=null===(p=null===(d=this.selectedComponent)||void 0===d?void 0:d.props)||void 0===p?void 0:p.find((function(t){return t.name===e})))&&this.selectedPageComponent?(s=null===(m=this.pageDataProvider)||void 0===m?void 0:m.pageComponentPropValues.find((function(e){return e.pageComponent.id===c.selectedPageComponentId})),this.selectedPageComponent.propValues[e]=n,this.pageDataProvider?[4,this.pageDataProvider.getPageComponentPropValue(this.selectedPageComponent,a)]:[2]):[2];case 1:return r=t.sent(),o((function(){s&&(s.propValues[e]=r,a.type===l.CUSTOM?u.initCustomDataPropValue(a,r,s,c.router,c.theme.settings,!0):a.type===l.COMPONENT?u.initComponentPropValue(a,r,s,c.router,c.theme.settings,!0):a.type===l.COMPONENT_LIST&&u.initComponentListPropValue(a,r,s,c.router,c.theme.settings,!0))})),[2]}}))}))},this.handleUpdatePageParams=function(i){return e(T,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return this.pageParams=i.pageParams,this.isLoading=!0,[4,this.getPagePropValues(this.theme,this.page.type,this.pageParams||{})];case 1:return e=t.sent(),this.pageDataProvider=e,this.isLoading=!1,[2]}}))}))},this.handleUpdatePageComponentOrder=function(i){return e(T,void 0,void 0,(function(){return t(this,(function(e){return this.specification?this.specification.components=i.pageComponents.map((function(e){return new d(e)})):this.page.components=i.pageComponents.map((function(e){return new d(e)})),[2]}))}))},this.handleAddNewComponent=function(e){var t,i=new p(e.component);null===(t=T.theme)||void 0===t||t.components.push(i)},this.handleDeleteComponent=function(e){var t,i;(null===(t=T.theme)||void 0===t?void 0:t.components)&&(T.theme.components=T.theme.components.filter((function(t){return t.id!==e.componentId})));var o=T.pageComponents.filter((function(t){return t.componentId!==e.componentId}))||[];T.specification&&T.specification.components&&(T.specification.components=o),!T.specification&&(null===(i=T.page)||void 0===i?void 0:i.components)&&(T.page.components=o)},this.handleUpdateComponent=function(e){var t=T.theme.components.findIndex((function(t){return t.id===e.component.id}));-1!==t&&(T.theme.components[t]=new p(e.component))},this.handleAddNewPageComponent=function(i){return e(T,void 0,void 0,(function(){var e,n,a=this;return t(this,(function(t){switch(t.label){case 0:return e=new d(i.pageComponent),this.pageComponents.some((function(t){return t.id===e.id}))?[2]:[4,this.pageDataProvider.getPageComponentPropValues(e)];case 1:return n=t.sent(),o((function(){n.component.props.filter((function(e){return e.type===l.CUSTOM})).forEach((function(e){u.initCustomDataPropValue(e,n.propValues[e.name],n,a.router,a.theme.settings,!0)})),a.pageDataProvider.pageComponentPropValues.push(n),a.pageComponents.push(e)})),[2]}}))}))},this.handleDeletePageComponent=function(e){T.specification?T.specification.components=T.pageComponents.filter((function(t){return t.id!==e.pageComponentId})):T.page.components=T.pageComponents.filter((function(t){return t.id!==e.pageComponentId}))},this.handleSetSelectedComponent=function(e){T.selectedPageComponentId=e.componentId},this.handleSetHoveredComponent=function(e){T.hoveredPageComponentId=e.componentId},this.handleScrollToComponent=function(e){var t=e.componentId,i=T.componentRefs[t];i&&(T.isScrolledIntoView(i)||window.scrollTo({top:i.offsetTop,behavior:"smooth"}))},this.updateThemeSettings=function(e){var t=e.settings;T.theme&&(T.theme.settings=new m(t))},this.router=C,i(this),this.startMessaging()}return Object.defineProperty(C.prototype,"specification",{get:function(){var e,t,i,o,n,a,s,d=this,p=this.page;return(null==p?void 0:p.type)===r.PRODUCT&&(s=null===(e=p.specifications)||void 0===e?void 0:e.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.productId)}))),(null==p?void 0:p.type)===r.CATEGORY&&(s=null===(t=p.specifications)||void 0===t?void 0:t.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.categoryId)}))),(null==p?void 0:p.type)===r.BRAND&&(s=null===(i=p.specifications)||void 0===i?void 0:i.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.brandId)}))),(null==p?void 0:p.type)===r.BLOG&&(s=null===(o=p.specifications)||void 0===o?void 0:o.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.blogId)}))),(null==p?void 0:p.type)===r.BLOG_CATEGORY&&(s=null===(n=p.specifications)||void 0===n?void 0:n.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.blogCategoryId)}))),(null==p?void 0:p.type)===r.RAFFLE_DETAIL&&(s=null===(a=p.specifications)||void 0===a?void 0:a.find((function(e){var t;return e.id===(null===(t=d.pageParams)||void 0===t?void 0:t.raffleId)}))),s},enumerable:!1,configurable:!0}),Object.defineProperty(C.prototype,"pageComponents",{get:function(){var e;return this.specification?this.specification.components:(null===(e=this.page)||void 0===e?void 0:e.components)||[]},enumerable:!1,configurable:!0}),Object.defineProperty(C.prototype,"selectedPageComponent",{get:function(){var e=this;return this.pageComponents.find((function(t){return t.id===e.selectedPageComponentId}))},enumerable:!1,configurable:!0}),Object.defineProperty(C.prototype,"selectedComponent",{get:function(){var e,t=this;return null===(e=this.theme)||void 0===e?void 0:e.components.find((function(e){var i;return e.id===(null===(i=t.selectedPageComponent)||void 0===i?void 0:i.componentId)}))},enumerable:!1,configurable:!0}),C}();!function(e){e.FRAME_DID_LOAD="FRAME_DID_LOAD",e.UPDATE_FRAME_DATA="UPDATE_FRAME_DATA",e.UPDATE_PROP_VALUE="UPDATE_PROP_VALUE",e.UPDATE_PAGE_PARAMS="UPDATE_PAGE_PARAMS",e.UPDATE_PAGE_COMPONENT_ORDER="UPDATE_PAGE_COMPONENT_ORDER",e.ADD_COMPONENT="ADD_COMPONENT",e.DELETE_COMPONENT="DELETE_COMPONENT",e.UPDATE_COMPONENT="UPDATE_COMPONENT",e.ADD_PAGE_COMPONENT="ADD_PAGE_COMPONENT",e.DELETE_PAGE_COMPONENT="DELETE_PAGE_COMPONENT",e.COMPONENT_MOUSE_OVER="COMPONENT_MOUSE_OVER",e.COMPONENT_MOUSE_LEAVE="COMPONENT_MOUSE_LEAVE",e.COMPONENT_CLICK="COMPONENT_CLICK",e.SET_SELECTED_COMPONENT="SET_SELECTED_COMPONENT",e.SET_HOVERED_COMPONENT="SET_HOVERED_COMPONENT",e.SCROLL_TO_COMPONENT="SCROLL_TO_COMPONENT",e.UPDATE_THEME_SETTINGS="UPDATE_THEME_SETTINGS",e.EDITOR_PAGE_CHANGE="EDITOR_PAGE_CHANGE"}(v||(v={}));export{v as BridgeMessageType,C as default};
|
package/build/pages/editor.d.ts
CHANGED
|
@@ -4,6 +4,9 @@ declare type Props = {
|
|
|
4
4
|
configJson: Record<string, any>;
|
|
5
5
|
components?: Record<string, any>;
|
|
6
6
|
};
|
|
7
|
+
export default class Page extends React.Component<Props> {
|
|
8
|
+
componentDidMount(): void;
|
|
9
|
+
render(): JSX.Element;
|
|
10
|
+
}
|
|
7
11
|
export declare const getStaticProps: GetStaticProps;
|
|
8
|
-
|
|
9
|
-
export default _default;
|
|
12
|
+
export {};
|
package/build/pages/editor.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{__extends as t,__awaiter as n,__generator as o}from'../ext/tslib/tslib.es6.js';import*as r from"react";import e from"next/dynamic.js";import{IkasNextPageDataProvider as i}from"../providers/page-data-next.js";import{IkasStorefrontConfig as s}from"../storefront/index.js";var u=e((function(){return import("../components/page-editor/index.js").then((function(t){return t.default}))}),{ssr:!1}),p=function(n){function o(){return null!==n&&n.apply(this,arguments)||this}return t(o,n),o.prototype.componentDidMount=function(){var t=this.props,n=t.configJson,o=t.components;n&&s.initWithJson(n),o&&(s.currentPageComponents=o)},o.prototype.render=function(){return r.createElement(u,null)},o}(r.Component),c=function(t){return n(void 0,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,i.getStaticProps(t,void 0,void 0,!0)];case 1:return[2,n.sent()]}}))}))};export{p as default,c as getStaticProps};
|