redhotmagma-visualization 1.28.5 → 1.29.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 (88) hide show
  1. package/AlignTargetProvider.js +129 -0
  2. package/CommonUtils/Deferred.js +135 -0
  3. package/CommonUtils/Observable.js +126 -0
  4. package/CommonUtils/PropertyObserver.js +61 -0
  5. package/CommonUtils/SyncCurrentFunction.js +59 -0
  6. package/CommonUtils/SyncObservableEvent.js +19 -0
  7. package/CommonUtils/pointerEvent.js +415 -0
  8. package/Constants.js +23 -0
  9. package/DevApp.js +1049 -0
  10. package/ExposedModules.js +26 -0
  11. package/FallbackVisualization.js +26 -0
  12. package/PrintingEffects/ColorEmbossingEffect.js +58 -0
  13. package/PrintingEffects/DomingEffect.js +150 -0
  14. package/PrintingEffects/EmbossingEffect.js +65 -0
  15. package/PrintingEffects/EmbroideryEffect.js +541 -0
  16. package/PrintingEffects/EngravingEffect.js +65 -0
  17. package/PrintingEffects/PrintingEffects.js +117 -0
  18. package/PrintingEffects/PrintingEffectsUtils.js +53 -0
  19. package/PrintingEffects/resources/embroidery_multiply.jpg +0 -0
  20. package/PrintingEffects/resources/embroidery_screen.jpg +0 -0
  21. package/README.md +11 -4
  22. package/React/ReactBase.js +111 -0
  23. package/Three/Controls/OrbitControls.js +745 -0
  24. package/Three/Exporters/glTFExporter.js +48 -0
  25. package/Three/Loaders/ColladaLoader.js +2916 -0
  26. package/Three/Loaders/MTLLoader.js +449 -0
  27. package/Three/Loaders/OBJLoader.js +548 -0
  28. package/Three/Three2D.js +1790 -0
  29. package/Three/Three2DLayers.js +504 -0
  30. package/Three/Three3D.js +1412 -0
  31. package/Three/Three3DScene.js +1432 -0
  32. package/Three/ThreeBase.js +724 -0
  33. package/Utils/DesignArea/getDesignAreaCanvasSize.js +32 -0
  34. package/Utils/TextureBuilder/createTextureBuilder.js +334 -0
  35. package/Utils/TextureBuilder/textureBuilderFunctions.js +87 -0
  36. package/Utils/alignToElement.js +58 -0
  37. package/Utils/createAlphaMapFromAlphaChannel.js +50 -0
  38. package/Utils/createCache.js +46 -0
  39. package/Utils/createCanvas.js +29 -0
  40. package/Utils/createImageRepository.js +124 -0
  41. package/Utils/disposeMaterial.js +41 -0
  42. package/Utils/getImageSize.js +15 -0
  43. package/Utils/imagePreloader.js +76 -0
  44. package/Utils/initTextureCanvas.js +49 -0
  45. package/Utils/isMobileDevice.js +19 -0
  46. package/Utils/optimizeTextureImage.js +73 -0
  47. package/Utils/rememberCameraViewOffset.js +21 -0
  48. package/Utils/removeObject.js +22 -0
  49. package/Utils/restrictCameraMovement.js +45 -0
  50. package/Utils/setOrthographicCameraSize.js +16 -0
  51. package/Utils/updateFitSizeToElement.js +39 -0
  52. package/VisualizationContainer.js +279 -0
  53. package/VisualizationInterface.js +298 -0
  54. package/VisualizationProvider.js +38 -0
  55. package/__mocks__/exportedSample.svg +45 -0
  56. package/index.js +16 -0
  57. package/package.json +10 -70
  58. package/scripts/cpPublic.js +9 -12
  59. package/scripts/cpPublicLocal.js +30 -0
  60. package/src/CommonUtils/Observable.js +1 -0
  61. package/src/CommonUtils/pointerEvent.js +2 -1
  62. package/src/DevApp.js +2 -1
  63. package/src/FallbackVisualization.js +1 -5
  64. package/src/PrintingEffects/DomingEffect.js +1 -0
  65. package/src/PrintingEffects/EmbroideryEffect.js +3 -2
  66. package/src/React/ReactBase.js +1 -1
  67. package/src/Three/Controls/OrbitControls.js +2 -0
  68. package/src/Three/Loaders/ColladaLoader.js +111 -294
  69. package/src/Three/Loaders/MTLLoader.js +2 -0
  70. package/src/Three/Loaders/OBJLoader.js +2 -0
  71. package/src/Three/Three2D.js +18 -11
  72. package/src/Three/Three3D.js +9 -1
  73. package/src/Three/ThreeBase.js +14 -2
  74. package/src/Utils/DesignArea/getDesignAreaCanvasSize.js +1 -0
  75. package/src/Utils/TextureBuilder/createTextureBuilder.js +2 -0
  76. package/src/Utils/imagePreloader.js +1 -0
  77. package/src/Utils/initTextureCanvas.js +3 -0
  78. package/src/Utils/isMobileDevice.js +2 -0
  79. package/src/Utils/optimizeTextureImage.js +1 -0
  80. package/src/VisualizationContainer.js +3 -1
  81. package/src/VisualizationInterface.js +10 -1
  82. package/visualizationAdapterCreator.js +76 -0
  83. package/babel.config.js +0 -41
  84. package/scripts/cpPath.js +0 -151
  85. package/scripts/moveLibToPackageRoot.js +0 -44
  86. package/scripts/utils/fileSystem.js +0 -69
  87. package/scripts/utils/process.js +0 -19
  88. package/tsconfig.json +0 -22
