@roomle/web-sdk 2.107.0 → 2.108.0-alpha.1
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/lib/ConfiguratorKernel.wasm +0 -0
- package/lib/{PointLightHelper-BkdQaOKc.js → PointLightHelper-B8VP_55Z.js} +2 -2
- package/lib/{PointLightHelper-BkdQaOKc.js.map → PointLightHelper-B8VP_55Z.js.map} +1 -1
- package/lib/{PointLightHelper-qhWtXw8x.mjs → PointLightHelper-DtoZq5ME.mjs} +2 -2
- package/lib/{PointLightHelper-qhWtXw8x.mjs.map → PointLightHelper-DtoZq5ME.mjs.map} +1 -1
- package/lib/RoomleCore.js +6 -6
- package/lib/RoomleCore.wasm +0 -0
- package/lib/RoomleToolsCore.wasm +0 -0
- package/lib/{banana-for-scale-XjIfe69B.js → banana-for-scale-BVlDK4jg.js} +2 -2
- package/lib/{banana-for-scale-XjIfe69B.js.map → banana-for-scale-BVlDK4jg.js.map} +1 -1
- package/lib/{banana-for-scale-CDGM3hdN.mjs → banana-for-scale-CKSlc9Tc.mjs} +2 -2
- package/lib/{banana-for-scale-CDGM3hdN.mjs.map → banana-for-scale-CKSlc9Tc.mjs.map} +1 -1
- package/lib/camera-behaviour-CzgZxW1D.js +50 -0
- package/lib/camera-behaviour-CzgZxW1D.js.map +1 -0
- package/lib/{camera-behaviour-BLMduSEn.mjs → camera-behaviour-DWkBHxkk.mjs} +79 -75
- package/lib/camera-behaviour-DWkBHxkk.mjs.map +1 -0
- package/lib/{component-dimensioning-Do75G-kI.js → component-dimensioning-CUoDDxfk.js} +2 -2
- package/lib/{component-dimensioning-Do75G-kI.js.map → component-dimensioning-CUoDDxfk.js.map} +1 -1
- package/lib/{component-dimensioning-DvCO0pEp.mjs → component-dimensioning-CgVIP7Nu.mjs} +2 -2
- package/lib/{component-dimensioning-DvCO0pEp.mjs.map → component-dimensioning-CgVIP7Nu.mjs.map} +1 -1
- package/lib/{component-raycast-helper-Dl-pzfg_.js → component-raycast-helper-DvNtWlR5.js} +2 -2
- package/lib/{component-raycast-helper-Dl-pzfg_.js.map → component-raycast-helper-DvNtWlR5.js.map} +1 -1
- package/lib/{component-raycast-helper-CuZdUtrH.mjs → component-raycast-helper-zAwc-AuF.mjs} +2 -2
- package/lib/{component-raycast-helper-CuZdUtrH.mjs.map → component-raycast-helper-zAwc-AuF.mjs.map} +1 -1
- package/lib/{configurator-CT_ghGbX.mjs → configurator-DDhzCgxy.mjs} +6 -6
- package/lib/{configurator-CT_ghGbX.mjs.map → configurator-DDhzCgxy.mjs.map} +1 -1
- package/lib/{configurator-B01iJTNa.js → configurator-DJnpG8CG.js} +2 -2
- package/lib/{configurator-B01iJTNa.js.map → configurator-DJnpG8CG.js.map} +1 -1
- package/lib/configurator-scene-manager-Bxdyg2zz.js +2 -0
- package/lib/configurator-scene-manager-Bxdyg2zz.js.map +1 -0
- package/lib/{configurator-scene-manager-DbsYS4rm.mjs → configurator-scene-manager-DnZvFw0N.mjs} +150 -162
- package/lib/configurator-scene-manager-DnZvFw0N.mjs.map +1 -0
- package/lib/configurator.js +1 -1
- package/lib/configurator.nomodule.js +1 -1
- package/lib/{continuous-drawing-helper-DdnnCOqZ.js → continuous-drawing-helper-C6qDGAxa.js} +2 -2
- package/lib/{continuous-drawing-helper-DdnnCOqZ.js.map → continuous-drawing-helper-C6qDGAxa.js.map} +1 -1
- package/lib/{continuous-drawing-helper-DrpQFppG.mjs → continuous-drawing-helper-DbTM7uCv.mjs} +2 -2
- package/lib/{continuous-drawing-helper-DrpQFppG.mjs.map → continuous-drawing-helper-DbTM7uCv.mjs.map} +1 -1
- package/lib/{default-light-setting-D0Ie_AEw.mjs → default-light-setting-BdD0jDeP.mjs} +3 -3
- package/lib/{default-light-setting-D0Ie_AEw.mjs.map → default-light-setting-BdD0jDeP.mjs.map} +1 -1
- package/lib/{default-light-setting-DQxt3v5x.js → default-light-setting-CYiFuxeI.js} +2 -2
- package/lib/{default-light-setting-DQxt3v5x.js.map → default-light-setting-CYiFuxeI.js.map} +1 -1
- package/lib/definitions/common-core/src/light/light-source.d.ts +2 -0
- package/lib/definitions/common-core/src/utils/threejs-utils.d.ts +2 -1
- package/lib/definitions/common-core/src/webgl/roomle-component-factory.d.ts +1 -0
- package/lib/definitions/common-core/src/webgl/scene-manager.d.ts +1 -1
- package/lib/definitions/planner-core/src/lights/ceiling-light.d.ts +1 -1
- package/lib/definitions/planner-core/src/lights/light-group.d.ts +1 -2
- package/lib/definitions/planner-core/src/roomle-planner.d.ts +12 -6
- package/lib/definitions/planner-core/src/services/planner-kernel-access.d.ts +1 -1
- package/lib/definitions/planner-core/src/view-model/plan-view-model.d.ts +1 -4
- package/lib/definitions/planner-core/src/webgl/planner-scene-manager.d.ts +5 -1
- package/lib/{glb-viewer-BEWU9zxC.mjs → glb-viewer-BoZgMSrk.mjs} +6 -6
- package/lib/{glb-viewer-BEWU9zxC.mjs.map → glb-viewer-BoZgMSrk.mjs.map} +1 -1
- package/lib/{glb-viewer-camera-behaviour-Cl2bS83k.js → glb-viewer-camera-behaviour-AEWNZ6mR.js} +2 -2
- package/lib/{glb-viewer-camera-behaviour-Cl2bS83k.js.map → glb-viewer-camera-behaviour-AEWNZ6mR.js.map} +1 -1
- package/lib/{glb-viewer-camera-behaviour-DQ2sVbku.mjs → glb-viewer-camera-behaviour-CRnnMrL2.mjs} +2 -2
- package/lib/{glb-viewer-camera-behaviour-DQ2sVbku.mjs.map → glb-viewer-camera-behaviour-CRnnMrL2.mjs.map} +1 -1
- package/lib/{glb-viewer-6_OVDzVH.js → glb-viewer-vvpjnYPw.js} +2 -2
- package/lib/{glb-viewer-6_OVDzVH.js.map → glb-viewer-vvpjnYPw.js.map} +1 -1
- package/lib/glb-viewer.js +1 -1
- package/lib/glb-viewer.nomodule.js +1 -1
- package/lib/{imos-ix-poc-export-helper-r0pv9sOT.js → imos-ix-poc-export-helper-7AWayvID.js} +2 -2
- package/lib/{imos-ix-poc-export-helper-r0pv9sOT.js.map → imos-ix-poc-export-helper-7AWayvID.js.map} +1 -1
- package/lib/{imos-ix-poc-export-helper-BrpY0OHi.mjs → imos-ix-poc-export-helper-gQb0lbdn.mjs} +2 -2
- package/lib/{imos-ix-poc-export-helper-BrpY0OHi.mjs.map → imos-ix-poc-export-helper-gQb0lbdn.mjs.map} +1 -1
- package/lib/{main-05wLxbDZ.js → main-DVWEbQdM.js} +340 -149
- package/lib/{main-05wLxbDZ.js.map → main-DVWEbQdM.js.map} +1 -1
- package/lib/{main-CMu7hOEO.mjs → main-RpgY_kch.mjs} +2202 -1999
- package/lib/{main-CMu7hOEO.mjs.map → main-RpgY_kch.mjs.map} +1 -1
- package/lib/{material-viewer-B0MevA_r.mjs → material-viewer-DQjAOrWL.mjs} +4 -4
- package/lib/{material-viewer-B0MevA_r.mjs.map → material-viewer-DQjAOrWL.mjs.map} +1 -1
- package/lib/{material-viewer-CLqZXFrn.js → material-viewer-_9Sb1UCw.js} +2 -2
- package/lib/{material-viewer-CLqZXFrn.js.map → material-viewer-_9Sb1UCw.js.map} +1 -1
- package/lib/material-viewer.js +1 -1
- package/lib/material-viewer.nomodule.js +1 -1
- package/lib/planner-BcHlq0n3.js +155 -0
- package/lib/planner-BcHlq0n3.js.map +1 -0
- package/lib/{planner-B3Bt-cWy.mjs → planner-BilNNFJ0.mjs} +143 -125
- package/lib/planner-BilNNFJ0.mjs.map +1 -0
- package/lib/planner.js +1 -1
- package/lib/planner.nomodule.js +1 -1
- package/lib/roomle-sdk.js +7 -7
- package/lib/roomle-sdk.nomodule.js +1 -1
- package/lib/{script-loader-CZjzwkk2.js → script-loader-BZOMZ1AI.js} +2 -2
- package/lib/{script-loader-CZjzwkk2.js.map → script-loader-BZOMZ1AI.js.map} +1 -1
- package/lib/{script-loader-BzwDLtbS.mjs → script-loader-CHolkWhE.mjs} +2 -2
- package/lib/{script-loader-BzwDLtbS.mjs.map → script-loader-CHolkWhE.mjs.map} +1 -1
- package/lib/static/roomle-core-hsc/ConfiguratorKernel.wasm +0 -0
- package/lib/static/roomle-core-hsc/RoomleCore.js +6 -6
- package/lib/static/roomle-core-hsc/RoomleCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/RoomleServiceCore.js +6 -6
- package/lib/static/roomle-core-hsc/RoomleServiceCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/RoomleToolsCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/configuratorCoreInterface.d.ts +2 -0
- package/lib/static/roomle-core-hsc/embind/configuratorCoreInterface.d.ts +2 -0
- package/lib/static/roomle-core-hsc/embind/plannerCoreCallback.d.ts +2 -2
- package/lib/static/roomle-core-hsc/embind/plannerCoreCallback.js +1 -1
- package/lib/static/roomle-core-hsc/embind/plannerCoreCallback.js.map +1 -1
- package/lib/static/roomle-core-hsc/embind/plannerCoreInterface.d.ts +17 -2
- package/lib/static/roomle-core-hsc/embind/plannerCoreInterface.js.map +1 -1
- package/lib/static/roomle-core-hsc/package.json +1 -1
- package/lib/static/roomle-core-hsc/plannerCoreCallback.d.ts +2 -2
- package/lib/static/roomle-core-hsc/plannerCoreCallback.js +1 -1
- package/lib/static/roomle-core-hsc/plannerCoreCallback.js.map +1 -1
- package/lib/static/roomle-core-hsc/plannerCoreInterface.d.ts +17 -2
- package/lib/static/roomle-core-hsc/plannerCoreInterface.js.map +1 -1
- package/lib/static/roomle-core-hsc/src/embind/configuratorCoreInterface.d.ts +2 -0
- package/lib/static/roomle-core-hsc/src/embind/plannerCoreCallback.d.ts +2 -2
- package/lib/static/roomle-core-hsc/src/embind/plannerCoreCallback.js +1 -1
- package/lib/static/roomle-core-hsc/src/embind/plannerCoreCallback.js.map +1 -1
- package/lib/static/roomle-core-hsc/src/embind/plannerCoreInterface.d.ts +17 -2
- package/lib/static/roomle-core-hsc/src/embind/plannerCoreInterface.js.map +1 -1
- package/lib/static/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
- package/lib/static/roomle-core-hsc/wasm_modern/RoomleCore.js +6 -6
- package/lib/static/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/wasm_modern/RoomleServiceCore.js +6 -6
- package/lib/static/roomle-core-hsc/wasm_modern/RoomleServiceCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
- package/lib/{stats-helper-BaTpWjzi.mjs → stats-helper-BFpxduid.mjs} +2 -2
- package/lib/{stats-helper-BaTpWjzi.mjs.map → stats-helper-BFpxduid.mjs.map} +1 -1
- package/lib/{stats-helper-DylhlHS_.js → stats-helper-D4z7zVEi.js} +2 -2
- package/lib/{stats-helper-DylhlHS_.js.map → stats-helper-D4z7zVEi.js.map} +1 -1
- package/lib/{tools-core-BF9kMznR.js → tools-core-BJbLUz5-.js} +2 -2
- package/lib/{tools-core-BF9kMznR.js.map → tools-core-BJbLUz5-.js.map} +1 -1
- package/lib/{tools-core-BbL-KMAf.mjs → tools-core-COGP-hBi.mjs} +3 -3
- package/lib/{tools-core-BbL-KMAf.mjs.map → tools-core-COGP-hBi.mjs.map} +1 -1
- package/package.json +1 -1
- package/lib/camera-behaviour-BLMduSEn.mjs.map +0 -1
- package/lib/camera-behaviour-DgLVg_pP.js +0 -50
- package/lib/camera-behaviour-DgLVg_pP.js.map +0 -1
- package/lib/configurator-scene-manager-CRSHxOfd.js +0 -2
- package/lib/configurator-scene-manager-CRSHxOfd.js.map +0 -1
- package/lib/configurator-scene-manager-DbsYS4rm.mjs.map +0 -1
- package/lib/planner-B3Bt-cWy.mjs.map +0 -1
- package/lib/planner-D7lLZxgW.js +0 -155
- package/lib/planner-D7lLZxgW.js.map +0 -1
package/lib/{imos-ix-poc-export-helper-r0pv9sOT.js.map → imos-ix-poc-export-helper-7AWayvID.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imos-ix-poc-export-helper-r0pv9sOT.js","sources":["../../packages/configurator-core/src/utils/imos-ix-poc-export-helper.ts"],"sourcesContent":["import { download } from '../../../common-core/src/utils/common-utils';\nimport { convertCObject } from '../../../common-core/src/utils/kernel-utils';\nimport {\n type ConfigurationExporter,\n type ConfiguratorKernelClass,\n ExportType,\n type HomagIxArticleData,\n} from '../../../typings/kernel';\nimport type { PlanOverview } from '../../../typings/planner';\n\nexport interface HomagIxOrderParams {\n orderNumber?: string;\n dispatchDate?: string;\n basketNumber?: string;\n}\n\nexport interface HomagIxHeaderParams {\n comm?: string;\n articleno?: string;\n customer?: string;\n retailer?: string;\n client?: string;\n program?: string;\n employee?: string;\n textLong?: string;\n textShort?: string;\n colour?: string[];\n info?: string[];\n address?: string[];\n billingAddress?: string[];\n shippingAddress?: string[];\n orderPriceInfo?: string[];\n customInfo?: string[];\n}\n\nexport interface HomagIxArticleParams {\n articleTextInfo1?: string;\n articleTextInfo2?: string;\n articlePriceInfo1?: string;\n articlePriceInfo2?: string;\n articlePriceInfo3?: string;\n deliveryPeriod?: string;\n supplier?: string;\n discount?: number;\n discountAbs?: number;\n}\n\nconst createVector3fString = (\n vec: { x: number; y: number; z: number },\n n: number\n): string => {\n return `${vec.x.toFixed(n)},${vec.y.toFixed(n)},${vec.z.toFixed(n)}`;\n};\n\nconst createSectionFromArray = (\n sectionName: string,\n data: string[]\n): string => {\n let result = '';\n for (let i = 0; i < data.length; i++) {\n result += `<${sectionName}${i + 1}>${data[i]}</${sectionName}${i + 1}>\n `;\n }\n return result;\n};\n\nconst createHeader = (data: HomagIxHeaderParams): string => {\n return `<Head>\n <COMM>${data.comm}</COMM>\n <ARTICLENO>${data.articleno}</ARTICLENO>\n <CUSTOMER>${data.customer}</CUSTOMER>\n <RETAILER>${data.retailer}</RETAILER>\n <CLIENT>${data.client}</CLIENT>\n <PROGRAM>${data.program}</PROGRAM>\n <EMPLOYEE>${data.employee}</EMPLOYEE>\n <TEXT_LONG>${data.textLong}</TEXT_LONG>\n <TEXT_SHORT>${data.textShort}</TEXT_SHORT>\n\n ${createSectionFromArray('COLOUR', data.colour)}\n ${createSectionFromArray('INFO', data.info)}\n ${createSectionFromArray('ADDRESS', data.address)}\n ${createSectionFromArray('BILLING_ADDRESS', data.billingAddress)}\n ${createSectionFromArray('SHIPPING_ADDRESS', data.shippingAddress)}\n ${createSectionFromArray('ORDER_PRICE_INFO', data.orderPriceInfo)}\n ${createSectionFromArray('CUSTOM_INFO', data.customInfo)}\n </Head>`;\n};\n\nconst createArticle = (\n shop: HomagIxArticleParams,\n article: HomagIxArticleData\n): string => {\n return `\n <Pname>${article.name}</Pname>\n <Count>${article.count}</Count>\n <PVarString>${article.attributes}</PVarString>\n <ARTICLE_TEXT_INFO1>${\n shop.articleTextInfo1 || ''\n }</ARTICLE_TEXT_INFO1>\n <ARTICLE_TEXT_INFO2>${\n shop.articleTextInfo2 || ''\n }</ARTICLE_TEXT_INFO2>\n <ARTICLE_PRICE_INFO1>${\n shop.articlePriceInfo1 || ''\n }</ARTICLE_PRICE_INFO1>\n <ARTICLE_PRICE_INFO2>${\n shop.articlePriceInfo2 || ''\n }</ARTICLE_PRICE_INFO2>\n <ARTICLE_PRICE_INFO3>${\n shop.articlePriceInfo3 || ''\n }</ARTICLE_PRICE_INFO3>\n <Pinsertion>${createVector3fString(\n article.position,\n 2\n )}</Pinsertion>\n <POrntation>${createVector3fString(\n article.rotation,\n 2\n )}</POrntation>\n <DeliveryPeriod>${shop.deliveryPeriod || ''}</DeliveryPeriod>\n <LIEFERANT>${shop.supplier || ''}</LIEFERANT>\n <Mengenrabatt>${shop.discount || 0}</Mengenrabatt>\n <MengenrabattAbs>${shop.discountAbs || ''}</MengenrabattAbs>\n `;\n};\n\nconst createArticles = (\n articleShopData: HomagIxArticleParams = {},\n articleCoreData: HomagIxArticleData[]\n): string => {\n let articlesDataString = '';\n for (let i = 0; i < articleCoreData.length; i++) {\n articlesDataString += `<Set LineNo=\"${i + 1}\">${createArticle(\n articleShopData,\n articleCoreData[i]\n )}</Set>\n `;\n }\n return articlesDataString;\n};\n\nexport const createHomagIxXml = (\n orderData: HomagIxOrderParams = {},\n headerData: HomagIxHeaderParams = {},\n articleShopData: HomagIxArticleParams = {},\n articleCoreData: any\n): string => {\n return `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n <XML type=\"ListBuilder\">\n <Order No=\"${orderData.orderNumber}\" DispDate=\"${\n orderData.dispatchDate\n }\" Basket=\"${orderData.basketNumber}\">\n ${createHeader(headerData)}\n <BuilderList>\n ${createArticles(articleShopData, articleCoreData.articles)}\n </BuilderList>\n </Order>\n </XML>\n `;\n};\n\n// Mock data section, these can be deleted if proper values are available\nexport const getFakeOrderParams = (): HomagIxOrderParams => {\n const randomNumber = Math.floor(Math.random() * 1000000).toString();\n return {\n orderNumber: 'Order ' + randomNumber,\n dispatchDate: '9/11/1911',\n basketNumber: randomNumber,\n };\n};\n\nexport const getFakeHeaderParams = (): HomagIxHeaderParams => {\n return {\n comm: 'Rubens2Rembrand',\n articleno: 'ExampleSIM',\n customer: 'Roomle',\n retailer: 'Retail',\n client: 'Ex ClientName',\n program: 'program',\n employee: 'Homag',\n textLong: 'long long long txt',\n textShort: 'short txt',\n colour: ['colour1', 'colour2', 'colour3', 'colour4', 'colour5'],\n info: [\n '1Admin',\n '2Firma_ABC',\n '3Adresse_ABC',\n '4PLZ_ABC',\n '5Stadt_ABC',\n '6',\n '7',\n '8',\n '9',\n '10',\n '11',\n '12',\n ],\n address: [\n 'Admin',\n 'Firma_ABC',\n 'Adresse_ABC',\n 'PLZ_ABC',\n 'Stadt_ABC',\n 'Kundennummer_ABC',\n 'Land_ABC',\n ],\n billingAddress: [\n 'Optional1',\n 'Optional2',\n 'Optional3',\n 'Optional4',\n 'Optional5',\n 'Optional6',\n ],\n shippingAddress: ['opt', 'opt', 'opt', 'opt', 'opt', 'opt'],\n orderPriceInfo: ['000', 'Price002', 'Price003', 'Price004', 'Price005'],\n customInfo: [\n 'CustInf1',\n 'CustInf2',\n 'CustInf3',\n 'CustInf4',\n 'CustInf5',\n 'CustInf6',\n 'CustInf7',\n 'CustInf8',\n 'CustInf9',\n 'CustInf10',\n ],\n };\n};\n\nexport const getFakeArticleParams = (): HomagIxArticleParams => {\n return {};\n};\n\nexport const downloadHomagIxExportPoC = async (\n planOverview: PlanOverview,\n exporter: ConfigurationExporter,\n kernelInstance: ConfiguratorKernelClass\n) => {\n const planObjects = convertCObject(planOverview.objects);\n\n let articles: any[] = [];\n\n for (const planObject of planObjects) {\n const configurationRuntimeId = planObject.configurationRuntimeId;\n\n try {\n const planObjectExport = JSON.parse(\n exporter.generateExport(\n ExportType.HOMAGiX,\n configurationRuntimeId,\n kernelInstance\n )\n );\n articles = articles.concat(planObjectExport.articles);\n } catch (e) {\n console.error(e);\n return Promise.reject(\n `Could not create export JSON ${ExportType.HOMAGiX}`\n );\n }\n }\n\n const homagIxOrderData = getFakeOrderParams();\n const homagIxHeaderParams = getFakeHeaderParams();\n const homagIxArticleParams = getFakeArticleParams();\n\n const xmltext = createHomagIxXml(\n homagIxOrderData,\n homagIxHeaderParams,\n homagIxArticleParams,\n { articles }\n );\n\n let filename = 'IMOSiX.xml';\n download(filename, xmltext);\n return Promise.resolve();\n};\nexport const generateExportHomagIxConfiguration = async (\n planObjectId: number,\n exportType: ExportType,\n exporter: ConfigurationExporter,\n kernelInstance: ConfiguratorKernelClass,\n defaultExportDefinition: string = ''\n): Promise<any> => {\n try {\n exporter.setDefaultExportDataDefinition(defaultExportDefinition);\n return Promise.resolve(\n JSON.parse(\n exporter.generateExport(exportType, planObjectId, kernelInstance)\n )\n );\n } catch (e) {\n console.error(e);\n return Promise.reject(`Could not create export JSON ${exportType}`);\n }\n};\n\nexport const homagIxMockUpData = (\n articles: any[],\n homagIxOrderData = {},\n homagIxHeaderParams = {},\n homagIxArticleParams = {}\n) => {\n homagIxOrderData = getFakeOrderParams();\n homagIxHeaderParams = getFakeHeaderParams();\n homagIxArticleParams = getFakeArticleParams();\n\n return createHomagIxXml(\n homagIxOrderData,\n homagIxHeaderParams,\n homagIxArticleParams,\n articles\n );\n};\n"],"names":["createVector3fString","vec","n","createSectionFromArray","sectionName","data","result","i","createHeader","createArticle","shop","article","createArticles","articleShopData","articleCoreData","articlesDataString","createHomagIxXml","exports","orderData","headerData","getFakeOrderParams","randomNumber","getFakeHeaderParams","getFakeArticleParams","downloadHomagIxExportPoC","planOverview","exporter","kernelInstance","planObjects","convertCObject","articles","planObject","configurationRuntimeId","planObjectExport","ExportType","e","homagIxOrderData","homagIxHeaderParams","homagIxArticleParams","xmltext","download","generateExportHomagIxConfiguration","planObjectId","exportType","defaultExportDefinition","homagIxMockUpData"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"imos-ix-poc-export-helper-7AWayvID.js","sources":["../../packages/configurator-core/src/utils/imos-ix-poc-export-helper.ts"],"sourcesContent":["import { download } from '../../../common-core/src/utils/common-utils';\nimport { convertCObject } from '../../../common-core/src/utils/kernel-utils';\nimport {\n type ConfigurationExporter,\n type ConfiguratorKernelClass,\n ExportType,\n type HomagIxArticleData,\n} from '../../../typings/kernel';\nimport type { PlanOverview } from '../../../typings/planner';\n\nexport interface HomagIxOrderParams {\n orderNumber?: string;\n dispatchDate?: string;\n basketNumber?: string;\n}\n\nexport interface HomagIxHeaderParams {\n comm?: string;\n articleno?: string;\n customer?: string;\n retailer?: string;\n client?: string;\n program?: string;\n employee?: string;\n textLong?: string;\n textShort?: string;\n colour?: string[];\n info?: string[];\n address?: string[];\n billingAddress?: string[];\n shippingAddress?: string[];\n orderPriceInfo?: string[];\n customInfo?: string[];\n}\n\nexport interface HomagIxArticleParams {\n articleTextInfo1?: string;\n articleTextInfo2?: string;\n articlePriceInfo1?: string;\n articlePriceInfo2?: string;\n articlePriceInfo3?: string;\n deliveryPeriod?: string;\n supplier?: string;\n discount?: number;\n discountAbs?: number;\n}\n\nconst createVector3fString = (\n vec: { x: number; y: number; z: number },\n n: number\n): string => {\n return `${vec.x.toFixed(n)},${vec.y.toFixed(n)},${vec.z.toFixed(n)}`;\n};\n\nconst createSectionFromArray = (\n sectionName: string,\n data: string[]\n): string => {\n let result = '';\n for (let i = 0; i < data.length; i++) {\n result += `<${sectionName}${i + 1}>${data[i]}</${sectionName}${i + 1}>\n `;\n }\n return result;\n};\n\nconst createHeader = (data: HomagIxHeaderParams): string => {\n return `<Head>\n <COMM>${data.comm}</COMM>\n <ARTICLENO>${data.articleno}</ARTICLENO>\n <CUSTOMER>${data.customer}</CUSTOMER>\n <RETAILER>${data.retailer}</RETAILER>\n <CLIENT>${data.client}</CLIENT>\n <PROGRAM>${data.program}</PROGRAM>\n <EMPLOYEE>${data.employee}</EMPLOYEE>\n <TEXT_LONG>${data.textLong}</TEXT_LONG>\n <TEXT_SHORT>${data.textShort}</TEXT_SHORT>\n\n ${createSectionFromArray('COLOUR', data.colour)}\n ${createSectionFromArray('INFO', data.info)}\n ${createSectionFromArray('ADDRESS', data.address)}\n ${createSectionFromArray('BILLING_ADDRESS', data.billingAddress)}\n ${createSectionFromArray('SHIPPING_ADDRESS', data.shippingAddress)}\n ${createSectionFromArray('ORDER_PRICE_INFO', data.orderPriceInfo)}\n ${createSectionFromArray('CUSTOM_INFO', data.customInfo)}\n </Head>`;\n};\n\nconst createArticle = (\n shop: HomagIxArticleParams,\n article: HomagIxArticleData\n): string => {\n return `\n <Pname>${article.name}</Pname>\n <Count>${article.count}</Count>\n <PVarString>${article.attributes}</PVarString>\n <ARTICLE_TEXT_INFO1>${\n shop.articleTextInfo1 || ''\n }</ARTICLE_TEXT_INFO1>\n <ARTICLE_TEXT_INFO2>${\n shop.articleTextInfo2 || ''\n }</ARTICLE_TEXT_INFO2>\n <ARTICLE_PRICE_INFO1>${\n shop.articlePriceInfo1 || ''\n }</ARTICLE_PRICE_INFO1>\n <ARTICLE_PRICE_INFO2>${\n shop.articlePriceInfo2 || ''\n }</ARTICLE_PRICE_INFO2>\n <ARTICLE_PRICE_INFO3>${\n shop.articlePriceInfo3 || ''\n }</ARTICLE_PRICE_INFO3>\n <Pinsertion>${createVector3fString(\n article.position,\n 2\n )}</Pinsertion>\n <POrntation>${createVector3fString(\n article.rotation,\n 2\n )}</POrntation>\n <DeliveryPeriod>${shop.deliveryPeriod || ''}</DeliveryPeriod>\n <LIEFERANT>${shop.supplier || ''}</LIEFERANT>\n <Mengenrabatt>${shop.discount || 0}</Mengenrabatt>\n <MengenrabattAbs>${shop.discountAbs || ''}</MengenrabattAbs>\n `;\n};\n\nconst createArticles = (\n articleShopData: HomagIxArticleParams = {},\n articleCoreData: HomagIxArticleData[]\n): string => {\n let articlesDataString = '';\n for (let i = 0; i < articleCoreData.length; i++) {\n articlesDataString += `<Set LineNo=\"${i + 1}\">${createArticle(\n articleShopData,\n articleCoreData[i]\n )}</Set>\n `;\n }\n return articlesDataString;\n};\n\nexport const createHomagIxXml = (\n orderData: HomagIxOrderParams = {},\n headerData: HomagIxHeaderParams = {},\n articleShopData: HomagIxArticleParams = {},\n articleCoreData: any\n): string => {\n return `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n <XML type=\"ListBuilder\">\n <Order No=\"${orderData.orderNumber}\" DispDate=\"${\n orderData.dispatchDate\n }\" Basket=\"${orderData.basketNumber}\">\n ${createHeader(headerData)}\n <BuilderList>\n ${createArticles(articleShopData, articleCoreData.articles)}\n </BuilderList>\n </Order>\n </XML>\n `;\n};\n\n// Mock data section, these can be deleted if proper values are available\nexport const getFakeOrderParams = (): HomagIxOrderParams => {\n const randomNumber = Math.floor(Math.random() * 1000000).toString();\n return {\n orderNumber: 'Order ' + randomNumber,\n dispatchDate: '9/11/1911',\n basketNumber: randomNumber,\n };\n};\n\nexport const getFakeHeaderParams = (): HomagIxHeaderParams => {\n return {\n comm: 'Rubens2Rembrand',\n articleno: 'ExampleSIM',\n customer: 'Roomle',\n retailer: 'Retail',\n client: 'Ex ClientName',\n program: 'program',\n employee: 'Homag',\n textLong: 'long long long txt',\n textShort: 'short txt',\n colour: ['colour1', 'colour2', 'colour3', 'colour4', 'colour5'],\n info: [\n '1Admin',\n '2Firma_ABC',\n '3Adresse_ABC',\n '4PLZ_ABC',\n '5Stadt_ABC',\n '6',\n '7',\n '8',\n '9',\n '10',\n '11',\n '12',\n ],\n address: [\n 'Admin',\n 'Firma_ABC',\n 'Adresse_ABC',\n 'PLZ_ABC',\n 'Stadt_ABC',\n 'Kundennummer_ABC',\n 'Land_ABC',\n ],\n billingAddress: [\n 'Optional1',\n 'Optional2',\n 'Optional3',\n 'Optional4',\n 'Optional5',\n 'Optional6',\n ],\n shippingAddress: ['opt', 'opt', 'opt', 'opt', 'opt', 'opt'],\n orderPriceInfo: ['000', 'Price002', 'Price003', 'Price004', 'Price005'],\n customInfo: [\n 'CustInf1',\n 'CustInf2',\n 'CustInf3',\n 'CustInf4',\n 'CustInf5',\n 'CustInf6',\n 'CustInf7',\n 'CustInf8',\n 'CustInf9',\n 'CustInf10',\n ],\n };\n};\n\nexport const getFakeArticleParams = (): HomagIxArticleParams => {\n return {};\n};\n\nexport const downloadHomagIxExportPoC = async (\n planOverview: PlanOverview,\n exporter: ConfigurationExporter,\n kernelInstance: ConfiguratorKernelClass\n) => {\n const planObjects = convertCObject(planOverview.objects);\n\n let articles: any[] = [];\n\n for (const planObject of planObjects) {\n const configurationRuntimeId = planObject.configurationRuntimeId;\n\n try {\n const planObjectExport = JSON.parse(\n exporter.generateExport(\n ExportType.HOMAGiX,\n configurationRuntimeId,\n kernelInstance\n )\n );\n articles = articles.concat(planObjectExport.articles);\n } catch (e) {\n console.error(e);\n return Promise.reject(\n `Could not create export JSON ${ExportType.HOMAGiX}`\n );\n }\n }\n\n const homagIxOrderData = getFakeOrderParams();\n const homagIxHeaderParams = getFakeHeaderParams();\n const homagIxArticleParams = getFakeArticleParams();\n\n const xmltext = createHomagIxXml(\n homagIxOrderData,\n homagIxHeaderParams,\n homagIxArticleParams,\n { articles }\n );\n\n let filename = 'IMOSiX.xml';\n download(filename, xmltext);\n return Promise.resolve();\n};\nexport const generateExportHomagIxConfiguration = async (\n planObjectId: number,\n exportType: ExportType,\n exporter: ConfigurationExporter,\n kernelInstance: ConfiguratorKernelClass,\n defaultExportDefinition: string = ''\n): Promise<any> => {\n try {\n exporter.setDefaultExportDataDefinition(defaultExportDefinition);\n return Promise.resolve(\n JSON.parse(\n exporter.generateExport(exportType, planObjectId, kernelInstance)\n )\n );\n } catch (e) {\n console.error(e);\n return Promise.reject(`Could not create export JSON ${exportType}`);\n }\n};\n\nexport const homagIxMockUpData = (\n articles: any[],\n homagIxOrderData = {},\n homagIxHeaderParams = {},\n homagIxArticleParams = {}\n) => {\n homagIxOrderData = getFakeOrderParams();\n homagIxHeaderParams = getFakeHeaderParams();\n homagIxArticleParams = getFakeArticleParams();\n\n return createHomagIxXml(\n homagIxOrderData,\n homagIxHeaderParams,\n homagIxArticleParams,\n articles\n );\n};\n"],"names":["createVector3fString","vec","n","createSectionFromArray","sectionName","data","result","i","createHeader","createArticle","shop","article","createArticles","articleShopData","articleCoreData","articlesDataString","createHomagIxXml","exports","orderData","headerData","getFakeOrderParams","randomNumber","getFakeHeaderParams","getFakeArticleParams","downloadHomagIxExportPoC","planOverview","exporter","kernelInstance","planObjects","convertCObject","articles","planObject","configurationRuntimeId","planObjectExport","ExportType","e","homagIxOrderData","homagIxHeaderParams","homagIxArticleParams","xmltext","download","generateExportHomagIxConfiguration","planObjectId","exportType","defaultExportDefinition","homagIxMockUpData"],"mappings":"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"}
|
package/lib/{imos-ix-poc-export-helper-BrpY0OHi.mjs → imos-ix-poc-export-helper-gQb0lbdn.mjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { g as P, E as a, h as T } from "./main-
|
|
1
|
+
import { g as P, E as a, h as T } from "./main-RpgY_kch.mjs";
|
|
2
2
|
const l = (e, t) => `${e.x.toFixed(t)},${e.y.toFixed(t)},${e.z.toFixed(t)}`, n = (e, t) => {
|
|
3
3
|
let o = "";
|
|
4
4
|
for (let r = 0; r < t.length; r++)
|
|
@@ -177,4 +177,4 @@ export {
|
|
|
177
177
|
u as getFakeOrderParams,
|
|
178
178
|
x as homagIxMockUpData
|
|
179
179
|
};
|
|
180
|
-
//# sourceMappingURL=imos-ix-poc-export-helper-
|
|
180
|
+
//# sourceMappingURL=imos-ix-poc-export-helper-gQb0lbdn.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imos-ix-poc-export-helper-BrpY0OHi.mjs","sources":["../../packages/configurator-core/src/utils/imos-ix-poc-export-helper.ts"],"sourcesContent":["import { download } from '../../../common-core/src/utils/common-utils';\nimport { convertCObject } from '../../../common-core/src/utils/kernel-utils';\nimport {\n type ConfigurationExporter,\n type ConfiguratorKernelClass,\n ExportType,\n type HomagIxArticleData,\n} from '../../../typings/kernel';\nimport type { PlanOverview } from '../../../typings/planner';\n\nexport interface HomagIxOrderParams {\n orderNumber?: string;\n dispatchDate?: string;\n basketNumber?: string;\n}\n\nexport interface HomagIxHeaderParams {\n comm?: string;\n articleno?: string;\n customer?: string;\n retailer?: string;\n client?: string;\n program?: string;\n employee?: string;\n textLong?: string;\n textShort?: string;\n colour?: string[];\n info?: string[];\n address?: string[];\n billingAddress?: string[];\n shippingAddress?: string[];\n orderPriceInfo?: string[];\n customInfo?: string[];\n}\n\nexport interface HomagIxArticleParams {\n articleTextInfo1?: string;\n articleTextInfo2?: string;\n articlePriceInfo1?: string;\n articlePriceInfo2?: string;\n articlePriceInfo3?: string;\n deliveryPeriod?: string;\n supplier?: string;\n discount?: number;\n discountAbs?: number;\n}\n\nconst createVector3fString = (\n vec: { x: number; y: number; z: number },\n n: number\n): string => {\n return `${vec.x.toFixed(n)},${vec.y.toFixed(n)},${vec.z.toFixed(n)}`;\n};\n\nconst createSectionFromArray = (\n sectionName: string,\n data: string[]\n): string => {\n let result = '';\n for (let i = 0; i < data.length; i++) {\n result += `<${sectionName}${i + 1}>${data[i]}</${sectionName}${i + 1}>\n `;\n }\n return result;\n};\n\nconst createHeader = (data: HomagIxHeaderParams): string => {\n return `<Head>\n <COMM>${data.comm}</COMM>\n <ARTICLENO>${data.articleno}</ARTICLENO>\n <CUSTOMER>${data.customer}</CUSTOMER>\n <RETAILER>${data.retailer}</RETAILER>\n <CLIENT>${data.client}</CLIENT>\n <PROGRAM>${data.program}</PROGRAM>\n <EMPLOYEE>${data.employee}</EMPLOYEE>\n <TEXT_LONG>${data.textLong}</TEXT_LONG>\n <TEXT_SHORT>${data.textShort}</TEXT_SHORT>\n\n ${createSectionFromArray('COLOUR', data.colour)}\n ${createSectionFromArray('INFO', data.info)}\n ${createSectionFromArray('ADDRESS', data.address)}\n ${createSectionFromArray('BILLING_ADDRESS', data.billingAddress)}\n ${createSectionFromArray('SHIPPING_ADDRESS', data.shippingAddress)}\n ${createSectionFromArray('ORDER_PRICE_INFO', data.orderPriceInfo)}\n ${createSectionFromArray('CUSTOM_INFO', data.customInfo)}\n </Head>`;\n};\n\nconst createArticle = (\n shop: HomagIxArticleParams,\n article: HomagIxArticleData\n): string => {\n return `\n <Pname>${article.name}</Pname>\n <Count>${article.count}</Count>\n <PVarString>${article.attributes}</PVarString>\n <ARTICLE_TEXT_INFO1>${\n shop.articleTextInfo1 || ''\n }</ARTICLE_TEXT_INFO1>\n <ARTICLE_TEXT_INFO2>${\n shop.articleTextInfo2 || ''\n }</ARTICLE_TEXT_INFO2>\n <ARTICLE_PRICE_INFO1>${\n shop.articlePriceInfo1 || ''\n }</ARTICLE_PRICE_INFO1>\n <ARTICLE_PRICE_INFO2>${\n shop.articlePriceInfo2 || ''\n }</ARTICLE_PRICE_INFO2>\n <ARTICLE_PRICE_INFO3>${\n shop.articlePriceInfo3 || ''\n }</ARTICLE_PRICE_INFO3>\n <Pinsertion>${createVector3fString(\n article.position,\n 2\n )}</Pinsertion>\n <POrntation>${createVector3fString(\n article.rotation,\n 2\n )}</POrntation>\n <DeliveryPeriod>${shop.deliveryPeriod || ''}</DeliveryPeriod>\n <LIEFERANT>${shop.supplier || ''}</LIEFERANT>\n <Mengenrabatt>${shop.discount || 0}</Mengenrabatt>\n <MengenrabattAbs>${shop.discountAbs || ''}</MengenrabattAbs>\n `;\n};\n\nconst createArticles = (\n articleShopData: HomagIxArticleParams = {},\n articleCoreData: HomagIxArticleData[]\n): string => {\n let articlesDataString = '';\n for (let i = 0; i < articleCoreData.length; i++) {\n articlesDataString += `<Set LineNo=\"${i + 1}\">${createArticle(\n articleShopData,\n articleCoreData[i]\n )}</Set>\n `;\n }\n return articlesDataString;\n};\n\nexport const createHomagIxXml = (\n orderData: HomagIxOrderParams = {},\n headerData: HomagIxHeaderParams = {},\n articleShopData: HomagIxArticleParams = {},\n articleCoreData: any\n): string => {\n return `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n <XML type=\"ListBuilder\">\n <Order No=\"${orderData.orderNumber}\" DispDate=\"${\n orderData.dispatchDate\n }\" Basket=\"${orderData.basketNumber}\">\n ${createHeader(headerData)}\n <BuilderList>\n ${createArticles(articleShopData, articleCoreData.articles)}\n </BuilderList>\n </Order>\n </XML>\n `;\n};\n\n// Mock data section, these can be deleted if proper values are available\nexport const getFakeOrderParams = (): HomagIxOrderParams => {\n const randomNumber = Math.floor(Math.random() * 1000000).toString();\n return {\n orderNumber: 'Order ' + randomNumber,\n dispatchDate: '9/11/1911',\n basketNumber: randomNumber,\n };\n};\n\nexport const getFakeHeaderParams = (): HomagIxHeaderParams => {\n return {\n comm: 'Rubens2Rembrand',\n articleno: 'ExampleSIM',\n customer: 'Roomle',\n retailer: 'Retail',\n client: 'Ex ClientName',\n program: 'program',\n employee: 'Homag',\n textLong: 'long long long txt',\n textShort: 'short txt',\n colour: ['colour1', 'colour2', 'colour3', 'colour4', 'colour5'],\n info: [\n '1Admin',\n '2Firma_ABC',\n '3Adresse_ABC',\n '4PLZ_ABC',\n '5Stadt_ABC',\n '6',\n '7',\n '8',\n '9',\n '10',\n '11',\n '12',\n ],\n address: [\n 'Admin',\n 'Firma_ABC',\n 'Adresse_ABC',\n 'PLZ_ABC',\n 'Stadt_ABC',\n 'Kundennummer_ABC',\n 'Land_ABC',\n ],\n billingAddress: [\n 'Optional1',\n 'Optional2',\n 'Optional3',\n 'Optional4',\n 'Optional5',\n 'Optional6',\n ],\n shippingAddress: ['opt', 'opt', 'opt', 'opt', 'opt', 'opt'],\n orderPriceInfo: ['000', 'Price002', 'Price003', 'Price004', 'Price005'],\n customInfo: [\n 'CustInf1',\n 'CustInf2',\n 'CustInf3',\n 'CustInf4',\n 'CustInf5',\n 'CustInf6',\n 'CustInf7',\n 'CustInf8',\n 'CustInf9',\n 'CustInf10',\n ],\n };\n};\n\nexport const getFakeArticleParams = (): HomagIxArticleParams => {\n return {};\n};\n\nexport const downloadHomagIxExportPoC = async (\n planOverview: PlanOverview,\n exporter: ConfigurationExporter,\n kernelInstance: ConfiguratorKernelClass\n) => {\n const planObjects = convertCObject(planOverview.objects);\n\n let articles: any[] = [];\n\n for (const planObject of planObjects) {\n const configurationRuntimeId = planObject.configurationRuntimeId;\n\n try {\n const planObjectExport = JSON.parse(\n exporter.generateExport(\n ExportType.HOMAGiX,\n configurationRuntimeId,\n kernelInstance\n )\n );\n articles = articles.concat(planObjectExport.articles);\n } catch (e) {\n console.error(e);\n return Promise.reject(\n `Could not create export JSON ${ExportType.HOMAGiX}`\n );\n }\n }\n\n const homagIxOrderData = getFakeOrderParams();\n const homagIxHeaderParams = getFakeHeaderParams();\n const homagIxArticleParams = getFakeArticleParams();\n\n const xmltext = createHomagIxXml(\n homagIxOrderData,\n homagIxHeaderParams,\n homagIxArticleParams,\n { articles }\n );\n\n let filename = 'IMOSiX.xml';\n download(filename, xmltext);\n return Promise.resolve();\n};\nexport const generateExportHomagIxConfiguration = async (\n planObjectId: number,\n exportType: ExportType,\n exporter: ConfigurationExporter,\n kernelInstance: ConfiguratorKernelClass,\n defaultExportDefinition: string = ''\n): Promise<any> => {\n try {\n exporter.setDefaultExportDataDefinition(defaultExportDefinition);\n return Promise.resolve(\n JSON.parse(\n exporter.generateExport(exportType, planObjectId, kernelInstance)\n )\n );\n } catch (e) {\n console.error(e);\n return Promise.reject(`Could not create export JSON ${exportType}`);\n }\n};\n\nexport const homagIxMockUpData = (\n articles: any[],\n homagIxOrderData = {},\n homagIxHeaderParams = {},\n homagIxArticleParams = {}\n) => {\n homagIxOrderData = getFakeOrderParams();\n homagIxHeaderParams = getFakeHeaderParams();\n homagIxArticleParams = getFakeArticleParams();\n\n return createHomagIxXml(\n homagIxOrderData,\n homagIxHeaderParams,\n homagIxArticleParams,\n articles\n );\n};\n"],"names":["createVector3fString","vec","n","createSectionFromArray","sectionName","data","result","i","createHeader","createArticle","shop","article","createArticles","articleShopData","articleCoreData","articlesDataString","createHomagIxXml","orderData","headerData","getFakeOrderParams","randomNumber","getFakeHeaderParams","getFakeArticleParams","downloadHomagIxExportPoC","planOverview","exporter","kernelInstance","planObjects","convertCObject","articles","planObject","configurationRuntimeId","planObjectExport","ExportType","e","homagIxOrderData","homagIxHeaderParams","homagIxArticleParams","xmltext","download","generateExportHomagIxConfiguration","planObjectId","exportType","defaultExportDefinition","homagIxMockUpData"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"imos-ix-poc-export-helper-gQb0lbdn.mjs","sources":["../../packages/configurator-core/src/utils/imos-ix-poc-export-helper.ts"],"sourcesContent":["import { download } from '../../../common-core/src/utils/common-utils';\nimport { convertCObject } from '../../../common-core/src/utils/kernel-utils';\nimport {\n type ConfigurationExporter,\n type ConfiguratorKernelClass,\n ExportType,\n type HomagIxArticleData,\n} from '../../../typings/kernel';\nimport type { PlanOverview } from '../../../typings/planner';\n\nexport interface HomagIxOrderParams {\n orderNumber?: string;\n dispatchDate?: string;\n basketNumber?: string;\n}\n\nexport interface HomagIxHeaderParams {\n comm?: string;\n articleno?: string;\n customer?: string;\n retailer?: string;\n client?: string;\n program?: string;\n employee?: string;\n textLong?: string;\n textShort?: string;\n colour?: string[];\n info?: string[];\n address?: string[];\n billingAddress?: string[];\n shippingAddress?: string[];\n orderPriceInfo?: string[];\n customInfo?: string[];\n}\n\nexport interface HomagIxArticleParams {\n articleTextInfo1?: string;\n articleTextInfo2?: string;\n articlePriceInfo1?: string;\n articlePriceInfo2?: string;\n articlePriceInfo3?: string;\n deliveryPeriod?: string;\n supplier?: string;\n discount?: number;\n discountAbs?: number;\n}\n\nconst createVector3fString = (\n vec: { x: number; y: number; z: number },\n n: number\n): string => {\n return `${vec.x.toFixed(n)},${vec.y.toFixed(n)},${vec.z.toFixed(n)}`;\n};\n\nconst createSectionFromArray = (\n sectionName: string,\n data: string[]\n): string => {\n let result = '';\n for (let i = 0; i < data.length; i++) {\n result += `<${sectionName}${i + 1}>${data[i]}</${sectionName}${i + 1}>\n `;\n }\n return result;\n};\n\nconst createHeader = (data: HomagIxHeaderParams): string => {\n return `<Head>\n <COMM>${data.comm}</COMM>\n <ARTICLENO>${data.articleno}</ARTICLENO>\n <CUSTOMER>${data.customer}</CUSTOMER>\n <RETAILER>${data.retailer}</RETAILER>\n <CLIENT>${data.client}</CLIENT>\n <PROGRAM>${data.program}</PROGRAM>\n <EMPLOYEE>${data.employee}</EMPLOYEE>\n <TEXT_LONG>${data.textLong}</TEXT_LONG>\n <TEXT_SHORT>${data.textShort}</TEXT_SHORT>\n\n ${createSectionFromArray('COLOUR', data.colour)}\n ${createSectionFromArray('INFO', data.info)}\n ${createSectionFromArray('ADDRESS', data.address)}\n ${createSectionFromArray('BILLING_ADDRESS', data.billingAddress)}\n ${createSectionFromArray('SHIPPING_ADDRESS', data.shippingAddress)}\n ${createSectionFromArray('ORDER_PRICE_INFO', data.orderPriceInfo)}\n ${createSectionFromArray('CUSTOM_INFO', data.customInfo)}\n </Head>`;\n};\n\nconst createArticle = (\n shop: HomagIxArticleParams,\n article: HomagIxArticleData\n): string => {\n return `\n <Pname>${article.name}</Pname>\n <Count>${article.count}</Count>\n <PVarString>${article.attributes}</PVarString>\n <ARTICLE_TEXT_INFO1>${\n shop.articleTextInfo1 || ''\n }</ARTICLE_TEXT_INFO1>\n <ARTICLE_TEXT_INFO2>${\n shop.articleTextInfo2 || ''\n }</ARTICLE_TEXT_INFO2>\n <ARTICLE_PRICE_INFO1>${\n shop.articlePriceInfo1 || ''\n }</ARTICLE_PRICE_INFO1>\n <ARTICLE_PRICE_INFO2>${\n shop.articlePriceInfo2 || ''\n }</ARTICLE_PRICE_INFO2>\n <ARTICLE_PRICE_INFO3>${\n shop.articlePriceInfo3 || ''\n }</ARTICLE_PRICE_INFO3>\n <Pinsertion>${createVector3fString(\n article.position,\n 2\n )}</Pinsertion>\n <POrntation>${createVector3fString(\n article.rotation,\n 2\n )}</POrntation>\n <DeliveryPeriod>${shop.deliveryPeriod || ''}</DeliveryPeriod>\n <LIEFERANT>${shop.supplier || ''}</LIEFERANT>\n <Mengenrabatt>${shop.discount || 0}</Mengenrabatt>\n <MengenrabattAbs>${shop.discountAbs || ''}</MengenrabattAbs>\n `;\n};\n\nconst createArticles = (\n articleShopData: HomagIxArticleParams = {},\n articleCoreData: HomagIxArticleData[]\n): string => {\n let articlesDataString = '';\n for (let i = 0; i < articleCoreData.length; i++) {\n articlesDataString += `<Set LineNo=\"${i + 1}\">${createArticle(\n articleShopData,\n articleCoreData[i]\n )}</Set>\n `;\n }\n return articlesDataString;\n};\n\nexport const createHomagIxXml = (\n orderData: HomagIxOrderParams = {},\n headerData: HomagIxHeaderParams = {},\n articleShopData: HomagIxArticleParams = {},\n articleCoreData: any\n): string => {\n return `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n <XML type=\"ListBuilder\">\n <Order No=\"${orderData.orderNumber}\" DispDate=\"${\n orderData.dispatchDate\n }\" Basket=\"${orderData.basketNumber}\">\n ${createHeader(headerData)}\n <BuilderList>\n ${createArticles(articleShopData, articleCoreData.articles)}\n </BuilderList>\n </Order>\n </XML>\n `;\n};\n\n// Mock data section, these can be deleted if proper values are available\nexport const getFakeOrderParams = (): HomagIxOrderParams => {\n const randomNumber = Math.floor(Math.random() * 1000000).toString();\n return {\n orderNumber: 'Order ' + randomNumber,\n dispatchDate: '9/11/1911',\n basketNumber: randomNumber,\n };\n};\n\nexport const getFakeHeaderParams = (): HomagIxHeaderParams => {\n return {\n comm: 'Rubens2Rembrand',\n articleno: 'ExampleSIM',\n customer: 'Roomle',\n retailer: 'Retail',\n client: 'Ex ClientName',\n program: 'program',\n employee: 'Homag',\n textLong: 'long long long txt',\n textShort: 'short txt',\n colour: ['colour1', 'colour2', 'colour3', 'colour4', 'colour5'],\n info: [\n '1Admin',\n '2Firma_ABC',\n '3Adresse_ABC',\n '4PLZ_ABC',\n '5Stadt_ABC',\n '6',\n '7',\n '8',\n '9',\n '10',\n '11',\n '12',\n ],\n address: [\n 'Admin',\n 'Firma_ABC',\n 'Adresse_ABC',\n 'PLZ_ABC',\n 'Stadt_ABC',\n 'Kundennummer_ABC',\n 'Land_ABC',\n ],\n billingAddress: [\n 'Optional1',\n 'Optional2',\n 'Optional3',\n 'Optional4',\n 'Optional5',\n 'Optional6',\n ],\n shippingAddress: ['opt', 'opt', 'opt', 'opt', 'opt', 'opt'],\n orderPriceInfo: ['000', 'Price002', 'Price003', 'Price004', 'Price005'],\n customInfo: [\n 'CustInf1',\n 'CustInf2',\n 'CustInf3',\n 'CustInf4',\n 'CustInf5',\n 'CustInf6',\n 'CustInf7',\n 'CustInf8',\n 'CustInf9',\n 'CustInf10',\n ],\n };\n};\n\nexport const getFakeArticleParams = (): HomagIxArticleParams => {\n return {};\n};\n\nexport const downloadHomagIxExportPoC = async (\n planOverview: PlanOverview,\n exporter: ConfigurationExporter,\n kernelInstance: ConfiguratorKernelClass\n) => {\n const planObjects = convertCObject(planOverview.objects);\n\n let articles: any[] = [];\n\n for (const planObject of planObjects) {\n const configurationRuntimeId = planObject.configurationRuntimeId;\n\n try {\n const planObjectExport = JSON.parse(\n exporter.generateExport(\n ExportType.HOMAGiX,\n configurationRuntimeId,\n kernelInstance\n )\n );\n articles = articles.concat(planObjectExport.articles);\n } catch (e) {\n console.error(e);\n return Promise.reject(\n `Could not create export JSON ${ExportType.HOMAGiX}`\n );\n }\n }\n\n const homagIxOrderData = getFakeOrderParams();\n const homagIxHeaderParams = getFakeHeaderParams();\n const homagIxArticleParams = getFakeArticleParams();\n\n const xmltext = createHomagIxXml(\n homagIxOrderData,\n homagIxHeaderParams,\n homagIxArticleParams,\n { articles }\n );\n\n let filename = 'IMOSiX.xml';\n download(filename, xmltext);\n return Promise.resolve();\n};\nexport const generateExportHomagIxConfiguration = async (\n planObjectId: number,\n exportType: ExportType,\n exporter: ConfigurationExporter,\n kernelInstance: ConfiguratorKernelClass,\n defaultExportDefinition: string = ''\n): Promise<any> => {\n try {\n exporter.setDefaultExportDataDefinition(defaultExportDefinition);\n return Promise.resolve(\n JSON.parse(\n exporter.generateExport(exportType, planObjectId, kernelInstance)\n )\n );\n } catch (e) {\n console.error(e);\n return Promise.reject(`Could not create export JSON ${exportType}`);\n }\n};\n\nexport const homagIxMockUpData = (\n articles: any[],\n homagIxOrderData = {},\n homagIxHeaderParams = {},\n homagIxArticleParams = {}\n) => {\n homagIxOrderData = getFakeOrderParams();\n homagIxHeaderParams = getFakeHeaderParams();\n homagIxArticleParams = getFakeArticleParams();\n\n return createHomagIxXml(\n homagIxOrderData,\n homagIxHeaderParams,\n homagIxArticleParams,\n articles\n );\n};\n"],"names":["createVector3fString","vec","n","createSectionFromArray","sectionName","data","result","i","createHeader","createArticle","shop","article","createArticles","articleShopData","articleCoreData","articlesDataString","createHomagIxXml","orderData","headerData","getFakeOrderParams","randomNumber","getFakeHeaderParams","getFakeArticleParams","downloadHomagIxExportPoC","planOverview","exporter","kernelInstance","planObjects","convertCObject","articles","planObject","configurationRuntimeId","planObjectExport","ExportType","e","homagIxOrderData","homagIxHeaderParams","homagIxArticleParams","xmltext","download","generateExportHomagIxConfiguration","planObjectId","exportType","defaultExportDefinition","homagIxMockUpData"],"mappings":";AA+CA,MAAMA,IAAuB,CAC3BC,GACAC,MAEO,GAAGD,EAAI,EAAE,QAAQC,CAAC,CAAC,IAAID,EAAI,EAAE,QAAQC,CAAC,CAAC,IAAID,EAAI,EAAE,QAAQC,CAAC,CAAC,IAG9DC,IAAyB,CAC7BC,GACAC,MACW;AACX,MAAIC,IAAS;AACb,WAASC,IAAI,GAAGA,IAAIF,EAAK,QAAQE;AAC/B,IAAAD,KAAU,IAAIF,CAAW,GAAGG,IAAI,CAAC,IAAIF,EAAKE,CAAC,CAAC,KAAKH,CAAW,GAAGG,IAAI,CAAC;AAAA;AAGtE,SAAOD;AACT,GAEME,IAAe,CAACH,MACb;AAAA,oBACWA,EAAK,IAAI;AAAA,yBACJA,EAAK,SAAS;AAAA,wBACfA,EAAK,QAAQ;AAAA,wBACbA,EAAK,QAAQ;AAAA,sBACfA,EAAK,MAAM;AAAA,uBACVA,EAAK,OAAO;AAAA,wBACXA,EAAK,QAAQ;AAAA,yBACZA,EAAK,QAAQ;AAAA,0BACZA,EAAK,SAAS;AAAA;AAAA,cAE1BF,EAAuB,UAAUE,EAAK,MAAM,CAAC;AAAA,cAC7CF,EAAuB,QAAQE,EAAK,IAAI,CAAC;AAAA,cACzCF,EAAuB,WAAWE,EAAK,OAAO,CAAC;AAAA,cAC/CF,EAAuB,mBAAmBE,EAAK,cAAc,CAAC;AAAA,cAC9DF,EAAuB,oBAAoBE,EAAK,eAAe,CAAC;AAAA,cAChEF,EAAuB,oBAAoBE,EAAK,cAAc,CAAC;AAAA,cAC/DF,EAAuB,eAAeE,EAAK,UAAU,CAAC;AAAA,kBAI9DI,IAAgB,CACpBC,GACAC,MAEO;AAAA,yBACgBA,EAAQ,IAAI;AAAA,yBACZA,EAAQ,KAAK;AAAA,8BACRA,EAAQ,UAAU;AAAA,sCAE9BD,EAAK,oBAAoB,EAC3B;AAAA,sCAEEA,EAAK,oBAAoB,EAC3B;AAAA,uCAEEA,EAAK,qBAAqB,EAC5B;AAAA,uCAEEA,EAAK,qBAAqB,EAC5B;AAAA,uCAEEA,EAAK,qBAAqB,EAC5B;AAAA,8BACcV;AAAA,EACZW,EAAQ;AAAA,EACR;AAAA,CACD;AAAA,8BACaX;AAAA,EACZW,EAAQ;AAAA,EACR;AAAA,CACD;AAAA,kCACiBD,EAAK,kBAAkB,EAAE;AAAA,6BAC9BA,EAAK,YAAY,EAAE;AAAA,gCAChBA,EAAK,YAAY,CAAC;AAAA,mCACfA,EAAK,eAAe,EAAE;AAAA,KAInDE,IAAiB,CACrBC,IAAwC,CAAA,GACxCC,MACW;AACX,MAAIC,IAAqB;AACzB,WAASR,IAAI,GAAGA,IAAIO,EAAgB,QAAQP;AAC1C,IAAAQ,KAAsB,gBAAgBR,IAAI,CAAC,KAAKE;AAAA,MAC9CI;AAAA,MACAC,EAAgBP,CAAC;AAAA,IAAA,CAClB;AAAA;AAGH,SAAOQ;AACT,GAEaC,IAAmB,CAC9BC,IAAgC,IAChCC,IAAkC,CAAA,GAClCL,IAAwC,CAAA,GACxCC,MAEO;AAAA;AAAA,qBAEYG,EAAU,WAAW,eACtCA,EAAU,YACZ,aAAaA,EAAU,YAAY;AAAA,cACvBT,EAAaU,CAAU,CAAC;AAAA;AAAA,kBAEpBN,EAAeC,GAAiBC,EAAgB,QAAQ,CAAC;AAAA;AAAA;AAAA;AAAA,KAQ9DK,IAAqB,MAA0B;AAC1D,QAAMC,IAAe,KAAK,MAAM,KAAK,WAAW,GAAO,EAAE,SAAA;AACzD,SAAO;AAAA,IACL,aAAa,WAAWA;AAAA,IACxB,cAAc;AAAA,IACd,cAAcA;AAAA,EAAA;AAElB,GAEaC,IAAsB,OAC1B;AAAA,EACL,MAAM;AAAA,EACN,WAAW;AAAA,EACX,UAAU;AAAA,EACV,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,WAAW;AAAA,EACX,QAAQ,CAAC,WAAW,WAAW,WAAW,WAAW,SAAS;AAAA,EAC9D,MAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAEF,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAEF,gBAAgB;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAEF,iBAAiB,CAAC,OAAO,OAAO,OAAO,OAAO,OAAO,KAAK;AAAA,EAC1D,gBAAgB,CAAC,OAAO,YAAY,YAAY,YAAY,UAAU;AAAA,EACtE,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AACF,IAISC,IAAuB,OAC3B,CAAA,IAGIC,IAA2B,OACtCC,GACAC,GACAC,MACG;AACH,QAAMC,IAAcC,EAAeJ,EAAa,OAAO;AAEvD,MAAIK,IAAkB,CAAA;AAEtB,aAAWC,KAAcH,GAAa;AACpC,UAAMI,IAAyBD,EAAW;AAE1C,QAAI;AACF,YAAME,IAAmB,KAAK;AAAA,QAC5BP,EAAS;AAAA,UACPQ,EAAW;AAAA,UACXF;AAAA,UACAL;AAAA,QAAA;AAAA,MACF;AAEF,MAAAG,IAAWA,EAAS,OAAOG,EAAiB,QAAQ;AAAA,IACtD,SAASE,GAAG;AACV,qBAAQ,MAAMA,CAAC,GACR,QAAQ;AAAA,QACb,gCAAgCD,EAAW,OAAO;AAAA,MAAA;AAAA,IAEtD;AAAA,EACF;AAEA,QAAME,IAAmBhB,EAAA,GACnBiB,IAAsBf,EAAA,GACtBgB,IAAuBf,EAAA,GAEvBgB,IAAUtB;AAAA,IACdmB;AAAA,IACAC;AAAA,IACAC;AAAA,IACA,EAAE,UAAAR,EAAA;AAAA,EAAS;AAIb,SAAAU,EADe,cACID,CAAO,GACnB,QAAQ,QAAA;AACjB,GACaE,IAAqC,OAChDC,GACAC,GACAjB,GACAC,GACAiB,IAAkC,OACjB;AACjB,MAAI;AACF,WAAAlB,EAAS,+BAA+BkB,CAAuB,GACxD,QAAQ;AAAA,MACb,KAAK;AAAA,QACHlB,EAAS,eAAeiB,GAAYD,GAAcf,CAAc;AAAA,MAAA;AAAA,IAClE;AAAA,EAEJ,SAASQ,GAAG;AACV,mBAAQ,MAAMA,CAAC,GACR,QAAQ,OAAO,gCAAgCQ,CAAU,EAAE;AAAA,EACpE;AACF,GAEaE,IAAoB,CAC/Bf,GACAM,IAAmB,CAAA,GACnBC,IAAsB,CAAA,GACtBC,IAAuB,QAEvBF,IAAmBhB,EAAA,GACnBiB,IAAsBf,EAAA,GACtBgB,IAAuBf,EAAA,GAEhBN;AAAA,EACLmB;AAAA,EACAC;AAAA,EACAC;AAAA,EACAR;AAAA;"}
|