1 Commits

Author SHA1 Message Date
Sebastian 289d433054 chore(deps): update dependency phpunit/phpunit to v12.5.34
JS Unit Tests / test (pull_request) Successful in 1m20s
Build Test / test (pull_request) Successful in 1m23s
PHP Integration Tests / Integration Tests (pull_request) Failing after 2m9s
PHP Unit Tests / test (pull_request) Failing after 1m45s
2026-08-30 03:02:58 +00:00
4 changed files with 21 additions and 21 deletions
Generated
+6 -6
View File
@@ -589,16 +589,16 @@
}, },
{ {
"name": "phpunit/phpunit", "name": "phpunit/phpunit",
"version": "12.5.35", "version": "12.5.34",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git", "url": "https://github.com/sebastianbergmann/phpunit.git",
"reference": "345ac22e42cb14cdc7aa8428655d8bb8c82a4aab" "reference": "6cbff63d670de92cb1cb3d2ff9f40327e9da9c7f"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/345ac22e42cb14cdc7aa8428655d8bb8c82a4aab", "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/6cbff63d670de92cb1cb3d2ff9f40327e9da9c7f",
"reference": "345ac22e42cb14cdc7aa8428655d8bb8c82a4aab", "reference": "6cbff63d670de92cb1cb3d2ff9f40327e9da9c7f",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@@ -667,7 +667,7 @@
"support": { "support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues", "issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy", "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
"source": "https://github.com/sebastianbergmann/phpunit/tree/12.5.35" "source": "https://github.com/sebastianbergmann/phpunit/tree/12.5.34"
}, },
"funding": [ "funding": [
{ {
@@ -675,7 +675,7 @@
"type": "other" "type": "other"
} }
], ],
"time": "2026-09-09T04:48:50+00:00" "time": "2026-08-27T08:38:28+00:00"
}, },
{ {
"name": "sebastian/cli-parser", "name": "sebastian/cli-parser",
+12 -7
View File
@@ -4,14 +4,13 @@ namespace KTXM\Mail;
use KTXF\Event\DeliveryMode; use KTXF\Event\DeliveryMode;
use KTXF\Event\EventListenerRegistrarInterface; use KTXF\Event\EventListenerRegistrarInterface;
use KTXF\Module\Configuration\BrowserModuleContextInterface; use KTXF\Module\ModuleBrowserInterface;
use KTXF\Module\Configuration\ModuleContextInterface;
use KTXF\Module\ModuleInstanceAbstract; use KTXF\Module\ModuleInstanceAbstract;
/** /**
* Mail Module - Email Client * Mail Module - Email Client
*/ */
class Module extends ModuleInstanceAbstract class Module extends ModuleInstanceAbstract implements ModuleBrowserInterface
{ {
public function __construct( public function __construct(
@@ -80,10 +79,16 @@ class Module extends ModuleInstanceAbstract
]; ];
} }
public function configure(ModuleContextInterface $context): void public function registerBI(): array
{ {
if ($context instanceof BrowserModuleContextInterface) { return [
$context->registerModule($this, 'Mail', 'static/module.mjs'); 'handle' => $this->handle(),
} 'namespace' => 'Mail',
'version' => $this->version(),
'label' => $this->label(),
'author' => $this->author(),
'description' => $this->description(),
'boot' => 'static/module.mjs',
];
} }
} }
+1 -3
View File
@@ -1,6 +1,6 @@
<script setup lang="ts"> <script setup lang="ts">
import { computed, ref, watch } from 'vue' import { computed, ref, watch } from 'vue'
import { usePreviewStore, useUser } from '@KTXC' import { useUser } from '@KTXC'
import { useMailUiStore } from '@/stores/mailUiStore' import { useMailUiStore } from '@/stores/mailUiStore'
import type { EntityObject, MessageObject } from '@MailManager/models' import type { EntityObject, MessageObject } from '@MailManager/models'
import { SecurityLevel } from '@/utile/emailSanitizer' import { SecurityLevel } from '@/utile/emailSanitizer'
@@ -29,7 +29,6 @@ const emit = defineEmits<{
// User settings // User settings
const { getSetting } = useUser() const { getSetting } = useUser()
const previewStore = usePreviewStore()
const mailUiStore = useMailUiStore() const mailUiStore = useMailUiStore()
// Security overrides // Security overrides
@@ -66,7 +65,6 @@ const effectiveSecurityLevel = computed(() => {
// Preview state // Preview state
const previewDialog = computed(() => mediaViewerComponent('dialog')) const previewDialog = computed(() => mediaViewerComponent('dialog'))
const previewItems = computed<MediaViewerItem[]>(() => { const previewItems = computed<MediaViewerItem[]>(() => {
if (!previewStore.availability.storage) return []
const attachments = message.value?.attachments ?? [] const attachments = message.value?.attachments ?? []
const items: MediaViewerItem[] = [] const items: MediaViewerItem[] = []
attachments.forEach((attachment, index) => { attachments.forEach((attachment, index) => {
+2 -5
View File
@@ -1,6 +1,5 @@
<script setup lang="ts"> <script setup lang="ts">
import { computed } from 'vue' import { computed } from 'vue'
import { usePreviewStore } from '@KTXC'
import RecipientDetails from '@/components/common/RecipientDetails.vue' import RecipientDetails from '@/components/common/RecipientDetails.vue'
import { formatFileSize } from '@/utile/format' import { formatFileSize } from '@/utile/format'
import { mediaViewerCanDisplay, mediaViewerComponent } from '@/services/mediaViewer' import { mediaViewerCanDisplay, mediaViewerComponent } from '@/services/mediaViewer'
@@ -28,9 +27,7 @@ const emit = defineEmits<{
}>() }>()
const mailUiStore = useMailUiStore() const mailUiStore = useMailUiStore()
const previewStore = usePreviewStore() const previewPopover = computed(() => mediaViewerComponent('popover'))
const previewsAvailable = computed(() => previewStore.availability.storage)
const previewPopover = computed(() => previewsAvailable.value ? mediaViewerComponent('popover') : null)
const message = computed(() => { const message = computed(() => {
return props.entity?.properties ?? null return props.entity?.properties ?? null
@@ -51,7 +48,7 @@ const attachmentItems = computed<AttachmentItem[]>(() =>
) )
const isPreviewable = (attachment: MessagePartInterface): boolean => { const isPreviewable = (attachment: MessagePartInterface): boolean => {
return previewsAvailable.value && mediaViewerCanDisplay(attachment.type) return mediaViewerCanDisplay(attachment.type)
} }
const handleAttachmentClick = (attachment: MessagePartInterface, index: number): void => { const handleAttachmentClick = (attachment: MessagePartInterface, index: number): void => {