@@ -0,0 +1,45 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="492"
2
+ height="590.2335" viewBox="0,0,492,590.2335">
3
+ <defs id="defs">
4
+ <mask id="mask">
5
+ <filter id="colorMeLTA">
6
+ <feColorMatrix in="SourceGraphic" type="matrix" values="0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0"/>
7
+ </filter>
8
+ <g id="imageContainer" filter="url(#colorMeLTA)">
9
+ <image x="-111.20366" y="-46.28662" transform="scale(2.36786,2.36786)" width="472" height="392"
10
+ xlink:href="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iNDcycHgiIGhlaWdodD0iMzkycHgiIHZpZXdCb3g9IjAgMCA0NzIgMzkyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA0NzIgMzkyIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIGlkPSJMYXllcl8zIj4NCgk8cGF0aCBmaWxsPSIjRkZCNTY0IiBkPSJNMjg4LjcsMTg3LjdjLTUzLjctMzIuNi0xMTkuOCwxLTExOS44LDFzMTEuNiw5Mi42LDExLjQsMTIxLjRjLTAuOCwyLTEsNC4xLTAuNCw2LjMNCgkJYy0wLjIsMS4yLTAuNiwxLjctMSwxLjdoMS43YzEuMSwzLDIuOSw0LjMsNS44LDUuM2MxMC45LDQsMjEuNSw2LjgsMzMuMSw3LjdjMy42LDAuMyw3LjEsMC4yLDEwLjUtMC4yYzEuNiwxLjUsNCwyLjQsNy4xLDIuMQ0KCQljMTMuMi0xLjIsMjgtMS45LDM4LjYtMTAuM2MxLjctMS40LDIuNy0yLjcsMy4xLTQuN2gwLjhMMjg4LjcsMTg3Ljd6Ii8+DQoJPHBvbHlnb24gZmlsbD0iIzUyRTJENyIgcG9pbnRzPSIxNzMuMiwxNDYuNCAxODAuNSwxODQgMjA2LjYsMTc3LjIgMjAwLjEsMTQ0IAkiLz4NCgk8cGF0aCBmaWxsPSIjRkZGQkU4IiBkPSJNMjIyLjYsMTMzLjhjMCwwLTE3LjktMTUuNi01LjMsMzkuOWMwLjYsMi41LDE5LjQsMy40LDE5LjQsMy40TDIyMi42LDEzMy44eiIvPg0KCTxwYXRoIGZpbGw9IiNGOUEwMzUiIGQ9Ik0xODguNiwxODEuNGMwLDAtMjAuNiwwLTIwLjYsMTIuNGMwLjEsMTcuMiwxMy40LDEwNS42LDEzLjEsMTE5LjljLTAuMiw5LjMsMTkuMSwxMy42LDE5LjEsMTMuNiIvPg0KCTxwYXRoIGZpbGw9IiNGRkI1NjQiIGQ9Ik0yMDAuMiw5My4zYzAsMCw5LjcsNTAuMiwxMS42LDQ4LjRjMi0xLjgsMTAuOC03LjksMTAuOC03LjlsLTEzLjUtNDAuNUgyMDAuMnoiLz4NCgk8cGF0aCBmaWxsPSIjRkZGQkU4IiBkPSJNMTg0LjEsMTIzLjZjMCwwLTEyLjksMjQuNi0xMC45LDIyLjhjMi0xLjgsMjctMi40LDI3LTIuNEwxODQuMSwxMjMuNnoiLz4NCgk8cGF0aCBmaWxsPSIjRjI1RjY4IiBkPSJNMjU3LjksOTIuOGMtMS41LDItMyw0LjEtNC40LDYuM2MtMS4yLDEuOS0yLjksMi4zLTQuNiwxLjljLTEuNywzLjQtMy41LDYuNy01LjcsOS44DQoJCWMtNi4yLDIyLjQtMC43LDQxLjctOC43LDYzLjhjLTEuMywzLjUsMC4zLDAuMywyLjIsMi41YzUuNi0zLDMxLjEsMy41LDM4LjcsNC4yYzEuNy0yLjMtOS4xLTMuMy0xMC4zLTYuNmMxLjQsMy45LDAuMi01LjIsMC4yLTYuMQ0KCQljMC4zLTIuNiwwLTUuNSwwLjMtOC4xYzAuNy00LjYtMS40LTYuNC0wLjgtMTFjMS45LTE0LjUsMy40LTI5LjQsMy00NC4xYy0yLjItMy45LTQuMS03LjktNS42LTEyLjENCgkJQzI2MSw5Mi45LDI1OS40LDkyLjcsMjU3LjksOTIuOHoiLz4NCjwvZz4NCjxnIGlkPSJMYXllcl8yIj4NCgkNCgkJPHBvbHlsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iI0FGM0E0NiIgc3Ryb2tlLXdpZHRoPSI0Ljk3NjMiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRzPSINCgkJMjM4LDE3MS4xIDI0NS4yLDEwOSAyNjAuNCw4Ni45IDI2Ny43LDExMC44IDI2NS4xLDE3NC44IAkiLz4NCgkNCgkJPHBvbHlsaW5lIGZpbGw9Im5vbmUiIHN0cm9rZT0iI0FGM0E0NiIgc3Ryb2tlLXdpZHRoPSI0Ljk3NjMiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRzPSINCgkJMTgwLjIsMTgyLjQgMTczLjgsMTQ0IDE4NC4xLDEyMy42IDIwMC4xLDEzOS4yIDIwNi42LDE3Ni4yIAkiLz4NCgkNCgkJPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSIjQUYzQTQ2IiBzdHJva2Utd2lkdGg9IjQuOTc2MyIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBkPSINCgkJTTIxOC4yLDE3NC44YzAsMC00LjUtMTYuNS05LTM2LjRjLTQuOC0yMS4zLTkuNy00My44LTktNDUuMWMxLjMtMi42LDUuNC00LjgsOC45LDBjMiwyLjcsNy45LDIxLjYsMTMuNSw0MC41DQoJCWM2LjMsMjEuMSwxMi4yLDQyLjMsMTEuOSw0MC44Ii8+DQoJPHBhdGggZmlsbD0iI0FGM0E0NiIgc3Ryb2tlPSIjQUYzQTQ2IiBzdHJva2Utd2lkdGg9IjIuNDg4MiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBkPSJNMjAwLjIsOTMuM2MtMTEuNi0xMi4yLTEwLjQtMTkuMi02LjYtMjMNCgkJYzYuNi02LjYtMi44LTE2LjYtMC45LTE2LjhjNi42LTAuNiwyOC42LDkuNiwxNy4zLDM2LjkiLz4NCgkNCgkJPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSIjQUYzQTQ2IiBzdHJva2Utd2lkdGg9IjQuOTc2MyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIGQ9Ig0KCQlNMjQ1LjIsMTA5YzAsMCwxMS4zLTQuOCwyMi41LDEuOSIvPg0KCQ0KCQk8cGF0aCBmaWxsPSIjRkZGQkU4IiBzdHJva2U9IiNBRjNBNDYiIHN0cm9rZS13aWR0aD0iNC45NzYzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgZD0iDQoJCU0yMDAuMSwxMzkuMmMwLDQuNy0xMi4yLDQuNy0xMi4yLDQuN2MtMy4yLDUuMy0xNC4xLDAtMTQuMSwwIi8+DQoJPHBhdGggZmlsbD0iI0FGM0E0NiIgZD0iTTE5MC45LDEzMC4zYzMuNCwzLjMtMTIsMy41LTEyLDMuNWw1LjEtMTAuMkwxOTAuOSwxMzAuM3oiLz4NCgkNCgkJPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSIjQUYzQTQ2IiBzdHJva2Utd2lkdGg9IjQuOTc2MyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIGQ9Ig0KCQlNMjExLjgsMTQxLjZjNy43LDAsMTEuNC02LDExLjQtNiIvPg0KCQ0KCQk8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNBRjNBNDYiIHN0cm9rZS13aWR0aD0iNC45NzYzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgZD0iDQoJCU0xNjksMTg4LjhMMTY5LDE4OC44YzQzLjktMjEuNSw5NC4zLTE2LjYsMTE5LjgtMS4xTDI3NywzMjEuOWMwLDAtMzkuOSwyMy4yLTk1LjItMS4xTDE2OSwxODguOHoiLz4NCgkNCgkJPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSIjQUYzQTQ2IiBzdHJva2Utd2lkdGg9IjQuODIyOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIGQ9Ig0KCQlNMjU1LjcsMjcwLjRsLTIuMi0zMi42bC0yNC40LTE4LjlMMjA1LDIzNi42YzAuMywxMS44LDEuNCwyMi44LDEuNywzNC42QzIwNi42LDI3MS4yLDIzNiwyNzUuOSwyNTUuNywyNzAuNHoiLz4NCgkNCgkJPGxpbmUgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjQUYzQTQ2IiBzdHJva2Utd2lkdGg9IjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiB4MT0iMjI5LjUiIHkxPSIyMTkiIHgyPSIyMjkuNSIgeTI9IjI0NiIvPg0KCQ0KCQk8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNBRjNBNDYiIHN0cm9rZS13aWR0aD0iMy44NTgyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgZD0iDQoJCU0yMzMuMiwyNDAuOGMtMS41LDAtMi45LDAuMy02LjgsMC40YzAsMC0xLTAuOS0wLjEsNS45YzIuOSwwLjEsNCwwLjIsNi45LDAuMkMyMzMuMiwyNDcuNCwyMzMuMiwyNDIuNSwyMzMuMiwyNDAuOHoiLz4NCjwvZz4NCjwvc3ZnPg0K"
11
+ style="mix-blend-mode: normal"/>
12
+ </g>
13
+ </mask>
14
+ <mask id="outlineMask">
15
+ <rect width="100%" height="100%" fill="white"/>
16
+ <rect width="100%" height="100%" fill="black" mask="url(#mask)"/>
17
+ </mask>
18
+ <filter id="dilate">
19
+ <feMorphology operator="dilate" radius="1"/>
20
+ </filter>
21
+ </defs>
22
+ <g transform="scale(0.83249,0.83249)" id="viewGroup">
23
+ <g id="designerLayer" fill="none" fill-rule="nonzero" stroke="none" stroke-width="1" stroke-linecap="butt"
24
+ stroke-linejoin="miter" stroke-miterlimit="10" stroke-dasharray="" stroke-dashoffset="0" font-family="none"
25
+ font-weight="none" font-size="none" text-anchor="none" style="mix-blend-mode: normal" mask="url(#mask)">
26
+ <g transform="translate(66.26425,-190.29785)">
27
+ <path d="M0,812.4v-812.4h406.26611v812.4z" fill="none"/>
28
+ <g font-weight="normal" text-anchor="start">
29
+ <g fill="none" font-family="sans-serif" font-size="12"/>
30
+ <g fill="#ffb800" font-family="&quot;Courier New&quot;" font-size="677">
31
+ <path d="M297.18-27.77L297.18-187.10L113.05-187.10L113.05-27.77L150.41-27.77Q160.32-27.77 164.62-23.97Q168.92-20.16 168.92-13.88L168.92-13.88Q168.92-7.93 164.62-3.97Q160.32 0 150.41 0L150.41 0L53.88 0Q43.97 0 39.67-3.97Q35.37-7.93 35.37-13.88L35.37-13.88Q35.37-20.16 39.67-23.97Q43.97-27.77 53.88-27.77L53.88-27.77L85.29-27.77L85.29-359.00L68.10-359.00Q57.85-359.00 53.55-362.80Q49.25-366.60 49.25-372.88L49.25-372.88Q49.25-379.16 53.55-382.96Q57.85-386.76 68.10-386.76L68.10-386.76L150.41-386.76Q160.32-386.76 164.62-382.96Q168.92-379.16 168.92-372.88L168.92-372.88Q168.92-366.60 164.62-362.80Q160.32-359.00 150.41-359.00L150.41-359.00L113.05-359.00L113.05-214.87L297.18-214.87L297.18-359.00L260.16-359.00Q250.24-359.00 245.94-362.80Q241.64-366.60 241.64-372.88L241.64-372.88Q241.64-379.16 245.78-382.96Q249.91-386.76 260.16-386.76L260.16-386.76L342.47-386.76Q352.71-386.76 357.01-382.96Q361.31-379.16 361.31-372.88L361.31-372.88Q361.31-366.60 357.01-362.80Q352.71-359.00 342.47-359.00L342.47-359.00L325.28-359.00L325.28-27.77L356.68-27.77Q366.60-27.77 370.90-23.97Q375.19-20.16 375.19-13.88L375.19-13.88Q375.19-7.93 370.90-3.97Q366.60 0 356.68 0L356.68 0L260.16 0Q250.24 0 245.94-3.97Q241.64-7.93 241.64-13.88L241.64-13.88Q241.64-20.16 245.78-23.97Q249.91-27.77 260.16-27.77L260.16-27.77L297.18-27.77Z"
32
+ transform="translate(0,609.3)" fill="null"></path>
33
+ </g>
34
+ </g>
35
+ </g>
36
+ <image x="181.65164" y="1249.35984" transform="rotate(-17.43916) scale(0.14429,0.14429) skewX(0)"
37
+ width="2048" height="2048"
38
+ xlink:href="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjA0OHB4IiBoZWlnaHQ9IjIwNDhweCIgdmlld0JveD0iMCAwIDIwNDggMjA0OCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCwyMDQ4LjAwMDAwMCkgc2NhbGUoMC4xMDAwMDAsLTAuMTAwMDAwKSIgZmlsbD0iI2Y3MzQyOSIgc3Ryb2tlPSJub25lIj4KPHBhdGggZD0iTTEwOTkwIDIwNDE4IGwtMjUgMyAtODAgLTM5IGMtNDQgLTIyIC0xNDggLTg0IC0yMzAgLTE0MCAtODMgLTU2IC0yMTkgLTE1NSAtMzAzIC0yMjAgLTg0IC02NiAtMjI0IC0xNzggLTMxMCAtMjQ5IC04NiAtNzIgLTI0OSAtMjExIC0zNjIgLTMxMCAtMTEzIC05OSAtMjcyIC0yNDIgLTM1NSAtMzE4IC04MiAtNzYgLTI5MCAtMjczIC00NjIgLTQzOCAtMTcxIC0xNjQgLTQyNiAtNDE3IC01NjUgLTU2MSAtMTM5IC0xNDMgLTMyMSAtMzMzIC00MDQgLTQyMSAtODMgLTg4IC0yMjkgLTI0NSAtMzI0IC0zNTAgLTk2IC0xMDQgLTI3MCAtMzAwIC0zODggLTQzNSAtMTE5IC0xMzUgLTMxNSAtMzY1IC00MzggLTUxMiAtMTIzIC0xNDcgLTMxMiAtMzc4IC00MjEgLTUxNSAtMTA5IC0xMzYgLTI2NCAtMzMzIC0zNDQgLTQzOCAtODAgLTEwNCAtMjI3IC0zMDAgLTMyNiAtNDM1IC05OSAtMTM1IC0yNTEgLTM0NiAtMzM4IC00NzAgLTg2IC0xMjQgLTIzOSAtMzQ5IC0zNDAgLTUwMCAtMTAwIC0xNTEgLTI1NiAtMzk0IC0zNDcgLTU0MCAtOTEgLTE0NiAtMjE5IC0zNTcgLTI4NSAtNDcwIC02NiAtMTEzIC0xNjUgLTI4NiAtMjIwIC0zODUgLTU1IC05OSAtMTQxIC0yNTYgLTE5MCAtMzUwIC01MCAtOTMgLTEzNiAtMjYwIC0xOTEgLTM3MSAtNTUgLTExMCAtMTMzIC0yNzAgLTE3MiAtMzU1IC00MCAtODUgLTEwOSAtMjM1IC0xNTIgLTMzNCAtNDQgLTk5IC0xMjcgLTI5NSAtMTgzIC00MzUgLTU3IC0xNDAgLTE0MSAtMzYxIC0xODggLTQ5MCAtNDcgLTEyOSAtMTEzIC0zMjMgLTE0NyAtNDMwIC0zNCAtMTA3IC04NiAtMjgwIC0xMTUgLTM4NSAtMzAgLTEwNCAtNzIgLTI2NCAtOTUgLTM1NSAtMjIgLTkxIC01OCAtMjQ4IC04MCAtMzUwIC0yMSAtMTAyIC01NCAtMjc5IC03NCAtMzk1IC0xOSAtMTE1IC00NCAtMjg0IC01NSAtMzc1IC0xMiAtOTEgLTI4IC0yMzkgLTM2IC0zMzAgLTggLTkxIC0yMCAtMjgyIC0yNSAtNDI1IC02IC0xNDMgLTggLTMzOSAtNSAtNDM1IDMgLTk2IDEwIC0yNDIgMTYgLTMyNSA1IC04MiAxNiAtMjE1IDI1IC0yOTUgOCAtODAgMjYgLTIxOSA0MCAtMzEwIDE0IC05MSA0MSAtMjQ0IDYwIC0zNDAgMjAgLTk2IDYwIC0yNzYgOTAgLTM5OSAzMCAtMTI0IDc5IC0zMDggMTA5IC00MTAgMzAgLTEwMiA4MyAtMjcxIDExOCAtMzc2IDM2IC0xMDQgOTUgLTI2NiAxMzEgLTM1OSAzNiAtOTIgOTQgLTIzMiAxMjggLTMxMCAzNCAtNzcgMTA5IC0yMzUgMTY4IC0zNTEgNTkgLTExNSAxNDYgLTI3NyAxOTQgLTM2MCA0OSAtODIgMTM1IC0yMjIgMTkzIC0zMTAgNTggLTg4IDE1NiAtMjI3IDIxOCAtMzEwIDYyIC04MiAxNjEgLTIwOCAyMjEgLTI4MCA1OSAtNzEgMjE0IC0yMzYgMzQzIC0zNjYgMTMwIC0xMjkgMjg4IC0yNzggMzUxIC0zMzAgNjMgLTUzIDE3MiAtMTM5IDI0MSAtMTkxIDY5IC01MyAxODYgLTEzNiAyNjAgLTE4NSA3NCAtNDkgMTg0IC0xMTkgMjQ0IC0xNTUgNjEgLTM2IDE2NiAtOTYgMjM0IC0xMzMgNjkgLTM3IDE5MCAtOTggMjcwIC0xMzUgODAgLTM3IDIxNSAtOTUgMjk5IC0xMjkgODUgLTM0IDIyNiAtODYgMzE1IC0xMTYgODkgLTI5IDIzMCAtNzEgMzEyIC05NCA4MyAtMjIgMjE0IC01NCAyOTMgLTcxIDc5IC0xNyAxOTggLTM5IDI2NSAtNTAgNjcgLTExIDE4MSAtMjYgMjUyIC0zNCA3MiAtOCAxNjQgLTE3IDIwNSAtMjAgNDEgLTMgMTczIC0xMSAyOTMgLTE3IGwyMTggLTEwIDkyIDEwIGM1MSA2IDE0NiAxNSAyMTIgMjEgNjYgNiAxODEgMjAgMjU1IDMxIDc0IDEwIDE5NCAzMSAyNjUgNDUgNzIgMTQgMjExIDQ2IDMxMCA3MSA5OSAyNSAyNzkgNzggNDAwIDExOCAxMjEgNDAgMjkyIDEwMyAzODAgMTQwIDg4IDM2IDI0MiAxMDcgMzQyIDE1NyAxMDAgNDkgMjY0IDEzOSAzNjMgMTk4IDEwMCA2MCAyMzQgMTQ2IDI5OCAxOTEgNjQgNDUgMTY0IDExOSAyMjIgMTY0IDU4IDQ1IDE2MSAxMzIgMjMwIDE5MiA2OSA2MSAxNzkgMTY2IDI0NSAyMzQgNjcgNjggMTYzIDE3MyAyMTQgMjMzIDUyIDYxIDEzNCAxNjQgMTg0IDIzMCA0OSA2NiAxMTIgMTU0IDE0MCAxOTYgMjggNDEgODYgMTM0IDEyOSAyMDUgNDQgNzIgMTE5IDIwOSAxNjggMzA2IDQ5IDk3IDExOCAyNDcgMTU0IDMzMyAzNiA4NiA5MCAyMjcgMTIwIDMxNCAyOSA4NiA3MiAyMjIgOTQgMzAyIDIzIDgwIDU3IDIxNSA3NiAzMDAgMTkgODUgNDYgMjIzIDYwIDMwNSAxNCA4MyAzNSAyMjAgNDUgMzA1IDExIDg1IDI2IDIyMCAzMyAzMDAgbDEzIDE0NSAwIDMzMCAwIDMzMCAtMTMgMTA1IGMtNyA1OCAtMjQgMTcwIC0zOCAyNTAgLTEzIDgwIC00MCAyMTAgLTYwIDI4OCAtMTkgNzkgLTU4IDIxMyAtODUgMjk4IC0yOCA4NSAtNzAgMjA1IC05NCAyNjcgLTIzIDYyIC02NiAxNjYgLTk1IDIzMiAtMjkgNjYgLTg4IDE5MiAtMTMyIDI4MCAtNDQgODggLTExNyAyMjUgLTE2MSAzMDUgLTQ0IDgwIC0xMTkgMjA4IC0xNjUgMjg1IC00NyA3NyAtMTQ5IDIzOCAtMjI4IDM1NyAtNzkgMTIwIC0xOTYgMjkzIC0yNjEgMzg1IC02NCA5MyAtMTg3IDI2NSAtMjczIDM4MyAtODYgMTE4IC0yODkgMzk1IC00NTEgNjE1IC0xNjIgMjIwIC0zNjkgNTA0IC00NTkgNjMwIC05MCAxMjcgLTIzNyAzMzggLTMyNSA0NzAgLTg5IDEzMiAtMjE0IDMyMyAtMjc3IDQyNSAtNjQgMTAyIC0xNTggMjU5IC0yMTAgMzUwIC01MyA5MSAtMTM1IDIzOSAtMTgzIDMzMCAtNDkgOTEgLTExNyAyMjYgLTE1MiAzMDAgLTM2IDc0IC05NCAyMDMgLTEzMCAyODUgLTM2IDgzIC05MSAyMTggLTEyMyAzMDAgLTMxIDgzIC04NSAyMzMgLTExOCAzMzUgLTMzIDEwMiAtNzYgMjQ0IC05NiAzMTUgLTE5IDcyIC01MSAyMDAgLTcwIDI4NSAtMTkgODUgLTQ4IDIzOCAtNjUgMzQwIC0xNyAxMDIgLTM3IDI0OCAtNDYgMzI1IC04IDc3IC0xOSAyMDUgLTI1IDI4NSAtNSA4MCAtMTAgMjU4IC0xMCAzOTUgMCAxMzggNSAzMTUgMTAgMzk1IDYgODAgMTUgMTk1IDIxIDI1NSA2IDYxIDIyIDE4OSAzNSAyODUgMTQgOTYgNDMgMjY3IDY1IDM4MCAyMiAxMTMgNjUgMzAwIDk0IDQxNSAyOSAxMTYgODEgMjk5IDExNCA0MDcgMzQgMTA5IDkxIDI4MCAxMjcgMzgwIDM2IDEwMSA5OCAyNjIgMTM2IDM1OCAzOCA5NiAxMDkgMjYzIDE1NiAzNzAgNDcgMTA3IDE1NSAzMzIgMjM4IDUwMCA4NCAxNjggMjA1IDQwMCAyNzAgNTE1IDY0IDExNiAxODcgMzI3IDI3MyA0NzAgODcgMTQzIDE3OCAyOTQgMjA0IDMzNiAyNiA0MSA0OSA4OSA1MCAxMDUgbDIgMjkgLTI1IDN6IE0xNjU4OSAxNTQyMCBjLTUgMCAtMTUgLTEyIC0yMyAtMjggLTggLTE1IC0yNiAtNzIgLTQxIC0xMjcgLTE1IC01NSAtNTQgLTE5NCAtODcgLTMxMCAtMzMgLTExNSAtOTYgLTMyMCAtMTQwIC00NTUgLTQ0IC0xMzUgLTEwOSAtMzIxIC0xNDMgLTQxNSAtMzQgLTkzIC05NSAtMjUxIC0xMzUgLTM1MCAtNDAgLTk5IC0xMDYgLTI1NCAtMTQ3IC0zNDUgLTQxIC05MSAtMTMyIC0yNzcgLTIwMiAtNDE1IC03MCAtMTM3IC0xNjcgLTMxNyAtMjE1IC00MDAgLTQ5IC04MiAtMTQzIC0yMzMgLTIxMCAtMzM1IC02NyAtMTAyIC0xNzcgLTI1NyAtMjQzIC0zNDUgLTY2IC04OCAtMTY5IC0yMTggLTIyOSAtMjkwIC01OSAtNzEgLTIxMiAtMjM0IC0zMzggLTM2MSAtMTI3IC0xMjYgLTI4NyAtMjc3IC0zNTUgLTMzMyAtNjkgLTU3IC0xNzkgLTE0NCAtMjQ1IC0xOTQgLTY3IC00OSAtMTc5IC0xMjkgLTI1MSAtMTc3IC03MSAtNDggLTE5MSAtMTIzIC0yNjUgLTE2NyAtNzQgLTQ0IC0xODkgLTEwOCAtMjU1IC0xNDMgLTY2IC0zNSAtMjAwIC0xMDEgLTI5OCAtMTQ2IC05OCAtNDQgLTE3OCAtODQgLTE3OCAtODggMCAtNCA2MiAtOTMgMTM5IC0xOTkgNzcgLTEwNiAxOTAgLTI2NCAyNTIgLTM1MiA2MyAtODggMTc5IC0yNTkgMjYwIC0zODAgODEgLTEyMSAxODcgLTI4NSAyMzcgLTM2NSA0OSAtODAgMTMzIC0yMTkgMTg1IC0zMTAgNTIgLTkxIDEzNiAtMjQ0IDE4NiAtMzQwIDUwIC05NiAxMTggLTIzNiAxNTIgLTMxMCAzNCAtNzQgOTAgLTIwNSAxMjUgLTI5MCAzNSAtODUgODggLTIyNyAxMTggLTMxNSAzMCAtODggNzMgLTIyNiA5NiAtMzA3IDIyIC04MCA1NCAtMjA2IDcwIC0yODAgMTcgLTczIDM5IC0xODcgNTAgLTI1MyAxMSAtNjYgMjcgLTE3NiAzNiAtMjQ1IDggLTY4IDIwIC0yMjAgMjcgLTMzNyBsMTEgLTIxMiAtMTEgLTI1MyBjLTcgLTEzOSAtMTkgLTMyOSAtMjcgLTQyMyAtOSAtOTMgLTI5IC0yNjQgLTQ2IC0zODAgLTE2IC0xMTUgLTQ2IC0yOTEgLTY1IC0zOTAgLTIwIC05OSAtNTUgLTI1OSAtODAgLTM1NSAtMjQgLTk2IC02MyAtMjM5IC04NyAtMzE3IC0yNCAtNzkgLTQzIC0xNDMgLTQxIC0xNDMgMiAwIDU3IDgwIDEyMiAxNzggNjUgOTcgMTYzIDI0OSAyMTcgMzM3IDU0IDg4IDE1MCAyNTIgMjEzIDM2NSA2MyAxMTMgMTY4IDMxMiAyMzMgNDQzIDY2IDEzMSAxNTMgMzEzIDE5NSA0MDUgNDIgOTIgMTE4IDI2NiAxNjkgMzg3IDUxIDEyMSAxMzMgMzI4IDE4MyA0NjAgNTAgMTMyIDEyOSAzNTUgMTc3IDQ5NSA0NyAxNDAgMTE5IDM2MyAxNjAgNDk1IDQwIDEzMiA5OCAzMzAgMTI4IDQ0MCAzMSAxMTAgODcgMzI2IDEyNiA0ODAgMzggMTU0IDkyIDM4MSAxMjAgNTA1IDI4IDEyNCA3MyAzMzkgMTAxIDQ3OCAyNyAxMzkgNzIgMzgwIDk5IDUzNSAyNyAxNTUgNjggNDA0IDkwIDU1MiAyMiAxNDkgNTYgMzk0IDc1IDU0NSAyMCAxNTEgNDcgMzgxIDYwIDUxMCAxNCAxMjkgMzcgMzYzIDUwIDUyMCAxNCAxNTcgMzIgMzkxIDQwIDUyMCA5IDEyOSAyMCAzMjEgMjYgNDI1IDUgMTA1IDE1IDM2MyAyMSA1NzUgbDEyIDM4NSAtNyA0MjAgYy0zIDIzMSAtMTAgNTAzIC0xNiA2MDUgLTUgMTAyIC0xNSAyNDYgLTIxIDMyMCAtNSA3NCAtMTcgMTk2IC0yNSAyNzAgLTggNzQgLTI0IDE4NyAtMzUgMjUwIC0xMSA2MyAtMjkgMTQ0IC00MCAxODAgLTExIDM2IC0yOCA3MyAtMzYgODMgLTkgOSAtMjAgMTcgLTI0IDE3eiBNMTg4MTYgMTA2ODAgYy03IDAgLTI4IC0xNyAtNDcgLTM3IC0yMCAtMjEgLTg5IC0xMDUgLTE1NSAtMTg4IC02NSAtODIgLTE3MCAtMjExIC0yMzMgLTI4NSAtNjMgLTc0IC0xNzMgLTIwMCAtMjQ1IC0yODAgLTcxIC04MCAtMjM2IC0yNTEgLTM2NSAtMzgxIC0xMzAgLTEzMCAtMjczIC0yNzAgLTMxOSAtMzExIGwtODMgLTc1IC00OSAtMjcwIGMtMjcgLTE0OCAtNzAgLTM2NiAtOTQgLTQ4NSAtMjUgLTExOSAtNjYgLTMwNyAtOTEgLTQxOCAtMjUgLTExMSAtNzUgLTMxOSAtMTExIC00NjMgLTM2IC0xNDQgLTkwIC0zNTIgLTEyMSAtNDYyIC0zMCAtMTEwIC05MCAtMzE3IC0xMzMgLTQ2MCAtNDQgLTE0MyAtMTIyIC0zODYgLTE3NCAtNTQwIC01MiAtMTU0IC0xMTcgLTM0MSAtMTQ1IC00MTUgLTI3IC03NCAtNDkgLTEzNiAtNDcgLTEzOCAyIC0yIDQ2IDY0IDk5IDE0NSA1MiA4MSAxNTMgMjQzIDIyNCAzNTggNzIgMTE2IDE5MSAzMTQgMjY2IDQ0MSA3NCAxMjggMTk2IDM0MiAyNzAgNDc1IDc0IDEzNCAxOTAgMzQ4IDI1NiA0NzQgNjcgMTI3IDE4NCAzNTcgMjYyIDUxMyA3NyAxNTYgMTgzIDM3NiAyMzYgNDkwIDUyIDExNCAxMzEgMjg4IDE3NSAzODcgNDQgOTkgMTE0IDI2MSAxNTUgMzYwIDQyIDk5IDEwNyAyNjEgMTQ1IDM2MCAzOSA5OSAxMDAgMjY2IDEzOCAzNzAgMzcgMTA1IDg5IDI2MiAxMTUgMzUwIDI2IDg4IDU4IDIxMiA3MSAyNzUgMTMgNjMgMjQgMTI5IDI0IDE0NyAwIDE3IC0zIDM4IC02IDQ3IC0zIDkgLTExIDE2IC0xOCAxNnoiLz4KPC9nPjwvc3ZnPg=="
39
+ fill="none"/>
40
+ </g>
41
+ <g id="outline" filter="url(#dilate)" mask="url(#outlineMask)">
42
+ <rect width="100%" height="100%" fill="red" mask="url(#mask)"/>
43
+ </g>
44
+ </g>
45
+ </svg>
package/index.js ADDED
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ require("react-hot-loader");
4
+
5
+ var _reactDom = _interopRequireDefault(require("react-dom"));
6
+
7
+ var _react = _interopRequireDefault(require("react"));
8
+
9
+ var _DevApp = _interopRequireDefault(require("./DevApp"));
10
+
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
12
+
13
+ var container = document.createElement("div");
14
+ document.body.appendChild(container);
15
+
16
+ _reactDom["default"].render( /*#__PURE__*/_react["default"].createElement(_DevApp["default"], null), container);
package/package.json CHANGED
@@ -1,87 +1,27 @@
1
1
  {
2
2
  "name": "redhotmagma-visualization",
3
- "version": "1.28.5",
3
+ "version": "1.29.2",
4
4
  "license": "UNLICENSED",
5
5
  "private": false,
6
- "main": "./lib/index.js",
7
- "files": [
8
- "lib",
9
- "src",
10
- "babel.config.js",
11
- "tsconfig.json",
12
- "scripts",
13
- "public/libs"
14
- ],
6
+ "main": "./index.js",
15
7
  "dependencies": {
16
- "@babel/cli": "^7.13.10",
17
- "@babel/core": "^7.13.14",
18
- "@babel/plugin-proposal-class-properties": "^7.13.0",
19
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
20
- "@babel/plugin-transform-async-to-generator": "^7.13.0",
21
8
  "@babel/polyfill": "^7.12.1",
22
- "@babel/preset-env": "^7.13.12",
23
- "@babel/preset-react": "^7.13.13",
24
- "@babel/preset-typescript": "^7.13.0",
9
+ "@configuratorware/scripts": "1.29.2",
25
10
  "@tweenjs/tween.js": "^17.6.0",
26
- "babel-plugin-module-resolver": "^4.1.0",
27
11
  "console-polyfill": "^0.3.0",
28
- "cross-env": "^7.0.3",
29
12
  "css-element-queries": "^1.2.3",
30
- "lodash": "^4.17.21",
31
13
  "prop-types": "^15.7.2",
32
- "rimraf": "^3.0.2",
33
- "three": "^0.127.0",
34
- "uuid": "^3.4.0"
35
- },
36
- "devDependencies": {
37
- "@material-ui/core": "^4.11.*",
38
- "@types/jest": "^26.0.22",
39
- "@types/lodash": "^4.14.168",
40
- "babel-eslint": "^10.0.1",
41
- "babel-jest": "^26.6.3",
42
- "babel-loader": "^8.2.2",
43
- "enzyme": "^3.11.0",
44
- "enzyme-adapter-react-16": "^1.15.6",
45
- "eslint": "^5.16.0",
46
- "eslint-config-prettier": "^4.3.0",
47
- "eslint-plugin-import": "^2.22.1",
48
- "eslint-plugin-prettier": "^3.3.1",
49
- "eslint-plugin-react": "^7.23.1",
50
- "eslint-plugin-react-hooks": "^2.5.1",
51
- "file-loader": "^6.2.0",
52
- "jest": "^26.6.3",
53
- "jest-enzyme": "^7.1.2",
54
- "jsdom": "^16.5.2",
55
- "prettier": "1.19.1",
56
14
  "react": "^16.14.0",
57
15
  "react-dom": "^16.14.0",
58
- "react-hot-loader": "^4.13.0",
59
- "react-test-renderer": "^16.14.0",
60
- "sinon": "^10.0.0",
61
- "ts-jest": "^26.5.4",
62
- "typescript": "^4.2.3",
63
- "url-loader": "^4.1.1",
64
- "webpack": "^5.28.0",
65
- "webpack-cli": "^4.6.0",
66
- "webpack-dev-server": "^3.11.2"
16
+ "three": "^0.127.0",
17
+ "uuid": "^3.4.0"
67
18
  },
68
19
  "peerDependencies": {
69
- "react": "*",
70
- "react-dom": "*"
20
+ "lodash": "^4.17.21"
71
21
  },
72
22
  "scripts": {
73
- "start": "webpack serve --port 3003 --host 0.0.0.0",
74
- "package": "npm run package:clean && npm run package:compile && npm run package:copy && npm run package:after",
75
- "package:clean": "rimraf ./lib",
76
- "package:compile": "cross-env NODE_ENV=production babel ./src --out-dir ./lib --extensions .ts,.tsx,.js,.jsx",
77
- "package:copy": "node ./scripts/cpPath.js ./src ./lib \"\\.(scss|eot|svg|ttf|woff|woff2|png|jpg)$\"",
78
- "package:after": "node ./scripts/moveLibToPackageRoot.js",
79
23
  "copy-public": "node ./scripts/cpPublic.js",
80
- "install": "npm run package",
81
- "postinstall": "npm run copy-public",
82
- "test": "jest",
83
- "lint": "eslint ./ --ext .js,.jsx,.ts",
84
- "lint-ci": "eslint ./ --ext .js,.jsx,.ts -c .eslintrc.ci.json --quiet",
85
- "lint-fix": "eslint ./ --ext .js,.jsx,.ts --fix"
86
- }
87
- }
24
+ "postinstall": "npm run copy-public"
25
+ },
26
+ "readme": "# redhotmagma-visualization\n\n## setup for development\n1. follow the \"preparation\", \"install\" and \"start development\" steps in frontend/README.md\n1. open the dev app in the browser: http://localhost:3003\n\n## development\n1. new features:\n - consider adding a demo to the dev app\n - write tests (if possible, interacting with the canvas element is not supported yet)\n1. CRs:\n - test the affected functionalities in the dev app\n - write tests and adjust existing ones if needed\n"
27
+ }
@@ -21,19 +21,16 @@
21
21
  * @author boda@redhotmagma.de
