@shapediver/viewer.session-engine.session-engine 3.14.8 → 3.14.10

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 (47) hide show
  1. package/dist/implementation/OutputLoader.d.ts.map +1 -1
  2. package/dist/implementation/OutputLoader.js +4 -0
  3. package/dist/implementation/OutputLoader.js.map +1 -1
  4. package/dist/implementation/SessionEngine.d.ts.map +1 -1
  5. package/dist/implementation/SessionEngine.js +0 -4
  6. package/dist/implementation/SessionEngine.js.map +1 -1
  7. package/dist/implementation/SessionEngineCore.d.ts +49 -75
  8. package/dist/implementation/SessionEngineCore.d.ts.map +1 -1
  9. package/dist/implementation/SessionEngineCore.js +88 -265
  10. package/dist/implementation/SessionEngineCore.js.map +1 -1
  11. package/dist/implementation/SessionEngineFacade.d.ts +16 -11
  12. package/dist/implementation/SessionEngineFacade.d.ts.map +1 -1
  13. package/dist/implementation/SessionEngineFacade.js +19 -18
  14. package/dist/implementation/SessionEngineFacade.js.map +1 -1
  15. package/dist/implementation/managers/CustomizationManager.d.ts +41 -6
  16. package/dist/implementation/managers/CustomizationManager.d.ts.map +1 -1
  17. package/dist/implementation/managers/CustomizationManager.js +114 -56
  18. package/dist/implementation/managers/CustomizationManager.js.map +1 -1
  19. package/dist/implementation/managers/ExportManager.d.ts +49 -5
  20. package/dist/implementation/managers/ExportManager.d.ts.map +1 -1
  21. package/dist/implementation/managers/ExportManager.js +105 -42
  22. package/dist/implementation/managers/ExportManager.js.map +1 -1
  23. package/dist/implementation/managers/FileUploadManager.d.ts +41 -3
  24. package/dist/implementation/managers/FileUploadManager.d.ts.map +1 -1
  25. package/dist/implementation/managers/FileUploadManager.js +110 -67
  26. package/dist/implementation/managers/FileUploadManager.js.map +1 -1
  27. package/dist/implementation/managers/ModelStateManager.d.ts +42 -4
  28. package/dist/implementation/managers/ModelStateManager.d.ts.map +1 -1
  29. package/dist/implementation/managers/ModelStateManager.js +71 -24
  30. package/dist/implementation/managers/ModelStateManager.js.map +1 -1
  31. package/dist/implementation/managers/OutputManager.d.ts +48 -10
  32. package/dist/implementation/managers/OutputManager.d.ts.map +1 -1
  33. package/dist/implementation/managers/OutputManager.js +144 -84
  34. package/dist/implementation/managers/OutputManager.js.map +1 -1
  35. package/dist/implementation/managers/ParameterManager.d.ts +51 -4
  36. package/dist/implementation/managers/ParameterManager.d.ts.map +1 -1
  37. package/dist/implementation/managers/ParameterManager.js +164 -13
  38. package/dist/implementation/managers/ParameterManager.js.map +1 -1
  39. package/dist/implementation/managers/SettingsManager.d.ts +27 -2
  40. package/dist/implementation/managers/SettingsManager.d.ts.map +1 -1
  41. package/dist/implementation/managers/SettingsManager.js +120 -74
  42. package/dist/implementation/managers/SettingsManager.js.map +1 -1
  43. package/dist/implementation/managers/UtilsManager.d.ts +79 -17
  44. package/dist/implementation/managers/UtilsManager.d.ts.map +1 -1
  45. package/dist/implementation/managers/UtilsManager.js +187 -126
  46. package/dist/implementation/managers/UtilsManager.js.map +1 -1
  47. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"SettingsManager.js","sourceRoot":"","sources":["../../../src/implementation/managers/SettingsManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SettingsManager.js","sourceRoot":"","sources":["../../../src/implementation/managers/SettingsManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iFAI6C;AAC7C,iEAMqC;AACrC,+EAK4C;AAG5C,wDAAmD;AAGnD;;;;;GAKG;AACH,MAAa,eAAe;IAS3B,YAAY,iBAAoC;QAR/B,YAAO,GAAW,+BAAM,CAAC,QAAQ,CAAC;QAElC,oBAAe,GAAmB,IAAI,uCAAc,EAAE,CAAC;QAGhE,2BAAsB,GAAW,+BAAa,CAAC;QAC/C,kCAA6B,GAAW,+BAAa,CAAC;QAG7D,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED,IAAW,iBAAiB;QAC3B,OAAO,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC;IAC/C,CAAC;IAED,IAAW,cAAc;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC7B,CAAC;IAED,IAAW,cAAc;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC7B,CAAC;IAED,IAAW,cAAc,CAAC,KAAyB;QAClD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,IAAW,4BAA4B,CAAC,KAAa;QACpD,IAAI,CAAC,6BAA6B,GAAG,KAAK,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,aAAa,CAAC,QAAiB,EAAE,QAA4B;QACnE,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;QAC1B,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE;YACnC,QAAQ,CAAC,OAAO,GAAG;gBAClB,SAAS,EAAE,EAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAC;gBAC5D,MAAM,EAAE,EAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAC;aACzD,CAAC;SACF;QACD,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS;YAC3C,QAAQ,CAAC,OAAO,CAAC,SAAS,GAAG;gBAC5B,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,KAAK;aACZ,CAAC;QACH,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS;YACxC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG;gBACzB,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,KAAK;aACb,CAAC;QACH,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS;YAClC,QAAQ,CAAC,QAAQ,GAAG;gBACnB,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,KAAK;gBAClB,OAAO,EAAE,KAAK;gBACd,cAAc,EAAE,KAAK;aACrB,CAAC;QAEH,IAAI,MAAc,CAAC;QACnB,IAAc,QAAS,CAAC,MAAM,KAAK,SAAS,EAAE;YAC7C,MAAM,GAAa,QAAS,CAAC,MAAO,CAAC,MAAM,CAAC;SAC5C;aAAM;YACN,MAAM,IAAI,sDAA6B,CACtC,oDAAoD,CACpD,CAAC;SACF;QAED,IAAI;YACH,IAAA,0BAAQ,EAAC,MAAM,CAAC,CAAC;SACjB;QAAC,OAAO,CAAC,EAAE;YACX,MAAM,IAAI,sDAA6B,CACtC,gEAAgE,CAChE,CAAC;SACF;QAED,MAAM,QAAQ,GAAc,IAAA,yBAAO,EAAC,MAAM,EAAE,+BAAa,CAAC,CAAC;QAE3D,MAAM,gBAAgB,GAAwC,EAAE,CAAC;QACjE,IACC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW;YACnC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;YAC7B,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM;YAE9B,IAAI,QAAQ,CAAC,OAAO;gBACnB,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,OAAO;oBACtC,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,SAAS;wBAC/C,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAI,CAAC;4BAChD,QAAQ,CAAC;QAEd,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;QAEtD,2BAA2B;QAC3B,IACC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW;YACtC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK;YAChC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM;YACjC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAC/B;YACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,gBAAgB;iBACtD,UAAU,EAAE;gBACb,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACxB,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW;wBACzC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAClD,CAAC,CACD,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;oBACjD,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK;wBACnC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAClD,CAAC,CACD,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACrC,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM;wBACpC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAClD,CAAC,CACD,CAAC,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC;iBAChD;gBAED,IACC,QAAQ,CAAC,UAAU;oBACnB,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;oBACtB,CAAC,CACA,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAClD,CAAC,CACD,YAAY,6BAAa;wBAC1B,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAClD,CAAC,CACD,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CACtB,EACA;oBACD,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK;wBACnC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAClD,CAAC,CACD,CAAC,KAAK;4BACN,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS;gCAC1C,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM;gCAC/B,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB;qCACvC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;iBAC1B;aACD;SACD;QAED,wBAAwB;QACxB,IACC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW;YACnC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;YAC7B,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAC7B;YACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE;gBAC9D,IAAI,aAAa,GAAG,EAAE,CAAC;gBACvB,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACxB,aAAa,GAAG,CAAC,CAAC;iBAClB;qBAAM;oBACN,MAAM,GAAG,GACR,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBACtD,IAAI,CAAC,GAAG;wBAAE,SAAS;oBACnB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;wBAAE,SAAS;oBACrC,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAE,CAAC;iBACvC;gBACD,IAAI,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;oBACpC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW;wBACtC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAC5C,CAAC,CACD,CAAC,WAAW;4BACZ,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC;oBAC9C,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;wBAChC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK;4BACrD,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC;oBACxC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM;wBACjC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAC5C,CAAC,CACD,CAAC,MAAM;4BACP,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC;iBAClD;aACD;SACD;QAED,oBAAoB;QACpB,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE;YACzB,eAAe,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC;YACjC,eAAe,CAAC,OAAO,CAAC,cAAc;gBACrC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC;SACjC;QAED,wBAAwB;QACxB,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM;YAAE,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAEvE,uBAAuB;QACvB,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK;YAAE,eAAe,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAEpE,uBAAuB;QACvB,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE;YAC5B,eAAe,CAAC,mBAAmB,CAAC,SAAS;gBAC5C,QAAQ,CAAC,mBAAmB,CAAC,SAAS,CAAC;YACxC,eAAe,CAAC,mBAAmB,CAAC,cAAc;gBACjD,QAAQ,CAAC,mBAAmB,CAAC,cAAc,CAAC;YAC7C,eAAe,CAAC,mBAAmB,CAAC,gBAAgB;gBACnD,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;YAC/C,eAAe,CAAC,mBAAmB,CAAC,qBAAqB;gBACxD,QAAQ,CAAC,mBAAmB,CAAC,qBAAqB,CAAC;YACpD,eAAe,CAAC,mBAAmB,CAAC,sBAAsB;gBACzD,QAAQ,CAAC,mBAAmB,CAAC,sBAAsB,CAAC;YACrD,eAAe,CAAC,mBAAmB,CAAC,2BAA2B;gBAC9D,QAAQ,CAAC,mBAAmB,CAAC,2BAA2B,CAAC;YAC1D,eAAe,CAAC,mBAAmB,CAAC,uBAAuB;gBAC1D,QAAQ,CAAC,mBAAmB,CAAC,uBAAuB,CAAC;YACtD,eAAe,CAAC,mBAAmB,CAAC,mBAAmB;gBACtD,QAAQ,CAAC,mBAAmB,CAAC,mBAAmB,CAAC;YAClD,eAAe,CAAC,mBAAmB,CAAC,iBAAiB;gBACpD,QAAQ,CAAC,mBAAmB,CAAC,iBAAiB,CAAC;YAChD,eAAe,CAAC,mBAAmB,CAAC,oBAAoB;gBACvD,QAAQ,CAAC,mBAAmB,CAAC,oBAAoB,CAAC;YACnD,eAAe,CAAC,mBAAmB,CAAC,qBAAqB;gBACxD,QAAQ,CAAC,mBAAmB,CAAC,qBAAqB,CAAC;YAEpD,eAAe,CAAC,SAAS,CAAC,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC;YAC/D,eAAe,CAAC,SAAS,CAAC,WAAW;gBACpC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC;YAEhC,eAAe,CAAC,SAAS,CAAC,wBAAwB;gBACjD,QAAQ,CAAC,SAAS,CAAC,wBAAwB,CAAC;YAC7C,eAAe,CAAC,SAAS,CAAC,eAAe;gBACxC,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC;YACpC,eAAe,CAAC,SAAS,CAAC,cAAc;gBACvC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC;YACnC,eAAe,CAAC,SAAS,CAAC,uBAAuB;gBAChD,QAAQ,CAAC,SAAS,CAAC,uBAAuB,CAAC;YAC5C,eAAe,CAAC,SAAS,CAAC,WAAW;gBACpC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC;YAChC,eAAe,CAAC,SAAS,CAAC,mBAAmB;gBAC5C,QAAQ,CAAC,SAAS,CAAC,mBAAmB,CAAC;SACxC;QAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE;YAC9B,eAAe,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;YACvD,eAAe,CAAC,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;YAC/D,eAAe,CAAC,QAAQ,CAAC,oBAAoB;gBAC5C,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC;YACxC,eAAe,CAAC,QAAQ,CAAC,oBAAoB;gBAC5C,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC;SACxC;QAED,gCAAgC;QAChC,IAAI,QAAQ,CAAC,QAAQ,CAAC,cAAc;YACnC,eAAe,CAAC,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;QAE1D,6BAA6B;QAC7B,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE;YAClC,eAAe,CAAC,WAAW,CAAC,UAAU;gBACrC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC;YACjC,eAAe,CAAC,WAAW,CAAC,UAAU;gBACrC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC;YACjC,eAAe,CAAC,WAAW,CAAC,GAAG,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC;YAC3D,eAAe,CAAC,WAAW,CAAC,eAAe;gBAC1C,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC;YACtC,eAAe,CAAC,WAAW,CAAC,QAAQ;gBACnC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC;YAC/B,eAAe,CAAC,WAAW,CAAC,UAAU;gBACrC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC;YACjC,eAAe,CAAC,WAAW,CAAC,SAAS;gBACpC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC;SAChC;IACF,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,QAA4B;QAChD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW;YACvC,MAAM,IAAI,qDAA4B,CACrC,mDAAmD,CACnD,CAAC;QAEH,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;QAC1B,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE;YACnC,QAAQ,CAAC,OAAO,GAAG;gBAClB,SAAS,EAAE,EAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAC;gBACzD,MAAM,EAAE,EAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAC;aACtD,CAAC;SACF;QACD,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS;YAC3C,QAAQ,CAAC,OAAO,CAAC,SAAS,GAAG;gBAC5B,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,IAAI;aACX,CAAC;QACH,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS;YACxC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG;gBACzB,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;aACZ,CAAC;QACH,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS;YAClC,QAAQ,CAAC,QAAQ,GAAG;gBACnB,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,IAAI;aACpB,CAAC;QAEH,OAAO,IAAI,CAAC,aAAa,CACxB,IAAI,CAAC,kBAAkB,CAAC,WAAW,EACnC,QAAQ,CACR,CAAC;IACH,CAAC;IAED;;OAEG;IACU,0BAA0B;;YACtC,IAAI,CAAC,OAAO,CAAC,QAAQ,CACpB,WAAW,IAAI,CAAC,kBAAkB,CAAC,EAAE,qDAAqD,CAC1F,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACpD,IAAI,QAAQ,EAAE;gBACb,IAAI,CAAC,OAAO,CAAC,KAAK,CACjB,WAAW,IAAI,CAAC,kBAAkB,CAAC,EAAE,oDAAoD,CACzF,CAAC;aACF;iBAAM;gBACN,MAAM,IAAI,qDAA4B,CACrC,WAAW,IAAI,CAAC,kBAAkB,CAAC,EAAE,6DAA6D,CAClG,CAAC;aACF;YACD,OAAO,QAAQ,CAAC;QACjB,CAAC;KAAA;IAED;;;;;OAKG;IACU,qBAAqB,CAAC,KAAK,GAAG,KAAK;;YAC/C,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,iBAAiB,CACrD,cAAc,EACd,IAAI,CACJ,CAAC;YACF,IAAI;gBACH,MAAM,IAAI,kCAAQ,CACjB,IAAI,CAAC,kBAAkB,CAAC,SAAS,CACjC,CAAC,4BAA4B,CAC7B,IAAI,CAAC,kBAAkB,CAAC,OAAQ,EAChC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,eAAe,CACxD,CAAC;gBACF,OAAO,IAAI,CAAC;aACZ;YAAC,OAAO,CAAC,EAAE;gBACX,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBACjE,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;aAC9C;QACF,CAAC;KAAA;IAED;;;;;;OAMG;IACU,uBAAuB,CACnC,UAOC,EACD,KAAK,GAAG,KAAK;;YAEb,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,iBAAiB,CACrD,sBAAsB,EACtB,IAAI,CACJ,CAAC;YACF,IAAI;gBACH,MAAM,IAAI,kCAAQ,CACjB,IAAI,CAAC,kBAAkB,CAAC,SAAS,CACjC,CAAC,0BAA0B,CAC3B,IAAI,CAAC,kBAAkB,CAAC,OAAQ,EAChC,UAAU,CACV,CAAC;gBACF,OAAO,IAAI,CAAC;aACZ;YAAC,OAAO,CAAC,EAAE;gBACX,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBACjE,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;aAC5D;QACF,CAAC;KAAA;IAED;;;;;;OAMG;IACU,YAAY,CAAC,IAAa,EAAE,KAAK,GAAG,KAAK;;YACrD,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,iBAAiB,CACrD,WAAW,EACX,IAAI,CACJ,CAAC;YAEF,IAAI;gBACH,IAAA,0BAAQ,EAAC,IAAI,EAAY,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBAEtD,qEAAqE;gBACrE,sCAAsC;gBACtC,IACC,CAAC,IAAI,CAAC,sBAAsB;oBAC5B,CAAC,IAAI,CAAC,6BAA6B;oBAEnC,IAAI,GAAG,IAAA,yBAAO,EACb,IAAI,EACM,IAAI,CAAC,6BAA6B,CAC5C,CAAC;aACH;YAAC,OAAO,CAAC,EAAE;gBACX,MAAM,IAAI,sDAA6B,CACtC,yDAAyD;oBAChD,CAAE,CAAC,OAAO,EACZ,CAAC,CACR,CAAC;aACF;YAED,IAAI;gBACH,MAAM,IAAI,kCAAQ,CACjB,IAAI,CAAC,kBAAkB,CAAC,SAAS,CACjC,CAAC,iBAAiB,CAClB,IAAI,CAAC,kBAAkB,CAAC,OAAQ,EAChC,IAAoB,CACpB,CAAC;gBACF,OAAO,IAAI,CAAC;aACZ;YAAC,OAAO,CAAC,EAAE;gBACX,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBACjE,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aAC3C;QACF,CAAC;KAAA;IAED;;;;;OAKG;IACU,gBAAgB,CAC5B,iBAA0B,IAAI;;YAE9B,IAAI,CAAC,OAAO,CAAC,QAAQ,CACpB,WAAW,IAAI,CAAC,kBAAkB,CAAC,EAAE,qDAAqD,CAC1F,CAAC;YAEF,kBAAkB;YAClB,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAE3B,IAAI,UAAU,GAOV,EAAE,CAAC;YACP,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE;gBACpE,UAAU,CAAC,CAAC,CAAC,GAAG;oBACf,WAAW,EACV,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;yBACpD,WAAW,KAAK,SAAS;wBAC1B,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;6BACrD,WAAY;wBACf,CAAC,CAAC,EAAE;oBACN,MAAM,EACL,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;yBACpD,MAAM,KAAK,SAAS;wBACrB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;6BACrD,MAAM;wBACT,CAAC,CAAC,KAAK;oBACT,KAAK,EACJ,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;yBACpD,KAAK,KAAK,SAAS;wBACpB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;6BACrD,KAAM;wBACT,CAAC,CAAC,CAAC;oBACL,OAAO,EACN,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;yBACpD,OAAO,KAAK,SAAS;wBACtB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;6BACrD,OAAQ;wBACX,CAAC,CAAC,EAAE;iBACN,CAAC;aACF;YACD,MAAM,SAAS,GACd,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC;gBACrC,CAAC,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC;gBAChD,CAAC,CAAC,IAAI,CAAC;YAET,UAAU,GAAG,EAAE,CAAC;YAChB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE;gBAC9D,UAAU,CAAC,CAAC,CAAC,GAAG;oBACf,WAAW,EACV,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;yBAC9C,WAAW,KAAK,SAAS;wBAC1B,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;6BAC/C,WAAY;wBACf,CAAC,CAAC,EAAE;oBACN,MAAM,EACL,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM;wBACvD,SAAS;wBACR,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;6BAC/C,MAAM;wBACT,CAAC,CAAC,KAAK;oBACT,KAAK,EACJ,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK;wBACtD,SAAS;wBACR,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;6BAC/C,KAAM;wBACT,CAAC,CAAC,CAAC;oBACL,OAAO,EACN,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;wBACxD,SAAS;wBACR,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;6BAC/C,OAAQ;wBACX,CAAC,CAAC,EAAE;iBACN,CAAC;aACF;YACD,MAAM,SAAS,GACd,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC;gBACrC,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,oBAAoB,CAChE,UAAU,CACV;gBACF,CAAC,CAAC,IAAI,CAAC;YAET,UAAU,GAAG,EAAE,CAAC;YAChB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE;gBAC9D,UAAU,CAAC,CAAC,CAAC,GAAG;oBACf,WAAW,EACV,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;yBAC9C,WAAW,KAAK,SAAS;wBAC1B,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;6BAC/C,WAAY;wBACf,CAAC,CAAC,EAAE;oBACN,MAAM,EACL,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM;wBACvD,SAAS;wBACR,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;6BAC/C,MAAM;wBACT,CAAC,CAAC,KAAK;oBACT,KAAK,EACJ,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK;wBACtD,SAAS;wBACR,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;6BAC/C,KAAM;wBACT,CAAC,CAAC,CAAC;oBACL,OAAO,EACN,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;wBACxD,SAAS;wBACR,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;6BAC/C,OAAQ;wBACX,CAAC,CAAC,EAAE;iBACN,CAAC;aACF;YACD,MAAM,SAAS,GACd,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC;gBACrC,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,oBAAoB,CAChE,UAAU,CACV;gBACF,CAAC,CAAC,IAAI,CAAC;YAET,wBAAwB;YACxB,MAAM,QAAQ,GAAG,cAAc;gBAC9B,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;gBACxD,CAAC,CAAC,IAAI,CAAC;YAER,IAAI,QAAQ,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,EAAE;gBACpD,IAAI,CAAC,OAAO,CAAC,KAAK,CACjB,WAAW,IAAI,CAAC,kBAAkB,CAAC,EAAE,oDAAoD,CACzF,CAAC;aACF;iBAAM;gBACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAChB,WAAW,IAAI,CAAC,kBAAkB,CAAC,EAAE,6DAA6D,CAClG,CAAC;aACF;YACD,OAAO,QAAQ,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,CAAC;QACxD,CAAC;KAAA;IAED;;OAEG;IACK,mBAAmB;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC;QAE9D,MAAM,iBAAiB,GAMnB,EAAE,CAAC;QACP,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;YAC3B,iBAAiB,CAAC,CAAC,CAAC,GAAG;gBACtB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;gBAC/B,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE;gBAC5C,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM;aAC5B,CAAC;SACF;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;YACxB,iBAAiB,CAAC,CAAC,CAAC,GAAG;gBACtB,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;gBAC5B,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE;gBACzC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM;aACzB,CAAC;SACF;QACD,IAAI,CAAC,eAAe,CAAC,OAAO,GAAG,iBAAiB,CAAC;IAClD,CAAC;CACD;AAhnBD,0CAgnBC"}
@@ -4,18 +4,55 @@ import { ShapeDiverViewerError } from "@shapediver/viewer.shared.services";
4
4
  import { ITaskEvent } from "@shapediver/viewer.shared.types";
5
5
  import { IParameter } from "../../interfaces/dto/IParameter";
6
6
  import { SessionEngineCore } from "../SessionEngineCore";
7
+ /**
8
+ * Manager responsible for utility functions.
9
+ * This is the manager for miscellaneous utility functions that do not fit into other managers.
10
+ *
11
+ * The manager is created by the SessionEngineCore and can be accessed
12
+ * via the `utilsManager` property.
13
+ */
7
14
  export declare class UtilsManager {
8
15
  private readonly _converter;
9
16
  private readonly _eventEngine;
17
+ private readonly _globalAccessObjects;
10
18
  private readonly _httpClient;
11
19
  private readonly _logger;
12
- private readonly _globalAccessObjects;
13
20
  private readonly _sceneTree;
21
+ private readonly _sessionEngineCore;
14
22
  private readonly _stateEngine;
15
23
  private _retryCounter;
16
- private readonly _sessionEngineCore;
17
24
  constructor(sessionEngineCore: SessionEngineCore);
25
+ /**
26
+ * Add a busy mode to all viewport engines.
27
+ * To remove the busy mode, use `removeBusyMode`.
28
+ *
29
+ * @param busyId The ID of the busy mode to add
30
+ */
18
31
  addBusyMode(busyId: string): void;
32
+ /**
33
+ * Adds a node to the scene tree and updates the root version.
34
+ *
35
+ * @param node The tree node to add
36
+ */
37
+ addToSceneTree(node: ITreeNode): void;
38
+ /**
39
+ * Cancels the current process if a new customization request has been made or if the session was closed.
40
+ * If the process is cancelled, a TASK_CANCEL event is emitted and the busy mode is removed.
41
+ *
42
+ * @param eventInfo The task event information
43
+ * @param customizationId The ID of the customization process
44
+ * @param newNode The new tree node to return if the process is cancelled
45
+ * @returns The new tree node if the process was cancelled, otherwise undefined
46
+ */
47
+ cancelProcess(eventInfo: ITaskEvent, customizationId: string, newNode?: ITreeNode): ITreeNode | undefined;
48
+ /**
49
+ * Checks the availability of the session and optionally a specific action.
50
+ *
51
+ * @param action The action to check for availability
52
+ * @param checkForModelId Whether to check for the model ID availability
53
+ * @throws ShapeDiverViewerSessionError if the session or action is not available
54
+ */
55
+ checkAvailability(action?: string, checkForModelId?: boolean): void;
19
56
  /**
20
57
  * Create an interaction parameter based on the parameter definition.
21
58
  *
@@ -23,19 +60,13 @@ export declare class UtilsManager {
23
60
  * @returns
24
61
  */
25
62
  createInteractionParameter(parameter: ResParameter): IParameter<unknown>;
26
- waitForUpdateCallbacks(newOutputVersions: {
27
- [key: string]: string;
28
- }, oldOutputVersions: {
29
- [key: string]: string;
30
- }, newNode: ITreeNode, oldNode: ITreeNode): Promise<void>;
31
- warningCreator(outputs: {
32
- [id: string]: ResOutput;
33
- } | undefined, exports: {
34
- [key: string]: ResExport;
35
- }, throwError?: boolean): void;
36
- addToSceneTree(node: ITreeNode): void;
37
- cancelProcess(eventInfo: ITaskEvent, customizationId: string, newNode?: ITreeNode): ITreeNode | undefined;
38
- checkAvailability(action?: string, checkForModelId?: boolean): void;
63
+ /**
64
+ * Handles errors that occur during session operations.
65
+ *
66
+ * @param err The error to handle
67
+ * @param retry Whether to retry the operation
68
+ * @returns A promise that resolves when the error has been handled
69
+ */
39
70
  handleError(err: SdGeometryError | ShapeDiverViewerError | Error | unknown, retry?: boolean): Promise<void>;
40
71
  /**
41
72
  * Process the image input and return the image data and array buffer.
@@ -52,6 +83,13 @@ export declare class UtilsManager {
52
83
  imageData: ReqFileDefinition;
53
84
  arrayBuffer: ArrayBuffer;
54
85
  }>;
86
+ removeBusyMode(busyId: string): void;
87
+ /**
88
+ * Removes a node from the scene tree and updates the root version.
89
+ *
90
+ * @param node The tree node to remove
91
+ */
92
+ removeFromSceneTree(node: ITreeNode): void;
55
93
  /**
56
94
  * Returns a promise that resolves after the amount of milliseconds provided.
57
95
  *
@@ -59,7 +97,31 @@ export declare class UtilsManager {
59
97
  * @returns promise that resolve after specified milliseconds
60
98
  */
61
99
  timeout(ms: number): Promise<unknown>;
62
- removeBusyMode(busyId: string): void;
63
- removeFromSceneTree(node: ITreeNode): void;
100
+ /**
101
+ * Waits for all update callbacks to finish.
102
+ *
103
+ * @param newOutputVersions The new output versions
104
+ * @param oldOutputVersions The old output versions
105
+ * @param newNode The new tree node
106
+ * @param oldNode The old tree node
107
+ */
108
+ waitForUpdateCallbacks(newOutputVersions: {
109
+ [key: string]: string;
110
+ }, oldOutputVersions: {
111
+ [key: string]: string;
112
+ }, newNode: ITreeNode, oldNode: ITreeNode): Promise<void>;
113
+ /**
114
+ * Creates warnings for outputs and exports with issues.
115
+ * If `throwError` is true, a ShapeDiverViewerCustomizationError is thrown instead.
116
+ *
117
+ * @param outputs The outputs to check for issues
118
+ * @param exports The exports to check for issues
119
+ * @param throwError Whether to throw an error instead of creating warnings
120
+ */
121
+ warningCreator(outputs: {
122
+ [id: string]: ResOutput;
123
+ } | undefined, exports: {
124
+ [key: string]: ResExport;
125
+ }, throwError?: boolean): void;
64
126
  }
65
127
  //# sourceMappingURL=UtilsManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UtilsManager.d.ts","sourceRoot":"","sources":["../../../src/implementation/managers/UtilsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,iBAAiB,EAGjB,SAAS,EACT,SAAS,EACT,YAAY,EAEZ,eAAe,EAEf,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAQ,SAAS,EAAO,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAON,qBAAqB,EAGrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEN,UAAU,EAEV,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAC,UAAU,EAAC,MAAM,iCAAiC,CAAC;AAK3D,OAAO,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAGvD,qBAAa,YAAY;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IACrD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmC;IAC/D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IAEnD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CACP;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwB;IACnD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqC;IAClE,OAAO,CAAC,aAAa,CAAK;IAE1B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoB;gBAE3C,iBAAiB,EAAE,iBAAiB;IAIzC,WAAW,CAAC,MAAM,EAAE,MAAM;IAYjC;;;;;OAKG;IACI,0BAA0B,CAChC,SAAS,EAAE,YAAY,GACrB,UAAU,CAAC,OAAO,CAAC;IA8BT,sBAAsB,CAClC,iBAAiB,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,EAC1C,iBAAiB,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,EAC1C,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,SAAS;IA8BZ,cAAc,CACpB,OAAO,EAAE;QAAC,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,CAAA;KAAC,GAAG,SAAS,EAC9C,OAAO,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;KAAC,EACnC,UAAU,UAAQ;IA0FZ,cAAc,CAAC,IAAI,EAAE,SAAS;IAK9B,aAAa,CACnB,SAAS,EAAE,UAAU,EACrB,eAAe,EAAE,MAAM,EACvB,OAAO,GAAE,SAAiC,GACxC,SAAS,GAAG,SAAS;IA4BjB,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,eAAe,UAAQ;IA+BpD,WAAW,CACvB,GAAG,EAAE,eAAe,GAAG,qBAAqB,GAAG,KAAK,GAAG,OAAO,EAC9D,KAAK,UAAQ;IAqFd;;;;;;;;;;OAUG;IACU,iBAAiB,CAC7B,KAAK,EACF,CAAC,MAAM,MAAM,CAAC,GACd,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,GACvB,MAAM,GACN,OAAO,CAAC,MAAM,CAAC,GACf,IAAI,GACJ,IAAI,GACL,OAAO,CAAC;QACV,SAAS,EAAE,iBAAiB,CAAC;QAC7B,WAAW,EAAE,WAAW,CAAC;KACzB,CAAC;IA+CF;;;;;OAKG;IACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI3C,cAAc,CAAC,MAAM,EAAE,MAAM;IAqB7B,mBAAmB,CAAC,IAAI,EAAE,SAAS;CAI1C"}
1
+ {"version":3,"file":"UtilsManager.d.ts","sourceRoot":"","sources":["../../../src/implementation/managers/UtilsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,iBAAiB,EAGjB,SAAS,EACT,SAAS,EACT,YAAY,EAEZ,eAAe,EAEf,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAQ,SAAS,EAAO,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAON,qBAAqB,EAGrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEN,UAAU,EAEV,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAC,UAAU,EAAC,MAAM,iCAAiC,CAAC;AAK3D,OAAO,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAGvD;;;;;;GAMG;AACH,qBAAa,YAAY;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IACrD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CACP;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmC;IAC/D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwB;IACnD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoB;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqC;IAElE,OAAO,CAAC,aAAa,CAAK;gBAEd,iBAAiB,EAAE,iBAAiB;IAIhD;;;;;OAKG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM;IAcjC;;;;OAIG;IACI,cAAc,CAAC,IAAI,EAAE,SAAS;IAKrC;;;;;;;;OAQG;IACI,aAAa,CACnB,SAAS,EAAE,UAAU,EACrB,eAAe,EAAE,MAAM,EACvB,OAAO,GAAE,SAAiC,GACxC,SAAS,GAAG,SAAS;IA+BxB;;;;;;OAMG;IACI,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,eAAe,UAAQ;IA+BjE;;;;;OAKG;IACI,0BAA0B,CAChC,SAAS,EAAE,YAAY,GACrB,UAAU,CAAC,OAAO,CAAC;IAqCtB;;;;;;OAMG;IACU,WAAW,CACvB,GAAG,EAAE,eAAe,GAAG,qBAAqB,GAAG,KAAK,GAAG,OAAO,EAC9D,KAAK,UAAQ;IAsFd;;;;;;;;;;OAUG;IACU,iBAAiB,CAC7B,KAAK,EACF,CAAC,MAAM,MAAM,CAAC,GACd,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,GACvB,MAAM,GACN,OAAO,CAAC,MAAM,CAAC,GACf,IAAI,GACJ,IAAI,GACL,OAAO,CAAC;QACV,SAAS,EAAE,iBAAiB,CAAC;QAC7B,WAAW,EAAE,WAAW,CAAC;KACzB,CAAC;IAiDK,cAAc,CAAC,MAAM,EAAE,MAAM;IAyBpC;;;;OAIG;IACI,mBAAmB,CAAC,IAAI,EAAE,SAAS;IAK1C;;;;;OAKG;IACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIlD;;;;;;;OAOG;IACU,sBAAsB,CAClC,iBAAiB,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,EAC1C,iBAAiB,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,EAC1C,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,SAAS;IAyBnB;;;;;;;OAOG;IACI,cAAc,CACpB,OAAO,EAAE;QAAC,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,CAAA;KAAC,GAAG,SAAS,EAC9C,OAAO,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;KAAC,EACnC,UAAU,UAAQ;CA0FnB"}
@@ -20,143 +20,61 @@ const GumballParameter_1 = require("../dto/interaction/GumballParameter");
20
20
  const SelectionParameter_1 = require("../dto/interaction/SelectionParameter");
21
21
  const Parameter_1 = require("../dto/Parameter");
22
22
  const SessionTreeNode_1 = require("../SessionTreeNode");
23
+ /**
24
+ * Manager responsible for utility functions.
25
+ * This is the manager for miscellaneous utility functions that do not fit into other managers.
26
+ *
27
+ * The manager is created by the SessionEngineCore and can be accessed
28
+ * via the `utilsManager` property.
29
+ */
23
30
  class UtilsManager {
24
31
  constructor(sessionEngineCore) {
25
32
  this._converter = viewer_shared_services_1.Converter.instance;
26
33
  this._eventEngine = viewer_shared_services_1.EventEngine.instance;
34
+ this._globalAccessObjects = viewer_shared_global_access_objects_1.GlobalAccessObjects.instance;
27
35
  this._httpClient = viewer_shared_services_1.HttpClient.instance;
28
36
  this._logger = viewer_shared_services_1.Logger.instance;
29
- this._globalAccessObjects = viewer_shared_global_access_objects_1.GlobalAccessObjects.instance;
30
37
  this._sceneTree = viewer_shared_node_tree_1.Tree.instance;
31
38
  this._stateEngine = viewer_shared_services_1.StateEngine.instance;
32
39
  this._retryCounter = 0;
33
40
  this._sessionEngineCore = sessionEngineCore;
34
41
  }
42
+ /**
43
+ * Add a busy mode to all viewport engines.
44
+ * To remove the busy mode, use `removeBusyMode`.
45
+ *
46
+ * @param busyId The ID of the busy mode to add
47
+ */
35
48
  addBusyMode(busyId) {
36
49
  for (const r in this._stateEngine.viewportEngines) {
37
50
  if (this._stateEngine.viewportEngines[r] &&
38
51
  !this._sessionEngineCore.excludeViewports.includes(r)) {
39
52
  this._stateEngine.viewportEngines[r].busy.push(busyId);
40
- this._sessionEngineCore.customizationBusyModes.push(busyId);
53
+ this._sessionEngineCore.customizationManager.customizationBusyModes.push(busyId);
41
54
  }
42
55
  }
43
56
  }
44
57
  /**
45
- * Create an interaction parameter based on the parameter definition.
58
+ * Adds a node to the scene tree and updates the root version.
46
59
  *
47
- * @param parameter
48
- * @returns
60
+ * @param node The tree node to add
49
61
  */
50
- createInteractionParameter(parameter) {
51
- const result = (0, viewer_shared_types_1.validateInteractionParameterSettings)(parameter.settings);
52
- if (result.success) {
53
- switch (parameter.settings.type) {
54
- case "selection":
55
- return new SelectionParameter_1.SelectionParameter(parameter, this._sessionEngineCore);
56
- case "gumball":
57
- return new GumballParameter_1.GumballParameter(parameter, this._sessionEngineCore);
58
- case "dragging":
59
- return new DraggingParameter_1.DraggingParameter(parameter, this._sessionEngineCore);
60
- }
61
- }
62
- else {
63
- this._logger.warn(`SessionEngine.createInteractionParameter: The value ${parameter.settings} is not a valid InteractionParameter: ${result.error.message}`);
64
- }
65
- return new Parameter_1.Parameter(parameter, this._sessionEngineCore);
66
- }
67
- waitForUpdateCallbacks(newOutputVersions, oldOutputVersions, newNode, oldNode) {
68
- return __awaiter(this, void 0, void 0, function* () {
69
- // call the update callback function on the session
70
- if (this._sessionEngineCore.updateCallback)
71
- yield Promise.resolve(this._sessionEngineCore.updateCallback(newNode, oldNode));
72
- const promises = [];
73
- // call the update callback functions on the outputs
74
- for (const outputId in this._sessionEngineCore.outputs) {
75
- if (oldOutputVersions[outputId] !== newOutputVersions[outputId]) {
76
- promises.push(this._sessionEngineCore.outputs[outputId].triggerUpdateCallback(newNode.children.find((c) => c.name === outputId), oldNode.children.find((c) => c.name === outputId)));
77
- }
78
- }
79
- yield Promise.all(promises);
80
- // now that all callbacks are done
81
- // we apply the materialDatabase (if there is one)
82
- if (this._globalAccessObjects.assignMaterialFromDatabase)
83
- yield this._globalAccessObjects.assignMaterialFromDatabase(newNode);
84
- });
85
- }
86
- warningCreator(outputs, exports, throwError = false) {
87
- const outputsWithIssues = {};
88
- const exportsWithIssues = {};
89
- for (const outputId in outputs) {
90
- const outputObj = outputs[outputId];
91
- if ((throwError === false && outputObj.msg !== undefined) ||
92
- (outputObj.status_collect &&
93
- outputObj.status_collect !==
94
- sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS) ||
95
- (outputObj.status_computation &&
96
- outputObj.status_computation !==
97
- sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)) {
98
- outputsWithIssues[outputId] = outputObj;
99
- }
100
- }
101
- for (const exportId in exports) {
102
- const exportObj = exports[exportId];
103
- if ((throwError === false && exportObj.msg !== undefined) ||
104
- (exportObj.status_collect &&
105
- exportObj.status_collect !==
106
- sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS) ||
107
- (exportObj.status_computation &&
108
- exportObj.status_computation !==
109
- sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)) {
110
- exportsWithIssues[exportId] = exportObj;
111
- }
112
- }
113
- if (Object.keys(outputsWithIssues).length > 0 ||
114
- Object.keys(exportsWithIssues).length > 0) {
115
- if (throwError) {
116
- throw new viewer_shared_services_1.ShapeDiverViewerCustomizationError("There was at least one output or export with issues.", { outputs: outputsWithIssues, exports: exportsWithIssues });
117
- }
118
- else {
119
- // create warning messages for outputs
120
- for (const outputId in outputsWithIssues) {
121
- let warning = "";
122
- if (outputsWithIssues[outputId].msg)
123
- warning += `\n\t- ${outputsWithIssues[outputId].msg}`;
124
- if (outputsWithIssues[outputId].status_collect &&
125
- outputsWithIssues[outputId].status_collect !==
126
- sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)
127
- warning += `\n\t- status_collect is ${outputsWithIssues[outputId].status_collect}`;
128
- if (outputsWithIssues[outputId].status_computation &&
129
- outputsWithIssues[outputId].status_computation !==
130
- sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)
131
- warning += `\n\t- status_computation is ${outputsWithIssues[outputId].status_computation}`;
132
- if (warning)
133
- this._logger.warn(`\nOutput(${outputId}):${warning}`);
134
- }
135
- // create warning messages for exports
136
- for (const exportId in exportsWithIssues) {
137
- let warning = "";
138
- if (exportsWithIssues[exportId].msg)
139
- warning += `\n\t- ${exportsWithIssues[exportId].msg}`;
140
- if (exportsWithIssues[exportId].status_collect &&
141
- exportsWithIssues[exportId].status_collect !==
142
- sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)
143
- warning += `\n\t- status_collect is ${exportsWithIssues[exportId].status_collect}`;
144
- if (exportsWithIssues[exportId].status_computation &&
145
- exportsWithIssues[exportId].status_computation !==
146
- sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)
147
- warning += `\n\t- status_computation is ${exportsWithIssues[exportId].status_computation}`;
148
- if (warning)
149
- this._logger.warn(`\nExport(${exportId}):${warning}`);
150
- }
151
- }
152
- }
153
- }
154
62
  addToSceneTree(node) {
155
63
  this._sceneTree.addNode(node);
156
64
  this._sceneTree.root.updateVersion();
157
65
  }
66
+ /**
67
+ * Cancels the current process if a new customization request has been made or if the session was closed.
68
+ * If the process is cancelled, a TASK_CANCEL event is emitted and the busy mode is removed.
69
+ *
70
+ * @param eventInfo The task event information
71
+ * @param customizationId The ID of the customization process
72
+ * @param newNode The new tree node to return if the process is cancelled
73
+ * @returns The new tree node if the process was cancelled, otherwise undefined
74
+ */
158
75
  cancelProcess(eventInfo, customizationId, newNode = new SessionTreeNode_1.SessionTreeNode()) {
159
- if (this._sessionEngineCore.customizationProcess !== customizationId) {
76
+ if (this._sessionEngineCore.customizationManager
77
+ .customizationProcess !== customizationId) {
160
78
  this.removeBusyMode(customizationId);
161
79
  this._eventEngine.emitEvent(viewer_shared_services_1.EVENTTYPE.TASK.TASK_CANCEL, Object.assign(Object.assign({}, eventInfo), { status: "The request was exceeded by another customization request" }));
162
80
  this._logger.debug(`Session(${this._sessionEngineCore.id}).cancelProcess: The request was was exceeded by another request.`);
@@ -169,6 +87,13 @@ class UtilsManager {
169
87
  return new SessionTreeNode_1.SessionTreeNode();
170
88
  }
171
89
  }
90
+ /**
91
+ * Checks the availability of the session and optionally a specific action.
92
+ *
93
+ * @param action The action to check for availability
94
+ * @param checkForModelId Whether to check for the model ID availability
95
+ * @throws ShapeDiverViewerSessionError if the session or action is not available
96
+ */
172
97
  checkAvailability(action, checkForModelId = false) {
173
98
  var _a;
174
99
  if (!this._sessionEngineCore.responseDto)
@@ -183,6 +108,36 @@ class UtilsManager {
183
108
  if (action && !responseDtoAction)
184
109
  throw new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.checkAvailability: action ${action} not available.`);
185
110
  }
111
+ /**
112
+ * Create an interaction parameter based on the parameter definition.
113
+ *
114
+ * @param parameter
115
+ * @returns
116
+ */
117
+ createInteractionParameter(parameter) {
118
+ const result = (0, viewer_shared_types_1.validateInteractionParameterSettings)(parameter.settings);
119
+ if (result.success) {
120
+ switch (parameter.settings.type) {
121
+ case "selection":
122
+ return new SelectionParameter_1.SelectionParameter(parameter, this._sessionEngineCore, this._sessionEngineCore.parameterManager);
123
+ case "gumball":
124
+ return new GumballParameter_1.GumballParameter(parameter, this._sessionEngineCore, this._sessionEngineCore.parameterManager);
125
+ case "dragging":
126
+ return new DraggingParameter_1.DraggingParameter(parameter, this._sessionEngineCore, this._sessionEngineCore.parameterManager);
127
+ }
128
+ }
129
+ else {
130
+ this._logger.warn(`SessionEngine.createInteractionParameter: The value ${parameter.settings} is not a valid InteractionParameter: ${result.error.message}`);
131
+ }
132
+ return new Parameter_1.Parameter(parameter, this._sessionEngineCore, this._sessionEngineCore.parameterManager);
133
+ }
134
+ /**
135
+ * Handles errors that occur during session operations.
136
+ *
137
+ * @param err The error to handle
138
+ * @param retry Whether to retry the operation
139
+ * @returns A promise that resolves when the error has been handled
140
+ */
186
141
  handleError(err, retry = false) {
187
142
  return __awaiter(this, void 0, void 0, function* () {
188
143
  if (!(err instanceof Error))
@@ -200,7 +155,8 @@ class UtilsManager {
200
155
  // we retry this 3 times, the `retry` option in the init function is set to true and passed on
201
156
  this._retryCounter = retry ? this._retryCounter + 1 : 1;
202
157
  this._sessionEngineCore.initialized = false;
203
- yield this._sessionEngineCore.init(this._sessionEngineCore.parameterValues, true);
158
+ yield this._sessionEngineCore.init(this._sessionEngineCore.parameterManager
159
+ .parameterValues, true);
204
160
  }
205
161
  else {
206
162
  // the retries were exceeded, we close the session
@@ -303,19 +259,38 @@ class UtilsManager {
303
259
  }
304
260
  else {
305
261
  // case where the image is a URL
306
- const file = yield new sdk_geometry_api_sdk_v2_1.UtilsApi(this._sessionEngineCore.sdkConfig).downloadImage(this._sessionEngineCore.sessionId, imageString, {
262
+ const response = yield new sdk_geometry_api_sdk_v2_1.UtilsApi(this._sessionEngineCore.sdkConfig).downloadImage(this._sessionEngineCore.sessionId, imageString, {
307
263
  responseType: "arraybuffer",
308
264
  });
265
+ const arrayBuffer = response.data;
309
266
  return {
310
267
  imageData: {
311
- format: file.data.type,
312
- size: file.data.size,
268
+ format: response.headers["content-type"],
269
+ size: arrayBuffer.byteLength,
313
270
  },
314
- arrayBuffer: yield file.data.arrayBuffer(),
271
+ arrayBuffer,
315
272
  };
316
273
  }
317
274
  });
318
275
  }
276
+ removeBusyMode(busyId) {
277
+ for (const r in this._stateEngine.viewportEngines) {
278
+ if (this._stateEngine.viewportEngines[r] &&
279
+ this._stateEngine.viewportEngines[r].busy.includes(busyId))
280
+ this._stateEngine.viewportEngines[r].busy.splice(this._stateEngine.viewportEngines[r].busy.indexOf(busyId), 1);
281
+ if (this._sessionEngineCore.customizationManager.customizationBusyModes.includes(busyId))
282
+ this._sessionEngineCore.customizationManager.customizationBusyModes.splice(this._sessionEngineCore.customizationManager.customizationBusyModes.indexOf(busyId), 1);
283
+ }
284
+ }
285
+ /**
286
+ * Removes a node from the scene tree and updates the root version.
287
+ *
288
+ * @param node The tree node to remove
289
+ */
290
+ removeFromSceneTree(node) {
291
+ this._sceneTree.removeNode(node);
292
+ this._sceneTree.root.updateVersion();
293
+ }
319
294
  /**
320
295
  * Returns a promise that resolves after the amount of milliseconds provided.
321
296
  *
@@ -327,18 +302,104 @@ class UtilsManager {
327
302
  return new Promise((resolve) => setTimeout(resolve, ms));
328
303
  });
329
304
  }
330
- removeBusyMode(busyId) {
331
- for (const r in this._stateEngine.viewportEngines) {
332
- if (this._stateEngine.viewportEngines[r] &&
333
- this._stateEngine.viewportEngines[r].busy.includes(busyId))
334
- this._stateEngine.viewportEngines[r].busy.splice(this._stateEngine.viewportEngines[r].busy.indexOf(busyId), 1);
335
- if (this._sessionEngineCore.customizationBusyModes.includes(busyId))
336
- this._sessionEngineCore.customizationBusyModes.splice(this._sessionEngineCore.customizationBusyModes.indexOf(busyId), 1);
337
- }
305
+ /**
306
+ * Waits for all update callbacks to finish.
307
+ *
308
+ * @param newOutputVersions The new output versions
309
+ * @param oldOutputVersions The old output versions
310
+ * @param newNode The new tree node
311
+ * @param oldNode The old tree node
312
+ */
313
+ waitForUpdateCallbacks(newOutputVersions, oldOutputVersions, newNode, oldNode) {
314
+ return __awaiter(this, void 0, void 0, function* () {
315
+ // call the update callback function on the session
316
+ if (this._sessionEngineCore.updateCallback)
317
+ yield Promise.resolve(this._sessionEngineCore.updateCallback(newNode, oldNode));
318
+ const promises = [];
319
+ // call the update callback functions on the outputs
320
+ for (const outputId in this._sessionEngineCore.outputManager.outputs) {
321
+ if (oldOutputVersions[outputId] !== newOutputVersions[outputId]) {
322
+ promises.push(this._sessionEngineCore.outputManager.outputs[outputId].triggerUpdateCallback(newNode.children.find((c) => c.name === outputId), oldNode.children.find((c) => c.name === outputId)));
323
+ }
324
+ }
325
+ yield Promise.all(promises);
326
+ });
338
327
  }
339
- removeFromSceneTree(node) {
340
- this._sceneTree.removeNode(node);
341
- this._sceneTree.root.updateVersion();
328
+ /**
329
+ * Creates warnings for outputs and exports with issues.
330
+ * If `throwError` is true, a ShapeDiverViewerCustomizationError is thrown instead.
331
+ *
332
+ * @param outputs The outputs to check for issues
333
+ * @param exports The exports to check for issues
334
+ * @param throwError Whether to throw an error instead of creating warnings
335
+ */
336
+ warningCreator(outputs, exports, throwError = false) {
337
+ const outputsWithIssues = {};
338
+ const exportsWithIssues = {};
339
+ for (const outputId in outputs) {
340
+ const outputObj = outputs[outputId];
341
+ if ((throwError === false && outputObj.msg !== undefined) ||
342
+ (outputObj.status_collect &&
343
+ outputObj.status_collect !==
344
+ sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS) ||
345
+ (outputObj.status_computation &&
346
+ outputObj.status_computation !==
347
+ sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)) {
348
+ outputsWithIssues[outputId] = outputObj;
349
+ }
350
+ }
351
+ for (const exportId in exports) {
352
+ const exportObj = exports[exportId];
353
+ if ((throwError === false && exportObj.msg !== undefined) ||
354
+ (exportObj.status_collect &&
355
+ exportObj.status_collect !==
356
+ sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS) ||
357
+ (exportObj.status_computation &&
358
+ exportObj.status_computation !==
359
+ sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)) {
360
+ exportsWithIssues[exportId] = exportObj;
361
+ }
362
+ }
363
+ if (Object.keys(outputsWithIssues).length > 0 ||
364
+ Object.keys(exportsWithIssues).length > 0) {
365
+ if (throwError) {
366
+ throw new viewer_shared_services_1.ShapeDiverViewerCustomizationError("There was at least one output or export with issues.", { outputs: outputsWithIssues, exports: exportsWithIssues });
367
+ }
368
+ else {
369
+ // create warning messages for outputs
370
+ for (const outputId in outputsWithIssues) {
371
+ let warning = "";
372
+ if (outputsWithIssues[outputId].msg)
373
+ warning += `\n\t- ${outputsWithIssues[outputId].msg}`;
374
+ if (outputsWithIssues[outputId].status_collect &&
375
+ outputsWithIssues[outputId].status_collect !==
376
+ sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)
377
+ warning += `\n\t- status_collect is ${outputsWithIssues[outputId].status_collect}`;
378
+ if (outputsWithIssues[outputId].status_computation &&
379
+ outputsWithIssues[outputId].status_computation !==
380
+ sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)
381
+ warning += `\n\t- status_computation is ${outputsWithIssues[outputId].status_computation}`;
382
+ if (warning)
383
+ this._logger.warn(`\nOutput(${outputId}):${warning}`);
384
+ }
385
+ // create warning messages for exports
386
+ for (const exportId in exportsWithIssues) {
387
+ let warning = "";
388
+ if (exportsWithIssues[exportId].msg)
389
+ warning += `\n\t- ${exportsWithIssues[exportId].msg}`;
390
+ if (exportsWithIssues[exportId].status_collect &&
391
+ exportsWithIssues[exportId].status_collect !==
392
+ sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)
393
+ warning += `\n\t- status_collect is ${exportsWithIssues[exportId].status_collect}`;
394
+ if (exportsWithIssues[exportId].status_computation &&
395
+ exportsWithIssues[exportId].status_computation !==
396
+ sdk_geometry_api_sdk_v2_1.ResComputationStatus.SUCCESS)
397
+ warning += `\n\t- status_computation is ${exportsWithIssues[exportId].status_computation}`;
398
+ if (warning)
399
+ this._logger.warn(`\nExport(${exportId}):${warning}`);
400
+ }
401
+ }
402
+ }
342
403
  }
343
404
  }
344
405
  exports.UtilsManager = UtilsManager;