3 Commits

Author SHA1 Message Date
Sebastian 1b88314df9 chore(deps): update tiptap monorepo to v3.30.6
Build Test / test (pull_request) Successful in 50s
JS Unit Tests / test (pull_request) Successful in 45s
PHP Integration Tests / Integration Tests (pull_request) Failing after 1m22s
PHP Unit Tests / test (pull_request) Failing after 1m33s
2026-09-01 03:05:12 +00:00
Sebastian 5c9e13f87b refactor(module): register browser integration through context
Signed-off-by: Sebastian <krupinski01@gmail.com>
2026-08-31 22:55:11 -04:00
Sebastian 9508106d4f feat(preview): disable attachment previews when unavailable
Signed-off-by: Sebastian <krupinski01@gmail.com>
2026-08-31 22:55:11 -04:00
4 changed files with 168 additions and 168 deletions
+7 -12
View File
@@ -4,13 +4,14 @@ namespace KTXM\Mail;
use KTXF\Event\DeliveryMode;
use KTXF\Event\EventListenerRegistrarInterface;
use KTXF\Module\ModuleBrowserInterface;
use KTXF\Module\Configuration\BrowserModuleContextInterface;
use KTXF\Module\Configuration\ModuleContextInterface;
use KTXF\Module\ModuleInstanceAbstract;
/**
* Mail Module - Email Client
*/
class Module extends ModuleInstanceAbstract implements ModuleBrowserInterface
class Module extends ModuleInstanceAbstract
{
public function __construct(
@@ -79,16 +80,10 @@ class Module extends ModuleInstanceAbstract implements ModuleBrowserInterface
];
}
public function registerBI(): array
public function configure(ModuleContextInterface $context): void
{
return [
'handle' => $this->handle(),
'namespace' => 'Mail',
'version' => $this->version(),
'label' => $this->label(),
'author' => $this->author(),
'description' => $this->description(),
'boot' => 'static/module.mjs',
];
if ($context instanceof BrowserModuleContextInterface) {
$context->registerModule($this, 'Mail', 'static/module.mjs');
}
}
}
+153 -153
View File
@@ -795,49 +795,49 @@
"license": "MIT"
},
"node_modules/@tiptap/core": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/core/-/core-3.30.5.tgz",
"integrity": "sha512-3O7N0FyKIfuLV+xrdWyDM3V5eUY/q2CgLjhhMwOAbM1Pu7VPp9VP+TpEYOdH8aRyB+h1vj5hX5A747D8ZrPfHA==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/core/-/core-3.30.6.tgz",
"integrity": "sha512-M32+WOx1IrPRbPunhG1Xl7ETgUZJGABpGi/y969Uio6rR4tPBnOgFG5xXE3Xw6OQtYUqUE2n9nnnckoObZwBzA==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/pm": "3.30.5"
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/extension-blockquote": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-3.30.5.tgz",
"integrity": "sha512-8pf1ZDrl6XlVPUee/2YlWZPFSF7yqsJEX6WLW41x06MT1dapG3Qudcns0znj6kYsX8JXTJ+Mhegy4z19bvTtRg==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-3.30.6.tgz",
"integrity": "sha512-tOBZ1Ol7zWCAlsuHK76cWoMMJyyAhJG+cZn4iFRtmGQZGyZUQMYYlSahgvxbDLFdcuB977nuUNAI2XniEKA6cQ==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/extension-bold": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-3.30.5.tgz",
"integrity": "sha512-MLZS+s/BJiJbv2C2M3G4FQGn43kPwYUUr2TiW3afSn+dRkEZlDxx5CwZYbe1PEt2+VX/SIifn945Oqr3s0axSA==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-3.30.6.tgz",
"integrity": "sha512-vQSqHcnoe5K9f5/XpWH8tBDvrFI3uvEv17qFj28dlNH/DOIMHPSBSFKzrfinuFcDGHHb1B1pTE5Yu0KH2Qomow==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-bubble-menu": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-3.30.5.tgz",
"integrity": "sha512-redcmBInVwmipjF/WEVcNwCUJgJygUv8leidfRb/jBSAwx7GgnQWPr2HVQDk9zeTt3ykWld2NRdrk94Crjymow==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-3.30.6.tgz",
"integrity": "sha512-DhfCF2Hkcp6djGpp8yrX9w1lQAzY7oEhW0ouAmWicSJFUrxfhIjrElg/DxMOdHxYlydFeZTZ5vqybBzI34VzCg==",
"license": "MIT",
"optional": true,
"dependencies": {
@@ -848,80 +848,80 @@
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/extension-bullet-list": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-3.30.5.tgz",
"integrity": "sha512-66OGw4suO0Gr/4QAEiSvVi0eSvEqStvu1moHUSvUlwvEqnuB0ME2w9HuRogPElzWdrYLzbBA47mlCi9Veva0ew==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-3.30.6.tgz",
"integrity": "sha512-rVPEN4fZqwDcNrxfxSgPkoK4gPbwVLgwEJWvb9Y3Nhf4SkwrKDvO05QHTa6+DGe5LP3Tl5dC305l5UsmnwfHqg==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/extension-list": "3.30.5"
"@tiptap/extension-list": "3.30.6"
}
},
"node_modules/@tiptap/extension-code": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-code/-/extension-code-3.30.5.tgz",
"integrity": "sha512-0dCt8eBo4sMtw+LjUu+0GF0JrTlREROdWoy8TM5kFPxJ5ZU2LKDiROXDPwXStaaoFFR/aStLH9xSpdz7cHUiUA==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-code/-/extension-code-3.30.6.tgz",
"integrity": "sha512-az8RByq9Aftg+AwrQ2fS08o4SJZ9VIwJNYngwDwAGY8OxM1z/tPVTZRz771XV6V+ngbfh7J9Rv3Gk4MNmNUp0w==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-code-block": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-code-block/-/extension-code-block-3.30.5.tgz",
"integrity": "sha512-SvkNoOio2xBy9AtSMyFKMp88MTUvyIXsGCnuz71INV2wHdH4VfRPoQLT6e077LpTCa9w6LHyTKtbZA4HYOp7wg==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-code-block/-/extension-code-block-3.30.6.tgz",
"integrity": "sha512-zsAcDEcVIDxxCh+Em0O1yd252gh3T2WmoezPYQOqVIiZwW8yztebjiKMoagFvLyVKZBtHdkW9cYgb62PrR17Pw==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/extension-document": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-3.30.5.tgz",
"integrity": "sha512-4mKoD3bBr5W2AQ2Y/7amOqcVw0eqJbUwRtwvxypeo5Hi0PB9O5Ev8P05c3EUTo10bllqdKYXGeCU5AcgdQsHWQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-3.30.6.tgz",
"integrity": "sha512-eaDIPRJNAzc3hpRizrySColkdxXDBtrFhZHRU3TZv2O6HVKmg3LVSSCpJiHSxY6iR8+TC41p4bg8Ql6O20Y9xQ==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-dropcursor": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-3.30.5.tgz",
"integrity": "sha512-gJxn9PMUee8zazQBYqbOZiI7zTFXPVJ15AzTnLfUu4eDtPieMwtpgcjhCt4bZlp37drLm+Li76wWLirb7iLxsw==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-3.30.6.tgz",
"integrity": "sha512-GDuhDsUxIIiluLS1RuZ9zoPqHdybqJpuV6VhCGFJuzDmiraYPctj3AbbkX9xYZyukgO6tPN9MQtX26LJuFt7og==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/extensions": "3.30.5"
"@tiptap/extensions": "3.30.6"
}
},
"node_modules/@tiptap/extension-floating-menu": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-3.30.5.tgz",
"integrity": "sha512-gTjGPWUpGn8IoW533TciZJZC/81LmBgU7zee+aRMRF3ix3K2z1pJjl6knDvrRQA6Kom+yWFaiueqGNXkrk38XQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-3.30.6.tgz",
"integrity": "sha512-i+xnVadPRFLx7hPVn01UaaSmemC8wPQ64NNFHPD5wOMub006RcZLkmojz4DuAUTBPuArj3i8Sf7ep00Mj2LWbg==",
"license": "MIT",
"optional": true,
"funding": {
@@ -930,80 +930,80 @@
},
"peerDependencies": {
"@floating-ui/dom": "^1.0.0",
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/extension-gapcursor": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-3.30.5.tgz",
"integrity": "sha512-h3m2ZA1XXLAfdHwdtG0MZnf0KWbNyP8xTI3RUlTDR5apmKmYVBaeocOJwTcFFZ92gPKqxYKyhteZqYtHOCZGJA==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-3.30.6.tgz",
"integrity": "sha512-QDEip3y0k2W2oMhNc1Yyi1NhD+4Q+BtCjuCRpRld9VH60cuRROIq60KU+VkOoCJ9o6p6djrn6j1g6PZsG69Bxw==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/extensions": "3.30.5"
"@tiptap/extensions": "3.30.6"
}
},
"node_modules/@tiptap/extension-hard-break": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-3.30.5.tgz",
"integrity": "sha512-PcL4Z8l/DlauwZUJg0jf6SXKk6/YOXJtd8yYzqHrmCLRoY4kAa7+TxUhc/lWhuitUiOZ8+nB8V/NNM+WR6mRaw==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-3.30.6.tgz",
"integrity": "sha512-8ALo10VWFYLF/9eS3iRZrx3EMbokMhRdJbSgk9+dU+zuh8yGFQnMyf30Wpu3K9DIseHtDZQTI7rjl0o8ayNPZw==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-heading": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-3.30.5.tgz",
"integrity": "sha512-x7e7+p1bWXvwz6vqONPP1SVB73V0gZP7LIDL/5KMnxWLjahMTabgVPgjV30kz7GsOEgUYtEf7eCyGVGNNWL5Dg==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-3.30.6.tgz",
"integrity": "sha512-32lPwP8BeLFGQV+U/HrwbK+ItQMiN13LppKnQtUUNl3FwG440qPpnQo7eCEAxTkUg/M+VTjNn/UHnJMsOFPklw==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-horizontal-rule": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-3.30.5.tgz",
"integrity": "sha512-s5t2xM6wPYRJl2cqYplc7Ze8m8xddk4DP2v0aLFcUuD100D1B5eJbxsiwLK6wBAzNwiuVjd486RnmUpcswaXhQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-3.30.6.tgz",
"integrity": "sha512-38SokgorOsmLNWwMHhrkoxIaWd73Setoo4J0slrlqvMItovshqjqYjtSohdUk09Yr+cxxcGUP9m8zxBEyi5ZsA==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/extension-italic": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-3.30.5.tgz",
"integrity": "sha512-Fu9EuSRlHQNGES7UhY4mQod3yUKnWwxsGlPuDJURfwju/Ug04Jz8iRuERZBPcRgLNkwKDmbDsWUZF72RRIL2Uw==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-3.30.6.tgz",
"integrity": "sha512-vbltMPEePHWsGhvPH01yfT9GNJNMs2oUwPhqC0z/Brychu/oFe+0FR4RKFBVXnZg8oRfGQEOJ6OjD9jKDAZ0zQ==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-link": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-3.30.5.tgz",
"integrity": "sha512-zsQ+q83HpCYOMTNzdjb12dggE7sZMp0aqQJhArdavSTl8hLbVY/u3qJN88t25IEwAKVK0pcTJfWWA2QFl8bjAQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-3.30.6.tgz",
"integrity": "sha512-xyQ5e3oKphCE84ig8bXCJ6I2esMmFvwHJk4/o8uIxQBVT1yOUyG3ZNJG0431SQ2xrUw0bPWY80F9Kla7HFiSgA==",
"license": "MIT",
"dependencies": {
"linkifyjs": "^4.3.3"
@@ -1013,159 +1013,159 @@
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/extension-list": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list/-/extension-list-3.30.5.tgz",
"integrity": "sha512-CHThihH+7TA0TfwtmA+eTXP1MAsA/+p011olJHg8Rilj5xA+L+0IFkjhN16JnZkBgSA4MnfEv15UMNfRaNpuVg==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list/-/extension-list-3.30.6.tgz",
"integrity": "sha512-vNzXMap27plACDvyeEUlUyB01Rw1IOWn+wABIEuiIyJzVpZ6n5T8ck2nwHXp6lTy5xxGi7MnVq8epOjqCG1g8A==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/extension-list-item": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-3.30.5.tgz",
"integrity": "sha512-N0fKUyQkPQBvVB48imjfIfdexU9VsAX1RydajYP2xAt+QOJ8KHVmXv1EGTp+v7pGdZMLdls1cSZ2f352vW3aWQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-3.30.6.tgz",
"integrity": "sha512-a97knOHxLI/QF1nvtn6SIC9abspB7miKXBSXMGQwlt5iqJcwHDyj1neXi2KAruam8i4932uc+zishYeFka9yvA==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/extension-list": "3.30.5"
"@tiptap/extension-list": "3.30.6"
}
},
"node_modules/@tiptap/extension-list-keymap": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list-keymap/-/extension-list-keymap-3.30.5.tgz",
"integrity": "sha512-3pLR2yo29uhowaGMbD8v71XpgdNmqotBg1NXlyTMVFzxELj+VjjeLLTqSguR/iWDUbHXNzIsfMEgpRnNMO//8w==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-list-keymap/-/extension-list-keymap-3.30.6.tgz",
"integrity": "sha512-FTNFPR+DYDWR48Ak46tvpNzHPQ1exUgxFVUv4grHJq8tdMl1KWYW4DZmcOIe2Tk7kmlDmC14rKmUvFcdKMUgAA==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/extension-list": "3.30.5"
"@tiptap/extension-list": "3.30.6"
}
},
"node_modules/@tiptap/extension-ordered-list": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-3.30.5.tgz",
"integrity": "sha512-bUGUnSAgjZhoUWBtr+1wRJHF3NnNvuKQr6sQ8le1tJ2yvLq448ZsSZjZGvTNeLsy3GDKBoMJ0rqLUK34+nM3hg==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-3.30.6.tgz",
"integrity": "sha512-DWQELBaaCtL9ZRdkeIjgNsz0wZ93SAdPVBpH0pIxOsf/p2JbSBI1ipCVGVysr9SB8ULGsCthZk+cZwZoAOu7qA==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/extension-list": "3.30.5"
"@tiptap/extension-list": "3.30.6"
}
},
"node_modules/@tiptap/extension-paragraph": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-3.30.5.tgz",
"integrity": "sha512-GrNNlAImfQhYRtGE95YNAjcTclUUMPHs9JeE9vMgfcoKcOmZ6GsbWUdN0hA55xqwGaUjnroOVtf77K9z1EbkJQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-3.30.6.tgz",
"integrity": "sha512-l+syX39aTG3BSNmkIXgrawRgSrFmQ/Hlz+5j2+OYXcHFFqj2cnnpZMzZFMynJUFKRLDgldfUs+UMsgelZNDScw==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-placeholder": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-3.30.5.tgz",
"integrity": "sha512-WgkX4ImAAeV+Qe7ATJ+Gio2MmKWON1CKpCKPHWgCObaoMEaSmdoxXPmI9wXMuM+AJydJepp4n7U/V4TVts14rg==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-3.30.6.tgz",
"integrity": "sha512-mDW1u45YsTsFexq2EZAKTLPU0koX+FDL5iZGztet7IlNWJx8tKL6jqmeRTlCHV8PfKzZZNza0pNVpT/0DdWycQ==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/extensions": "3.30.5"
"@tiptap/extensions": "3.30.6"
}
},
"node_modules/@tiptap/extension-strike": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-3.30.5.tgz",
"integrity": "sha512-r8IbWUm4YXNCkmc6h6dzuREQIGbO0x9z9l3GfQPUR3LxFtGssDLngE4dFXHRt/ejLWKEauy6clklf7LawtvYzw==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-3.30.6.tgz",
"integrity": "sha512-aRtyDDS88+eT6r3krn94ajLTVccxaukEHWJoDwq0devAqFq9d0ftaYU9aNSSKzG/TAsIObXX/1MKSiJQC+Z/Rw==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-text": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-3.30.5.tgz",
"integrity": "sha512-pOgj4mIGFlw4NUdA6PCTFP/MHrYWnOYiZRYeu0I3/Yo3iN4Am/CgYBLl8PWsNh+YPO2hA2DWs7ZMke9D2j5R+g==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-3.30.6.tgz",
"integrity": "sha512-N55Mf9Xo3Zl5f7MSlBpxIYWktYIgE7yY3QT9IGrhm6VBSF9bAHToVDOEWCkgTEinerBcWraPFMDl8NMtX7Cdqw==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-text-align": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-text-align/-/extension-text-align-3.30.5.tgz",
"integrity": "sha512-nRiAXqfpnuYkxOTFmK09vKf0Obv+yYA6UvmQ2yhjaThf7/i+ncxAbmxWttAV8GEy2fGpuXxkJYtIgDXXN7tVPg==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-text-align/-/extension-text-align-3.30.6.tgz",
"integrity": "sha512-Y88BonXKxX6CJu0NRaNGF5v1kd/C0V0GmFVF98AHI4Q5h1E3uekIIuKLTn3WPXvTW2wmYWDYFNk4GUrNHcuUNw==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extension-underline": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-3.30.5.tgz",
"integrity": "sha512-u12G/WW2uFRY95BzrSAU9RW002K+7lFpSCL6fb7Puh8yLhek3lddOtAx0P+NI/PyMKtcoVMtBxoi+0mwVM7NPQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-3.30.6.tgz",
"integrity": "sha512-6NyWmSOGzbeiwT6Vita3F/msePEQ2fuuzjSguPU1ebXUG04D3h8rNjoBrrfGt6OrwP/pdIri3VVVP5H1suxxkA==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5"
"@tiptap/core": "3.30.6"
}
},
"node_modules/@tiptap/extensions": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/extensions/-/extensions-3.30.5.tgz",
"integrity": "sha512-5x3OiCYBvXz0G5OGM8f7ka++1dh9EXdNRZ8IcMcEd+QwW4RPwvmJ2EjheA1eRRyMlcbNU7T+4IRlBXURlTetEA==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/extensions/-/extensions-3.30.6.tgz",
"integrity": "sha512-8SYpu3E+ZuWhTGWtjcWPtcJmcotrADYBuXIu+bgdZjcuaxRHs+6IpNvdLabl3q46W7+0A11GginPDJNqrMKk2A==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"peerDependencies": {
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6"
}
},
"node_modules/@tiptap/pm": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/pm/-/pm-3.30.5.tgz",
"integrity": "sha512-gufkLkW2tA6PZPjivYxDiGzTIIftwqhmYI6lvvKu2S4FbhcysJgMAe/GXVSywzCRVVex9SrvCe6RFYrqnwRitQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/pm/-/pm-3.30.6.tgz",
"integrity": "sha512-FVzgc+7TMKUreBqFHmyhDSkFUMZPgIzWdeNt4sWLFEzwzdklgKy/+MZClAq9m+bJJU2FKC2+SVmWTatZD6didg==",
"license": "MIT",
"dependencies": {
"prosemirror-changeset": "^2.4.1",
@@ -1188,35 +1188,35 @@
}
},
"node_modules/@tiptap/starter-kit": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/starter-kit/-/starter-kit-3.30.5.tgz",
"integrity": "sha512-cmDRvukpoqjQjhE96q+l3tCLNZZcJKehxK+00Sp9F4XbKecfM2QpZ2TRHh3vi8qhCeDQNyMoCqfNaqznIjLjIQ==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/starter-kit/-/starter-kit-3.30.6.tgz",
"integrity": "sha512-qQ+awpHaTNYhYbAAxLavWAo0CJBq43m1088yCxHhsITT1b2gGI0Mp2tTJ4aWtm0GxaJIlERUEvHfZRj/HuOJRg==",
"license": "MIT",
"dependencies": {
"@tiptap/core": "3.30.5",
"@tiptap/extension-blockquote": "3.30.5",
"@tiptap/extension-bold": "3.30.5",
"@tiptap/extension-bullet-list": "3.30.5",
"@tiptap/extension-code": "3.30.5",
"@tiptap/extension-code-block": "3.30.5",
"@tiptap/extension-document": "3.30.5",
"@tiptap/extension-dropcursor": "3.30.5",
"@tiptap/extension-gapcursor": "3.30.5",
"@tiptap/extension-hard-break": "3.30.5",
"@tiptap/extension-heading": "3.30.5",
"@tiptap/extension-horizontal-rule": "3.30.5",
"@tiptap/extension-italic": "3.30.5",
"@tiptap/extension-link": "3.30.5",
"@tiptap/extension-list": "3.30.5",
"@tiptap/extension-list-item": "3.30.5",
"@tiptap/extension-list-keymap": "3.30.5",
"@tiptap/extension-ordered-list": "3.30.5",
"@tiptap/extension-paragraph": "3.30.5",
"@tiptap/extension-strike": "3.30.5",
"@tiptap/extension-text": "3.30.5",
"@tiptap/extension-underline": "3.30.5",
"@tiptap/extensions": "3.30.5",
"@tiptap/pm": "3.30.5"
"@tiptap/core": "3.30.6",
"@tiptap/extension-blockquote": "3.30.6",
"@tiptap/extension-bold": "3.30.6",
"@tiptap/extension-bullet-list": "3.30.6",
"@tiptap/extension-code": "3.30.6",
"@tiptap/extension-code-block": "3.30.6",
"@tiptap/extension-document": "3.30.6",
"@tiptap/extension-dropcursor": "3.30.6",
"@tiptap/extension-gapcursor": "3.30.6",
"@tiptap/extension-hard-break": "3.30.6",
"@tiptap/extension-heading": "3.30.6",
"@tiptap/extension-horizontal-rule": "3.30.6",
"@tiptap/extension-italic": "3.30.6",
"@tiptap/extension-link": "3.30.6",
"@tiptap/extension-list": "3.30.6",
"@tiptap/extension-list-item": "3.30.6",
"@tiptap/extension-list-keymap": "3.30.6",
"@tiptap/extension-ordered-list": "3.30.6",
"@tiptap/extension-paragraph": "3.30.6",
"@tiptap/extension-strike": "3.30.6",
"@tiptap/extension-text": "3.30.6",
"@tiptap/extension-underline": "3.30.6",
"@tiptap/extensions": "3.30.6",
"@tiptap/pm": "3.30.6"
},
"funding": {
"type": "github",
@@ -1224,22 +1224,22 @@
}
},
"node_modules/@tiptap/vue-3": {
"version": "3.30.5",
"resolved": "https://registry.npmjs.org/@tiptap/vue-3/-/vue-3-3.30.5.tgz",
"integrity": "sha512-YRHacQy09nFcokAScICxJ6pWr5daWbsLJuBiMo+DJQlr1XLi6o/zFhh3eR9+DKluL4OY3IZDYBYZfDs7YZtJNg==",
"version": "3.30.6",
"resolved": "https://registry.npmjs.org/@tiptap/vue-3/-/vue-3-3.30.6.tgz",
"integrity": "sha512-qSHF1aMjcAKiJrTYbPLVL3bQ1xG4akaf8I/x9/swwEYvwR9OiiNHsZQ5MSwK7hay0vCYMoEsu0sN7xYA7q0o7Q==",
"license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/ueberdosis"
},
"optionalDependencies": {
"@tiptap/extension-bubble-menu": "^3.30.5",
"@tiptap/extension-floating-menu": "^3.30.5"
"@tiptap/extension-bubble-menu": "^3.30.6",
"@tiptap/extension-floating-menu": "^3.30.6"
},
"peerDependencies": {
"@floating-ui/dom": "^1.0.0",
"@tiptap/core": "3.30.5",
"@tiptap/pm": "3.30.5",
"@tiptap/core": "3.30.6",
"@tiptap/pm": "3.30.6",
"vue": "^3.0.0"
}
},
+3 -1
View File
@@ -1,6 +1,6 @@
<script setup lang="ts">
import { computed, ref, watch } from 'vue'
import { useUser } from '@KTXC'
import { usePreviewStore, useUser } from '@KTXC'
import { useMailUiStore } from '@/stores/mailUiStore'
import type { EntityObject, MessageObject } from '@MailManager/models'
import { SecurityLevel } from '@/utile/emailSanitizer'
@@ -29,6 +29,7 @@ const emit = defineEmits<{
// User settings
const { getSetting } = useUser()
const previewStore = usePreviewStore()
const mailUiStore = useMailUiStore()
// Security overrides
@@ -65,6 +66,7 @@ const effectiveSecurityLevel = computed(() => {
// Preview state
const previewDialog = computed(() => mediaViewerComponent('dialog'))
const previewItems = computed<MediaViewerItem[]>(() => {
if (!previewStore.availability.storage) return []
const attachments = message.value?.attachments ?? []
const items: MediaViewerItem[] = []
attachments.forEach((attachment, index) => {
+5 -2
View File
@@ -1,5 +1,6 @@
<script setup lang="ts">
import { computed } from 'vue'
import { usePreviewStore } from '@KTXC'
import RecipientDetails from '@/components/common/RecipientDetails.vue'
import { formatFileSize } from '@/utile/format'
import { mediaViewerCanDisplay, mediaViewerComponent } from '@/services/mediaViewer'
@@ -27,7 +28,9 @@ const emit = defineEmits<{
}>()
const mailUiStore = useMailUiStore()
const previewPopover = computed(() => mediaViewerComponent('popover'))
const previewStore = usePreviewStore()
const previewsAvailable = computed(() => previewStore.availability.storage)
const previewPopover = computed(() => previewsAvailable.value ? mediaViewerComponent('popover') : null)
const message = computed(() => {
return props.entity?.properties ?? null
@@ -48,7 +51,7 @@ const attachmentItems = computed<AttachmentItem[]>(() =>
)
const isPreviewable = (attachment: MessagePartInterface): boolean => {
return mediaViewerCanDisplay(attachment.type)
return previewsAvailable.value && mediaViewerCanDisplay(attachment.type)
}
const handleAttachmentClick = (attachment: MessagePartInterface, index: number): void => {