{"version":3,"file":"src_exported_content-block_ContentBlock_tsx.7f8ee7df93044b4d2359.bundle.js","mappings":"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","sources":["webpack://elc-service-content/./node_modules/@estee/elc-icons/node_modules/@estee/elc-base-theme/src/Emphasis.ts","webpack://elc-service-content/./node_modules/@estee/elc-icons/node_modules/@estee/elc-base-theme/src/Colors.ts","webpack://elc-service-content/./node_modules/@estee/elc-icons/src/views/SpinnerIcon.tsx","webpack://elc-service-content/./node_modules/@estee/elc-spinner/node_modules/@estee/elc-base-theme/src/Emphasis.ts","webpack://elc-service-content/./node_modules/@estee/elc-spinner/node_modules/@estee/elc-base-theme/src/Colors.ts","webpack://elc-service-content/./node_modules/@estee/elc-spinner/src/theme/default-theme.ts","webpack://elc-service-content/./node_modules/@estee/elc-spinner/src/views/Spinner.tsx","webpack://elc-service-content/./node_modules/@estee/elc-service/src/Service/utils/index.ts","webpack://elc-service-content/./node_modules/@estee/elc-service/src/Service/ViewsManager/ViewManager.ts","webpack://elc-service-content/./node_modules/@estee/elc-service/src/Service/ViewsManager/ViewsManager.ts","webpack://elc-service-content/./node_modules/@estee/elc-service/src/ServiceView/ServiceView.tsx","webpack://elc-service-content/./node_modules/@estee/elc-service/src/ServiceView/EventsHoc.tsx","webpack://elc-service-content/./src/exported/content-block/ContentBlock.tsx","webpack://elc-service-content/./node_modules/classnames/index.js"],"sourcesContent":["export interface IEmphasisProps {\n [key: string]: number | string;\n}\n\nexport interface IEmphasis {\n [key: string]: IEmphasisProps;\n}\n\nexport const Emphasis: IEmphasis = {\n high: { value: 0.88, className: '' }, // No className because it has emphasis High by default\n medium: { value: 0.64, className: 'elc-medium-emphasis' },\n light: { value: 0.12, className: 'elc-light-emphasis' },\n pale: { value: 0.02, className: 'elc-pale-emphasis' },\n disabled: { value: 0.4, className: 'elc-disabled-emphasis' }\n};\n","import { Emphasis } from './Emphasis';\n\nexport interface IColors {\n black: string;\n white: string;\n whiteDove: string;\n primary900: string;\n primary800: string;\n primary700: string;\n primary600: string;\n primary500: string;\n primary400: string;\n primary300: string;\n primary200: string;\n primary100: string;\n primary50: string;\n danger: string;\n info: string;\n success: string;\n warning: string;\n unvisitedLink: string;\n visitedLink: string;\n blackHighEmphasis: string;\n blackMediumEmphasis: string;\n blackLightEmphasis: string;\n blackDisabledEmphasis: string;\n whiteHighEmphasis: string;\n whiteMediumEmphasis: string;\n whiteDisabledEmphasis: string;\n redLightEmphasis: string;\n\n [key: string]: string;\n}\n\nexport const Colors: IColors = {\n black: '#000000',\n white: '#FFFFFF',\n whiteDove: '#FBFBFB',\n primary900: '#212121',\n primary800: '#424242',\n primary700: '#616161',\n primary600: '#757575',\n primary500: '#9E9E9E',\n primary400: '#BDBDBD',\n primary300: '#E0E0E0',\n primary200: '#EEEEEE',\n primary100: '#F5F5F5',\n primary50: '#FAFAFA',\n danger: '#B00020',\n info: '#54A6D7',\n success: '#70B000',\n warning: '#EE9F57',\n unvisitedLink: '#0000EE',\n visitedLink: '#551A8B',\n blackHighEmphasis: `rgba(0, 0, 0, ${Emphasis.high.value})`,\n blackMediumEmphasis: `rgba(0, 0, 0, ${Emphasis.medium.value})`,\n blackLightEmphasis: `rgba(0, 0, 0, ${Emphasis.light.value})`,\n blackDisabledEmphasis: `rgba(0, 0, 0, ${Emphasis.disabled.value})`,\n blackPaleEmphasis: `rgba(0, 0, 0, ${Emphasis.pale.value})`,\n whiteHighEmphasis: `rgba(255, 255, 255, ${Emphasis.high.value})`,\n whiteMediumEmphasis: `rgba(255, 255, 255, ${Emphasis.medium.value})`,\n whiteDisabledEmphasis: `rgba(255, 255, 255, ${Emphasis.disabled.value})`,\n redLightEmphasis: `rgba(176, 0, 32, ${Emphasis.pale.value})`,\n successEmphasis: `rgba(112, 176, 0, ${Emphasis.pale.value})`,\n warningEmphasis: `rgba(238, 159, 87, ${Emphasis.pale.value})`\n};\n","import * as React from 'react';\nimport styled from 'styled-components';\nimport { Colors } from '@estee/elc-base-theme';\n\nexport interface ISpinnerIconProps {\n className?: string;\n color?: string;\n}\n\nconst Svg = styled.svg`\n animation: rotate 2s linear infinite;\n transform-origin: center center;\n width: 36px;\n height: 36px;\n\n @keyframes rotate {\n 100% {\n transform: rotate(360deg);\n }\n }\n`;\n\nconst Circle = styled.circle`\n stroke-dasharray: 150, 200;\n stroke-dashoffset: -10;\n animation: dash 1.5s ease-in-out infinite;\n stroke-linecap: round;\n\n @keyframes dash {\n 0% {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -35;\n }\n 100% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -124;\n }\n }\n`;\n\nconst SpinnerIcon = (props: ISpinnerIconProps) => {\n return (\n \n \n \n );\n};\n\nexport { SpinnerIcon };\n","export interface IEmphasisProps {\n [key: string]: number | string;\n}\n\nexport interface IEmphasis {\n [key: string]: IEmphasisProps;\n}\n\nexport const Emphasis: IEmphasis = {\n high: { value: 0.88, className: '' }, // No className because it has emphasis High by default\n medium: { value: 0.64, className: 'elc-medium-emphasis' },\n light: { value: 0.12, className: 'elc-light-emphasis' },\n pale: { value: 0.02, className: 'elc-pale-emphasis' },\n disabled: { value: 0.4, className: 'elc-disabled-emphasis' }\n};\n","import { Emphasis } from './Emphasis';\n\nexport interface IColors {\n black: string;\n white: string;\n whiteDove: string;\n primary900: string;\n primary800: string;\n primary700: string;\n primary600: string;\n primary500: string;\n primary400: string;\n primary300: string;\n primary200: string;\n primary100: string;\n primary50: string;\n danger: string;\n info: string;\n success: string;\n warning: string;\n unvisitedLink: string;\n visitedLink: string;\n blackHighEmphasis: string;\n blackMediumEmphasis: string;\n blackLightEmphasis: string;\n blackDisabledEmphasis: string;\n whiteHighEmphasis: string;\n whiteMediumEmphasis: string;\n whiteDisabledEmphasis: string;\n redLightEmphasis: string;\n\n [key: string]: string;\n}\n\nexport const Colors: IColors = {\n black: '#000000',\n white: '#FFFFFF',\n whiteDove: '#FBFBFB',\n primary900: '#212121',\n primary800: '#424242',\n primary700: '#616161',\n primary600: '#757575',\n primary500: '#9E9E9E',\n primary400: '#BDBDBD',\n primary300: '#E0E0E0',\n primary200: '#EEEEEE',\n primary100: '#F5F5F5',\n primary50: '#FAFAFA',\n danger: '#B00020',\n info: '#54A6D7',\n success: '#70B000',\n warning: '#EE9F57',\n unvisitedLink: '#0000EE',\n visitedLink: '#551A8B',\n blackHighEmphasis: `rgba(0, 0, 0, ${Emphasis.high.value})`,\n blackMediumEmphasis: `rgba(0, 0, 0, ${Emphasis.medium.value})`,\n blackLightEmphasis: `rgba(0, 0, 0, ${Emphasis.light.value})`,\n blackDisabledEmphasis: `rgba(0, 0, 0, ${Emphasis.disabled.value})`,\n blackPaleEmphasis: `rgba(0, 0, 0, ${Emphasis.pale.value})`,\n whiteHighEmphasis: `rgba(255, 255, 255, ${Emphasis.high.value})`,\n whiteMediumEmphasis: `rgba(255, 255, 255, ${Emphasis.medium.value})`,\n whiteDisabledEmphasis: `rgba(255, 255, 255, ${Emphasis.disabled.value})`,\n redLightEmphasis: `rgba(176, 0, 32, ${Emphasis.pale.value})`,\n successEmphasis: `rgba(112, 176, 0, ${Emphasis.pale.value})`,\n warningEmphasis: `rgba(238, 159, 87, ${Emphasis.pale.value})`\n};\n","import { Colors } from '@estee/elc-base-theme';\n\nexport const spinnerContainerTheme = `\n background-color: ${Colors.whiteMediumEmphasis};\n`;\n","import * as classnames from 'classnames';\nimport * as React from 'react';\nimport styled from 'styled-components';\nimport { SpinnerIcon } from '@estee/elc-icons';\nimport { spinnerContainerTheme } from '../theme/default-theme';\n\nexport interface ISpinner {\n className?: string;\n children?: React.ReactNode;\n isLoading?: boolean;\n}\nexport interface ISpinnerState {\n isLoading: boolean;\n}\n\nconst SpinnerContainer = styled.div`\n position: absolute;\n top: 0;\n left: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n ${spinnerContainerTheme};\n`;\n\nconst Container = styled.div`\n position: relative;\n width: 100%;\n height: 100%;\n`;\n\nexport class SpinnerComponent extends React.Component {\n constructor(props: ISpinner) {\n super(props);\n }\n public render() {\n const spinnerClassName = classnames('elc-spinner', 'js-spinner', this.props.className);\n const spinnerContainerClassName = classnames(\n 'elc-spinner-container',\n 'js-spinner-container',\n this.props.className\n );\n const spinnerIconContainerClassName = classnames(\n 'elc-spinner-icon-container',\n 'js-spinner-icon-container'\n );\n\n return (\n \n {this.props.isLoading && (\n \n \n \n )}\n {this.props.children}\n \n );\n }\n}\n","import {\n root,\n AllServicesTypes,\n AllUpdatedServicesTypes,\n IComponentViewController,\n IFederatedService,\n IOlderServiceRegistryComponent,\n IServiceRegistryComponent\n} from '@estee/elc-universal-utils';\n\nexport function getServices() {\n return root.ServiceRegistry || {};\n}\n\nexport function hasServiceStarted(service: AllServicesTypes) {\n return service.isStarted;\n}\n// isLazy is true for exported services by createServiceManifest\nexport function isServiceLazy(service: AllUpdatedServicesTypes) {\n return Boolean(service.isLazy);\n}\n// createServiceManifest exports an object with fewer keys\nexport function isServiceFromManifest(service: AllServicesTypes) {\n // @ts-ignore\n return Boolean(service.getView) && isServiceLazy(service);\n}\n// To be removed after SDFEFND-1853\nexport function isServiceUpdated(service: AllServicesTypes) {\n return Boolean(service.views); // key added in elc-service v7.x\n}\n\nfunction isViewInService(viewName: string) {\n return (service: AllServicesTypes) => {\n if (isServiceUpdated(service)) {\n return (service as IServiceRegistryComponent).views.includes(viewName);\n }\n\n return (service as IOlderServiceRegistryComponent).getView(viewName);\n };\n}\n\n// Refactor after SDFEFND-1853 to only search in views[]\nexport function findServiceByViewName(viewName: string): AllServicesTypes {\n const services = Object.values(getServices());\n const service: AllServicesTypes | undefined = services.find(isViewInService(viewName));\n\n if (!service) {\n throw new Error(`Service wasn't found for view ${viewName}`);\n }\n\n return service;\n}\n\n/* SSR */\nexport interface IComponentDataState {\n [key: string]: object | number | string;\n}\nexport interface IComponentState extends IComponentDataState {\n children: string[];\n}\n\nexport function setStateInController(state: object, controller: IComponentViewController) {\n const viewState = Object.values(state)[0]; // { [VIEW_NAME]: { ...state } }\n if (viewState && controller.setSSRState) {\n controller.setSSRState(viewState);\n }\n}\n\nexport function setControllerId(config: string | null, controller: IComponentViewController) {\n if (config && controller.setId) {\n controller.setId(config);\n }\n}\n\nexport function parseState(state: string | null) {\n let parsedState: IComponentState | undefined;\n try {\n if (state) {\n parsedState = JSON.parse(state);\n }\n } finally {\n parsedState = parsedState ? parsedState : { children: [] };\n }\n\n return parsedState;\n}\n\nexport function initializeControllerForSSR(\n viewController: IComponentViewController | null,\n state: IComponentDataState,\n config: string | null\n) {\n if (viewController) {\n setStateInController(state, viewController);\n setControllerId(config, viewController);\n }\n}\n\n/* Module Federation */\nexport async function getModule(child: string, router: string): Promise {\n // @ts-ignore\n const module = await (root[child] as unknown).get(`./${router}`);\n\n return module() as T;\n}\n\nexport async function importComponent(componentName: string): Promise {\n const srv = (Object.entries(getServices()).find(([_, value]) =>\n value.views?.includes(componentName)\n ) as unknown) as [string, IFederatedService];\n\n const { name } = srv[1];\n\n return getModule(name, componentName);\n}\n","import {\n root,\n AllServicesTypes,\n IComponent,\n IServiceRegistryComponent,\n RegisteredComponent\n} from '@estee/elc-universal-utils';\nimport { ELCLogger, TriggerType } from '@estee/elc-logging';\nimport {\n getModule,\n getServices,\n hasServiceStarted,\n isServiceUpdated,\n findServiceByViewName\n} from '../utils';\n\nexport class ViewManager {\n // TODO Clean this code after SDFEFND-3634\n private federatedView: React.ComponentType | null = null;\n private service: AllServicesTypes;\n private view: IComponent | null = null;\n private isServiceUpdated = false; // if not updated then it needs to start all the services\n\n constructor(private viewName: string, private logger: ELCLogger) {\n try {\n this.service = findServiceByViewName(viewName);\n this.isServiceUpdated = isServiceUpdated(this.service); // TODO: remove after SDFEFND-1853\n const { lazyServicesStarted } = root.ViewsManager;\n if (\n hasServiceStarted(this.service) &&\n (this.isServiceUpdated || (!this.isServiceUpdated && lazyServicesStarted)) &&\n (this.service as IServiceRegistryComponent).getView\n ) {\n this.getView();\n }\n } catch (error) {\n this.logError(`ViewManager for view: (${viewName}) fail to initialize`, error);\n }\n }\n\n private logError = (msg: string, error: Error) => {\n this.logger.error({\n message: msg,\n triggerType: TriggerType.render,\n payload: { error, context: { serviceRegistry: getServices() } }\n });\n };\n\n private loadModule = async (componentView: Pick) => {\n const componentViewMethod = componentView.component.load || componentView.component;\n const module = await ((componentViewMethod as unknown) as RegisteredComponent)();\n\n return module.default;\n };\n\n private loadAndSaveModule = async () => {\n try {\n if (!this.view) {\n throw new Error(`Load view before requesting module ${this.viewName}`);\n }\n\n // Service should already been .register() by this point\n const service = this.service as IServiceRegistryComponent;\n\n const componentModule = await this.loadModule(this.view);\n\n service.setViewInCache(this.viewName, componentModule);\n } catch (error) {\n this.logError(`Error with module: ${this.viewName}`, error);\n }\n };\n\n private getView = () => {\n try {\n const service = this.service as IServiceRegistryComponent;\n\n this.view = service.getView(this.viewName);\n } catch (error) {\n this.logError(`Error getting the view: ${this.viewName}`, error);\n this.view = null;\n }\n };\n\n private startNeededServices = async () => {\n if (!this.isServiceUpdated) {\n await root.ViewsManager.startLazyServices();\n }\n if (!hasServiceStarted(this.service)) {\n await root.ViewsManager.startService(this.service);\n }\n };\n\n public loadComponent = async () => {\n try {\n if (this.service) {\n await this.startNeededServices();\n\n // TODO Clean this code after SDFEFND-3634\n if (!(this.service as IServiceRegistryComponent).getView) {\n // Module Federation\n this.federatedView = (\n await getModule<{ default: React.ComponentType }>(\n this.service.name,\n this.viewName\n )\n ).default;\n } else {\n this.getView();\n await this.loadAndSaveModule();\n }\n }\n } catch (error) {\n this.logError(`Error trying to load the component - ${this.viewName}`, error);\n }\n };\n\n get module() {\n const service = this.service as IServiceRegistryComponent;\n\n if (this.view && service && service.getViewFromCache) {\n return service.getViewFromCache(this.viewName);\n }\n\n return this.federatedView;\n }\n\n get controllerFromView() {\n const controller = this.view && this.view.viewController && this.view.viewController();\n\n return controller || null;\n }\n}\n","import { ELCLogger, TriggerType } from '@estee/elc-logging';\nimport {\n AllServicesTypes,\n AllUpdatedServicesTypes,\n IAppConfig,\n ILazyServiceRegistryComponent,\n root\n} from '@estee/elc-universal-utils';\nimport { ViewManager } from './ViewManager';\nimport { isServiceLazy, hasServiceStarted } from '../utils';\nimport { getServices } from '../utils/index';\n\n// TODO: remove after SDFEFND-1853\nconst EXCLUDED_SERVICES = ['ecomm', 'translation', 'config', 'sign'];\n\nexport class ViewsManager {\n public lazyServicesStarted = false;\n private logger: ELCLogger;\n private views = new Map();\n\n constructor(private servicesConfig: IAppConfig, name: string, version: string) {\n this.logger = new ELCLogger({\n serviceName: name,\n serviceVersion: version,\n environment: root.env,\n buid: root.buid\n });\n }\n\n private isServiceExcluded = (serviceName: string) => {\n const name = serviceName.toLowerCase();\n\n return EXCLUDED_SERVICES.some(excSrv => name.includes(excSrv));\n };\n\n private getNonStartedServices = () => {\n const serviceNames = Object.keys(getServices());\n const services = Object.values(getServices());\n\n return services.filter((srv: AllServicesTypes, index: number) => {\n let isNonStarted = false;\n\n const serviceName = (srv && srv.name) || serviceNames[index];\n\n try {\n isNonStarted =\n !hasServiceStarted(srv) &&\n isServiceLazy(srv as AllUpdatedServicesTypes) &&\n !this.isServiceExcluded(serviceName);\n } catch (error) {\n this.logger.error({\n message: `Fail filtering service - ${serviceName}`,\n triggerType: TriggerType.render,\n payload: {\n error,\n context: {\n serviceRegistry: getServices(),\n service: srv\n }\n }\n });\n }\n\n return isNonStarted;\n }) as ILazyServiceRegistryComponent[];\n };\n\n public getViewManager(viewName: string): ViewManager {\n let view = this.views.get(viewName);\n\n if (!view) {\n view = new ViewManager(viewName, this.logger);\n this.views.set(viewName, view);\n }\n\n return view;\n }\n\n public async startService(service: AllUpdatedServicesTypes) {\n const { GlobalServiceBus, ServiceBusTopics } = root;\n\n try {\n await service.start(this.servicesConfig);\n GlobalServiceBus.emit(ServiceBusTopics.events.SERVICE_STARTED, {\n serviceName: service.name\n });\n } catch (error) {\n this.logger.error({\n triggerType: TriggerType.render,\n message: `Error starting the service [${service.name}]`,\n payload: {\n error\n }\n });\n }\n }\n\n // TODO: remove after SDFEFND-1853\n public async startLazyServices() {\n if (!this.lazyServicesStarted) {\n const nonStartedServices = this.getNonStartedServices();\n\n for (const service of nonStartedServices) {\n await this.startService(service);\n }\n\n this.lazyServicesStarted = true;\n }\n }\n}\n\nexport function getViewsManager(name: string, version: string) {\n if (!root.ViewsManager) {\n root.ViewsManager = new ViewsManager(\n {\n businessUnitId: root.buid || '',\n env: root.env || ''\n },\n name,\n version\n );\n }\n\n return root.ViewsManager;\n}\n","import * as React from 'react';\nimport {\n root,\n IComponentViewController,\n SERVICE_VIEW_CLASSNAME,\n SERVICE_VIEW_RENDERED_ATTRIBUTE\n} from '@estee/elc-universal-utils';\nimport { observer } from 'mobx-react';\nimport { ErrorBoundary } from '@estee/elc-telemetry';\nimport { withEvents } from './EventsHoc';\nimport { ViewManager } from '../Service/ViewsManager/ViewManager';\nimport { getViewsManager } from '../Service/ViewsManager/ViewsManager';\n\ninterface IRestProps {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n}\n\ninterface IProps extends IRestProps {\n name: string;\n config?: object;\n serviceName: string;\n}\n\ninterface IState {\n viewManager: ViewManager;\n name: string;\n}\n\n@observer\nexport class ServiceView extends React.Component {\n private viewController: IComponentViewController | null | undefined;\n\n static getDerivedStateFromProps(props: IProps, state: IState) {\n if (props.name !== state.name) {\n const { version = '' } = root.ServiceRegistry[props.serviceName] || {};\n const viewsManager = getViewsManager(props.serviceName, version);\n\n return {\n name: props.name,\n viewManager: viewsManager.getViewManager(props.name) as ViewManager\n };\n }\n\n return null;\n }\n\n constructor(props: IProps) {\n super(props);\n const { version = '' } = root.ServiceRegistry[props.serviceName] || {};\n const viewsManager = getViewsManager(props.serviceName, version);\n\n this.state = {\n name: props.name,\n viewManager: viewsManager.getViewManager(props.name) as ViewManager\n };\n this.viewController = this.state.viewManager.controllerFromView;\n }\n\n private async getComponentFromViewManager() {\n const { viewManager } = this.state;\n\n await viewManager.loadComponent();\n this.viewController = viewManager.controllerFromView;\n this.forceUpdate();\n }\n\n private getComponent = () => {\n const Component = this.state.viewManager.module;\n\n if (Component) {\n return ;\n }\n\n return null;\n };\n\n public async componentDidUpdate(prevProps: IProps) {\n if (prevProps.name !== this.props.name) {\n await this.getComponentFromViewManager();\n }\n }\n\n public async componentDidMount() {\n if (!this.state.viewManager.module) {\n await this.getComponentFromViewManager();\n }\n }\n\n public render() {\n const { name, serviceName } = this.props;\n\n const ServiceChild = this.getComponent();\n\n const serviceMountPointAttributes = {\n [SERVICE_VIEW_RENDERED_ATTRIBUTE]: name,\n className: SERVICE_VIEW_CLASSNAME\n };\n\n return (\n
\n \n {ServiceChild}\n \n
\n );\n }\n}\n\nexport const ServiceViewEvents = withEvents(ServiceView);\n","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\n\nexport interface IRestProps {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n}\n\ntype IListeners = { [key: string]: (ev: CustomEvent) => void };\n\ntype ReceivedComponent