22
22
  */
23
23
 
24
- const path = require('path');
24
+ const path = require("path");
25
25
 
26
- const { cpDirDeep } = require('./utils/fileSystem');
27
- const { isDependency } = require('./utils/process');
26
+ const { cpDirDeep } = require("@configuratorware/scripts/utils/fileSystem");
28
27
 
29
- if (isDependency()) {
30
- console.log(
31
- '\x1b[37m\x1b[42m%s\x1b[0m',
32
- 'Copying public content into the public directory of the client project'
33
- );
28
+ console.log(
29
+ "\x1b[37m\x1b[42m%s\x1b[0m",
30
+ "Copying public content into the public directory of the client project"
31
+ );
34
32
 
35
- const src = path.resolve(__dirname, '../public');
36
- const dst = path.resolve(__dirname, '../../../public');
33
+ const src = path.resolve(__dirname, "../public");
34
+ const dst = path.resolve(__dirname, "../../../public");
37
35
 
38
- cpDirDeep(src, dst);
39
- }
36
+ cpDirDeep(src, dst);
@@ -0,0 +1,30 @@
1
+ /* eslint no-console: 0 */
2
+
3
+ /**
4
+ * This script is made to copy the content of the public folder
5
+ * into the same destination in the local packages
6
+ *
7
+ * Runs only when installing this package as a dependency in local packages
8
+ *
9
+ * usage: node ./scripts/cpPublicLocal.js
10
+ *
11
+ * @author boda@redhotmagma.de
12
+ */
13
+
14
+ const path = require("path");
15
+ const fs = require("fs");
16
+
17
+ const { cpDirDeep } = require("@configuratorware/scripts/utils/fileSystem");
18
+
19
+ const runnerPackagePublicDir = path.resolve(process.env.PNPM_SCRIPT_SRC_DIR, "public");
20
+
21
+ if (fs.existsSync(runnerPackagePublicDir)) {
22
+ console.log(
23
+ "\x1b[37m\x1b[42m%s\x1b[0m",
24
+ "Copying public content into the public directory of the local package"
25
+ );
26
+
27
+ const src = path.resolve(__dirname, "../public");
28
+
29
+ cpDirDeep(src, runnerPackagePublicDir, { testFn: src => /public\/libs/.test(src) });
30
+ }
@@ -8,6 +8,7 @@ export class Observable {
8
8
 
9
9
  on(eventName, callback) {
10
10
  if (this.indexOf(eventName, callback) !== -1) {
11
+ // eslint-disable-next-line no-console
11
12
  console.warn(`The following callback is already added to the event: ${eventName}`, callback);
12
13
  return;
13
14
  }
@@ -126,6 +126,7 @@ export const createPointerEventListener = (element, name, fn) => {
126
126
  };
127
127
  const mouseHandler = (evt, ...args) => {
128
128
  if (evt.timeStamp - timeStamp < tolerance) {
129
+ // eslint-disable-next-line no-console
129
130
  console.log("Skipped double event handling.");
130
131
  return;
131
132
  }
@@ -243,7 +244,7 @@ export const createPointerMoveEventListener = (element, fn) => {
243
244
  });
244
245
  });
