diff options
author | John Molakvoæ <skjnldsv@protonmail.com> | 2023-11-03 19:49:53 +0100 |
---|---|---|
committer | John Molakvoæ <skjnldsv@protonmail.com> | 2023-11-08 08:40:27 +0100 |
commit | 32c1aebaae07b9b4d7e2dcdfca6b2cbd36a6cfc3 (patch) | |
tree | 26b047d37a3c3276e9336936f0d5c8bbde949869 /apps | |
parent | 50417bcee8f103fb569a860b63cf8cf1e6bc1c18 (diff) | |
download | nextcloud-server-32c1aebaae07b9b4d7e2dcdfca6b2cbd36a6cfc3.tar.gz nextcloud-server-32c1aebaae07b9b4d7e2dcdfca6b2cbd36a6cfc3.zip |
fix(cypress): formatFileSize change revert from files library
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
Diffstat (limited to 'apps')
10 files changed, 57 insertions, 49 deletions
diff --git a/apps/files/src/components/FileEntry/FileEntryActions.vue b/apps/files/src/components/FileEntry/FileEntryActions.vue index 3637c9472d5..5a1b3235d90 100644 --- a/apps/files/src/components/FileEntry/FileEntryActions.vue +++ b/apps/files/src/components/FileEntry/FileEntryActions.vue @@ -42,25 +42,23 @@ :open.sync="openedMenu" @close="openedSubmenu = null"> <!-- Default actions list--> - <template> - <NcActionButton v-for="action in enabledMenuActions" - :key="action.id" - :class="{ - [`files-list__row-action-${action.id}`]: true, - [`files-list__row-action--menu`]: isMenu(action.id) - }" - :close-after-click="!isMenu(action.id)" - :data-cy-files-list-row-action="action.id" - :is-menu="isMenu(action.id)" - :title="action.title?.([source], currentView)" - @click="onActionClick(action)"> - <template #icon> - <NcLoadingIcon v-if="loading === action.id" :size="18" /> - <NcIconSvgWrapper v-else :svg="action.iconSvgInline([source], currentView)" /> - </template> - {{ actionDisplayName(action) }} - </NcActionButton> - </template> + <NcActionButton v-for="action in enabledMenuActions" + :key="action.id" + :class="{ + [`files-list__row-action-${action.id}`]: true, + [`files-list__row-action--menu`]: isMenu(action.id) + }" + :close-after-click="!isMenu(action.id)" + :data-cy-files-list-row-action="action.id" + :is-menu="isMenu(action.id)" + :title="action.title?.([source], currentView)" + @click="onActionClick(action)"> + <template #icon> + <NcLoadingIcon v-if="loading === action.id" :size="18" /> + <NcIconSvgWrapper v-else :svg="action.iconSvgInline([source], currentView)" /> + </template> + {{ actionDisplayName(action) }} + </NcActionButton> <!-- Submenu actions list--> <template v-if="openedSubmenu && enabledSubmenuActions[openedSubmenu?.id]"> diff --git a/apps/files/src/components/NavigationQuota.vue b/apps/files/src/components/NavigationQuota.vue index 25bdcde1b45..18cd99f248b 100644 --- a/apps/files/src/components/NavigationQuota.vue +++ b/apps/files/src/components/NavigationQuota.vue @@ -51,8 +51,8 @@ export default { computed: { storageStatsTitle() { - const usedQuotaByte = formatFileSize(this.storageStats?.used, false, false) - const quotaByte = formatFileSize(this.storageStats?.quota, false, false) + const usedQuotaByte = formatFileSize(this.storageStats?.used, false, false, true) + const quotaByte = formatFileSize(this.storageStats?.quota, false, false, true) // If no quota set if (this.storageStats?.quota < 0) { diff --git a/apps/files/tests/js/filelistSpec.js b/apps/files/tests/js/filelistSpec.js index f2caa176973..cd3510c2faa 100644 --- a/apps/files/tests/js/filelistSpec.js +++ b/apps/files/tests/js/filelistSpec.js @@ -539,7 +539,7 @@ describe('OCA.Files.FileList tests', function() { expect($summary.find('.fileinfo').text()).toEqual('2 files'); expect($summary.find('.dirinfo').hasClass('hidden')).toEqual(false); expect($summary.find('.fileinfo').hasClass('hidden')).toEqual(false); - expect($summary.find('.filesize').text()).toEqual('70 KB'); + expect($summary.find('.filesize').text()).toEqual('69 KB'); expect(fileList.isEmpty).toEqual(false); }); it('Shows empty content when removing last file', function() { @@ -609,7 +609,7 @@ describe('OCA.Files.FileList tests', function() { expect($summary.find('.fileinfo').text()).toEqual('1 file'); expect($summary.find('.dirinfo').hasClass('hidden')).toEqual(false); expect($summary.find('.fileinfo').hasClass('hidden')).toEqual(false); - expect($summary.find('.filesize').text()).toEqual('58 KB'); + expect($summary.find('.filesize').text()).toEqual('57 KB'); expect(fileList.isEmpty).toEqual(false); expect($('.files-filestable thead th').hasClass('hidden')).toEqual(false); expect($('.emptyfilelist.emptycontent').hasClass('hidden')).toEqual(true); @@ -1138,7 +1138,7 @@ describe('OCA.Files.FileList tests', function() { expect($summary.hasClass('hidden')).toEqual(false); expect($summary.find('.dirinfo').text()).toEqual('1 folder'); expect($summary.find('.fileinfo').text()).toEqual('3 files'); - expect($summary.find('.filesize').text()).toEqual('70 KB'); + expect($summary.find('.filesize').text()).toEqual('69 KB'); }); it('shows headers, summary and hide empty content message after setting files', function(){ fileList.setFiles(testFiles); diff --git a/apps/files/tests/js/filesummarySpec.js b/apps/files/tests/js/filesummarySpec.js index 22c95abd307..8bc7bd8f995 100644 --- a/apps/files/tests/js/filesummarySpec.js +++ b/apps/files/tests/js/filesummarySpec.js @@ -44,7 +44,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.hasClass('hidden')).toEqual(false); expect($container.find('.dirinfo').text()).toEqual('5 folders'); expect($container.find('.fileinfo').text()).toEqual('2 files'); - expect($container.find('.filesize').text()).toEqual('256 KB'); + expect($container.find('.filesize').text()).toEqual('250 KB'); }); it('hides summary when no files or folders', function() { var s = new FileSummary($container); @@ -68,7 +68,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.hasClass('hidden')).toEqual(false); expect($container.find('.dirinfo').text()).toEqual('6 folders'); expect($container.find('.fileinfo').text()).toEqual('3 files'); - expect($container.find('.filesize').text()).toEqual('512 KB'); + expect($container.find('.filesize').text()).toEqual('500 KB'); expect(s.summary.totalDirs).toEqual(6); expect(s.summary.totalFiles).toEqual(3); expect(s.summary.totalSize).toEqual(512100); @@ -86,7 +86,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.hasClass('hidden')).toEqual(false); expect($container.find('.dirinfo').text()).toEqual('4 folders'); expect($container.find('.fileinfo').text()).toEqual('1 file'); - expect($container.find('.filesize').text()).toEqual('128 KB'); + expect($container.find('.filesize').text()).toEqual('125 KB'); expect(s.summary.totalDirs).toEqual(4); expect(s.summary.totalFiles).toEqual(1); expect(s.summary.totalSize).toEqual(127900); @@ -104,7 +104,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.find('.dirinfo').text()).toEqual('5 folders'); expect($container.find('.fileinfo').text()).toEqual('2 files'); expect($container.find('.filter').text()).toEqual(' match "foo"'); - expect($container.find('.filesize').text()).toEqual('256 KB'); + expect($container.find('.filesize').text()).toEqual('250 KB'); }); it('hides filtered summary when no files or folders', function() { var s = new FileSummary($container); @@ -133,7 +133,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.find('.dirinfo').text()).toEqual('6 folders'); expect($container.find('.fileinfo').text()).toEqual('3 files'); expect($container.find('.filter').text()).toEqual(' match "foo"'); - expect($container.find('.filesize').text()).toEqual('512 KB'); + expect($container.find('.filesize').text()).toEqual('500 KB'); expect(s.summary.totalDirs).toEqual(6); expect(s.summary.totalFiles).toEqual(3); expect(s.summary.totalSize).toEqual(512103); @@ -155,7 +155,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.find('.dirinfo').text()).toEqual('4 folders'); expect($container.find('.fileinfo').text()).toEqual('1 file'); expect($container.find('.filter').text()).toEqual(' match "foo"'); - expect($container.find('.filesize').text()).toEqual('128 KB'); + expect($container.find('.filesize').text()).toEqual('125 KB'); expect(s.summary.totalDirs).toEqual(4); expect(s.summary.totalFiles).toEqual(1); expect(s.summary.totalSize).toEqual(127903); @@ -215,7 +215,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.find('.fileinfo').text()).toEqual('1 file'); expect($container.find('.hiddeninfo').hasClass('hidden')).toEqual(false); expect($container.find('.hiddeninfo').text()).toEqual(' (including 1 hidden)'); - expect($container.find('.filesize').text()).toEqual('768 KB'); + expect($container.find('.filesize').text()).toEqual('750 KB'); }); it('does not render hidden count section when hidden files exist but are visible', function() { window._nc_event_bus.emit('files:config:updated', { key: 'show_hidden', value: true }); @@ -228,7 +228,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.find('.dirinfo').text()).toEqual('2 folders'); expect($container.find('.fileinfo').text()).toEqual('1 file'); expect($container.find('.hiddeninfo').hasClass('hidden')).toEqual(true); - expect($container.find('.filesize').text()).toEqual('768 KB'); + expect($container.find('.filesize').text()).toEqual('750 KB'); }); it('does not render hidden count section when no hidden files exist', function() { window._nc_event_bus.emit('files:config:updated', { key: 'show_hidden', value: false }); @@ -240,7 +240,7 @@ describe('OCA.Files.FileSummary tests', function() { expect($container.find('.dirinfo').text()).toEqual('1 folder'); expect($container.find('.fileinfo').text()).toEqual('1 file'); expect($container.find('.hiddeninfo').hasClass('hidden')).toEqual(true); - expect($container.find('.filesize').text()).toEqual('256 KB'); + expect($container.find('.filesize').text()).toEqual('250 KB'); }); }); }); diff --git a/apps/files/tests/js/mainfileinfodetailviewSpec.js b/apps/files/tests/js/mainfileinfodetailviewSpec.js index b63c36199a6..5793db8fb98 100644 --- a/apps/files/tests/js/mainfileinfodetailviewSpec.js +++ b/apps/files/tests/js/mainfileinfodetailviewSpec.js @@ -62,7 +62,7 @@ describe('OCA.Files.MainFileInfoDetailView tests', function() { view.setFileInfo(testFileInfo); expect(view.$el.find('.fileName h3').text()).toEqual('One.txt'); expect(view.$el.find('.fileName h3').attr('title')).toEqual('One.txt'); - expect(view.$el.find('.size').text()).toEqual('123.5 MB'); + expect(view.$el.find('.size').text()).toEqual('117.7 MB'); expect(view.$el.find('.size').attr('title')).toEqual('123456789 bytes'); expect(view.$el.find('.date').text()).toEqual('seconds ago'); expect(view.$el.find('.date').attr('title')).toEqual(dateExpected); diff --git a/apps/files_reminders/src/actions/setReminderSuggestionActions.scss b/apps/files_reminders/src/actions/setReminderSuggestionActions.scss index 16964e9ae2f..93a94bafa2b 100644 --- a/apps/files_reminders/src/actions/setReminderSuggestionActions.scss +++ b/apps/files_reminders/src/actions/setReminderSuggestionActions.scss @@ -21,10 +21,11 @@ */ // TODO: remove when/if the actions API supports a separator // This the last preset action, so we need to add a separator -.files-list__row-action-set-reminder-3 { - margin-bottom: 13px; +.files-list__row-action-set-reminder-custom { + margin-top: 13px; + position: relative; - &::after { + &::before { content: ""; margin: 3px 10px 3px 15px; border-bottom: 1px solid var(--color-border-dark); @@ -34,5 +35,6 @@ position: absolute; left: 0; right: 0; + top: -10px; } } diff --git a/apps/files_reminders/src/actions/setReminderSuggestionActions.ts b/apps/files_reminders/src/actions/setReminderSuggestionActions.ts index 453bab4c5c1..069a840ff71 100644 --- a/apps/files_reminders/src/actions/setReminderSuggestionActions.ts +++ b/apps/files_reminders/src/actions/setReminderSuggestionActions.ts @@ -63,8 +63,13 @@ const nextWeek: ReminderOption = { ariaLabel: t('files_reminders', 'Set reminder for next week'), } -// Generate the default preset actions -export const actions = [laterToday, tomorrow, thisWeekend, nextWeek].map((option): FileAction|null => { +/** + * Generate a file action for the given option + * + * @param option The option to generate the action for + * @return The file action or null if the option should not be shown + */ +const generateFileAction = (option): FileAction|null => { const dateTime = getDateTime(option.dateTimePreset) if (!dateTime) { return null @@ -72,7 +77,7 @@ export const actions = [laterToday, tomorrow, thisWeekend, nextWeek].map((option return new FileAction({ id: `set-reminder-${option.dateTimePreset}`, - displayName: () => `${option.label} - ${getDateString(dateTime)}`, + displayName: () => `${option.label} – ${getDateString(dateTime)}`, title: () => `${option.ariaLabel} – ${getVerboseDateString(dateTime)}`, // Empty svg to hide the icon @@ -103,4 +108,9 @@ export const actions = [laterToday, tomorrow, thisWeekend, nextWeek].map((option order: 21, }) -}).filter(Boolean) as FileAction[] +} + +// Generate the default preset actions +export const actions = [laterToday, tomorrow, thisWeekend, nextWeek] + .map(generateFileAction) + .filter(Boolean) as FileAction[] diff --git a/apps/files_reminders/src/components/SetCustomReminderModal.vue b/apps/files_reminders/src/components/SetCustomReminderModal.vue index c4023d1c39b..4e3c5fb0fca 100644 --- a/apps/files_reminders/src/components/SetCustomReminderModal.vue +++ b/apps/files_reminders/src/components/SetCustomReminderModal.vue @@ -148,8 +148,8 @@ export default Vue.extend({ }, async setCustom(): Promise<void> { - // Handle input cleared - if (this.customDueDate === '') { + // Handle input cleared or invalid date + if (!(this.customDueDate instanceof Date) || isNaN(this.customDueDate)) { showError(t('files_reminders', 'Please choose a valid date & time')) return } diff --git a/apps/files_reminders/src/services/customPicker.ts b/apps/files_reminders/src/services/customPicker.ts index 3a15cd514f8..46a0f917c0c 100644 --- a/apps/files_reminders/src/services/customPicker.ts +++ b/apps/files_reminders/src/services/customPicker.ts @@ -37,8 +37,6 @@ const CustomReminderModal = new View({ }) export const pickCustomDate = async (node: Node): Promise<void> => { - console.debug('CustomReminderModal', mount, CustomReminderModal) - CustomReminderModal.open(node) // Wait for the modal to close diff --git a/apps/files_reminders/src/shared/utils.ts b/apps/files_reminders/src/shared/utils.ts index 605b429a378..86182ba5106 100644 --- a/apps/files_reminders/src/shared/utils.ts +++ b/apps/files_reminders/src/shared/utils.ts @@ -24,10 +24,10 @@ import moment from '@nextcloud/moment' import { getCanonicalLocale } from '@nextcloud/l10n' export enum DateTimePreset { - LaterToday, - Tomorrow, - ThisWeekend, - NextWeek, + LaterToday = 'later-today', + Tomorrow = 'tomorrow', + ThisWeekend = 'this-weekend', + NextWeek = 'next-week', } export const getDateTime = (dateTime: DateTimePreset): null | Date => { |