= React.ComponentClass

;\n\nexport const withEvents =

(Component: ReceivedComponent

) =>\n class WithEvents extends React.Component

{\n static displayName = 'WithEvents';\n listeners: IListeners = {};\n mountPoint: React.Component

| null;\n\n public componentDidMount() {\n const { name: _, config, children, ...restOfProps } = this.props;\n const allProps = { ...config, ...restOfProps };\n const funcs = Object.keys(allProps).filter(\n propName => typeof allProps[propName] === 'function'\n );\n\n const node = ReactDOM.findDOMNode(this.mountPoint);\n\n if (node) {\n funcs.forEach(functionName => {\n this.listeners[functionName] = (event: CustomEvent) => {\n const params = Array.isArray(event.detail) ? event.detail : [];\n allProps[functionName](...params);\n };\n node.addEventListener(functionName, this.listeners[functionName], false);\n });\n }\n }\n\n public componentWillUnmount() {\n const node = ReactDOM.findDOMNode(this.mountPoint);\n\n Object.keys(this.listeners).forEach(functionName => {\n if (node) {\n node.removeEventListener(functionName, this.listeners[functionName]);\n }\n });\n }\n\n public render() {\n return (this.mountPoint = ref)} />;\n }\n };\n","import * as React from 'react';\nimport { ServiceView } from '@estee/elc-service';\nimport { observer } from 'mobx-react';\nimport { Spinner } from '@estee/elc-spinner';\nimport { ContentBlockViewController } from '~controllers/ContentBlockViewController';\nimport { INodeContent } from '~domain/entities/Node';\n\ninterface IContentBlockItem {\n nid: number;\n}\n\nexport interface ContentState {\n content: Map;\n}\n\nexport interface IContentBlock {\n name: string;\n config: IContentBlockItem;\n viewController: ContentBlockViewController;\n state?: ContentState;\n}\nconst { name } = __serviceInfo__;\n\n@observer\nclass ContentBlock extends React.Component {\n static displayName = 'ContentBlock';\n\n public async componentDidMount() {\n await this.props.viewController.loaded(this.props);\n }\n\n public render() {\n const { nid } = this.props.config;\n const content = this.props.viewController.getContent(nid);\n\n if (!content) {\n return ;\n }\n\n const { layout } = content;\n\n if (!layout) {\n return null;\n }\n\n return ;\n }\n}\n\nexport default ContentBlock;\n","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n"],"names":["Emphasis","value","className","Colors","black","white","whiteDove","primary900","primary800","primary700","primary600","primary500","primary400","primary300","primary200","primary100","primary50","danger","info","success","warning","unvisitedLink","visitedLink","blackHighEmphasis","blackMediumEmphasis","blackLightEmphasis","blackDisabledEmphasis","blackPaleEmphasis","whiteHighEmphasis","whiteMediumEmphasis","whiteDisabledEmphasis","redLightEmphasis","successEmphasis","warningEmphasis","Svg","Circle","SpinnerIcon","props","viewBox","cx","cy","r","fill","stroke","color","spinnerContainerTheme","SpinnerContainer","Container","SpinnerComponent","constructor","super","render","spinnerClassName","classnames","this","spinnerContainerClassName","spinnerIconContainerClassName","isLoading","children","getServices","hasServiceStarted","service","isStarted","isServiceLazy","Boolean","isLazy","isServiceUpdated","views","findServiceByViewName","viewName","Object","values","find","includes","getView","isViewInService","Error","getModule","child","router","get","ViewManager","logger","federatedView","view","logError","msg","error","message","triggerType","TriggerType","payload","context","serviceRegistry","loadModule","componentView","componentViewMethod","component","load","default","loadAndSaveModule","componentModule","setViewInCache","startNeededServices","loadComponent","name","lazyServicesStarted","module","getViewFromCache","controllerFromView","viewController","EXCLUDED_SERVICES","ViewsManager","servicesConfig","version","Map","isServiceExcluded","serviceName","toLowerCase","some","excSrv","getNonStartedServices","serviceNames","keys","filter","srv","index","isNonStarted","ELCLogger","serviceVersion","environment","buid","getViewManager","set","startService","GlobalServiceBus","ServiceBusTopics","start","emit","events","SERVICE_STARTED","startLazyServices","nonStartedServices","getViewsManager","businessUnitId","env","ServiceView","getComponent","Component","state","viewManager","config","viewsManager","getDerivedStateFromProps","getComponentFromViewManager","forceUpdate","componentDidUpdate","prevProps","componentDidMount","ServiceChild","serviceMountPointAttributes","ServiceViewEvents","listeners","_a","_","restOfProps","allProps","funcs","propName","node","mountPoint","forEach","functionName","event","params","Array","isArray","detail","addEventListener","componentWillUnmount","removeEventListener","ref","displayName","ContentBlock","loaded","nid","content","getContent","Spinner","layout","hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","inner","apply","toString","prototype","key","call","join","exports"],"sourceRoot":""}