########
2024.4.0
########

HOOPS Communicator 2024.4.0 is based on `HOOPS Visualize 2024.4.0 <https://docs.techsoft3d.com/hps/2024.4.0>`_, `HOOPS Exchange 2024.4.0 <https://docs.techsoft3d.com/exchange/2024.4.0>`_, and `HOOPS Publish 2024.4.0 <https://docs.techsoft3d.com/publish/2024.4.0>`_.


************
Enhancements
************

.. rubric:: ESM

HOOPS Communicator WebViewer follows new ESM standards and can now load Javascript via ESM. With release 2024.4.0, the beta period ends and official support starts. Using ESM is recommended for all new developements. Techsoft3D also encourages existing integrations of the WebViewer API to migrate to ESM in order to fully benefit of all future development in the WebViewer.
Details are available :doc:`here </overview/esm>`. We also have a :doc:`migration guide </overview/migrating-to-esm>`.

******************
Functional Changes
******************

.. rubric:: Path Changes

ESM libraries have been relocated from *COMMUNICATOR_INSTALL_DIR/web_viewer/esm/* to the *COMMUNICATOR_INSTALL_DIR/web_viewer* directory.
Non-ESM libraries have been relocated to *COMMUNICATOR_INSTALL_DIR/web_viewer/deprecated*.


***********
Deprecation
***********

Legacy version of WebViewer IIFE API is deprecated. Newer versions are provided with identical API following the standard ESM, UMD, and IIFE. 
:js:mod:`Communicator.SubentityProperties` is now deprecated and hidden.


***********
API Changes
***********

New API to compensate for deprecation of :js:mod:`Communicator.SubentityProperties`:

* ``Utils::isLineElement(prop: object): boolean``
* ``Utils.isCircleElement(prop: object): boolean``
* ``Utils.isOtherEdgeElement(prop: object): boolean``
* ``Utils.isPlaneElement(prop: object): boolean``
* ``Utils.isFace(prop: object): boolean``


**********
Fixed Bugs
**********

As of |today|

.. csv-table::
    :header: "Issue", "Description"

    "SDHC-19606", "HOOPS Communicator does not work in iPad Pro with iPadOS 17.5.1"
    "SDHC-19598", "Issue converting ifc file"
    "SDHC-19520", "Executing converter.exe with --png_camera_standard generates strange PNG files. Why?"
    "SDHC-19507", "Regarding the issue where all colors are rendered in black when importing a DWG"
    "SDHC-19324", "Creo Flexible Parts not rendered correctly"
    "SDHC-19212", "Incorrect thumbnail generated for non active Solidworks configurations"
    "SDHC-19142", "JT File Views not respecting visibility, JT created from Solid Edge"
    "SDHC-19054", "XHRon* callbacks are not fired when loading SCS files"


********************
Documentation Update
********************

All HOOPS product documentation has adopted a standardized Table of Contents for ease of navigation.
Some pages have been moved from their previous locations.
If you are having trouble finding a page, look under Additional Resources and Support to see if it's been relocated there.