245
246
 
246
- const endListener = createPointerEventListener(element, "end", evt => {
247
+ const endListener = createPointerEventListener(element, "end", () => {
247
248
  removeMoveListener();
248
249
  });
249
250
 
package/src/DevApp.js CHANGED
@@ -396,7 +396,7 @@ const drawToTexture = (effect, designAreaList) => async (
396
396
 
397
397
  for (const designArea of designAreas) {
398
398
  await drawCanvasToArea({
399
- drawToContext: (ctx, x, y, width, height) => {
399
+ drawToContext: (ctx, x, y, width) => {
400
400
  drawImage(ctx, width / designArea.position.width, effect);
401
401
  },
402
402
  designArea,
@@ -646,6 +646,7 @@ const App = () => {
646
646
  let restoreColor;
647
647
  let to;
648
648
  visualization.observable.on(EventTypes.Intersection, v => {
649
+ // eslint-disable-next-line no-console
649
650
  console.log("Intersection", v);
650
651
  const mat = v.data.target.object.material;
651
652
  window.clearTimeout(to);
@@ -1,10 +1,6 @@
1
1
  import React from "react";
2
2
 
3
- export const FallbackVisualization = ({
4
- imageSrc,
5
- className,
6
- classNameEmpty
7
- }) =>
3
+ export const FallbackVisualization = ({ imageSrc, className, classNameEmpty }) =>
8
4
  imageSrc ? (
9
5
  <img className={className} src={imageSrc} />
10
6
  ) : (
@@ -51,6 +51,7 @@ const createDropShadow = ({ offsetX, offsetY, blur, color }) =>
51
51
 
52
52
  function modifyImage(srcCanvas, shadows) {
53
53
  if (!shadows || shadows.length === 0) {
54
+ // eslint-disable-next-line no-console
54
55
  console.warn("Could not apply effect, shadows has to be provided!");
55
56
  return;
56
57
  }
@@ -10,7 +10,7 @@ const SVG_DATA_URL_HDR = "data:image/svg+xml;base64,";
10
10
 
11
11
  const getScaleValues = node => {
12
12
  const transform = node.getAttribute("transform") || "";
13
- const matches = transform.match(/scale\(([^\)]+)\)/);
13
+ const matches = transform.match(/scale\(([^)]+)\)/);
14
14
  if (matches) {
15
15
  const [x, y] = matches[1].split(",").map(window.parseFloat);
16
16
  return [x, y || x];
@@ -20,7 +20,7 @@ const getScaleValues = node => {
20
20
 
21
21
  const getRotateValue = node => {
22
22
  const transform = node.getAttribute("transform") || "";
23
- const matches = transform.match(/rotate\(([^\)]+)\)/);
23
+ const matches = transform.match(/rotate\(([^)]+)\)/);
24
24
  if (matches) {
25
25
  return window.parseFloat(matches[1]);
26
26
  }
@@ -105,6 +105,7 @@ const applyOnEmbeddedSvg = async (imageNode, imageCanvas, ctx, rootSvgElement) =
105
105
  ctx.drawImage(tmpCanvas, 0, 0);
106
106
  ctx.restore();
107
107
  } catch (e) {
108
+ // eslint-disable-next-line no-console
108
109
  console.error("Error during embedded svg image processing!", e);
109
110
  }
110
111
  };
@@ -19,7 +19,7 @@ export class ReactBase extends VisualizationInterface {
19
19
  }
20
20
  }
21
21
 
22
- init(container = document.createElement("div"), useDefaultSetup = true) {
22
+ init(container = document.createElement("div")) {
23
23
  this._isInitialized = true;
24
24
  this._container = container;
25
25
  this.render();
@@ -1,3 +1,5 @@
1
+ /* eslint-disable */
2
+
1
3
  // original source: three/examples/js/controls/OrbitControls.js
2
4
 
3
5
  import * as THREE_imp from "three";