diff --git a/package-lock.json b/package-lock.json index 24f209cd454a02f2f91823cb49213ab304b32a4a..c4d4cc41cc50ccf1162bf3ddb4ca9652f2cfbaf3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "medsurf-draw", - "version": "1.0.19", + "version": "1.0.23", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -30,16 +30,16 @@ } }, "@babel/core": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.3.tgz", - "integrity": "sha512-4XFkf8AwyrEG7Ziu3L2L0Cv+WyY47Tcsp70JFmpftbAA1K7YL/sgE9jh9HyNj08Y/U50ItUchpN0w6HxAoX1rA==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.4.tgz", + "integrity": "sha512-0LiLrB2PwrVI+a2/IEskBopDYSd8BCb3rOvH7D5tzoWd696TBEduBvuLVm4Nx6rltrLZqvI3MCalB2K2aVzQjA==", "requires": { "@babel/code-frame": "7.8.3", - "@babel/generator": "7.8.3", - "@babel/helpers": "7.8.3", - "@babel/parser": "7.8.3", + "@babel/generator": "7.8.4", + "@babel/helpers": "7.8.4", + "@babel/parser": "7.8.4", "@babel/template": "7.8.3", - "@babel/traverse": "7.8.3", + "@babel/traverse": "7.8.4", "@babel/types": "7.8.3", "convert-source-map": "1.7.0", "debug": "4.1.1", @@ -85,9 +85,9 @@ } }, "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.4.tgz", + "integrity": "sha512-PwhclGdRpNAf3IxZb0YVuITPZmmrXz9zf6fH8lT4XbrmfQKr6ryBzhv593P5C6poJRciFCL/eHGW2NuGrgEyxA==", "requires": { "@babel/types": "7.8.3", "jsesc": "2.5.2", @@ -129,12 +129,12 @@ } }, "@babel/helpers": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.3.tgz", - "integrity": "sha512-LmU3q9Pah/XyZU89QvBgGt+BCsTPoQa+73RxAQh8fb8qkDyIfeQnmgs+hvzhTCKTzqOyk7JTkS3MS1S8Mq5yrQ==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.4.tgz", + "integrity": "sha512-VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==", "requires": { "@babel/template": "7.8.3", - "@babel/traverse": "7.8.3", + "@babel/traverse": "7.8.4", "@babel/types": "7.8.3" } }, @@ -149,9 +149,9 @@ } }, "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==" + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.4.tgz", + "integrity": "sha512-0fKu/QqildpXmPVaRBoXOlyBb3MC+J0A66x97qEfLOMkn3u6nfY5esWogQwi/K0BjASYy4DbnsEWnpNL6qT5Mw==" }, "@babel/template": { "version": "7.8.3", @@ -159,20 +159,20 @@ "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", "requires": { "@babel/code-frame": "7.8.3", - "@babel/parser": "7.8.3", + "@babel/parser": "7.8.4", "@babel/types": "7.8.3" } }, "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.4.tgz", + "integrity": "sha512-NGLJPZwnVEyBPLI+bl9y9aSnxMhsKz42so7ApAv9D+b4vAFPpY013FTS9LdKxcABoIYFU52HcYga1pPlx454mg==", "requires": { "@babel/code-frame": "7.8.3", - "@babel/generator": "7.8.3", + "@babel/generator": "7.8.4", "@babel/helper-function-name": "7.8.3", "@babel/helper-split-export-declaration": "7.8.3", - "@babel/parser": "7.8.3", + "@babel/parser": "7.8.4", "@babel/types": "7.8.3", "debug": "4.1.1", "globals": "11.12.0", @@ -338,447 +338,447 @@ } }, "@pixi/accessibility": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/accessibility/-/accessibility-5.2.0.tgz", - "integrity": "sha512-IXnCy9YmzXl9/rMiXOzgFpP7onW0YNSnVQtFotonCEPd2azM/1p3Fy7wRTcpfOJm/JsMZRbnDeE/wB9Shg9/QQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/accessibility/-/accessibility-5.2.1.tgz", + "integrity": "sha512-X6pu50NDdApR7ppGGpB6LzZFVUqnrfLmpNYMVHtzmlMGc0JnpwI9NYTTjGrMpBtkra8Y8HN4aGT4Sa+cfc1BaA==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/app": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/app/-/app-5.2.0.tgz", - "integrity": "sha512-5rhjAGPruzC3w6+knySIWk4II1Td8Fw0LVfg1K48BRXI1mLXCrZ3tJb6hdFuBPhgeIDz1tUwecJ4KfkJOWgqPg==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/app/-/app-5.2.1.tgz", + "integrity": "sha512-KPZ6fa324BspRTumU1Cdo2QANIu01COLcKBa3CpofHHXc5ayRDQDFiJnMpKMPYMDIPfKZeNt5aVwW0yVFB3iNQ==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1" } }, "@pixi/canvas-display": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-display/-/canvas-display-5.2.0.tgz", - "integrity": "sha512-sUzy0f1Lh2AFACT0FK+xHEM9d6Q2Yq5Mp8d7DHwZQ4/xwxkWY5C5EtoYsrM2rNYK27vSZZGcu+iznJx1C24aFA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-display/-/canvas-display-5.2.1.tgz", + "integrity": "sha512-jignAHlBt0Gus7rsXFfbWPMM29ilsjfAvG/NzNFw5i2yUCPJcmq3/V5MGrO3y5TK2GE9VgU876DwC9KLCKnwwQ==", "requires": { - "@pixi/display": "5.2.0" + "@pixi/display": "5.2.1" } }, "@pixi/canvas-extract": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-extract/-/canvas-extract-5.2.0.tgz", - "integrity": "sha512-J33k/yVSvhZdV9HxoET81xsFN1etup5XnMTPSYK/9cb6Aq35M5dVIKXSt08OLFFOW5V9tJcM7s8YybUdK7P/iQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-extract/-/canvas-extract-5.2.1.tgz", + "integrity": "sha512-834V/vWARaWx4gj3cNOcdae/DaJQjqnOGREWFRN7ziSSYZ7hNMPCUgC/Oi9XjwXjtrLBLgT+SUw9GZSQ/BxoHA==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/canvas-graphics": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-graphics/-/canvas-graphics-5.2.0.tgz", - "integrity": "sha512-oOAi363F4IuIhGVbSQQnZ23Uhy2712lHYdSrjBCbIqM81kBceF0PpjpilbZH3/KbJJy/HTzmWPSU0f5EG59CbQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-graphics/-/canvas-graphics-5.2.1.tgz", + "integrity": "sha512-CT66icx4t0EFpUsPQ80alq4F+zecqgaqQ+LZpbN/HmHSyvaG5Gdt0+XJjruZoMZ6eJ1c2tiY9eY7eCdlXarzsA==", "requires": { - "@pixi/canvas-renderer": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/graphics": "5.2.0", - "@pixi/math": "5.2.0" + "@pixi/canvas-renderer": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/graphics": "5.2.1", + "@pixi/math": "5.2.1" } }, "@pixi/canvas-mesh": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-mesh/-/canvas-mesh-5.2.0.tgz", - "integrity": "sha512-+8NCWRpIRVT2V5K+jR8O42t8KHn+7Xyay5osxfj+cK+tXXrnCiMgI0Gfdu+tXq+QhTkZvlLm1w5Mcf8xV9OQuQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-mesh/-/canvas-mesh-5.2.1.tgz", + "integrity": "sha512-O20YcKMN2Z17bLjegcujClFFnBnwbAWhwL7V0TPFuYL22ZzFFW8g+S+zFxZYO5Uk6eCJ3eLb8lvB79udcUUSTw==", "requires": { - "@pixi/canvas-renderer": "5.2.0", - "@pixi/constants": "5.2.0", - "@pixi/mesh": "5.2.0", - "@pixi/mesh-extras": "5.2.0", - "@pixi/settings": "5.2.0" + "@pixi/canvas-renderer": "5.2.1", + "@pixi/constants": "5.2.1", + "@pixi/mesh": "5.2.1", + "@pixi/mesh-extras": "5.2.1", + "@pixi/settings": "5.2.1" } }, "@pixi/canvas-particles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-particles/-/canvas-particles-5.2.0.tgz", - "integrity": "sha512-piJWi4LMfS6zjf8Ihoj/3JpXe0yO2HWG4vQi08JmJ3ZuUH+BYVnyi79rDoYB6pDXe4wkc3CZRsKgZZk5+AucjQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-particles/-/canvas-particles-5.2.1.tgz", + "integrity": "sha512-HpBRT+wjG/GFCrEOCIclbkJVMRaJjyvqozrEIDbljXXFx7TTP1EcBxVNQKrvaCW8xgC+rLJM6CSEgbl/7LUVXw==", "requires": { - "@pixi/particles": "5.2.0" + "@pixi/particles": "5.2.1" } }, "@pixi/canvas-prepare": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-prepare/-/canvas-prepare-5.2.0.tgz", - "integrity": "sha512-mTK6wqS2QGp1Lfua1ziO7ur4xTqSS4w8bOf4bEWOJ7ZjxD4KROF0C0IPtOcz8ekaN7ikLate4rHLE3A/tv6TQQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-prepare/-/canvas-prepare-5.2.1.tgz", + "integrity": "sha512-aVdBeLAqtupsmDU9J4fUVZszrcS2/JNJX+OPc8zshwrbd/NP3JyShIJs5ZZnHjs4+R3e4DWyVoaJ7l1I3HW4CA==", "requires": { - "@pixi/canvas-renderer": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/prepare": "5.2.0" + "@pixi/canvas-renderer": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/prepare": "5.2.1" } }, "@pixi/canvas-renderer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-renderer/-/canvas-renderer-5.2.0.tgz", - "integrity": "sha512-K2fWCJFYgwmXYhEc2tyBbE+9Pc3WFkidYCeveS22fvlH2LeiF0IrRfisFZmor1brp4W9rLPPtqrmWfzi9hEC3g==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-renderer/-/canvas-renderer-5.2.1.tgz", + "integrity": "sha512-tfjKQVzO8fFq7u/nfX+6kDiogbaoT48L4zIOO6DfvPA/r9Hii+eywn8mZUwOEcrhg8p0ip1uAPxDLHT7uZJxmg==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/constants": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/canvas-sprite": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-sprite/-/canvas-sprite-5.2.0.tgz", - "integrity": "sha512-3JTkC1dClqnRXF6GZfEL0X6CAEL7mfN/CDAfUO2QdS+qXH+ZJt9gaTDxGzbHcD3WumPDWqzKJpFVYp5H66ALTA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-sprite/-/canvas-sprite-5.2.1.tgz", + "integrity": "sha512-7S3dMyFOOv41dDhRu4icy6QPohzO5M62VzDn2O0xcIbhfQ8ETq4MVuwWN5USXOuUfzYPH6D9tS+JOvZPt1u/iA==", "requires": { - "@pixi/canvas-renderer": "5.2.0", - "@pixi/constants": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/sprite": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/canvas-renderer": "5.2.1", + "@pixi/constants": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/sprite": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/canvas-sprite-tiling": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-sprite-tiling/-/canvas-sprite-tiling-5.2.0.tgz", - "integrity": "sha512-9CteI6254v6yVgsNJCiI7bm8Bwhc1ptyWj6N6gbGSNsLw1VR7Ot3YWo4hkofKC0O8BuwYLVFm8qAMilv/3aGOw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-sprite-tiling/-/canvas-sprite-tiling-5.2.1.tgz", + "integrity": "sha512-+D0C1ZB4gTHoMRxbR+g6M3qLOXdjIKv6IkNQewmPDPrJb/gCMSIeBRVomkdBqZWwYPd/UnZcrs/sF6Q06tITHQ==", "requires": { - "@pixi/canvas-renderer": "5.2.0", - "@pixi/canvas-sprite": "5.2.0", - "@pixi/sprite-tiling": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/canvas-renderer": "5.2.1", + "@pixi/canvas-sprite": "5.2.1", + "@pixi/sprite-tiling": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/canvas-text": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/canvas-text/-/canvas-text-5.2.0.tgz", - "integrity": "sha512-QHi2qFUUfYk66f8x+UXcl9rX6EEE4+6OJQjx8ublM3kgZpUKjgdSvpQ1UiOGuz3IhpQInZyxDxKz8gMafrzFUA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/canvas-text/-/canvas-text-5.2.1.tgz", + "integrity": "sha512-zmqxUmrpiO8SnT2EYzUf2OijGTQ0JxQUjnCklddSOnn2iEwACrw1nxHYJG0StieTJFjrP5nuAMixzaI0+j/zSQ==", "requires": { - "@pixi/sprite": "5.2.0", - "@pixi/text": "5.2.0" + "@pixi/sprite": "5.2.1", + "@pixi/text": "5.2.1" } }, "@pixi/constants": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-5.2.0.tgz", - "integrity": "sha512-dXwzkKAvgpvOJmDBe9OQiE+HPp4uMIL/3ijHlyW0fgMqDPhtQtFcSUdSUAoFwb23Uaq56j1ejuEmly8LehJ0aQ==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-5.2.1.tgz", + "integrity": "sha512-RYeP1Q5R6qVyVioM00/fhGXFAhJjD+mJW4+TOiNZQASKP0t6wF51yuIfROEIxf5a6I6INOB3aSit1jUkSpYgTA==" }, "@pixi/core": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/core/-/core-5.2.0.tgz", - "integrity": "sha512-h8UuVWHfbWVGEO3a4SQS4vk70LSFMUMPKCvVpPq/3LtIUgPVDZO3tGL4O2jFteKwbmWNIMDCpDmBMu3XlqPlNQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/core/-/core-5.2.1.tgz", + "integrity": "sha512-kREyWm87C4xZtdlw+otX+U/xJZhDUQyY/UHirbBwkO0LeAfrJm3qNyMfFZTcyW4PvmF16989IjvjGAWSeZSIQw==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/runner": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/ticker": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/constants": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/runner": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/ticker": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/display": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/display/-/display-5.2.0.tgz", - "integrity": "sha512-P+exW4aI7eyqhdmi0M3HmKJI+XzDYNYAiEsKMUyyONwbHYSVdjQF5hzPuvjUYotTNZ1stCWbf0457cNNSPLOzQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/display/-/display-5.2.1.tgz", + "integrity": "sha512-tr++p14im8KBzZHxMtM/E2Q7FWHYp9bjjDl+rA1b91HSN/vUJu1OlkUoCN4x7TyfkVtDPnrglhZykf7d93Nl9A==", "requires": { - "@pixi/math": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/math": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/extract": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/extract/-/extract-5.2.0.tgz", - "integrity": "sha512-LUDsB6z+gkSYcS8urr/JjdpLlf/z3mAjpMJDOZlcxCdPXdayVka2ruNnrWb4dvf9nV9Wg7T8v1IOFGOWpOHEdQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/extract/-/extract-5.2.1.tgz", + "integrity": "sha512-Ol5ypGFNIj4nfp8zO5F//nwi7YilyP+esul3nDgPQdemTY5aothnXIWxdglqT54Glz/jcRd0z7UHL5tiiwV9JQ==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/filter-alpha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/filter-alpha/-/filter-alpha-5.2.0.tgz", - "integrity": "sha512-Jv/eqSt6zmKr9oGoi4UgUWA/pgxhyBSGMtUWMHiwuqjkXWl4Em4bC5l0f5GUX85xqMCRLwvOeqOH+fBE9fKadw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/filter-alpha/-/filter-alpha-5.2.1.tgz", + "integrity": "sha512-gqd8AQfej3HBdAXuRFku8HZx8pys7Klt5NJx78Du8ONyFnSrSSbZCgzctrqyrY396hXDkkcLyIL/Pi1sjN9pnw==", "requires": { - "@pixi/core": "5.2.0" + "@pixi/core": "5.2.1" } }, "@pixi/filter-blur": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/filter-blur/-/filter-blur-5.2.0.tgz", - "integrity": "sha512-052qyY+X3HMEvHdorqXIbe+iODK0Sj3j8goZMvOL2qATW6bDBGRuwrO2rGZ70BnmGgrbIrXzDVemwo9uLWEZSA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/filter-blur/-/filter-blur-5.2.1.tgz", + "integrity": "sha512-9TkJ3qpJAOvYiJILV7Eo2olb0tuEognpIQYGC0WDAwh/hLJAlp4xXCe1ZZyoTM75gNEgiQgzmbOIqx8Se5yI4w==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/settings": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/settings": "5.2.1" } }, "@pixi/filter-color-matrix": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/filter-color-matrix/-/filter-color-matrix-5.2.0.tgz", - "integrity": "sha512-wtPzz+2NtP9zDW9cFn/lTryf97/DYwka4yi9A+sMCteoATsrZJCKz0zzPV5AORKv0hpCfu9wGYTISItOC8mBKw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/filter-color-matrix/-/filter-color-matrix-5.2.1.tgz", + "integrity": "sha512-alxpRXa7VVB9fcOq41AowH3/m/SdNmhKzoIdV5xQYfeLF+qRjJTP4DjiW0QuSqlY/zydSKLOEPj+hG3/onX/Qg==", "requires": { - "@pixi/core": "5.2.0" + "@pixi/core": "5.2.1" } }, "@pixi/filter-displacement": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/filter-displacement/-/filter-displacement-5.2.0.tgz", - "integrity": "sha512-489KUlNF4ZmHZPNmI2X77cE95sfbvvw5NASeNXKmbCn5xi2gPSxiPMTv4XUTdhdOKxNcy81NFEQicG21eW335Q==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/filter-displacement/-/filter-displacement-5.2.1.tgz", + "integrity": "sha512-WGO9Qv/+jLsOLLN0TZV8Jx8Il4/GChXGYZTQkF0YfAHYt/wx9OeFjR38KDVLzvIcRZhDuTZ4SUyfxkjdXPaBZQ==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/math": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/math": "5.2.1" } }, "@pixi/filter-fxaa": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/filter-fxaa/-/filter-fxaa-5.2.0.tgz", - "integrity": "sha512-rlhC65BALzQAVBEXYzr8bKqyhZIWLco+VWJ7Fs8D3bJCutyu6xX6d7XDAqQW5SmJCNrIdaKvl/B6Xzer/+z8DA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/filter-fxaa/-/filter-fxaa-5.2.1.tgz", + "integrity": "sha512-eQgYCNYCTjJ5sB/PypU9RvnSsaM7mmsGy/CdTZigMM1qWW5zAvO3xrENwKAaVR8H23lqHw4mZoePdEnKt8cAfg==", "requires": { - "@pixi/core": "5.2.0" + "@pixi/core": "5.2.1" } }, "@pixi/filter-noise": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/filter-noise/-/filter-noise-5.2.0.tgz", - "integrity": "sha512-7IBHqjuze5VEMYOKPz/O7wR3mks7xvYKvWmUaLV7FopUtDUFjklrVBWY39nBOsXKXm0qLOkkdKcwsqyXZ7xOFg==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/filter-noise/-/filter-noise-5.2.1.tgz", + "integrity": "sha512-Q0SLTiSvwxiwrNAhELescxTol3rn4Qvl6iq32rZ+0bPKnu9GkDWn3O/qBiDhfVVbYRk/nBai+UE+lIUxK7JFsw==", "requires": { - "@pixi/core": "5.2.0" + "@pixi/core": "5.2.1" } }, "@pixi/graphics": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-5.2.0.tgz", - "integrity": "sha512-sXmN8CEjzd56wVh18AOv1cxsB70tP1FWIukTPg8EaSlhiFqiclQDGkf6mKDajuVrj7JhBjvFenKmv3ADYnLkqA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-5.2.1.tgz", + "integrity": "sha512-cyeG+gOJGruDZJIFnrLkojcsl+PSEobbuJ3HcmoNgemo4gmLC6c+zOoD8I5LFFzLXgrUVD0Y4WjOgM0ptH/4vg==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/sprite": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/constants": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/sprite": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/interaction": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/interaction/-/interaction-5.2.0.tgz", - "integrity": "sha512-YoFGrwkKgNFsusXObcfgKJtLxjqeOaek3tZxssnZZOUSzIJGQ4mLur2I36C2AAufB+GxBL38TiP1nkAVurMC6A==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/interaction/-/interaction-5.2.1.tgz", + "integrity": "sha512-sYFZGkseJGgQ+4Z/wJGklz8JNOf+Ih5l1+eeBly0irHsouPw9+LoSCCTVTCG4Lg7Ir/NBEr5vD7kfB7PsRADHw==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/ticker": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/ticker": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/loaders": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/loaders/-/loaders-5.2.0.tgz", - "integrity": "sha512-lKd5RYGQ86NoQNFcu/IYLEkC/oa6XypDKewG9LDd7n9XKKeed0NRipg7HhcYVsliayYkszoQ/JdzidV/yxnHYw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/loaders/-/loaders-5.2.1.tgz", + "integrity": "sha512-XhmGD0+svS9MzqGXzcl8y0HCWk2NWqmSYDse9wwD1jIwpygU4Q5rrrqZE3OrUYt6xEP4IZXfiVAnfAJdUDtrzA==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/utils": "5.2.0", + "@pixi/core": "5.2.1", + "@pixi/utils": "5.2.1", "resource-loader": "3.0.1" } }, "@pixi/math": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/math/-/math-5.2.0.tgz", - "integrity": "sha512-Y21H/kMluJqZ/QWb8cdXuZlib6G26QfZtgc85KbSJmjpMVWw03g0OELqFqOhsMzNanXp3B4OL1ZsNXnp0lWROQ==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/math/-/math-5.2.1.tgz", + "integrity": "sha512-rsAXNk0uPvog51sdmBmbRBXoN30pZLjboHLNb7s5mfuCWkMgdR/UFdbLFzd+3dwsgpFvawFuKtbQbwO0McXn+g==" }, "@pixi/mesh": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/mesh/-/mesh-5.2.0.tgz", - "integrity": "sha512-GTgxMlK3T2aWNk2CpWw6+zDXzOxDN15v4noVM6hqm691GQn6HXD68J14BHJhZxuP3PU9VD7/FARooMtAwaxVvg==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/mesh/-/mesh-5.2.1.tgz", + "integrity": "sha512-IAiDrdlAEi/B1jMlz8XqzMeI6wObm9WHXg+xqXA/Nwo12Ru8W3IiXgItNYFhSXbqVm0n/zTLdHtN589w3yyEVg==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/constants": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/mesh-extras": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/mesh-extras/-/mesh-extras-5.2.0.tgz", - "integrity": "sha512-vmBcV3sRqHWZIfwd8GQEscqR8zzsgCLXdgE/tWOCGqgGbv0+mv25y/vRnRnL42YXZb/sPU1RrtgnDr7xHNVL2w==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/mesh-extras/-/mesh-extras-5.2.1.tgz", + "integrity": "sha512-x2waRYkAH+yuEBQh7/LRKxoQLtl7z3gL2xZ/Jd9PdL9jFvae65d5/BCbRUt4YIeqL8sF7GWN0yjiDaAXvzLUNw==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/mesh": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/constants": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/mesh": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/mixin-cache-as-bitmap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/mixin-cache-as-bitmap/-/mixin-cache-as-bitmap-5.2.0.tgz", - "integrity": "sha512-VaFxBiPFu5Ii3T/vwe+QozvQk/OMLApe0eTSXCzAZspijVCGVmnalTqDgY9GC6SvuLG967jRTdEwCAsc+w2uXA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/mixin-cache-as-bitmap/-/mixin-cache-as-bitmap-5.2.1.tgz", + "integrity": "sha512-ev87bp3oLt8563HF6JR43IOg9DAVAvT5ohF78P6md38hwyBZR8UYu+sZZmwmkR0o01ppLo23SOACJR6GQ5a5oA==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/sprite": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/sprite": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/mixin-get-child-by-name": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/mixin-get-child-by-name/-/mixin-get-child-by-name-5.2.0.tgz", - "integrity": "sha512-exL50cOrjOmJ02++Q56AamYkVKt7RqwdM0QQdfmJKRX9r8cG9u09IKW2/hWKGbyqNoP5gGORtZvXRCJG8JYH/A==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/mixin-get-child-by-name/-/mixin-get-child-by-name-5.2.1.tgz", + "integrity": "sha512-Hb9qmexAhHKhkbtKPpJG+dK2t0rKlbbVCgiGLsSQkhpuCVFBoIVplq2tKQOB0VzUHa/Olzub+DNEPxJ05rRbjA==", "requires": { - "@pixi/display": "5.2.0" + "@pixi/display": "5.2.1" } }, "@pixi/mixin-get-global-position": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/mixin-get-global-position/-/mixin-get-global-position-5.2.0.tgz", - "integrity": "sha512-9P2EeymV23OonCVOdgYu0ZFlUZoCXh0wK/6wf6wb0N4Nefcz0mPfafHV5gp/qwCgB9OJk4RLKna1BDfxXn4LCA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/mixin-get-global-position/-/mixin-get-global-position-5.2.1.tgz", + "integrity": "sha512-XiJPLNzcXxuygDM+QFp4tGNwjYL/E4IMcc55n0v+2Y+WJalTWssC6qcj343HU+CVvpc2DG/arFk5/bhwXDGhvg==", "requires": { - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0" + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1" } }, "@pixi/particles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/particles/-/particles-5.2.0.tgz", - "integrity": "sha512-uB86M9hpiamclCOLMk6go0WJGXoiNfNzIIiC5OmUt61Fk3TSZiXbF//xWt/NB/unm3+WhycudSfR1IhLL1OdSw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/particles/-/particles-5.2.1.tgz", + "integrity": "sha512-hl585Gwl/Zuim2cnvmYauhtE3Y5JCsbgqSN6FEUjdDVh142WbuX764sa1ogq7UcPgvle5zNpl9VjP8j3mm4u0w==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/constants": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/polyfill": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/polyfill/-/polyfill-5.2.0.tgz", - "integrity": "sha512-xvwJ0vRVwf6fByvGTRzOsAv0N5GmopVI+pT5MV8Rk4AoqGQ8vWkhQQ8jy7PS4g0ak2DpwVrcTwUjxfrmjJCYTw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/polyfill/-/polyfill-5.2.1.tgz", + "integrity": "sha512-qJ+Wgp9rhdv94zvA3+rmdvcbDun2VgCIXly+4t1vv1H0Z4YcE/6J4Psz1A3uRQk0AiIcgDNb79bqVNDOkJJp0A==", "requires": { "es6-promise-polyfill": "1.2.0", "object-assign": "4.1.1" } }, "@pixi/prepare": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/prepare/-/prepare-5.2.0.tgz", - "integrity": "sha512-WE/VUIJXFrYMXFmWom4BZYB78IHQNeRZfN1SDN4X11cOciFH8uDafDpkMsjND95HZAqw+yQPU2pKResQnWEtag==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/prepare/-/prepare-5.2.1.tgz", + "integrity": "sha512-UQKkvtUmJda22027pB/BER5G8EGA5mD70rTsMzCVN/lvSQW1etX7sVxSSfeXgnBp9xm9mwl4oiIsWN1yGspgxQ==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/graphics": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/text": "5.2.0", - "@pixi/ticker": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/graphics": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/text": "5.2.1", + "@pixi/ticker": "5.2.1" } }, "@pixi/runner": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-5.2.0.tgz", - "integrity": "sha512-vy/SGG8QFHMrWAqebMQdhxl/l6WlIbHXMDNDCYBWwXKYjmKzycrrj2o/mK9cBko8WDuoTRZ0Pe3JZ3XDYEsn9w==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-5.2.1.tgz", + "integrity": "sha512-nhU3HaYb3EJ6zHU20b1jU6pD7vQp3OXoAtAVBzqPMR/oWMkeEm4dDvp1PwbCbZPUGoT7mLfQ//5maufue1MPqA==" }, "@pixi/settings": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-5.2.0.tgz", - "integrity": "sha512-AIxcUbgM3mh2QxS+nxNcPsqnJEBg3x/UO9ZpNMRhed9UPM/5mQ8CGZUMLTzIxhjSS16Do4uK9vZikMjV8dXm/Q==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-5.2.1.tgz", + "integrity": "sha512-QQfCywlYrWKUekn06P2hy1KR5MYXUyqVU0fbqEItjsH3RvN0LzE9ry2sDxf53qQ2/uCjKDXcT59YV9JcHEfwHA==", "requires": { - "ismobilejs": "0.5.2" + "ismobilejs": "1.0.3" } }, "@pixi/sprite": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-5.2.0.tgz", - "integrity": "sha512-IW+S2Cs3MTcMSrsSA5fjk+xx3Q8eNrsT4hGVXy6JxViv3IknIqbyQwdSFGAyoowOwzhyg7xJExz7VDZRQBBLwg==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-5.2.1.tgz", + "integrity": "sha512-F2BrLpyVswTbYXQFPBf8QpyfwH0T/Vft+PPxMNHya0eg2UiYZJFYLxhmbSIJLD+bWMRbSnQRq0M+rHhVVtXt2Q==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/constants": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/sprite-animated": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/sprite-animated/-/sprite-animated-5.2.0.tgz", - "integrity": "sha512-Liy5s3CKh2MuSJeVYX7w8mJ0//WMUPm/4ZHRJqRJApijjlXSxcnhHNxIMRLDb8iJNmqaoOi9qMUgK0AkGWuAtA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/sprite-animated/-/sprite-animated-5.2.1.tgz", + "integrity": "sha512-FwYHhDWEmeQPZPEW+iwG+jMYM1h7hHMzOOMsR7fda1s2hVcYMK/RPAg2oWDFjx03nBFSMu4HjqUQn1lUmnp5Kw==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/sprite": "5.2.0", - "@pixi/ticker": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/sprite": "5.2.1", + "@pixi/ticker": "5.2.1" } }, "@pixi/sprite-tiling": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/sprite-tiling/-/sprite-tiling-5.2.0.tgz", - "integrity": "sha512-iLQ98PrUVKqVzTYJsu+ZMCIRsJ1wapg55tf+m/78KK+h0WmgY70CJbO/A68dTqYZMLR39XPCtUp9bXXzXNEEdQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/sprite-tiling/-/sprite-tiling-5.2.1.tgz", + "integrity": "sha512-1BuskMYmyctmIzqi5CidTFZCr23+ROwGKsynNFAVzzbRlBaAhTNveiY9mt9QJ+Pd2hugh0vY31IMMDuMqsE7Uw==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/sprite": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/constants": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/sprite": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/spritesheet": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/spritesheet/-/spritesheet-5.2.0.tgz", - "integrity": "sha512-48WNC3tSUXbWA7ZswEacSiVh396FLe3KLhFpWk2oIJ+7MtMQ1IdtkGjAaXgv0zx0EvvnvEt1VoQVo2eALswR5Q==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/spritesheet/-/spritesheet-5.2.1.tgz", + "integrity": "sha512-Enj1FFhRtq3cUuctyPCLoGsudnGe9nD+gfs9UbOy1HXIZNd+uXhItZSIEjAoHgPSUzXprgCWaZrgrOD4KjW/tA==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/loaders": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/loaders": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/text": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/text/-/text-5.2.0.tgz", - "integrity": "sha512-enEq/rJYXVobyGeTXCBTbRMlnKc7am+/WicymRt1bT7ia8L8A00xgOdEbfg6OeP2jLcyBVnopFhgHFe8jcp07Q==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/text/-/text-5.2.1.tgz", + "integrity": "sha512-SqpyyVTCx8ZioibK0Jnf3wHZWSdLGlZ8tK+uEuf2Hrv533ZHcF8fYsruWG8L9WFwXSGVCWcN/qEwivpAdWoMvA==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/sprite": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/sprite": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/text-bitmap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/text-bitmap/-/text-bitmap-5.2.0.tgz", - "integrity": "sha512-RZD7GpQrKD+1B2wehnX0dI7ABB43JWNWoWXHl5wKfhjmPCxVmKEB9UfvOZd3sbnlxeL7BUA/gpYSxD6b6ZiA8g==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/text-bitmap/-/text-bitmap-5.2.1.tgz", + "integrity": "sha512-K5d40LZdcVgzUFfWeuVjYHWS/8MWcbilp01SBljJ8JZdjTWC32eYrlhoCfnGBgiT0WFX3nH16kMi/dYRtwGJEQ==", "requires": { - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/loaders": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/sprite": "5.2.0", - "@pixi/utils": "5.2.0" + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/loaders": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/sprite": "5.2.1", + "@pixi/utils": "5.2.1" } }, "@pixi/ticker": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-5.2.0.tgz", - "integrity": "sha512-6xX786cX/RWmQKeRQ3bNvg8JjS0VLA2LQy1sOmUctx2AwdZysI04k2xdw9Krtpn1mkudgAcNrTEsgPeGEjIF9Q==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-5.2.1.tgz", + "integrity": "sha512-xC2kfTjmThjo9VO28snfgvpLEJRzseTPBLP+LFn9fBqmuL17Pw+/eXgWsrTeizEOiTy+4NsaplMWdRs91UM8uw==", "requires": { - "@pixi/settings": "5.2.0" + "@pixi/settings": "5.2.1" } }, "@pixi/utils": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-5.2.0.tgz", - "integrity": "sha512-oMLRlvx+vWHPR06uiOvfOhtkG/LDBR3Syea9QZoIbCJE/GLYgJX8f0cVfrdI0kCgfGj4luc8/CWI745MKafUqQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-5.2.1.tgz", + "integrity": "sha512-JKa/IDKK3cbwrJbhU4q3hdN5tPTsuiWco+WDSlEWq6vblrwJkhI+0dRQkooo2fL+Tso7k+hWQ+4k95YapTX5Og==", "requires": { - "@pixi/constants": "5.2.0", - "@pixi/settings": "5.2.0", - "earcut": "2.2.1", + "@pixi/constants": "5.2.1", + "@pixi/settings": "5.2.1", + "earcut": "2.2.2", "eventemitter3": "3.1.2", "url": "0.11.0" } @@ -1044,13 +1044,13 @@ "dev": true }, "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz", + "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==", "dev": true, "requires": { - "fast-deep-equal": "2.0.1", - "fast-json-stable-stringify": "2.0.0", + "fast-deep-equal": "3.1.1", + "fast-json-stable-stringify": "2.1.0", "json-schema-traverse": "0.4.1", "uri-js": "4.2.2" } @@ -1490,10 +1490,20 @@ "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "dev": true }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, "bluebird": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.1.tgz", - "integrity": "sha512-DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "dev": true }, "bn.js": { @@ -1665,7 +1675,7 @@ "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, "requires": { - "pako": "1.0.10" + "pako": "1.0.11" } }, "btoa-lite": { @@ -1721,7 +1731,7 @@ "integrity": "sha512-kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw==", "dev": true, "requires": { - "bluebird": "3.7.1", + "bluebird": "3.7.2", "chownr": "1.1.3", "figgy-pudding": "3.5.1", "glob": "7.1.6", @@ -1864,7 +1874,7 @@ "anymatch": "2.0.0", "async-each": "1.0.3", "braces": "2.3.2", - "fsevents": "1.2.9", + "fsevents": "1.2.11", "glob-parent": "3.1.0", "inherits": "2.0.3", "is-binary-path": "1.0.1", @@ -2134,12 +2144,20 @@ "dev": true }, "compressible": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz", - "integrity": "sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "dev": true, "requires": { - "mime-db": "1.42.0" + "mime-db": "1.43.0" + }, + "dependencies": { + "mime-db": { + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", + "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", + "dev": true + } } }, "compression": { @@ -2150,7 +2168,7 @@ "requires": { "accepts": "1.3.7", "bytes": "3.0.0", - "compressible": "2.0.17", + "compressible": "2.0.18", "debug": "2.6.9", "on-headers": "1.0.2", "safe-buffer": "5.1.2", @@ -2453,9 +2471,9 @@ "is-arguments": "1.0.4", "is-date-object": "1.0.1", "is-regex": "1.0.4", - "object-is": "1.0.1", + "object-is": "1.0.2", "object-keys": "1.1.1", - "regexp.prototype.flags": "1.2.0" + "regexp.prototype.flags": "1.3.0" } }, "deep-extend": { @@ -2757,13 +2775,13 @@ "end-of-stream": "1.4.4", "inherits": "2.0.3", "readable-stream": "2.3.6", - "stream-shift": "1.0.0" + "stream-shift": "1.0.1" } }, "earcut": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.1.tgz", - "integrity": "sha512-5jIMi2RB3HtGPHcYd9Yyl0cczo84y+48lgKPxMijliNQaKAHEZJbdzLmKmdxG/mCdS/YD9DQ1gihL8mxzR0F9w==" + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.2.tgz", + "integrity": "sha512-eZoZPPJcUHnfRZ0PjLvx2qBordSiO8ofC3vt+qACLM95u+4DovnbYNpQtJh0DNsWj8RnxrQytD4WA8gj5cRIaQ==" }, "ee-first": { "version": "1.1.1", @@ -2941,9 +2959,9 @@ "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" }, "events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", - "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", + "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", "dev": true }, "eventsource": { @@ -3168,9 +3186,9 @@ } }, "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", "dev": true }, "fast-glob": { @@ -3198,9 +3216,9 @@ } }, "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fastq": { @@ -3236,6 +3254,13 @@ "escape-string-regexp": "1.0.5" } }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true, + "optional": true + }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -3425,9 +3450,9 @@ } }, "follow-redirects": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.9.0.tgz", - "integrity": "sha512-CRcPzsSIbXyVDl0QI01muNDu69S8trU4jArW9LpOt2WtC6LyUJetcIrmfHsRBx7/Jb6GHJUiuqyYxPooFfNt6A==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.10.0.tgz", + "integrity": "sha512-4eyLK6s6lH32nOvLLwlIOnr9zrL8Sm+OvW4pVTJNoXeGzYIkHVf+pADQi+OJ0E67hiuSLezPVPyBcIZO50TmmQ==", "dev": true, "requires": { "debug": "3.2.6" @@ -3517,14 +3542,15 @@ "dev": true }, "fsevents": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", - "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz", + "integrity": "sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==", "dev": true, "optional": true, "requires": { + "bindings": "1.5.0", "nan": "2.14.0", - "node-pre-gyp": "0.12.0" + "node-pre-gyp": "0.14.0" }, "dependencies": { "abbrev": { @@ -3569,7 +3595,7 @@ } }, "chownr": { - "version": "1.1.1", + "version": "1.1.3", "bundled": true, "dev": true, "optional": true @@ -3596,12 +3622,12 @@ "optional": true }, "debug": { - "version": "4.1.1", + "version": "3.2.6", "bundled": true, "dev": true, "optional": true, "requires": { - "ms": "2.1.1" + "ms": "2.1.2" } }, "deep-extend": { @@ -3623,12 +3649,12 @@ "optional": true }, "fs-minipass": { - "version": "1.2.5", + "version": "1.2.7", "bundled": true, "dev": true, "optional": true, "requires": { - "minipass": "2.3.5" + "minipass": "2.9.0" } }, "fs.realpath": { @@ -3654,14 +3680,14 @@ } }, "glob": { - "version": "7.1.3", + "version": "7.1.6", "bundled": true, "dev": true, "optional": true, "requires": { "fs.realpath": "1.0.0", "inflight": "1.0.6", - "inherits": "2.0.3", + "inherits": "2.0.4", "minimatch": "3.0.4", "once": "1.4.0", "path-is-absolute": "1.0.1" @@ -3683,7 +3709,7 @@ } }, "ignore-walk": { - "version": "3.0.1", + "version": "3.0.3", "bundled": true, "dev": true, "optional": true, @@ -3702,7 +3728,7 @@ } }, "inherits": { - "version": "2.0.3", + "version": "2.0.4", "bundled": true, "dev": true }, @@ -3740,21 +3766,21 @@ "dev": true }, "minipass": { - "version": "2.3.5", + "version": "2.9.0", "bundled": true, "dev": true, "requires": { "safe-buffer": "5.1.2", - "yallist": "3.0.3" + "yallist": "3.1.1" } }, "minizlib": { - "version": "1.2.1", + "version": "1.3.3", "bundled": true, "dev": true, "optional": true, "requires": { - "minipass": "2.3.5" + "minipass": "2.9.0" } }, "mkdirp": { @@ -3766,38 +3792,38 @@ } }, "ms": { - "version": "2.1.1", + "version": "2.1.2", "bundled": true, "dev": true, "optional": true }, "needle": { - "version": "2.3.0", + "version": "2.4.0", "bundled": true, "dev": true, "optional": true, "requires": { - "debug": "4.1.1", + "debug": "3.2.6", "iconv-lite": "0.4.24", "sax": "1.2.4" } }, "node-pre-gyp": { - "version": "0.12.0", + "version": "0.14.0", "bundled": true, "dev": true, "optional": true, "requires": { "detect-libc": "1.0.3", "mkdirp": "0.5.1", - "needle": "2.3.0", + "needle": "2.4.0", "nopt": "4.0.1", - "npm-packlist": "1.4.1", + "npm-packlist": "1.4.7", "npmlog": "4.1.2", "rc": "1.2.8", - "rimraf": "2.6.3", - "semver": "5.7.0", - "tar": "4.4.8" + "rimraf": "2.7.1", + "semver": "5.7.1", + "tar": "4.4.13" } }, "nopt": { @@ -3811,19 +3837,28 @@ } }, "npm-bundled": { - "version": "1.0.6", + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "npm-normalize-package-bin": "1.0.1" + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", "bundled": true, "dev": true, "optional": true }, "npm-packlist": { - "version": "1.4.1", + "version": "1.4.7", "bundled": true, "dev": true, "optional": true, "requires": { - "ignore-walk": "3.0.1", - "npm-bundled": "1.0.6" + "ignore-walk": "3.0.3", + "npm-bundled": "1.1.1" } }, "npmlog": { @@ -3886,7 +3921,7 @@ "optional": true }, "process-nextick-args": { - "version": "2.0.0", + "version": "2.0.1", "bundled": true, "dev": true, "optional": true @@ -3918,21 +3953,21 @@ "optional": true, "requires": { "core-util-is": "1.0.2", - "inherits": "2.0.3", + "inherits": "2.0.4", "isarray": "1.0.0", - "process-nextick-args": "2.0.0", + "process-nextick-args": "2.0.1", "safe-buffer": "5.1.2", "string_decoder": "1.1.1", "util-deprecate": "1.0.2" } }, "rimraf": { - "version": "2.6.3", + "version": "2.7.1", "bundled": true, "dev": true, "optional": true, "requires": { - "glob": "7.1.3" + "glob": "7.1.6" } }, "safe-buffer": { @@ -3953,7 +3988,7 @@ "optional": true }, "semver": { - "version": "5.7.0", + "version": "5.7.1", "bundled": true, "dev": true, "optional": true @@ -4004,18 +4039,18 @@ "optional": true }, "tar": { - "version": "4.4.8", + "version": "4.4.13", "bundled": true, "dev": true, "optional": true, "requires": { - "chownr": "1.1.1", - "fs-minipass": "1.2.5", - "minipass": "2.3.5", - "minizlib": "1.2.1", + "chownr": "1.1.3", + "fs-minipass": "1.2.7", + "minipass": "2.9.0", + "minizlib": "1.3.3", "mkdirp": "0.5.1", "safe-buffer": "5.1.2", - "yallist": "3.0.3" + "yallist": "3.1.1" } }, "util-deprecate": { @@ -4039,7 +4074,7 @@ "dev": true }, "yallist": { - "version": "3.0.3", + "version": "3.1.1", "bundled": true, "dev": true } @@ -4501,7 +4536,7 @@ "dev": true, "requires": { "eventemitter3": "4.0.0", - "follow-redirects": "1.9.0", + "follow-redirects": "1.10.0", "requires-port": "1.0.0" }, "dependencies": { @@ -5169,9 +5204,9 @@ "dev": true }, "ismobilejs": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-0.5.2.tgz", - "integrity": "sha512-ta9UdV60xVZk/ZafFtSFslQaE76SvNkcs1r73d2PVR21zVzx9xuYv9tNe4MxA1NN7WoeCc2RjGot3Bz1eHDx3Q==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-1.0.3.tgz", + "integrity": "sha512-6rTcdWK7PHIWPYlCPdTbU9eE9yzdnIQSpiH+8Ln5OqugpEszQK5KHlsjZrDae26fEhki9rPvQmsjI1q4CLuKIA==" }, "isobject": { "version": "3.0.1", @@ -5733,7 +5768,7 @@ "constants-browserify": "1.0.0", "crypto-browserify": "3.12.0", "domain-browser": "1.2.0", - "events": "3.0.0", + "events": "3.1.0", "https-browserify": "1.0.0", "os-browserify": "0.3.0", "path-browserify": "0.0.1", @@ -5849,9 +5884,9 @@ "dev": true }, "object-is": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz", - "integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.2.tgz", + "integrity": "sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ==", "dev": true }, "object-keys": { @@ -5869,6 +5904,18 @@ "isobject": "3.0.1" } }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "1.1.3", + "function-bind": "1.1.1", + "has-symbols": "1.0.0", + "object-keys": "1.1.1" + } + }, "object.getownpropertydescriptors": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", @@ -6092,9 +6139,9 @@ } }, "pako": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", - "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "dev": true }, "parallel-transform": { @@ -6290,44 +6337,44 @@ } }, "pixi.js": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/pixi.js/-/pixi.js-5.2.0.tgz", - "integrity": "sha512-q4gxbTU51nrh8qxbplU6EVx2dnb9SiI9OeQOrQmtmCTpysJXAK5p9M2c3v5JRIgK8ZCL74y5vrwHaaB1ZQoPKw==", - "requires": { - "@pixi/accessibility": "5.2.0", - "@pixi/app": "5.2.0", - "@pixi/constants": "5.2.0", - "@pixi/core": "5.2.0", - "@pixi/display": "5.2.0", - "@pixi/extract": "5.2.0", - "@pixi/filter-alpha": "5.2.0", - "@pixi/filter-blur": "5.2.0", - "@pixi/filter-color-matrix": "5.2.0", - "@pixi/filter-displacement": "5.2.0", - "@pixi/filter-fxaa": "5.2.0", - "@pixi/filter-noise": "5.2.0", - "@pixi/graphics": "5.2.0", - "@pixi/interaction": "5.2.0", - "@pixi/loaders": "5.2.0", - "@pixi/math": "5.2.0", - "@pixi/mesh": "5.2.0", - "@pixi/mesh-extras": "5.2.0", - "@pixi/mixin-cache-as-bitmap": "5.2.0", - "@pixi/mixin-get-child-by-name": "5.2.0", - "@pixi/mixin-get-global-position": "5.2.0", - "@pixi/particles": "5.2.0", - "@pixi/polyfill": "5.2.0", - "@pixi/prepare": "5.2.0", - "@pixi/runner": "5.2.0", - "@pixi/settings": "5.2.0", - "@pixi/sprite": "5.2.0", - "@pixi/sprite-animated": "5.2.0", - "@pixi/sprite-tiling": "5.2.0", - "@pixi/spritesheet": "5.2.0", - "@pixi/text": "5.2.0", - "@pixi/text-bitmap": "5.2.0", - "@pixi/ticker": "5.2.0", - "@pixi/utils": "5.2.0" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/pixi.js/-/pixi.js-5.2.1.tgz", + "integrity": "sha512-jmkxchTmotiJN/mOS6+kGEjBOhHxAfx4JuWsJGe+uix1J88wdM9iNYFjuib+ITXrLxo0OrC6EhQgNE9jzZWgcg==", + "requires": { + "@pixi/accessibility": "5.2.1", + "@pixi/app": "5.2.1", + "@pixi/constants": "5.2.1", + "@pixi/core": "5.2.1", + "@pixi/display": "5.2.1", + "@pixi/extract": "5.2.1", + "@pixi/filter-alpha": "5.2.1", + "@pixi/filter-blur": "5.2.1", + "@pixi/filter-color-matrix": "5.2.1", + "@pixi/filter-displacement": "5.2.1", + "@pixi/filter-fxaa": "5.2.1", + "@pixi/filter-noise": "5.2.1", + "@pixi/graphics": "5.2.1", + "@pixi/interaction": "5.2.1", + "@pixi/loaders": "5.2.1", + "@pixi/math": "5.2.1", + "@pixi/mesh": "5.2.1", + "@pixi/mesh-extras": "5.2.1", + "@pixi/mixin-cache-as-bitmap": "5.2.1", + "@pixi/mixin-get-child-by-name": "5.2.1", + "@pixi/mixin-get-global-position": "5.2.1", + "@pixi/particles": "5.2.1", + "@pixi/polyfill": "5.2.1", + "@pixi/prepare": "5.2.1", + "@pixi/runner": "5.2.1", + "@pixi/settings": "5.2.1", + "@pixi/sprite": "5.2.1", + "@pixi/sprite-animated": "5.2.1", + "@pixi/sprite-tiling": "5.2.1", + "@pixi/spritesheet": "5.2.1", + "@pixi/text": "5.2.1", + "@pixi/text-bitmap": "5.2.1", + "@pixi/ticker": "5.2.1", + "@pixi/utils": "5.2.1" } }, "pixi.js-keyboard": { @@ -6339,21 +6386,21 @@ } }, "pixi.js-legacy": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/pixi.js-legacy/-/pixi.js-legacy-5.2.0.tgz", - "integrity": "sha512-t4XeWO0m1ZplRIrVdRRL2Qszqufth1tNIpTDD/CIhbV4wdFk4WYqYgYFwx7XXXsaXZdCnYkbpf7aJ4jRFRtJjg==", - "requires": { - "@pixi/canvas-display": "5.2.0", - "@pixi/canvas-extract": "5.2.0", - "@pixi/canvas-graphics": "5.2.0", - "@pixi/canvas-mesh": "5.2.0", - "@pixi/canvas-particles": "5.2.0", - "@pixi/canvas-prepare": "5.2.0", - "@pixi/canvas-renderer": "5.2.0", - "@pixi/canvas-sprite": "5.2.0", - "@pixi/canvas-sprite-tiling": "5.2.0", - "@pixi/canvas-text": "5.2.0", - "pixi.js": "5.2.0" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/pixi.js-legacy/-/pixi.js-legacy-5.2.1.tgz", + "integrity": "sha512-ZdqACk9lV5fY/sS+TI/EhLnGo3EPhMkTAeUEhdBVO0gC2lr7ZK/c8VoeSsn+7TvFFIq9AhIaoWc2J+eibHXRdQ==", + "requires": { + "@pixi/canvas-display": "5.2.1", + "@pixi/canvas-extract": "5.2.1", + "@pixi/canvas-graphics": "5.2.1", + "@pixi/canvas-mesh": "5.2.1", + "@pixi/canvas-particles": "5.2.1", + "@pixi/canvas-prepare": "5.2.1", + "@pixi/canvas-renderer": "5.2.1", + "@pixi/canvas-sprite": "5.2.1", + "@pixi/canvas-sprite-tiling": "5.2.1", + "@pixi/canvas-text": "5.2.1", + "pixi.js": "5.2.1" } }, "pkg-dir": { @@ -6744,12 +6791,92 @@ } }, "regexp.prototype.flags": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz", - "integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", "dev": true, "requires": { - "define-properties": "1.1.3" + "define-properties": "1.1.3", + "es-abstract": "1.17.4" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", + "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", + "dev": true, + "requires": { + "es-to-primitive": "1.2.1", + "function-bind": "1.1.1", + "has": "1.0.3", + "has-symbols": "1.0.1", + "is-callable": "1.1.5", + "is-regex": "1.0.5", + "object-inspect": "1.7.0", + "object-keys": "1.1.1", + "object.assign": "4.1.0", + "string.prototype.trimleft": "2.1.1", + "string.prototype.trimright": "2.1.1" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "1.1.5", + "is-date-object": "1.0.1", + "is-symbol": "1.0.2" + } + }, + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true + }, + "is-callable": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", + "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", + "dev": true + }, + "is-regex": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", + "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", + "dev": true, + "requires": { + "has": "1.0.3" + } + }, + "object-inspect": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", + "dev": true + }, + "string.prototype.trimleft": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", + "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", + "dev": true, + "requires": { + "define-properties": "1.1.3", + "function-bind": "1.1.1" + } + }, + "string.prototype.trimright": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", + "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", + "dev": true, + "requires": { + "define-properties": "1.1.3", + "function-bind": "1.1.1" + } + } } }, "registry-auth-token": { @@ -6914,6 +7041,12 @@ "has-flag": "4.0.0" } }, + "uuid": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", + "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", + "dev": true + }, "yargs-parser": { "version": "15.0.0", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.0.tgz", @@ -7151,7 +7284,7 @@ "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, "requires": { - "ajv": "6.10.2", + "ajv": "6.11.0", "ajv-errors": "1.0.1", "ajv-keywords": "3.4.1" } @@ -7224,9 +7357,9 @@ } }, "serialize-javascript": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz", - "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", + "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==", "dev": true }, "serve-index": { @@ -7485,7 +7618,7 @@ "dev": true, "requires": { "faye-websocket": "0.10.0", - "uuid": "3.3.3" + "uuid": "3.4.0" } }, "sockjs-client": { @@ -7609,7 +7742,7 @@ "detect-node": "2.0.4", "hpack.js": "2.1.6", "obuf": "1.1.2", - "readable-stream": "3.4.0", + "readable-stream": "3.5.0", "wbuf": "1.7.3" }, "dependencies": { @@ -7629,9 +7762,9 @@ "dev": true }, "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.5.0.tgz", + "integrity": "sha512-gSz026xs2LfxBPudDuI41V1lka8cxg64E66SGe78zJlsUofOg/yqwezdIcdfwik6B4h8LFmWPA9ef9X3FiNFLA==", "dev": true, "requires": { "inherits": "2.0.3", @@ -7709,7 +7842,7 @@ "dev": true, "requires": { "end-of-stream": "1.4.4", - "stream-shift": "1.0.0" + "stream-shift": "1.0.1" } }, "stream-http": { @@ -7726,9 +7859,9 @@ } }, "stream-shift": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", "dev": true }, "string-width": { @@ -7883,9 +8016,9 @@ } }, "terser": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.4.0.tgz", - "integrity": "sha512-oDG16n2WKm27JO8h4y/w3iqBGAOSCtq7k8dRmrn4Wf9NouL0b2WpMHGChFGZq4nFAQy1FsNJrVQHfurXOSTmOA==", + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.3.tgz", + "integrity": "sha512-Lw+ieAXmY69d09IIc/yqeBqXpEQIpDGZqT34ui1QWXIUpR2RjbqEkT8X7Lgex19hslSqcWM5iMN2kM11eMsESQ==", "dev": true, "requires": { "commander": "2.20.3", @@ -7902,18 +8035,18 @@ } }, "terser-webpack-plugin": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz", - "integrity": "sha512-ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz", + "integrity": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", "dev": true, "requires": { "cacache": "12.0.3", "find-cache-dir": "2.1.0", "is-wsl": "1.1.0", "schema-utils": "1.0.0", - "serialize-javascript": "1.9.1", + "serialize-javascript": "2.1.2", "source-map": "0.6.1", - "terser": "4.4.0", + "terser": "4.6.3", "webpack-sources": "1.4.3", "worker-farm": "1.7.0" } @@ -8326,9 +8459,9 @@ "dev": true }, "uuid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", - "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==" + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" }, "v8-compile-cache": { "version": "2.0.3", @@ -8383,9 +8516,9 @@ "integrity": "sha1-23hhKSU8tujq5UwvsF+HCvZnW64=" }, "webpack": { - "version": "4.41.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.41.2.tgz", - "integrity": "sha512-Zhw69edTGfbz9/8JJoyRQ/pq8FYUoY0diOXqW0T6yhgdhCv6wr0hra5DwwWexNRns2Z2+gsnrNcbe9hbGBgk/A==", + "version": "4.41.5", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.41.5.tgz", + "integrity": "sha512-wp0Co4vpyumnp3KlkmpM5LWuzvZYayDwM2n17EHFr4qxBBbRokC7DJawPJC7TfSFZ9HZ6GsdH40EBj4UV0nmpw==", "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", @@ -8393,7 +8526,7 @@ "@webassemblyjs/wasm-edit": "1.8.5", "@webassemblyjs/wasm-parser": "1.8.5", "acorn": "6.4.0", - "ajv": "6.10.2", + "ajv": "6.11.0", "ajv-keywords": "3.4.1", "chrome-trace-event": "1.0.2", "enhanced-resolve": "4.1.1", @@ -8408,7 +8541,7 @@ "node-libs-browser": "2.2.1", "schema-utils": "1.0.0", "tapable": "1.1.3", - "terser-webpack-plugin": "1.4.1", + "terser-webpack-plugin": "1.4.3", "watchpack": "1.6.0", "webpack-sources": "1.4.3" }, @@ -8611,9 +8744,9 @@ } }, "webpack-dev-server": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.9.0.tgz", - "integrity": "sha512-E6uQ4kRrTX9URN9s/lIbqTAztwEPdvzVrcmHE8EQ9YnuT9J8Es5Wrd8n9BKg1a0oZ5EgEke/EQFgUsp18dSTBw==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.10.1.tgz", + "integrity": "sha512-AGG4+XrrXn4rbZUueyNrQgO4KGnol+0wm3MPdqGLmmA+NofZl3blZQKxZ9BND6RDNuvAK9OMYClhjOSnxpWRoA==", "dev": true, "requires": { "ansi-html": "0.0.7", @@ -8807,7 +8940,7 @@ "dev": true, "requires": { "ansi-colors": "3.2.4", - "uuid": "3.3.3" + "uuid": "3.4.0" } }, "webpack-sources": { diff --git a/package.json b/package.json index ebed15d5c5598600acbc35f4cba445f7bb984578..812fdd15683d261bc42dd12b608d4460b45bd14c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "medsurf-draw", - "version": "1.0.19", + "version": "1.0.23", "description": "Draw annotations on jpg/zoomify images, based on PIXI.js", "keywords": [ "draw", @@ -27,11 +27,11 @@ "license": "MIT", "dependencies": { "@ascii-dev-user/medsurf-lib": "file:/srv/data/unibe/medsurf-shared/dist/medsurf-lib", - "@babel/core": "^7.8.3", + "@babel/core": "^7.8.4", "debounce": "^1.2.0", "pixi.js-keyboard": "^1.0.9", - "pixi.js-legacy": "^5.2.0", - "uuid": "^3.3.3", + "pixi.js-legacy": "^5.2.1", + "uuid": "^3.4.0", "webfontloader": "^1.6.28" }, "devDependencies": { @@ -43,8 +43,8 @@ "release-it": "^12.4.3", "ts-loader": "^6.2.1", "typescript": "3.5.3", - "webpack": "^4.41.2", + "webpack": "^4.41.5", "webpack-cli": "^3.3.10", - "webpack-dev-server": "^3.9.0" + "webpack-dev-server": "^3.10.1" } } diff --git a/src/app/index.ts b/src/app/index.ts index 400c34b4b42a12664b63291d456f6c17d643566f..d22f987f4172eb2b658c5fc6552d5e62ae1a5680 100644 --- a/src/app/index.ts +++ b/src/app/index.ts @@ -1,7 +1,8 @@ import * as PIXI from "pixi.js-legacy"; import * as Models from '@ascii-dev-user/medsurf-lib/models'; import * as Keyboard from "pixi.js-keyboard"; -import {MedsurfTileSprite} from "../lib/elements/images/MedsurfTileSprite"; +import {MedsurfSprite} from "../lib"; +// import {MedsurfTileSprite} from "../lib/elements/images/MedsurfTileSprite"; import {PositionPoint} from "../lib/elements/positionings/PositionPoint"; import {RectanglePrimitive} from "../lib/elements/primitives/RectanglePrimitive"; import {EllipsePrimitive} from "../lib/elements/primitives/EllipsePrimitive"; @@ -9,9 +10,9 @@ import {TextPrimitive} from "../lib/elements/primitives/TextPrimitive"; import {ArrowPrimitive} from "../lib/elements/primitives/ArrowPrimitive"; import {Line} from "../lib/elements/connections/Line"; import {ImageNavigatorElement} from "../lib/elements/interactions/image/ImageNavigatorElement"; +import {VirtualPointerElement} from "../lib/elements/interactions/image/VirtualPointerElement"; import {FillCollection} from "../lib/elements/collections/FillCollection"; import {LegendCollection} from "../lib/elements/collections/LegendCollection"; -import {MedsurfSprite} from "../lib"; const canvas = document.getElementById("medsurf_canvas") as HTMLCanvasElement; const width = canvas.width; @@ -71,7 +72,13 @@ PIXI.Renderer.registerPlugin('bla', bla); loader.add("cursor_scale", "./assets/cursors/scale.png"); loader.add("cursor_select", "./assets/cursors/select.png"); loader.load((loader: PIXI.Loader, resources: any) => { - const app = new PIXI.Application({ width: width, height: height, view: canvas }); + const app = new PIXI.Application({ + width: width, + height: height, + view: canvas, + antialias: true + }); + app.ticker.add(async (delta: number) => { // @ts-ignore // PIXI.keyboardManager.update(); @@ -240,10 +247,11 @@ PIXI.Renderer.registerPlugin('bla', bla); // IMAGES // BaseSprite - // let image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("https://api.medsurf.preview.iml.unibe.ch/v1/file/slides/3893/image/1500x1514_80_eaaa24fd-e69e-491e-b576-fccab29c85a2.jpg")); - // let image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("http://localhost:3000/v1/file/slide/2701,2701/image/1800x1800_80.jpeg")); + // let image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("https://api.medsurf.preview.iml.unibe.ch/v1/file/slides/3893/image/1500x1514_80_eaaa24fd-e69e-491e-b576-fccab29c85a2.jpg"), 1500); + // let image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("https://api.medsurf.iml.unibe.ch/v1/file/slide/2701,2701/image/1800x1800_80.jpeg"), 1800); + let image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("https://api.medsurf.iml.unibe.ch/v1/file/slide/10400/image/1800x1800_80.jpeg"), 1800); // Tile BaseSprite - let image = new MedsurfTileSprite(app.renderer, canvas, 5800, "https://api.medsurf.preview.iml.unibe.ch:443/v1/file/slide/5800/image/", imageWidth, 20512); + // let image = new MedsurfTileSprite(app.renderer, canvas, 5800, "https://api.medsurf.preview.iml.unibe.ch:443/v1/file/slide/5800/image/", imageWidth, 20512); // Video // let image = new MedsurfSprite(app.renderer, canvas, PIXI.Texture.from("./assets/juldem.mp4"), 1920); @@ -252,6 +260,9 @@ PIXI.Renderer.registerPlugin('bla', bla); let navigator = new ImageNavigatorElement(app.renderer, canvas, image); app.stage.addChild(navigator); + let virtualPointer = new VirtualPointerElement(canvas, image); + app.stage.addChild(virtualPointer); + buttonChange.addEventListener("click", () => { /* // @ts-ignore @@ -264,11 +275,13 @@ PIXI.Renderer.registerPlugin('bla', bla); image.destroy(); setTimeout(() => { + /* image = new MedsurfTileSprite(app.renderer, canvas, 5802, "https://api.medsurf.preview.iml.unibe.ch:443/v1/file/slide/5802/image/", 19992, 15832); app.stage.addChild(image); let navigator = new ImageNavigatorElement(app.renderer, canvas, image); app.stage.addChild(navigator); + */ }, 50); }); @@ -813,6 +826,7 @@ PIXI.Renderer.registerPlugin('bla', bla); hasLine: false, hasFill: true, fillColor: 0xFF00FF, + fillAlpha: 0.35 } }, imageWidth); image.addChild(fill1); @@ -957,6 +971,74 @@ PIXI.Renderer.registerPlugin('bla', bla); legend1.name = "legend1"; image.addChild(legend1); + /* + id: 'p9', + type: Models.ImageObjectType.POSITIONPOINT, + isStatic: false, + position: { + x: 500 / imageWidth, + y: 400 / imageWidth, + }, + isSelftest: false + */ + + const testPoint = new PositionPoint({ + id: 'testPoint', + type: Models.ImageObjectType.POSITIONPOINT, + isStatic: false, + position: { + x: 700 / imageWidth, + y: 700 / imageWidth, + }, + isSelftest: false + }, imageWidth); + image.addChild(testPoint); + + /* + id: 'text', + type: Models.ImageObjectType.TEXT, + isStatic: false, + positionPoint: point5.model, + rotateWithLine: false, + text: "Hello Text", + rectangle: { + x: 60 / imageWidth, + y: 0, + width: 0, + height: 0, + }, + style: { + fill: 0xe2d62d, + fontSize: 22 / imageWidth, + fontFamily: "proxima_nova_altsemibold", + align: 'left', + breakWords: false, + } + */ + const testText = new TextPrimitive({ + id: "949484b6-f1f7-4bca-adf8-401617784cbd", + type: Models.ImageObjectType.TEXT, + isStatic: false, + positionPoint: testPoint.model, + rotateWithLine: false, + text: "Area subcallosa\ntest\nbla", + rectangle: { + x: 0.08444444444444445, + y: 0, + width: 0.15777777777777777, + height: 0.015 + }, + style: { + align: "left", + breakWords: false, + fill: 16777215, + fontFamily: "proxima_nova_altsemibold", + fontSize: 0.02 + }, + + }, 1800); + testPoint.addChild(testText); + // TODO emit draw event on both /* diff --git a/src/lib/elements/collections/FillCollection.ts b/src/lib/elements/collections/FillCollection.ts index 965f3b53c6466837417c7f4a366bb980aeaf0a37..19062685bd5afb761db5fcc8e3c122fdb300e7d6 100644 --- a/src/lib/elements/collections/FillCollection.ts +++ b/src/lib/elements/collections/FillCollection.ts @@ -17,8 +17,6 @@ import {LegendTextPrimitive} from "../primitives/LegendTextPrimitive"; import {InteractiveGenerator} from "../../generators/InteractiveGenerator"; import {LegendCollection} from "./LegendCollection"; import {LegendColumnCollection} from "./LegendColumnCollection"; -import DisplayObject = PIXI.DisplayObject; -import {LegendItem} from "@ascii-dev-user/medsurf-lib/models"; /** * Fill collection @@ -29,14 +27,8 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> */ private _interactiveItems: ImageObject[]; private _lines: Line[]; - protected _fillColor: number; - protected _fillAlpha: number; - /* TODO remove - private _isInteractive: boolean; - protected _color: number; - protected _fillColor: number; - protected _fillAlpha: number; - */ + protected _fillColor: number | undefined; + protected _fillAlpha: number | undefined; /** * Interactions @@ -62,7 +54,6 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> * Design */ protected readonly _fillAlphaDefault: number = 1; - protected readonly _fillAlphaNormal: number = 1; protected readonly _fillAlphaInteractive: number = 0.00000001; protected readonly _fillColorDefault: number = 0xFFFFFF; protected readonly _fillColorSelected: number = 0x4a90e2; @@ -85,13 +76,12 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> hasFill: false, }; } - if (!this.model.options.fillColor) { + if (this.model.options.fillColor === undefined || this.model.options.fillColor === null) { this.model.options.hasFill = true; this.model.options.fillColor = this._fillColorDefault; } - if (!this.model.options.fillAlpha) { + if (this.model.options.fillAlpha === undefined || this.model.options.fillAlpha === null) { this.model.options.hasFill = true; - this.model.options.fillColor = this._fillColorDefault; this.model.options.fillAlpha = this._fillAlphaDefault; } @@ -265,8 +255,10 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> } // Begin draw - if (this.model.options.fillColor) { + if (this.model.options.hasFill) { this._fillElement.beginFill(this._fillColor, this._fillAlpha); + } else { + this._fillElement.beginFill(this._fillColorDefault, 0.00000001); } // Get first element and moveTo this @@ -464,7 +456,7 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> this.removeChild(this._configurationElement); - this._fillColor = this.model.options.fillColor || this._fillColorDefault; + this._fillColor = this.model.options.fillColor; this.draw(); this.parent.sortChildren(); @@ -497,7 +489,7 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> } protected _removeModeDefault(): void { - this._fillAlpha = this._fillAlphaNormal; + this._fillAlpha = this.model.options.fillAlpha === undefined ? this._fillAlphaDefault : this.model.options.fillAlpha; this.draw(); // Events @@ -535,7 +527,7 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> } protected _removeModeSelftest(): void { - this._fillAlpha = this._fillAlphaNormal; + this._fillAlpha = this.model.options.fillAlpha === undefined ? this._fillAlphaDefault : this.model.options.fillAlpha; this.draw(); // Events @@ -606,7 +598,7 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> } protected _removeModeBlocked(): void { - this._fillColor = this.model.options.fillColor || this._fillColorDefault; + this._fillColor = this.model.options.fillColor; this.draw(); this.filters = []; @@ -678,7 +670,7 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> } protected _removeModeSelftestChoosing(): void { - this._fillColor = this.model.options.fillColor || this._fillColorDefault; + this._fillColor = this.model.options.fillColor; this.draw(); // Events @@ -700,7 +692,7 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> } protected _removeModeInteractiveChoosing(): void { - this._fillColor = this.model.options.fillColor || this._fillColorDefault; + this._fillColor = this.model.options.fillColor; this.draw(); // Events @@ -763,7 +755,7 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> } protected _onInteractive(): void { - this._fillAlpha = this._fillAlphaNormal; + this._fillAlpha = this.model.options.fillAlpha === undefined ? this._fillAlphaDefault : this.model.options.fillAlpha; this.draw(); this.getImage().itemInteractive(new PIXI.interaction.InteractionEvent(), this); @@ -894,10 +886,16 @@ export class FillCollection extends BaseElementContainer<Models.FillCollection> } public showItem(): void { + this._fillAlpha = this.model.options.fillAlpha === undefined ? this._fillAlphaDefault : this.model.options.fillAlpha; + this.draw(); + this._fillElement.renderable = true; } public hideItem(): void { + this._fillAlpha = this._fillAlphaInteractive; + this.draw(); + this._fillElement.renderable = false; } //</editor-fold> diff --git a/src/lib/elements/collections/LegendCollection.ts b/src/lib/elements/collections/LegendCollection.ts index 41dd2427c24e0cf231f2f6c698b0dae71b14df16..94c1b9bca1f6c579bdcc944ddfc885c05c466e25 100644 --- a/src/lib/elements/collections/LegendCollection.ts +++ b/src/lib/elements/collections/LegendCollection.ts @@ -30,9 +30,6 @@ export class LegendCollection extends BaseElementContainer<Models.LegendCollecti */ protected _columns: LegendColumnCollection[]; // TODO implement this -> add in added protected _rectangle: PIXI.Rectangle; - /* - private _isSelftest: boolean; - */ /** * Interactions diff --git a/src/lib/elements/connections/Line.ts b/src/lib/elements/connections/Line.ts index 4a33b7f4e4a198f7b5dc142184320c881a12a5e3..48604696697cac00e485fb14560920f524f62974 100644 --- a/src/lib/elements/connections/Line.ts +++ b/src/lib/elements/connections/Line.ts @@ -49,8 +49,8 @@ export class Line extends BaseElementContainer<Models.Line> { */ private _graphicLine: GraphicLine; protected _strokeWidth: number; - protected _lineColor: number; - protected _lineAlpha: number; + protected _lineColor: number | undefined; + protected _lineAlpha: number | undefined; /** * Interactions @@ -108,10 +108,12 @@ export class Line extends BaseElementContainer<Models.Line> { hasFill: false, }; } - if (!this.model.options.lineColor) { + if (this.model.options.lineColor === undefined || this.model.options.lineColor === null) { + this.model.options.hasLine = true; this.model.options.lineColor = this._lineColorDefault; } - if (!this.model.options.lineAlpha) { + if (this.model.options.lineAlpha === undefined || this.model.options.lineAlpha === null) { + this.model.options.hasLine = true; this.model.options.lineAlpha = this._lineAlphaDefault; } @@ -746,7 +748,7 @@ export class Line extends BaseElementContainer<Models.Line> { this.removeChild(this._configurationElement); - this._lineColor = this.model.options.lineColor || this._lineColorDefault; + this._lineColor = this.model.options.lineColor; this.draw(); this.parent.sortChildren(); @@ -847,7 +849,7 @@ export class Line extends BaseElementContainer<Models.Line> { } protected _removeModeBlocked(): void { - this._lineColor = this.model.options.lineColor || this._lineColorDefault; + this._lineColor = this.model.options.lineColor; this.draw(); this.filters = []; @@ -923,7 +925,7 @@ export class Line extends BaseElementContainer<Models.Line> { } protected _removeModeSelftestChoosing(): void { - this._lineColor = this.model.options.lineColor || this._lineColorDefault; + this._lineColor = this.model.options.lineColor; this.draw(); // Events @@ -945,7 +947,7 @@ export class Line extends BaseElementContainer<Models.Line> { } protected _removeModeInteractiveChoosing(): void { - this._lineColor = this.model.options.lineColor || this._lineColorDefault; + this._lineColor = this.model.options.lineColor; this.draw(); // Events @@ -967,7 +969,7 @@ export class Line extends BaseElementContainer<Models.Line> { } protected _removeFillModeChoosing(parent: PositionPoint): void { - this._lineColor = this.model.options.lineColor || this._lineColorDefault; + this._lineColor = this.model.options.lineColor; this.draw(); // Events diff --git a/src/lib/elements/elements.ts b/src/lib/elements/elements.ts index ba254cc0fc205894bbfe8e36e9369e076fe98240..ac04f824025b39467e6159f9a4cf67410089b4e7 100644 --- a/src/lib/elements/elements.ts +++ b/src/lib/elements/elements.ts @@ -7,6 +7,7 @@ export * from "./images/MedsurfSprite"; export * from "./images/MedsurfTileSprite"; export * from "./interactions/image/ImageNavigatorElement"; +export * from "./interactions/image/VirtualPointerElement"; export * from "./positionings/PositionPoint"; diff --git a/src/lib/elements/images/MedsurfSprite.ts b/src/lib/elements/images/MedsurfSprite.ts index 3ab12fb6eb1f6577609ec45a35b6d9cbee29cc6a..09ef41b7eaf03f54e56d663544bad23f966105e6 100644 --- a/src/lib/elements/images/MedsurfSprite.ts +++ b/src/lib/elements/images/MedsurfSprite.ts @@ -264,12 +264,19 @@ export class MedsurfSprite extends BaseSprite { const height1 = this.height * width / this.width; const width2 = this.width * height / this.height; + // TODO use scale here -> so we don't shrink the stuff if (height1 > height) { + this.scale.set(width2 / this.width, height / this.height); + /* this.width = width2; this.height = height; + */ } else { + this.scale.set(width / this.width, height1 / this.height); + /* this.width = width; this.height = height1; + */ } this.position.set(this._canvas.width / 2 - this.width / 2, this._canvas.height / 2 - this.height / 2); diff --git a/src/lib/elements/images/MedsurfTileSprite.ts b/src/lib/elements/images/MedsurfTileSprite.ts index ed74345b05a6be089eb6b45b271d76d68280eb88..9b03635bbd57c8de3ffddf02714b09c27873b156 100644 --- a/src/lib/elements/images/MedsurfTileSprite.ts +++ b/src/lib/elements/images/MedsurfTileSprite.ts @@ -78,7 +78,7 @@ export class MedsurfTileSprite extends MedsurfSprite { // Init this._loader = PIXI.Loader.shared; - this._loader.concurrency = 20; + this._loader.concurrency = 100; this._loader.onLoad.add(this._onLoad.bind(this)); this._container = new PIXI.Container(); @@ -183,7 +183,7 @@ export class MedsurfTileSprite extends MedsurfSprite { const rectangle = element.getRectangle(); rectangle.x += element.position.x; rectangle.y += element.position.y; - rectangle.pad(10, 10); + rectangle.pad(1, 1); element.renderable = !!(x + width > rectangle.x && x < rectangle.x + rectangle.width && y + height > rectangle.y && y < rectangle.y + rectangle.height); } diff --git a/src/lib/elements/interactions/color/ColorElement.ts b/src/lib/elements/interactions/color/ColorElement.ts index dbe20bcc470ed893d85025da7e6cb11cccced5f8..98991d9d1096da1eefb842a042141d22bd0165a5 100644 --- a/src/lib/elements/interactions/color/ColorElement.ts +++ b/src/lib/elements/interactions/color/ColorElement.ts @@ -212,11 +212,11 @@ export class ColorElement extends BaseContainer { this._alphaSliderElement.draw(); this.addChild(this._alphaSliderElement); } - } - if (this.removeChild(this._clearButtonElement) === null) { - this._clearButtonElement.draw(); - this.addChild(this._clearButtonElement); + if (this.removeChild(this._clearButtonElement) === null) { + this._clearButtonElement.draw(); + this.addChild(this._clearButtonElement); + } } if (this.removeChild(this._colorPaletteElement) === null) { diff --git a/src/lib/elements/interactions/color/ColorSquareElement.ts b/src/lib/elements/interactions/color/ColorSquareElement.ts index d5ea7bdf88e2932c4038e303d30647e99c0e72b4..12577617cf7bf2afa4459278a0aec04b748d64d7 100644 --- a/src/lib/elements/interactions/color/ColorSquareElement.ts +++ b/src/lib/elements/interactions/color/ColorSquareElement.ts @@ -139,6 +139,8 @@ export class ColorSquareElement extends BaseContainer { const hsl = ColorElement.colorToHSL(color); this._createSliderBackground(hsl.h); + this._pointElement.position.x = this._squareWidth * hsl.s; + this._pointElement.position.y = this._squareHeight - (this._squareHeight * hsl.v); } //</editor-fold> diff --git a/src/lib/elements/interactions/image/ImageNavigatorElement.ts b/src/lib/elements/interactions/image/ImageNavigatorElement.ts index bfed739dd7c3e306bf970d56a1efc4ee85ba42ee..67f671e3197f0d3bac4c8896ecfffe5d93afaa8a 100644 --- a/src/lib/elements/interactions/image/ImageNavigatorElement.ts +++ b/src/lib/elements/interactions/image/ImageNavigatorElement.ts @@ -65,7 +65,7 @@ export class ImageNavigatorElement extends BaseContainer { this.zIndex = 100; this._canvas = canvas; this._image = image; - this._navigationHeight = canvas.height / 6; // TODO + this._navigationHeight = Math.round(canvas.height / 6); // TODO this._hidden = false; // Events @@ -86,10 +86,10 @@ export class ImageNavigatorElement extends BaseContainer { this.modeInteraction.on("remove-default", () => { this._spriteElement.off("pointerover", this._onHover, this); this._spriteElement.off("pointerout", this._onRelease, this); - this.on("pointerdown", this._moveInteraction.startMove, this._moveInteraction); - this.on("pointermove", this._moveInteraction.onMove, this._moveInteraction); - this.on("pointerup", this._moveInteraction.endMove, this._moveInteraction); - this.on("pointerupoutside", this._moveInteraction.endMove, this._moveInteraction); + this.off("pointerdown", this._moveInteraction.startMove, this._moveInteraction); + this.off("pointermove", this._moveInteraction.onMove, this._moveInteraction); + this.off("pointerup", this._moveInteraction.endMove, this._moveInteraction); + this.off("pointerupoutside", this._moveInteraction.endMove, this._moveInteraction); this._image.off("onMove", this._onImage, this); this._image.off("onZoom", this._onImage, this); @@ -211,7 +211,7 @@ export class ImageNavigatorElement extends BaseContainer { // TODO not correct -> WHY ??? this._rectangle = new PIXI.Rectangle(0, 0, this._spriteElement.width, this._spriteElement.height); - const buttonSize = this._spriteElement.height / 3; + const buttonSize = this._navigationHeight / 3; this._visibleAreaElement = new PIXI.Graphics(); this._visibleAreaElement.zIndex = 20; diff --git a/src/lib/elements/interactions/text/CaretElement.ts b/src/lib/elements/interactions/text/CaretElement.ts index bb19f917799013d8644b79a9cf3420c90fba48f4..e77ec31b31b51df856c3b506d57027e5fa78f5e2 100644 --- a/src/lib/elements/interactions/text/CaretElement.ts +++ b/src/lib/elements/interactions/text/CaretElement.ts @@ -83,13 +83,7 @@ export class CaretElement extends BaseContainer { // @ts-ignore const style = this._targetInteraction.targetElement._style; - let heightFactor: number = 0; - let index = text.indexOf("\n"); - while (index > -1) { - text = text.substring(index + 1); - heightFactor++; - index = text.indexOf("\n"); - } + const heightFactor: number = (text.match(/\n/g) || []).length; if (style.wordWrap) { let startIndex: number = 0; diff --git a/src/lib/elements/primitives/ArrowPrimitive.ts b/src/lib/elements/primitives/ArrowPrimitive.ts index 565d5f1fca30602f0cdfa2491b518776ef342b8b..093a8dd814e9700283273921e284ff6bb488b6a8 100644 --- a/src/lib/elements/primitives/ArrowPrimitive.ts +++ b/src/lib/elements/primitives/ArrowPrimitive.ts @@ -108,11 +108,17 @@ export class ArrowPrimitive extends BaseElementContainer<Models.ArrowPrimitive> hasFill: this._hasFillDefault, }; } - if (this.model.options.hasLine && !this.model.options.lineColor) { + if (this.model.options.hasLine && (this.model.options.lineColor === undefined || this.model.options.lineColor === null)) { this.model.options.lineColor = this._lineColorDefault; } - if (this.model.options.hasLine && !this.model.options.lineAlpha) { - this.model.options.fillAlpha = this._lineAlphaDefault; + if (this.model.options.hasLine && (this.model.options.lineAlpha === undefined || this.model.options.lineAlpha === null)) { + this.model.options.lineAlpha = this._lineAlphaDefault; + } + if (this.model.options.hasFill && (this.model.options.fillColor === undefined || this.model.options.fillColor === null)) { + this.model.options.fillColor = this._fillColorDefault; + } + if (this.model.options.hasFill && (this.model.options.lineAlpha === undefined || this.model.options.lineAlpha === null)) { + this.model.options.fillAlpha = this._fillAlphaDefault; } // Setup @@ -240,7 +246,7 @@ export class ArrowPrimitive extends BaseElementContainer<Models.ArrowPrimitive> // On added event this.on("added", (parent: PositionPoint) => { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this._selftestButton.text = parent.isSelftest ? "\uf4b3" : "\uf075"; this._selftestButton.on("button", parent.onSelftestButton, parent); @@ -312,8 +318,6 @@ export class ArrowPrimitive extends BaseElementContainer<Models.ArrowPrimitive> this._arrowElement.drawPolygon(polygon); this._arrowElement.endFill(); - // @ts-ignore - // this._arrowElement.hitArea = new PIXI.Polygon(this._arrowElement.geometry.points); this._arrowElement.hitArea = new PIXI.Polygon(polygon); } @@ -400,6 +404,7 @@ export class ArrowPrimitive extends BaseElementContainer<Models.ArrowPrimitive> protected _stageReady(): void { this.draw(); this.emit("stage-ready"); + this.parent.emit("onLineMove", new PIXI.interaction.InteractionEvent()); } protected _showInteractions(): void { @@ -438,7 +443,7 @@ export class ArrowPrimitive extends BaseElementContainer<Models.ArrowPrimitive> const parent = this.parent as PositionPoint; this._selftestButton.text = parent.isSelftest ? "\uf4b3" : "\uf075"; - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); if (parent.isSelftest) { @@ -584,7 +589,7 @@ export class ArrowPrimitive extends BaseElementContainer<Models.ArrowPrimitive> } protected _removeModeBlocked(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); this.filters = []; @@ -643,7 +648,7 @@ export class ArrowPrimitive extends BaseElementContainer<Models.ArrowPrimitive> } protected _removeSelftestModeChoosing(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); // Events @@ -665,7 +670,7 @@ export class ArrowPrimitive extends BaseElementContainer<Models.ArrowPrimitive> } protected _removeModeInteractiveChoosing(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); // Events diff --git a/src/lib/elements/primitives/EllipsePrimitive.ts b/src/lib/elements/primitives/EllipsePrimitive.ts index b216f3530c559d533f6385ee6b28f78a7ed2f8d5..9c985c151fa70eee46745cce1d22bf3bfc5afd74 100644 --- a/src/lib/elements/primitives/EllipsePrimitive.ts +++ b/src/lib/elements/primitives/EllipsePrimitive.ts @@ -105,11 +105,17 @@ export class EllipsePrimitive extends BaseElementContainer<Models.EllipsePrimiti hasFill: this._hasFillDefault, }; } - if (this.model.options.hasLine && !this.model.options.lineColor) { + if (this.model.options.hasLine && (this.model.options.lineColor === undefined || this.model.options.lineColor === null)) { this.model.options.lineColor = this._lineColorDefault; } - if (this.model.options.hasLine && !this.model.options.lineAlpha) { - this.model.options.fillAlpha = this._lineAlphaDefault; + if (this.model.options.hasLine && (this.model.options.lineAlpha === undefined || this.model.options.lineAlpha === null)) { + this.model.options.lineAlpha = this._lineAlphaDefault; + } + if (this.model.options.hasFill && (this.model.options.lineAlpha === undefined || this.model.options.lineAlpha === null)) { + this.model.options.fillColor = this._fillColorDefault + } + if (this.model.options.hasFill && (this.model.options.fillAlpha === undefined || this.model.options.fillAlpha === null)) { + this.model.options.fillAlpha = this._fillAlphaDefault; } // Setup @@ -226,7 +232,7 @@ export class EllipsePrimitive extends BaseElementContainer<Models.EllipsePrimiti // On added event this.on("added", (parent: PositionPoint) => { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this._selftestButton.text = parent.isSelftest ? "\uf4b3" : "\uf075"; this._selftestButton.on("button", parent.onSelftestButton, parent); @@ -411,7 +417,7 @@ export class EllipsePrimitive extends BaseElementContainer<Models.EllipsePrimiti const parent = this.parent as PositionPoint; this._selftestButton.text = parent.isSelftest ? "\uf4b3" : "\uf075"; - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); if (parent.isSelftest) { @@ -557,7 +563,7 @@ export class EllipsePrimitive extends BaseElementContainer<Models.EllipsePrimiti } protected _removeModeBlocked(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); this.filters = []; @@ -616,7 +622,7 @@ export class EllipsePrimitive extends BaseElementContainer<Models.EllipsePrimiti } protected _removeModeSelftestChoosing(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); // Events @@ -638,7 +644,7 @@ export class EllipsePrimitive extends BaseElementContainer<Models.EllipsePrimiti } protected _removeModeInteractiveChoosing(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); // Events diff --git a/src/lib/elements/primitives/RectanglePrimitive.ts b/src/lib/elements/primitives/RectanglePrimitive.ts index b7e1185393ddcf1963dac071440afe5aa83f2a40..bb2fe2042449ea5880dbdc7566b99893aa468229 100644 --- a/src/lib/elements/primitives/RectanglePrimitive.ts +++ b/src/lib/elements/primitives/RectanglePrimitive.ts @@ -105,11 +105,17 @@ export class RectanglePrimitive extends BaseElementContainer<Models.RectanglePri hasFill: this._hasFillDefault, }; } - if (this.model.options.hasLine && !this.model.options.lineColor) { + if (this.model.options.hasLine && (this.model.options.lineColor === undefined || this.model.options.lineColor === null)) { this.model.options.lineColor = this._lineColorDefault; } - if (this.model.options.hasLine && !this.model.options.lineAlpha) { - this.model.options.fillAlpha = this._lineAlphaDefault; + if (this.model.options.hasLine && (this.model.options.lineAlpha === undefined || this.model.options.lineAlpha === null)) { + this.model.options.lineAlpha = this._lineAlphaDefault; + } + if (this.model.options.hasFill && (this.model.options.fillColor === undefined || this.model.options.fillColor === null)) { + this.model.options.lineColor = this._fillColorDefault; + } + if (this.model.options.hasFill && (this.model.options.fillAlpha === undefined || this.model.options.fillAlpha === null)) { + this.model.options.fillAlpha = this._fillAlphaDefault; } // Setup @@ -226,7 +232,7 @@ export class RectanglePrimitive extends BaseElementContainer<Models.RectanglePri // On added event this.on("added", (parent: PositionPoint) => { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this._selftestButton.text = parent.isSelftest ? "\uf4b3" : "\uf075"; this._selftestButton.on("button", parent.onSelftestButton, parent); @@ -411,7 +417,7 @@ export class RectanglePrimitive extends BaseElementContainer<Models.RectanglePri const parent = this.parent as PositionPoint; this._selftestButton.text = parent.isSelftest ? "\uf4b3" : "\uf075"; - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); if (parent.isSelftest) { @@ -557,7 +563,7 @@ export class RectanglePrimitive extends BaseElementContainer<Models.RectanglePri } protected _removeModeBlocked(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); this.filters = []; @@ -616,7 +622,7 @@ export class RectanglePrimitive extends BaseElementContainer<Models.RectanglePri } protected _removeModeSelftestChoosing(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); // Events @@ -638,7 +644,7 @@ export class RectanglePrimitive extends BaseElementContainer<Models.RectanglePri } protected _removeModeInteractiveChoosing(parent: PositionPoint): void { - this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor || this._fillColorDefault; + this._fillColor = parent.isSelftest ? this._fillColorSelftest : this.model.options.fillColor; this.draw(); // Events diff --git a/src/lib/elements/primitives/TextPrimitive.ts b/src/lib/elements/primitives/TextPrimitive.ts index dd0c7a53e2b35fa4cbd2915e15d22a03e31c5877..08f2a358d72aa9027ca492b4e48e067b84d70603 100644 --- a/src/lib/elements/primitives/TextPrimitive.ts +++ b/src/lib/elements/primitives/TextPrimitive.ts @@ -114,24 +114,24 @@ export class TextPrimitive extends BaseElementContainer<Models.TextPrimitive> { breakWords: this._breakWordsDefault, }; } - if (!this.model.style.fill) { + if (this.model.style.fill === undefined || this.model.style.fill === null) { this.model.style.fill = this._fillColorDefault; } - if (!this.model.style.fontSize) { + if (this.model.style.fontSize === undefined || this.model.style.fontSize === null) { this.model.style.fontSize = this._fontSizeDefault; } - if (!this.model.style.fontFamily) { + if (this.model.style.fontFamily === undefined || this.model.style.fontFamily === null) { this.model.style.fontFamily = this._fontFamilyDefault; } - if (!this.model.style.align) { + if (this.model.style.align === undefined || this.model.style.align === null) { this.model.style.align = this._alignDefault; } - if (!this.model.style.breakWords) { + if (this.model.style.breakWords === undefined || this.model.style.breakWords === null) { this.model.style.breakWords = this._breakWordsDefault; } // Setup - this.zIndex = 300; // TODO how to implement moveToFront etc... + this.zIndex = 301; // TODO how to implement moveToFront etc... this._style = new PIXI.TextStyle(this.model.style); this._style.fontSize = Math.round(this._style.fontSize * this.imageWidth); @@ -306,9 +306,6 @@ export class TextPrimitive extends BaseElementContainer<Models.TextPrimitive> { //<editor-fold desc="Public functions"> public draw(): void { - const bounds = this._textElement.getLocalBounds(new PIXI.Rectangle()); - this._rotateContainer.pivot.set(bounds.width / 2, bounds.height / 2); - // TODO check this values // this.texture.baseTexture.scaleMode = PIXI.SCALE_MODES.NEAREST; // this.context.scale(200,200) @@ -322,9 +319,18 @@ export class TextPrimitive extends BaseElementContainer<Models.TextPrimitive> { this._pivotPoint.endFill(); */ - // TODO this._textElement.hitArea = - this.sortChildren(); + + const bounds = this._textElement.getLocalBounds(new PIXI.Rectangle()); + this._rotateContainer.pivot.set(bounds.width / 2, bounds.height / 2); + // TODO new solution + /* + this._rotateContainer.pivot.x = this._textElement.context.measureText(this._textElement.text).width / 2; + + const heightFactor: number = (this._textElement.text.match(/\n/g) || []).length + 1; + const localHeight = this._textElement.style.fontSize + this._textElement.style.strokeThickness + this._textElement.style.lineHeight + 2; + this._rotateContainer.pivot.y = (localHeight * heightFactor) / 2; + */ } public cleanUp(): void { @@ -825,7 +831,9 @@ export class TextPrimitive extends BaseElementContainer<Models.TextPrimitive> { // Position TODO not needed ?? // this.position.x += (dX + dW / 2) * Math.cos(this.rotation) - (dY + dH / 2) * Math.sin(this.rotation); // this.position.y += (dY + dH / 2) * Math.cos(this.rotation) + (dX + dW / 2) * Math.sin(this.rotation); - this._rotateContainer.pivot.set(this._textElement.width / 2, this._textElement.height / 2); + // TODO check this._rotateContainer.pivot.set(this._textElement.width / 2, this._textElement.height / 2); + const bounds = this._textElement.getLocalBounds(new PIXI.Rectangle()); + this._rotateContainer.pivot.set(bounds.width / 2, bounds.height / 2); this.draw(); this._scaleElement.draw(); @@ -970,8 +978,16 @@ export class TextPrimitive extends BaseElementContainer<Models.TextPrimitive> { public showItem(): void { this._textElement.renderable = true; - const bounds = this.getLocalBounds(); + const bounds = this._textElement.getLocalBounds(new PIXI.Rectangle()); this._rotateContainer.pivot.set(bounds.width / 2, bounds.height / 2); + /* + // TODO new solution + this._rotateContainer.pivot.x = this._textElement.context.measureText(this._textElement.text).width / 2; + + const heightFactor: number = (this._textElement.text.match(/\n/g) || []).length + 1; + const localHeight = this._textElement.style.fontSize + this._textElement.style.strokeThickness + this._textElement.style.lineHeight + 2; + this._rotateContainer.pivot.y = (localHeight * heightFactor) / 2; + */ } public hideItem(): void { diff --git a/src/public/index.html b/src/public/index.html index 4c6e03d7fdc48e47b6fa4649934bc7af7e8ecbc0..d6282fa6d958f59582a7808967913956dc7f6af6 100644 --- a/src/public/index.html +++ b/src/public/index.html @@ -345,7 +345,7 @@ </style> </head> <body> - <canvas id="medsurf_canvas" width="1200" height="800" oncontextmenu="return false;"></canvas> + <canvas id="medsurf_canvas" width="1500" height="952" oncontextmenu="return false;"></canvas> <button id="button_default">Default</button> <button id="button_marker">Marker</button> <button id="button_selftest">Selftest</button>