@roomle/web-sdk 3.4.0 → 3.5.0-alpha.2

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.
Files changed (66) hide show
  1. package/lib/{BufferGeometry-Br8QIDeK.mjs → BufferGeometry-zhwL66xZ.mjs} +170 -178
  2. package/lib/BufferGeometry-zhwL66xZ.mjs.map +1 -0
  3. package/lib/ConfiguratorKernel.wasm +0 -0
  4. package/lib/{GLTFExporter-DUjuGznV.mjs → GLTFExporter-DmFnAzRr.mjs} +24 -24
  5. package/lib/GLTFExporter-DmFnAzRr.mjs.map +1 -0
  6. package/lib/{PointLightHelper-_pWwb-rd.mjs → PointLightHelper-SLT01bR2.mjs} +19 -19
  7. package/lib/PointLightHelper-SLT01bR2.mjs.map +1 -0
  8. package/lib/RoomleCore.wasm +0 -0
  9. package/lib/RoomleToolsCore.wasm +0 -0
  10. package/lib/{SpotLightHelper-DiuKfHVi.mjs → SpotLightHelper-CC4_xqY4.mjs} +24 -24
  11. package/lib/SpotLightHelper-CC4_xqY4.mjs.map +1 -0
  12. package/lib/USDZExporter-Cpnpkq95.mjs +545 -0
  13. package/lib/USDZExporter-Cpnpkq95.mjs.map +1 -0
  14. package/lib/{banana-for-scale-Bio4mpMQ.mjs → banana-for-scale-evc4Yb9f.mjs} +2 -2
  15. package/lib/{banana-for-scale-Bio4mpMQ.mjs.map → banana-for-scale-evc4Yb9f.mjs.map} +1 -1
  16. package/lib/component-dimensioning-Dvorqw_7.mjs +229 -0
  17. package/lib/component-dimensioning-Dvorqw_7.mjs.map +1 -0
  18. package/lib/{continuous-drawing-helper-BYjzGaWD.mjs → continuous-drawing-helper-BfZl8h5N.mjs} +2 -2
  19. package/lib/{continuous-drawing-helper-BYjzGaWD.mjs.map → continuous-drawing-helper-BfZl8h5N.mjs.map} +1 -1
  20. package/lib/homag-intelligence-CJgnNjgW.mjs +547 -0
  21. package/lib/homag-intelligence-CJgnNjgW.mjs.map +1 -0
  22. package/lib/{imos-ix-poc-export-helper-Bl13RKd1.mjs → imos-ix-poc-export-helper--y8HNzbW.mjs} +2 -2
  23. package/lib/{imos-ix-poc-export-helper-Bl13RKd1.mjs.map → imos-ix-poc-export-helper--y8HNzbW.mjs.map} +1 -1
  24. package/lib/{index-DYoZpNEJ.mjs → index-E00NytVZ.mjs} +18423 -15546
  25. package/lib/index-E00NytVZ.mjs.map +1 -0
  26. package/lib/{material-viewer-DqZ9kv7j.mjs → material-viewer-DdvFNwKG.mjs} +2 -2
  27. package/lib/{material-viewer-DqZ9kv7j.mjs.map → material-viewer-DdvFNwKG.mjs.map} +1 -1
  28. package/lib/roomle-sdk.d.ts +46 -14
  29. package/lib/roomle-sdk.js +22 -22
  30. package/lib/static/roomle-core-hsc/ConfiguratorKernel.wasm +0 -0
  31. package/lib/static/roomle-core-hsc/RoomleCore.wasm +0 -0
  32. package/lib/static/roomle-core-hsc/RoomleServiceCore.wasm +0 -0
  33. package/lib/static/roomle-core-hsc/RoomleToolsCore.wasm +0 -0
  34. package/lib/static/roomle-core-hsc/embind/plannerCoreInterface.d.ts +8 -4
  35. package/lib/static/roomle-core-hsc/embind/plannerCoreInterface.js +6 -2
  36. package/lib/static/roomle-core-hsc/embind/plannerCoreInterface.js.map +1 -1
  37. package/lib/static/roomle-core-hsc/package.json +1 -1
  38. package/lib/static/roomle-core-hsc/plannerCoreInterface.d.ts +8 -4
  39. package/lib/static/roomle-core-hsc/plannerCoreInterface.js +6 -2
  40. package/lib/static/roomle-core-hsc/plannerCoreInterface.js.map +1 -1
  41. package/lib/static/roomle-core-hsc/src/embind/plannerCoreInterface.d.ts +8 -4
  42. package/lib/static/roomle-core-hsc/src/embind/plannerCoreInterface.js +6 -2
  43. package/lib/static/roomle-core-hsc/src/embind/plannerCoreInterface.js.map +1 -1
  44. package/lib/static/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
  45. package/lib/static/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
  46. package/lib/static/roomle-core-hsc/wasm_modern/RoomleServiceCore.wasm +0 -0
  47. package/lib/static/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
  48. package/lib/{stats-helper-BedaceYL.mjs → stats-helper-NaTxB7Fu.mjs} +2 -2
  49. package/lib/{stats-helper-BedaceYL.mjs.map → stats-helper-NaTxB7Fu.mjs.map} +1 -1
  50. package/lib/{three.webgpu-Bk8XgilA.mjs → three.webgpu-DN1k7B0u.mjs} +7222 -4815
  51. package/lib/three.webgpu-DN1k7B0u.mjs.map +1 -0
  52. package/lib/{tools-core-D1vOTlAR.mjs → tools-core-By95pE-u.mjs} +2 -2
  53. package/lib/{tools-core-D1vOTlAR.mjs.map → tools-core-By95pE-u.mjs.map} +1 -1
  54. package/package.json +3 -3
  55. package/lib/BufferGeometry-Br8QIDeK.mjs.map +0 -1
  56. package/lib/GLTFExporter-DUjuGznV.mjs.map +0 -1
  57. package/lib/PointLightHelper-_pWwb-rd.mjs.map +0 -1
  58. package/lib/SpotLightHelper-DiuKfHVi.mjs.map +0 -1
  59. package/lib/USDZExporter-B9ygWQMw.mjs +0 -545
  60. package/lib/USDZExporter-B9ygWQMw.mjs.map +0 -1
  61. package/lib/component-dimensioning-Bar2YYNs.mjs +0 -148
  62. package/lib/component-dimensioning-Bar2YYNs.mjs.map +0 -1
  63. package/lib/homag-intelligence-Bb8gfi80.mjs +0 -1626
  64. package/lib/homag-intelligence-Bb8gfi80.mjs.map +0 -1
  65. package/lib/index-DYoZpNEJ.mjs.map +0 -1
  66. package/lib/three.webgpu-Bk8XgilA.mjs.map +0 -1
@@ -1,4 +1,4 @@
1
- import { E as P, G as a, H as T } from "./index-DYoZpNEJ.mjs";
1
+ import { E as P, G as a, H as T } from "./index-E00NytVZ.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-Bl13RKd1.mjs.map
180
+ //# sourceMappingURL=imos-ix-poc-export-helper--y8HNzbW.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"imos-ix-poc-export-helper-Bl13RKd1.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--y8HNzbW.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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"}