From b38b532cbebac9fe5dccb7dfa65a229d2d2e3bd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=8Carodej?= Date: Tue, 1 Feb 2022 12:21:38 +0100 Subject: [PATCH] added prettier --- .prettierrc.yaml | 5 + package-lock.json | 222 +- package.json | 3 + resources/js/App.vue | 268 ++- resources/js/RestrictionWarningBar.vue | 18 +- resources/js/bootstrap.js | 6 +- .../js/components/Admin/AppInputButton.vue | 50 +- .../js/components/Admin/AppInputSwitch.vue | 50 +- .../js/components/Admin/AppInputText.vue | 42 +- .../js/components/Admin/CardNavigation.vue | 81 +- resources/js/components/Admin/DotLabel.vue | 92 +- .../js/components/Admin/ProgressLine.vue | 144 +- .../Admin/WidgetLatestRegistrations.vue | 632 ++--- .../Admin/WidgetLatestTransactions.vue | 243 +- .../js/components/Admin/WidgetWrapper.vue | 36 +- resources/js/components/Auth/AuthButton.vue | 68 +- resources/js/components/Auth/AuthContent.vue | 29 +- .../js/components/Auth/AuthContentWrapper.vue | 8 +- .../Auth/SocialiteAuthenticationButtons.vue | 20 +- .../js/components/Desktop/PopoverItem.vue | 74 +- .../js/components/Desktop/PopoverWrapper.vue | 19 +- .../js/components/Desktop/ToolbarGroup.vue | 35 +- .../js/components/Desktop/ToolbarWrapper.vue | 24 +- .../js/components/FilePreview/FilePreview.vue | 110 +- .../FilePreview/FilePreviewMedia.vue | 117 +- .../FilePreview/FilePreviewToolbar.vue | 307 ++- .../js/components/FilePreview/Media/Audio.vue | 19 +- .../FilePreview/Media/ImageFile.vue | 35 +- .../components/FilePreview/Media/PdfFile.vue | 182 +- .../js/components/FilePreview/Media/Video.vue | 96 +- resources/js/components/FilesView/Alert.vue | 316 ++- .../js/components/FilesView/ButtonBase.vue | 205 +- .../js/components/FilesView/ButtonUpload.vue | 74 +- .../js/components/FilesView/CheckBox.vue | 63 +- .../js/components/FilesView/ContextMenu.vue | 168 +- .../components/FilesView/DesktopToolbar.vue | 653 +++--- resources/js/components/FilesView/DragUI.vue | 30 +- .../js/components/FilesView/EmptyFilePage.vue | 95 +- .../FilesView/FileActionsMobile.vue | 93 +- .../js/components/FilesView/FileBrowser.vue | 265 ++- .../components/FilesView/FileFilterMobile.vue | 26 +- .../FilesView/FileIconThumbnail.vue | 31 +- .../FilesView/FileSortingMobile.vue | 4 +- .../FilesView/FileSortingOptions.vue | 57 +- .../js/components/FilesView/FolderIcon.vue | 33 +- .../FilesView/Icons/AlphabetIcon.vue | 34 +- .../FilesView/Icons/CloudPlusIcon.vue | 46 +- .../FilesView/Icons/FolderUploadIcon.vue | 43 +- .../FilesView/Icons/SortingIcon.vue | 45 +- .../FilesView/Icons/VueFolderIcon.vue | 50 +- .../FilesView/Icons/VueFolderTeamIcon.vue | 84 +- .../js/components/FilesView/ImageMetaData.vue | 94 +- .../js/components/FilesView/InfoSidebar.vue | 245 +- .../js/components/FilesView/ItemGrid.vue | 386 ++- .../js/components/FilesView/ItemHandler.vue | 177 +- .../js/components/FilesView/ItemList.vue | 354 ++- .../js/components/FilesView/MemberAvatar.vue | 121 +- .../FilesView/MobileActionButton.vue | 97 +- .../FilesView/MobileActionButtonUpload.vue | 109 +- .../FilesView/MobileContextMenu.vue | 26 +- .../components/FilesView/MobileCreateMenu.vue | 16 +- .../FilesView/MobileMultiSelectToolbar.vue | 30 +- .../FilesView/MobileTeamContextMenu.vue | 14 +- .../js/components/FilesView/MobileToolbar.vue | 154 +- resources/js/components/FilesView/Option.vue | 197 +- .../js/components/FilesView/OptionGroup.vue | 23 +- .../js/components/FilesView/OptionUpload.vue | 68 +- .../components/FilesView/ProcessingPopup.vue | 14 +- .../js/components/FilesView/ProgressBar.vue | 62 +- .../js/components/FilesView/SearchBar.vue | 46 +- resources/js/components/FilesView/Spinner.vue | 58 +- .../js/components/FilesView/TitlePreview.vue | 54 +- .../js/components/FilesView/ToolbarButton.vue | 119 +- .../components/FilesView/UploadProgress.vue | 155 +- .../components/Index/Components/PageTitle.vue | 109 +- .../Index/Components/PricingTables.vue | 274 ++- .../js/components/Index/IndexGetStarted.vue | 547 ++--- .../components/Index/IndexHeroScreenshot.vue | 332 ++- .../js/components/Index/IndexMainFeatures.vue | 253 +- .../js/components/Index/IndexNavigation.vue | 164 +- .../js/components/Index/IndexPageFooter.vue | 135 +- .../js/components/Index/IndexPageHeader.vue | 189 +- .../components/Index/IndexPricingTables.vue | 248 +- resources/js/components/Mobile/MenuMobile.vue | 98 +- .../js/components/Mobile/MenuMobileGroup.vue | 20 +- .../js/components/Mobile/MobileHeader.vue | 141 +- .../js/components/Others/ActionButton.vue | 59 +- resources/js/components/Others/ColorLabel.vue | 55 +- .../js/components/Others/ColorPicker.vue | 26 +- .../js/components/Others/ConfirmPassword.vue | 153 +- .../js/components/Others/CookieDisclaimer.vue | 65 +- .../components/Others/CreateFolderPopup.vue | 165 +- .../js/components/Others/CreateLanguage.vue | 812 ++++--- .../Others/CreatePersonalTokenPopup.vue | 184 +- resources/js/components/Others/Emoji.vue | 79 +- .../js/components/Others/EmojiPicker.vue | 185 +- .../js/components/Others/EmptyPageContent.vue | 95 +- .../components/Others/FilePreviewDetail.vue | 75 +- .../components/Others/Forms/AvatarInput.vue | 87 +- .../js/components/Others/Forms/CopyInput.vue | 28 +- .../components/Others/Forms/CopyShareLink.vue | 157 +- .../js/components/Others/Forms/FormLabel.vue | 100 +- .../js/components/Others/Forms/ImageInput.vue | 320 ++- .../js/components/Others/Forms/InfoBox.vue | 158 +- .../Others/Forms/MultiEmailInput.vue | 76 +- .../components/Others/Forms/SearchInput.vue | 12 +- .../Others/Forms/SelectBoxInput.vue | 127 +- .../components/Others/Forms/SelectInput.vue | 407 ++-- .../js/components/Others/Forms/SetupBox.vue | 221 +- .../components/Others/Forms/SwitchInput.vue | 161 +- .../js/components/Others/Layout/PageTab.vue | 24 +- .../components/Others/Layout/PageTabGroup.vue | 16 +- resources/js/components/Others/ListInfo.vue | 10 +- .../js/components/Others/ListInfoItem.vue | 23 +- .../js/components/Others/MobileNavigation.vue | 148 +- .../js/components/Others/MoveItemPopup.vue | 254 +- .../Others/Notifications/ToasterItem.vue | 143 +- .../Others/Notifications/ToasterWrapper.vue | 32 +- resources/js/components/Others/PageHeader.vue | 115 +- .../js/components/Others/PaymentMethod.vue | 33 +- .../components/Others/PlanPricingTables.vue | 293 ++- .../components/Others/Popup/ConfirmPopup.vue | 128 +- .../components/Others/Popup/PopupActions.vue | 8 +- .../components/Others/Popup/PopupContent.vue | 17 +- .../components/Others/Popup/PopupHeader.vue | 70 +- .../components/Others/Popup/PopupWrapper.vue | 230 +- .../js/components/Others/RenameItemPopup.vue | 142 +- .../js/components/Others/SectionTitle.vue | 39 +- .../Others/SelectSingleChargeMethodPopup.vue | 287 ++- .../js/components/Others/ShareCreatePopup.vue | 191 +- .../js/components/Others/ShareEditPopup.vue | 617 +++-- resources/js/components/Others/TabOption.vue | 10 +- resources/js/components/Others/TabWrapper.vue | 170 +- .../Others/Tables/DatatableCell.vue | 74 +- .../Others/Tables/DatatableCellImage.vue | 123 +- .../Others/Tables/DatatableWrapper.vue | 343 +-- resources/js/components/Others/TextLabel.vue | 42 +- resources/js/components/Others/ThemeLabel.vue | 24 +- .../js/components/Others/ThumbnailItem.vue | 223 +- resources/js/components/Others/TreeMenu.vue | 225 +- .../components/Others/TreeMenuNavigator.vue | 266 +-- .../Others/TwoFactorQrSetupPopup.vue | 189 +- .../Others/TwoFactorRecoveryCodesPopup.vue | 306 ++- resources/js/components/Others/Vignette.vue | 133 +- .../js/components/Sidebar/ContentGroup.vue | 83 +- .../js/components/Sidebar/ContentSidebar.vue | 8 +- .../components/Sidebar/SidebarNavigation.vue | 314 ++- .../js/components/Sidebar/UserHeadline.vue | 42 +- .../js/components/Spotlight/CategoryName.vue | 14 +- .../components/Spotlight/FilterSuggestion.vue | 27 +- .../js/components/Spotlight/KeyboardHints.vue | 59 +- .../js/components/Spotlight/Spotlight.vue | 1326 ++++++----- .../Subscription/FixedTransactionRow.vue | 176 +- .../MeteredTransactionDetailRow.vue | 60 +- .../Subscription/MeteredTransactionRow.vue | 199 +- .../components/Subscription/PaymentCard.vue | 106 +- .../js/components/Subscription/PlanDetail.vue | 72 +- .../SelectPlanSubscriptionPopup.vue | 499 ++-- .../components/Subscription/UserBalance.vue | 127 +- .../Subscription/UserBillingAlerts.vue | 342 +-- .../Subscription/UserEditSubscription.vue | 186 +- .../Subscription/UserEmptySubscription.vue | 62 +- .../Subscription/UserFailedPayments.vue | 100 +- .../UserFixedSubscriptionDetail.vue | 164 +- .../Subscription/UserStoredPaymentMethods.vue | 340 +-- .../UserTransactionsForFixedBilling.vue | 75 +- .../UserTransactionsForMeteredBilling.vue | 125 +- .../UserUpdatePaymentMethodsExternally.vue | 120 +- .../Subscription/UserUsageEstimates.vue | 95 +- .../Components/PermissionToggleButton.vue | 127 +- .../Teams/Components/TeamFolderPreview.vue | 73 +- .../components/Teams/Components/TeamList.vue | 162 +- .../Teams/Components/TeamMembersButton.vue | 55 +- .../Teams/Components/TeamMembersPreview.vue | 148 +- .../Teams/CreateTeamFolderPopup.vue | 409 ++-- .../components/Teams/EditTeamFolderPopup.vue | 379 ++- resources/js/components/UI/Bar.vue | 64 +- resources/js/components/UI/BarChart.vue | 60 +- resources/js/helpers/AlertHelpers.js | 88 +- resources/js/helpers/SubscriptionHelpers.js | 20 +- resources/js/helpers/ValidatorHelpers.js | 53 +- resources/js/helpers/functionHelpers.js | 325 ++- resources/js/helpers/itemHelpers.js | 229 +- resources/js/i18n/index.js | 10 +- resources/js/main.js | 96 +- resources/js/router.js | 24 +- resources/js/routes/routesAdmin.js | 689 +++--- resources/js/routes/routesAuth.js | 121 +- resources/js/routes/routesFile.js | 119 +- resources/js/routes/routesIndex.js | 53 +- resources/js/routes/routesMaintenance.js | 210 +- resources/js/routes/routesOthers.js | 36 +- resources/js/routes/routesShared.js | 74 +- resources/js/routes/routesTeam.js | 19 +- resources/js/routes/routesUser.js | 99 +- resources/js/store/index.js | 4 +- resources/js/store/modules/app.js | 68 +- resources/js/store/modules/fileBrowser.js | 99 +- resources/js/store/modules/fileFunctions.js | 241 +- resources/js/store/modules/lists.js | 2062 ++++++++--------- resources/js/store/modules/payments.js | 35 +- resources/js/store/modules/sharing.js | 60 +- resources/js/store/modules/teams.js | 196 +- resources/js/store/modules/userAuth.js | 76 +- resources/js/views/Admin.vue | 329 +-- .../views/Admin/AppSettings/AppSettings.vue | 85 +- .../AppSettingsTabs/Appearance.vue | 197 +- .../AppSettings/AppSettingsTabs/Email.vue | 211 +- .../AppSettings/AppSettingsTabs/Index.vue | 248 +- .../AppSettings/AppSettingsTabs/Others.vue | 476 ++-- .../AppSettings/AppSettingsTabs/SignInUp.vue | 569 ++--- resources/js/views/Admin/Dashboard.vue | 291 ++- resources/js/views/Admin/Invoices.vue | 129 +- .../js/views/Admin/Languages/Language.vue | 502 ++-- resources/js/views/Admin/Pages.vue | 194 +- resources/js/views/Admin/Pages/PageEdit.vue | 144 +- .../Admin/PaymentSettings/PaymentSettings.vue | 60 +- .../PaymentSettingsTab/Billings.vue | 237 +- .../PaymentSettingsTab/Payments.vue | 915 ++++---- resources/js/views/Admin/Plans.vue | 380 +-- .../Admin/Plans/Create/CreateFixedPlan.vue | 378 +-- .../Admin/Plans/Create/CreateMeteredPlan.vue | 478 ++-- resources/js/views/Admin/Plans/FixedPlan.vue | 105 +- .../js/views/Admin/Plans/MeteredPlan.vue | 126 +- .../js/views/Admin/Plans/Tabs/PlanDelete.vue | 170 +- .../Admin/Plans/Tabs/PlanFixedSettings.vue | 158 +- .../Admin/Plans/Tabs/PlanMeteredSettings.vue | 200 +- .../Admin/Plans/Tabs/PlanSubscribers.vue | 348 +-- resources/js/views/Admin/Subscriptions.vue | 246 +- resources/js/views/Admin/Users.vue | 523 +++-- resources/js/views/Admin/Users/User.vue | 260 +-- resources/js/views/Admin/Users/UserCreate.vue | 298 +-- .../views/Admin/Users/UserTabs/UserDelete.vue | 220 +- .../views/Admin/Users/UserTabs/UserDetail.vue | 300 +-- .../Users/UserTabs/UserFixedSubscription.vue | 160 +- .../UserTabs/UserMeteredSubscription.vue | 265 ++- .../Admin/Users/UserTabs/UserPassword.vue | 125 +- .../Admin/Users/UserTabs/UserStorage.vue | 304 ++- .../Admin/Users/UserTabs/UserSubscription.vue | 201 +- resources/js/views/Auth/CreateNewPassword.vue | 255 +- resources/js/views/Auth/ForgottenPassword.vue | 176 +- resources/js/views/Auth/Headline.vue | 62 +- resources/js/views/Auth/SignIn.vue | 545 +++-- resources/js/views/Auth/SignUp.vue | 350 +-- resources/js/views/Auth/SocialiteCallback.vue | 39 +- .../views/Auth/SuccessfullyEmailVerified.vue | 37 +- .../js/views/Auth/SuccessfullySendEmail.vue | 35 +- .../Components/NavigationSharePanel.vue | 297 ++- .../Components/PanelNavigationFiles.vue | 388 ++-- resources/js/views/FileView/Files.vue | 405 ++-- resources/js/views/FileView/MySharedItems.vue | 299 +-- resources/js/views/FileView/Public.vue | 346 +-- resources/js/views/FileView/RecentUploads.vue | 243 +- resources/js/views/FileView/SharedWithMe.vue | 432 ++-- resources/js/views/FileView/TeamFolders.vue | 496 ++-- resources/js/views/FileView/Trash.vue | 212 +- resources/js/views/Frontpage/ContactUs.vue | 240 +- resources/js/views/Frontpage/DynamicPage.vue | 138 +- resources/js/views/Frontpage/Homepage.vue | 111 +- .../js/views/MobileNavigationToolbar.vue | 62 +- resources/js/views/NotFound.vue | 38 +- resources/js/views/Platform.vue | 178 +- resources/js/views/Profile.vue | 254 +- resources/js/views/SetupWizard.vue | 23 +- .../js/views/SetupWizard/AdminAccount.vue | 253 +- resources/js/views/SetupWizard/AppSetup.vue | 293 ++- .../js/views/SetupWizard/BillingsDetail.vue | 213 +- resources/js/views/SetupWizard/Database.vue | 218 +- .../js/views/SetupWizard/EnvironmentSetup.vue | 222 +- .../SetupWizard/InstallationDisclaimer.vue | 236 +- .../js/views/SetupWizard/PurchaseCode.vue | 203 +- .../js/views/SetupWizard/StatusCheck.vue | 405 ++-- .../views/SetupWizard/StripeCredentials.vue | 214 +- .../views/SetupWizard/SubscriptionPlans.vue | 269 +-- .../views/SetupWizard/SubscriptionService.vue | 208 +- resources/js/views/Shared.vue | 215 +- .../js/views/Shared/SharedAuthentication.vue | 178 +- .../js/views/Shared/SharedSingleFile.vue | 62 +- resources/js/views/Teams/Invitation.vue | 258 +-- resources/js/views/TemporaryUnavailable.vue | 39 +- resources/js/views/User/Billing.vue | 129 +- resources/js/views/User/Password.vue | 514 ++-- resources/js/views/User/Settings.vue | 357 +-- resources/js/views/User/Storage.vue | 131 +- 284 files changed, 25410 insertions(+), 25338 deletions(-) create mode 100644 .prettierrc.yaml diff --git a/.prettierrc.yaml b/.prettierrc.yaml new file mode 100644 index 00000000..ce64afdc --- /dev/null +++ b/.prettierrc.yaml @@ -0,0 +1,5 @@ +trailingComma: "es5" +tabWidth: 4 +semi: false +singleQuote: true +printWidth: 120 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index fca8d26c..21d0b333 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1968,6 +1968,15 @@ "integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==", "dev": true }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -2449,6 +2458,12 @@ "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", "dev": true }, + "builtin-modules": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", + "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", + "dev": true + }, "builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", @@ -2471,6 +2486,32 @@ "get-intrinsic": "^1.0.2" } }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "dev": true, + "requires": { + "callsites": "^2.0.0" + }, + "dependencies": { + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true + } + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -3431,6 +3472,12 @@ "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", "dev": true }, + "detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", + "dev": true + }, "detect-node": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", @@ -3710,6 +3757,12 @@ "estraverse": "^4.1.1" } }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, "esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", @@ -4049,6 +4102,18 @@ "pkg-dir": "^4.1.0" } }, + "find-line-column": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/find-line-column/-/find-line-column-0.5.2.tgz", + "integrity": "sha1-2wAjj/hoVRoYLnShA0FtKVqYyMo=", + "dev": true + }, + "find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "dev": true + }, "find-up": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", @@ -4713,6 +4778,107 @@ "resolve-cwd": "^3.0.0" } }, + "import-sort": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/import-sort/-/import-sort-6.0.0.tgz", + "integrity": "sha512-XUwSQMGAGmcW/wfshFE0gXgb1NPF6ibbQD6wDr3KRDykZf/lZj0jf58Bwa02xNb8EE59oz7etFe9OHnJocUW5Q==", + "dev": true, + "requires": { + "detect-newline": "^2.1.0", + "import-sort-parser": "^6.0.0", + "import-sort-style": "^6.0.0", + "is-builtin-module": "^3.0.0", + "resolve": "^1.8.1" + } + }, + "import-sort-config": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/import-sort-config/-/import-sort-config-6.0.0.tgz", + "integrity": "sha512-FJpF2F3+30JXqH1rJKeajxoSCHCueai3/0ntDN4y3GJL5pjnLDt/VjCy5FzjH7u0NHnllL/zVEf1wfmsVxJlPQ==", + "dev": true, + "requires": { + "cosmiconfig": "^5.0.5", + "find-root": "^1.0.0", + "minimatch": "^3.0.4", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + } + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + } + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + } + } + }, + "import-sort-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/import-sort-parser/-/import-sort-parser-6.0.0.tgz", + "integrity": "sha512-H5L+d6HnqHvThB0GmAA3/43Sv74oCwL0iMk3/ixOv0LRJ69rCyHXeG/+UadMHrD2FefEmgPIWboEPAG7gsQrkA==", + "dev": true + }, + "import-sort-parser-babylon": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/import-sort-parser-babylon/-/import-sort-parser-babylon-6.0.0.tgz", + "integrity": "sha512-NyShTiNhTh4Vy7kJUVe6CuvOaQAzzfSIT72wtp3CzGjz8bHjNj59DCAjncuviicmDOgVAgmLuSh1WMcLYAMWGg==", + "dev": true, + "requires": { + "@babel/core": "^7.2.2", + "@babel/parser": "^7.0.0-beta.54", + "@babel/traverse": "^7.0.0-beta.54", + "@babel/types": "^7.0.0-beta.54", + "find-line-column": "^0.5.2" + } + }, + "import-sort-parser-typescript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/import-sort-parser-typescript/-/import-sort-parser-typescript-6.0.0.tgz", + "integrity": "sha512-pgxnr3I156DonupQriNsgDb2zJN9TxrqCCIN1rwT/6SDO1rkJb+a0fjqshCjlgacTSA92oPAp1eAwmQUeZi3dw==", + "dev": true, + "requires": { + "typescript": "^3.2.4" + } + }, + "import-sort-style": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/import-sort-style/-/import-sort-style-6.0.0.tgz", + "integrity": "sha512-z0H5PKs7YoDeKxNYXv2AA1mjjZFY07fjeNCXUdTM3ymJtWeeEoTm8CQkFm2l+KPZoMczIvdwzJpWkkOamBnsPw==", + "dev": true + }, "in-publish": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", @@ -4788,6 +4954,15 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", "dev": true }, + "is-builtin-module": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.1.0.tgz", + "integrity": "sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg==", + "dev": true, + "requires": { + "builtin-modules": "^3.0.0" + } + }, "is-core-module": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", @@ -4805,6 +4980,12 @@ "has-tostringtag": "^1.0.0" } }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true + }, "is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", @@ -4967,6 +5148,16 @@ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", @@ -6812,8 +7003,25 @@ "version": "2.5.1", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz", "integrity": "sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==", + "dev": true + }, + "prettier-plugin-import-sort": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/prettier-plugin-import-sort/-/prettier-plugin-import-sort-0.0.7.tgz", + "integrity": "sha512-O0KlUSq+lwvh+UiN3wZDT6wWkf7TNxTVv2/XXE5KqpRNbFJq3nRg2ftzBYFFO8QGpdWIrOB0uCTCtFjIxmVKQw==", "dev": true, - "optional": true + "requires": { + "import-sort": "^6.0.0", + "import-sort-config": "^6.0.0", + "import-sort-parser-babylon": "^6.0.0", + "import-sort-parser-typescript": "^6.0.0" + } + }, + "prettier-plugin-tailwindcss": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.1.4.tgz", + "integrity": "sha512-kt3YFWqxcG9+bilBI0hPF7RjQZNtgBRvjJZGw6B2MNAjPqlfcYIiZnNaIEnq4XimKLTzZYxz6jQnUXmSQ/5njg==", + "dev": true }, "pretty-time": { "version": "1.1.0", @@ -7744,6 +7952,12 @@ } } }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, "sshpk": { "version": "1.17.0", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", @@ -8219,6 +8433,12 @@ "mime-types": "~2.1.24" } }, + "typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "dev": true + }, "unicode-canonical-property-names-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", diff --git a/package.json b/package.json index 0bfa13bc..0a44a7a4 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,9 @@ "cross-env": "^5.1", "laravel-mix": "^6.0.41", "postcss": "^8.4.5", + "prettier": "^2.5.1", + "prettier-plugin-import-sort": "0.0.7", + "prettier-plugin-tailwindcss": "^0.1.4", "resolve-url-loader": "^2.3.1", "sass": "^1.49.0", "sass-loader": "^8.0.2", diff --git a/resources/js/App.vue b/resources/js/App.vue index fca60d27..d4e1ffb6 100644 --- a/resources/js/App.vue +++ b/resources/js/App.vue @@ -1,139 +1,123 @@ @@ -143,53 +127,59 @@ export default { @import '../sass/vuefilemanager/mixins'; input:-webkit-autofill { - transition-delay: 999999999999s; + transition-delay: 999999999999s; } [v-cloak], [v-cloak] > * { - display: none + display: none; } * { - outline: 0; - margin: 0; - padding: 0; - font-family: 'Nunito', sans-serif; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - box-sizing: border-box; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); - font-size: 16px; - text-decoration: none; - color: $text; + outline: 0; + margin: 0; + padding: 0; + font-family: 'Nunito', sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + box-sizing: border-box; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + font-size: 16px; + text-decoration: none; + color: $text; } .vue-feather { - path, circle, line, rect, polyline, ellipse, polygon { - color: inherit; - } + path, + circle, + line, + rect, + polyline, + ellipse, + polygon { + color: inherit; + } } #auth { - width: 100%; - height: 100%; + width: 100%; + height: 100%; } // Dark mode support .dark { + * { + color: $dark_mode_text_primary; + } - * { - color: $dark_mode_text_primary; - } + body, + html { + background: $dark_mode_background; + color: $dark_mode_text_primary; - body, html { - background: $dark_mode_background; - color: $dark_mode_text_primary; - - img { - opacity: .95; - } - } + img { + opacity: 0.95; + } + } } diff --git a/resources/js/RestrictionWarningBar.vue b/resources/js/RestrictionWarningBar.vue index b8130847..4811b65f 100644 --- a/resources/js/RestrictionWarningBar.vue +++ b/resources/js/RestrictionWarningBar.vue @@ -1,12 +1,12 @@ \ No newline at end of file +export default { + name: 'RestrictionWarningBar', +} + diff --git a/resources/js/bootstrap.js b/resources/js/bootstrap.js index 69225776..098705c3 100644 --- a/resources/js/bootstrap.js +++ b/resources/js/bootstrap.js @@ -1,4 +1,4 @@ -window._ = require('lodash'); +window._ = require('lodash') /** * We'll load the axios HTTP library which allows us to easily issue requests @@ -6,9 +6,9 @@ window._ = require('lodash'); * CSRF token as a header based on the value of the "XSRF" token cookie. */ -window.axios = require('axios'); +window.axios = require('axios') -window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'; +window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest' /** * Echo exposes an expressive API for subscribing to channels and listening diff --git a/resources/js/components/Admin/AppInputButton.vue b/resources/js/components/Admin/AppInputButton.vue index 141add9e..bd1c6e64 100644 --- a/resources/js/components/Admin/AppInputButton.vue +++ b/resources/js/components/Admin/AppInputButton.vue @@ -1,36 +1,28 @@ \ No newline at end of file +export default { + name: 'AppInputButton', + props: ['description', 'isLast', 'title', 'error'], +} + diff --git a/resources/js/components/Admin/AppInputSwitch.vue b/resources/js/components/Admin/AppInputSwitch.vue index 78394ad2..c93e2f6e 100644 --- a/resources/js/components/Admin/AppInputSwitch.vue +++ b/resources/js/components/Admin/AppInputSwitch.vue @@ -1,36 +1,28 @@ \ No newline at end of file +export default { + name: 'AppInputSwitch', + props: ['description', 'isLast', 'title', 'error'], +} + diff --git a/resources/js/components/Admin/AppInputText.vue b/resources/js/components/Admin/AppInputText.vue index a74f8379..f60a7fd2 100644 --- a/resources/js/components/Admin/AppInputText.vue +++ b/resources/js/components/Admin/AppInputText.vue @@ -1,32 +1,24 @@ \ No newline at end of file +export default { + name: 'AppInputText', + props: ['description', 'isLast', 'title', 'error'], +} + diff --git a/resources/js/components/Admin/CardNavigation.vue b/resources/js/components/Admin/CardNavigation.vue index 510b9e9a..e5490f68 100644 --- a/resources/js/components/Admin/CardNavigation.vue +++ b/resources/js/components/Admin/CardNavigation.vue @@ -1,45 +1,50 @@ \ No newline at end of file + diff --git a/resources/js/components/Admin/DotLabel.vue b/resources/js/components/Admin/DotLabel.vue index cfea6651..e4fa84fc 100644 --- a/resources/js/components/Admin/DotLabel.vue +++ b/resources/js/components/Admin/DotLabel.vue @@ -8,61 +8,57 @@ diff --git a/resources/js/components/Admin/ProgressLine.vue b/resources/js/components/Admin/ProgressLine.vue index 0e380d4f..5cbf43c5 100644 --- a/resources/js/components/Admin/ProgressLine.vue +++ b/resources/js/components/Admin/ProgressLine.vue @@ -1,91 +1,101 @@ diff --git a/resources/js/components/Admin/WidgetLatestRegistrations.vue b/resources/js/components/Admin/WidgetLatestRegistrations.vue index 00f50e02..145db7f7 100644 --- a/resources/js/components/Admin/WidgetLatestRegistrations.vue +++ b/resources/js/components/Admin/WidgetLatestRegistrations.vue @@ -1,313 +1,339 @@ diff --git a/resources/js/components/Admin/WidgetLatestTransactions.vue b/resources/js/components/Admin/WidgetLatestTransactions.vue index f3270787..8339ee14 100644 --- a/resources/js/components/Admin/WidgetLatestTransactions.vue +++ b/resources/js/components/Admin/WidgetLatestTransactions.vue @@ -1,135 +1,122 @@ diff --git a/resources/js/components/Admin/WidgetWrapper.vue b/resources/js/components/Admin/WidgetWrapper.vue index 27db2ad1..1a4263c6 100644 --- a/resources/js/components/Admin/WidgetWrapper.vue +++ b/resources/js/components/Admin/WidgetWrapper.vue @@ -1,13 +1,13 @@ diff --git a/resources/js/components/Auth/AuthButton.vue b/resources/js/components/Auth/AuthButton.vue index a9e0f55b..5b6ec476 100644 --- a/resources/js/components/Auth/AuthButton.vue +++ b/resources/js/components/Auth/AuthButton.vue @@ -1,51 +1,45 @@ diff --git a/resources/js/components/Auth/AuthContent.vue b/resources/js/components/Auth/AuthContent.vue index 8c593e42..1e1eedae 100644 --- a/resources/js/components/Auth/AuthContent.vue +++ b/resources/js/components/Auth/AuthContent.vue @@ -1,23 +1,20 @@ \ No newline at end of file + }, + created() { + this.isVisible = this.visible + }, +} + diff --git a/resources/js/components/Auth/AuthContentWrapper.vue b/resources/js/components/Auth/AuthContentWrapper.vue index fee5776e..c66a2d71 100644 --- a/resources/js/components/Auth/AuthContentWrapper.vue +++ b/resources/js/components/Auth/AuthContentWrapper.vue @@ -1,11 +1,11 @@ diff --git a/resources/js/components/Auth/SocialiteAuthenticationButtons.vue b/resources/js/components/Auth/SocialiteAuthenticationButtons.vue index ff586644..c8ebca19 100644 --- a/resources/js/components/Auth/SocialiteAuthenticationButtons.vue +++ b/resources/js/components/Auth/SocialiteAuthenticationButtons.vue @@ -1,5 +1,5 @@ diff --git a/resources/js/components/Desktop/PopoverItem.vue b/resources/js/components/Desktop/PopoverItem.vue index e079f852..3335eb5f 100644 --- a/resources/js/components/Desktop/PopoverItem.vue +++ b/resources/js/components/Desktop/PopoverItem.vue @@ -1,47 +1,41 @@ diff --git a/resources/js/components/Desktop/PopoverWrapper.vue b/resources/js/components/Desktop/PopoverWrapper.vue index ae7cc46f..fa2d6b67 100644 --- a/resources/js/components/Desktop/PopoverWrapper.vue +++ b/resources/js/components/Desktop/PopoverWrapper.vue @@ -1,18 +1,17 @@ diff --git a/resources/js/components/Desktop/ToolbarGroup.vue b/resources/js/components/Desktop/ToolbarGroup.vue index ccc78e61..6d7c0447 100644 --- a/resources/js/components/Desktop/ToolbarGroup.vue +++ b/resources/js/components/Desktop/ToolbarGroup.vue @@ -1,28 +1,25 @@ diff --git a/resources/js/components/Desktop/ToolbarWrapper.vue b/resources/js/components/Desktop/ToolbarWrapper.vue index b0c0edb4..d8c7876e 100644 --- a/resources/js/components/Desktop/ToolbarWrapper.vue +++ b/resources/js/components/Desktop/ToolbarWrapper.vue @@ -1,21 +1,21 @@ diff --git a/resources/js/components/FilePreview/FilePreview.vue b/resources/js/components/FilePreview/FilePreview.vue index 98e9cd05..09e5d418 100644 --- a/resources/js/components/FilePreview/FilePreview.vue +++ b/resources/js/components/FilePreview/FilePreview.vue @@ -1,71 +1,63 @@ \ No newline at end of file +} + diff --git a/resources/js/components/FilePreview/FilePreviewMedia.vue b/resources/js/components/FilePreview/FilePreviewMedia.vue index 1be6647e..f3efec61 100644 --- a/resources/js/components/FilePreview/FilePreviewMedia.vue +++ b/resources/js/components/FilePreview/FilePreviewMedia.vue @@ -1,6 +1,5 @@ @@ -164,8 +149,8 @@ export default { @import '../../../sass/vuefilemanager/mixins'; .navigation-arrows { - - .prev, .next { + .prev, + .next { cursor: pointer; position: absolute; top: 45%; @@ -234,17 +219,15 @@ export default { } @media only screen and (max-width: 960px) { - .file-preview-wrapper { top: 53px; } } - .dark { - .navigation-arrows { - .prev, .next { + .prev, + .next { color: $light-text; filter: drop-shadow(0px 1px 0 rgba(17, 19, 20, 1)); } @@ -260,4 +243,4 @@ export default { } } } - \ No newline at end of file + diff --git a/resources/js/components/FilePreview/FilePreviewToolbar.vue b/resources/js/components/FilePreview/FilePreviewToolbar.vue index 6a372a93..c039eeac 100644 --- a/resources/js/components/FilePreview/FilePreviewToolbar.vue +++ b/resources/js/components/FilePreview/FilePreviewToolbar.vue @@ -1,173 +1,166 @@ \ No newline at end of file + diff --git a/resources/js/components/FilePreview/Media/Audio.vue b/resources/js/components/FilePreview/Media/Audio.vue index 969b0766..ae02120e 100644 --- a/resources/js/components/FilePreview/Media/Audio.vue +++ b/resources/js/components/FilePreview/Media/Audio.vue @@ -1,17 +1,10 @@ \ No newline at end of file +export default { + name: 'Audio', + props: ['file'], +} + diff --git a/resources/js/components/FilePreview/Media/ImageFile.vue b/resources/js/components/FilePreview/Media/ImageFile.vue index b476cebd..7b3bb327 100644 --- a/resources/js/components/FilePreview/Media/ImageFile.vue +++ b/resources/js/components/FilePreview/Media/ImageFile.vue @@ -1,27 +1,18 @@ \ No newline at end of file + if (windowWidth > 1280) return this.file.data.attributes.thumbnail.xl + else return this.file.data.attributes.thumbnail.lg + }, + }, +} + diff --git a/resources/js/components/FilePreview/Media/PdfFile.vue b/resources/js/components/FilePreview/Media/PdfFile.vue index 9f841bb3..5d8cf5f2 100644 --- a/resources/js/components/FilePreview/Media/PdfFile.vue +++ b/resources/js/components/FilePreview/Media/PdfFile.vue @@ -1,116 +1,112 @@ \ No newline at end of file + .pdf-file { + box-shadow: none; + border-radius: 0; + } + } +} + diff --git a/resources/js/components/FilePreview/Media/Video.vue b/resources/js/components/FilePreview/Media/Video.vue index bb6daf6e..380570ab 100644 --- a/resources/js/components/FilePreview/Media/Video.vue +++ b/resources/js/components/FilePreview/Media/Video.vue @@ -1,60 +1,58 @@ \ No newline at end of file + .video { + max-width: 100%; + max-height: 100%; + align-self: center; + } +} + diff --git a/resources/js/components/FilesView/Alert.vue b/resources/js/components/FilesView/Alert.vue index a53b7d0e..3410df43 100644 --- a/resources/js/components/FilesView/Alert.vue +++ b/resources/js/components/FilesView/Alert.vue @@ -10,12 +10,7 @@

{{ message }}

@@ -23,182 +18,181 @@ diff --git a/resources/js/components/FilesView/ButtonBase.vue b/resources/js/components/FilesView/ButtonBase.vue index 46f10c68..6a085c9a 100644 --- a/resources/js/components/FilesView/ButtonBase.vue +++ b/resources/js/components/FilesView/ButtonBase.vue @@ -2,129 +2,130 @@ diff --git a/resources/js/components/FilesView/ButtonUpload.vue b/resources/js/components/FilesView/ButtonUpload.vue index a1d1ee9c..6a65e6fa 100644 --- a/resources/js/components/FilesView/ButtonUpload.vue +++ b/resources/js/components/FilesView/ButtonUpload.vue @@ -1,56 +1,48 @@ diff --git a/resources/js/components/FilesView/CheckBox.vue b/resources/js/components/FilesView/CheckBox.vue index ce89b59e..d4f7f0e7 100644 --- a/resources/js/components/FilesView/CheckBox.vue +++ b/resources/js/components/FilesView/CheckBox.vue @@ -1,39 +1,40 @@ diff --git a/resources/js/components/FilesView/ContextMenu.vue b/resources/js/components/FilesView/ContextMenu.vue index cbcb03e9..f93f56ce 100644 --- a/resources/js/components/FilesView/ContextMenu.vue +++ b/resources/js/components/FilesView/ContextMenu.vue @@ -1,116 +1,110 @@ diff --git a/resources/js/components/FilesView/DesktopToolbar.vue b/resources/js/components/FilesView/DesktopToolbar.vue index 75bffc6f..00d5d5f2 100644 --- a/resources/js/components/FilesView/DesktopToolbar.vue +++ b/resources/js/components/FilesView/DesktopToolbar.vue @@ -1,380 +1,399 @@ diff --git a/resources/js/components/FilesView/DragUI.vue b/resources/js/components/FilesView/DragUI.vue index 4e044319..f9ad4031 100644 --- a/resources/js/components/FilesView/DragUI.vue +++ b/resources/js/components/FilesView/DragUI.vue @@ -1,27 +1,19 @@ @@ -100,5 +91,4 @@ export default { background: $dark_mode_foreground; } } - diff --git a/resources/js/components/FilesView/EmptyFilePage.vue b/resources/js/components/FilesView/EmptyFilePage.vue index de014a07..898b3549 100644 --- a/resources/js/components/FilesView/EmptyFilePage.vue +++ b/resources/js/components/FilesView/EmptyFilePage.vue @@ -1,65 +1,60 @@ diff --git a/resources/js/components/FilesView/FileActionsMobile.vue b/resources/js/components/FilesView/FileActionsMobile.vue index 5b4e0ff2..5ecb3177 100644 --- a/resources/js/components/FilesView/FileActionsMobile.vue +++ b/resources/js/components/FilesView/FileActionsMobile.vue @@ -1,12 +1,11 @@ diff --git a/resources/js/components/FilesView/FileBrowser.vue b/resources/js/components/FilesView/FileBrowser.vue index a01613df..a9cbd1ac 100644 --- a/resources/js/components/FilesView/FileBrowser.vue +++ b/resources/js/components/FilesView/FileBrowser.vue @@ -1,158 +1,155 @@ diff --git a/resources/js/components/FilesView/FileFilterMobile.vue b/resources/js/components/FilesView/FileFilterMobile.vue index d3265518..d6bcc0d9 100644 --- a/resources/js/components/FilesView/FileFilterMobile.vue +++ b/resources/js/components/FilesView/FileFilterMobile.vue @@ -9,18 +9,24 @@ diff --git a/resources/js/components/FilesView/FileIconThumbnail.vue b/resources/js/components/FilesView/FileIconThumbnail.vue index 7b609ce9..c2deec25 100644 --- a/resources/js/components/FilesView/FileIconThumbnail.vue +++ b/resources/js/components/FilesView/FileIconThumbnail.vue @@ -1,23 +1,22 @@ \ No newline at end of file + diff --git a/resources/js/components/FilesView/FileSortingMobile.vue b/resources/js/components/FilesView/FileSortingMobile.vue index bb6a6ac0..ca96e1ff 100644 --- a/resources/js/components/FilesView/FileSortingMobile.vue +++ b/resources/js/components/FilesView/FileSortingMobile.vue @@ -7,8 +7,8 @@ diff --git a/resources/js/components/FilesView/FolderIcon.vue b/resources/js/components/FilesView/FolderIcon.vue index 6110a1a0..6bd331a7 100644 --- a/resources/js/components/FilesView/FolderIcon.vue +++ b/resources/js/components/FilesView/FolderIcon.vue @@ -1,27 +1,20 @@ \ No newline at end of file +export default { + name: 'FolderIcon', + props: ['item'], + components: { + VueFolderTeamIcon, + VueFolderIcon, + }, +} + diff --git a/resources/js/components/FilesView/Icons/AlphabetIcon.vue b/resources/js/components/FilesView/Icons/AlphabetIcon.vue index c770c291..9857f034 100644 --- a/resources/js/components/FilesView/Icons/AlphabetIcon.vue +++ b/resources/js/components/FilesView/Icons/AlphabetIcon.vue @@ -1,22 +1,36 @@ \ No newline at end of file +} + diff --git a/resources/js/components/FilesView/Icons/CloudPlusIcon.vue b/resources/js/components/FilesView/Icons/CloudPlusIcon.vue index 8f63bd95..33bd3b88 100644 --- a/resources/js/components/FilesView/Icons/CloudPlusIcon.vue +++ b/resources/js/components/FilesView/Icons/CloudPlusIcon.vue @@ -1,23 +1,39 @@ \ No newline at end of file +} + diff --git a/resources/js/components/FilesView/Icons/FolderUploadIcon.vue b/resources/js/components/FilesView/Icons/FolderUploadIcon.vue index abb3a480..a196151e 100644 --- a/resources/js/components/FilesView/Icons/FolderUploadIcon.vue +++ b/resources/js/components/FilesView/Icons/FolderUploadIcon.vue @@ -1,25 +1,40 @@ diff --git a/resources/js/components/FilesView/Icons/SortingIcon.vue b/resources/js/components/FilesView/Icons/SortingIcon.vue index 2af90b2f..422d76c9 100644 --- a/resources/js/components/FilesView/Icons/SortingIcon.vue +++ b/resources/js/components/FilesView/Icons/SortingIcon.vue @@ -1,25 +1,38 @@ \ No newline at end of file +} + diff --git a/resources/js/components/FilesView/Icons/VueFolderIcon.vue b/resources/js/components/FilesView/Icons/VueFolderIcon.vue index 70ea1398..fb61cbf0 100644 --- a/resources/js/components/FilesView/Icons/VueFolderIcon.vue +++ b/resources/js/components/FilesView/Icons/VueFolderIcon.vue @@ -1,29 +1,29 @@ \ No newline at end of file +export default { + name: 'VueFolderIcon', +} + diff --git a/resources/js/components/FilesView/Icons/VueFolderTeamIcon.vue b/resources/js/components/FilesView/Icons/VueFolderTeamIcon.vue index 43258a55..0bb5f0b8 100644 --- a/resources/js/components/FilesView/Icons/VueFolderTeamIcon.vue +++ b/resources/js/components/FilesView/Icons/VueFolderTeamIcon.vue @@ -1,40 +1,52 @@ \ No newline at end of file +export default { + name: 'VueFolderTeamIcon', +} + diff --git a/resources/js/components/FilesView/ImageMetaData.vue b/resources/js/components/FilesView/ImageMetaData.vue index 1b6de294..d8d9c09d 100644 --- a/resources/js/components/FilesView/ImageMetaData.vue +++ b/resources/js/components/FilesView/ImageMetaData.vue @@ -26,7 +26,7 @@ {{ clipboard.metadata.ColorSpace }} - +
  • {{ $t('file_detail_meta.make') }} @@ -68,42 +68,41 @@ {{ clipboard.metadata.COMPUTED.CCDWidth }}
  • -
  • +
  • {{ $t('file_detail_meta.longitude') }} {{ formatGps(clipboard.metadata.GPSLongitude, clipboard.metadata.GPSLongitudeRef) }}
  • -
  • - {{ $t('file_detail_meta.latitude') }} - {{ formatGps(clipboard.metadata.GPSLatitude, clipboard.metadata.GPSLatitudeRef) }} -
  • +
  • + {{ $t('file_detail_meta.latitude') }} + {{ formatGps(clipboard.metadata.GPSLatitude, clipboard.metadata.GPSLatitudeRef) }} +
  • @@ -112,33 +111,34 @@ export default { @import '../../../sass/vuefilemanager/mixins'; .meta-data-list { - list-style: none; - padding: 0px; - margin: 0px; + list-style: none; + padding: 0px; + margin: 0px; - li { - display: flex; - justify-content: space-between; - padding: 9px 0; - border-bottom: 1px solid $light_mode_border; + li { + display: flex; + justify-content: space-between; + padding: 9px 0; + border-bottom: 1px solid $light_mode_border; - b, span { - @include font-size(14); - color: $text; - } - } + b, + span { + @include font-size(14); + color: $text; + } + } } .dark { + .meta-data-list { + li { + border-color: $dark_mode_border_color; - .meta-data-list { - li { - border-color: $dark_mode_border_color; - - b, span { - color: $dark_mode_text_primary !important; - } - } - } + b, + span { + color: $dark_mode_text_primary !important; + } + } + } } - \ No newline at end of file + diff --git a/resources/js/components/FilesView/InfoSidebar.vue b/resources/js/components/FilesView/InfoSidebar.vue index 4075fa32..eba51f4b 100644 --- a/resources/js/components/FilesView/InfoSidebar.vue +++ b/resources/js/components/FilesView/InfoSidebar.vue @@ -1,108 +1,81 @@ diff --git a/resources/js/components/FilesView/ItemGrid.vue b/resources/js/components/FilesView/ItemGrid.vue index 5d364664..9e83307e 100644 --- a/resources/js/components/FilesView/ItemGrid.vue +++ b/resources/js/components/FilesView/ItemGrid.vue @@ -1,221 +1,209 @@ diff --git a/resources/js/components/FilesView/ItemHandler.vue b/resources/js/components/FilesView/ItemHandler.vue index c0f1e5b1..19387251 100644 --- a/resources/js/components/FilesView/ItemHandler.vue +++ b/resources/js/components/FilesView/ItemHandler.vue @@ -1,57 +1,48 @@ @@ -217,7 +196,6 @@ export default { @import '../../../sass/vuefilemanager/variables'; @import '../../../sass/vuefilemanager/mixins'; - .slide-from-left-move { transition: transform 300s ease; } @@ -357,7 +335,7 @@ export default { height: 52px; /deep/ .folder-icon { - @include font-size(52) + @include font-size(52); } } @@ -430,7 +408,6 @@ export default { } .dark { - .file-wrapper { .icon-item { .file-icon { @@ -446,15 +423,13 @@ export default { background: $dark_mode_background !important; .file-icon { - path { fill: $dark_mode_foreground !important; - stroke: #2F3C54; + stroke: #2f3c54; } } .item-name { - .name { color: $dark_mode_text_primary !important; } @@ -485,4 +460,4 @@ export default { } } } - \ No newline at end of file + diff --git a/resources/js/components/FilesView/ItemList.vue b/resources/js/components/FilesView/ItemList.vue index c24966f5..96540b4b 100644 --- a/resources/js/components/FilesView/ItemList.vue +++ b/resources/js/components/FilesView/ItemList.vue @@ -1,199 +1,195 @@ diff --git a/resources/js/components/FilesView/MemberAvatar.vue b/resources/js/components/FilesView/MemberAvatar.vue index a1488256..554311e7 100644 --- a/resources/js/components/FilesView/MemberAvatar.vue +++ b/resources/js/components/FilesView/MemberAvatar.vue @@ -1,62 +1,69 @@ diff --git a/resources/js/components/FilesView/MobileActionButton.vue b/resources/js/components/FilesView/MobileActionButton.vue index b3b56399..2d3ac46e 100644 --- a/resources/js/components/FilesView/MobileActionButton.vue +++ b/resources/js/components/FilesView/MobileActionButton.vue @@ -1,5 +1,5 @@ diff --git a/resources/js/components/FilesView/MobileActionButtonUpload.vue b/resources/js/components/FilesView/MobileActionButtonUpload.vue index 7c0c5e55..823043a1 100644 --- a/resources/js/components/FilesView/MobileActionButtonUpload.vue +++ b/resources/js/components/FilesView/MobileActionButtonUpload.vue @@ -4,79 +4,76 @@ diff --git a/resources/js/components/FilesView/MobileContextMenu.vue b/resources/js/components/FilesView/MobileContextMenu.vue index 08559f86..590424ac 100644 --- a/resources/js/components/FilesView/MobileContextMenu.vue +++ b/resources/js/components/FilesView/MobileContextMenu.vue @@ -2,37 +2,35 @@ - - + + - - + + - - + + diff --git a/resources/js/components/FilesView/MobileCreateMenu.vue b/resources/js/components/FilesView/MobileCreateMenu.vue index 60b30531..51856fb7 100644 --- a/resources/js/components/FilesView/MobileCreateMenu.vue +++ b/resources/js/components/FilesView/MobileCreateMenu.vue @@ -1,15 +1,15 @@ diff --git a/resources/js/components/FilesView/MobileMultiSelectToolbar.vue b/resources/js/components/FilesView/MobileMultiSelectToolbar.vue index 56bd1efe..6f376a94 100644 --- a/resources/js/components/FilesView/MobileMultiSelectToolbar.vue +++ b/resources/js/components/FilesView/MobileMultiSelectToolbar.vue @@ -1,9 +1,9 @@ diff --git a/resources/js/components/FilesView/MobileTeamContextMenu.vue b/resources/js/components/FilesView/MobileTeamContextMenu.vue index b2c08108..ced78b76 100644 --- a/resources/js/components/FilesView/MobileTeamContextMenu.vue +++ b/resources/js/components/FilesView/MobileTeamContextMenu.vue @@ -1,24 +1,24 @@ diff --git a/resources/js/components/FilesView/MobileToolbar.vue b/resources/js/components/FilesView/MobileToolbar.vue index 06a6a72f..5a1b2aa5 100644 --- a/resources/js/components/FilesView/MobileToolbar.vue +++ b/resources/js/components/FilesView/MobileToolbar.vue @@ -1,90 +1,96 @@ diff --git a/resources/js/components/FilesView/Option.vue b/resources/js/components/FilesView/Option.vue index abbd1f46..865accbd 100644 --- a/resources/js/components/FilesView/Option.vue +++ b/resources/js/components/FilesView/Option.vue @@ -1,63 +1,68 @@ diff --git a/resources/js/components/FilesView/OptionGroup.vue b/resources/js/components/FilesView/OptionGroup.vue index 26c3b5cd..3de1e3e3 100644 --- a/resources/js/components/FilesView/OptionGroup.vue +++ b/resources/js/components/FilesView/OptionGroup.vue @@ -5,20 +5,19 @@ diff --git a/resources/js/components/FilesView/OptionUpload.vue b/resources/js/components/FilesView/OptionUpload.vue index 8f55713f..22b38288 100644 --- a/resources/js/components/FilesView/OptionUpload.vue +++ b/resources/js/components/FilesView/OptionUpload.vue @@ -1,63 +1,41 @@ diff --git a/resources/js/components/FilesView/ProcessingPopup.vue b/resources/js/components/FilesView/ProcessingPopup.vue index 9dcb1cc5..34315f56 100644 --- a/resources/js/components/FilesView/ProcessingPopup.vue +++ b/resources/js/components/FilesView/ProcessingPopup.vue @@ -4,7 +4,7 @@ - - + + -
    - +
    + {{ $t('input_image.title') }} @@ -30,179 +20,179 @@ diff --git a/resources/js/components/Others/Forms/InfoBox.vue b/resources/js/components/Others/Forms/InfoBox.vue index 11faf8f7..9f497e6f 100644 --- a/resources/js/components/Others/Forms/InfoBox.vue +++ b/resources/js/components/Others/Forms/InfoBox.vue @@ -5,27 +5,91 @@ diff --git a/resources/js/components/Others/Forms/MultiEmailInput.vue b/resources/js/components/Others/Forms/MultiEmailInput.vue index dd5561fc..61ea3bac 100644 --- a/resources/js/components/Others/Forms/MultiEmailInput.vue +++ b/resources/js/components/Others/Forms/MultiEmailInput.vue @@ -1,13 +1,22 @@ diff --git a/resources/js/components/Others/Forms/SwitchInput.vue b/resources/js/components/Others/Forms/SwitchInput.vue index 73b28120..de097ffb 100644 --- a/resources/js/components/Others/Forms/SwitchInput.vue +++ b/resources/js/components/Others/Forms/SwitchInput.vue @@ -1,20 +1,14 @@ diff --git a/resources/js/components/Others/Layout/PageTab.vue b/resources/js/components/Others/Layout/PageTab.vue index 4824af17..4973f34b 100644 --- a/resources/js/components/Others/Layout/PageTab.vue +++ b/resources/js/components/Others/Layout/PageTab.vue @@ -3,23 +3,23 @@
    - +
    \ No newline at end of file +@import '../../../../sass/vuefilemanager/variables'; +@import '../../../../sass/vuefilemanager/mixins'; + diff --git a/resources/js/components/Others/Layout/PageTabGroup.vue b/resources/js/components/Others/Layout/PageTabGroup.vue index 6456bc30..ae6b6014 100644 --- a/resources/js/components/Others/Layout/PageTabGroup.vue +++ b/resources/js/components/Others/Layout/PageTabGroup.vue @@ -5,16 +5,16 @@ diff --git a/resources/js/components/Others/ListInfo.vue b/resources/js/components/Others/ListInfo.vue index 18d94405..96117a7e 100644 --- a/resources/js/components/Others/ListInfo.vue +++ b/resources/js/components/Others/ListInfo.vue @@ -5,12 +5,12 @@ diff --git a/resources/js/components/Others/ListInfoItem.vue b/resources/js/components/Others/ListInfoItem.vue index ab215507..9ec600d4 100644 --- a/resources/js/components/Others/ListInfoItem.vue +++ b/resources/js/components/Others/ListInfoItem.vue @@ -1,22 +1,19 @@ diff --git a/resources/js/components/Others/MobileNavigation.vue b/resources/js/components/Others/MobileNavigation.vue index ca07c458..e87f9dda 100644 --- a/resources/js/components/Others/MobileNavigation.vue +++ b/resources/js/components/Others/MobileNavigation.vue @@ -1,37 +1,35 @@ diff --git a/resources/js/components/Others/MoveItemPopup.vue b/resources/js/components/Others/MoveItemPopup.vue index ba499888..c16633b8 100644 --- a/resources/js/components/Others/MoveItemPopup.vue +++ b/resources/js/components/Others/MoveItemPopup.vue @@ -3,167 +3,151 @@ - - - + + - -
    + +
    - + class="mb-4" + icon="check-square" + :title="$t('file_detail.selected_multiple')" + :subtitle="this.clipboard.length + ' ' + $tc('file_detail.items', this.clipboard.length)" + v-if="clipboard.length > 1 && !isSelectedItem" + /> +
    - + - {{ $t('popup_move_item.cancel') }} - - {{ $t('popup_move_item.submit') }} - + {{ $t('popup_move_item.cancel') }} + {{ $t('popup_move_item.submit') }} diff --git a/resources/js/components/Others/Notifications/ToasterItem.vue b/resources/js/components/Others/Notifications/ToasterItem.vue index 6b8bd145..6f08280e 100644 --- a/resources/js/components/Others/Notifications/ToasterItem.vue +++ b/resources/js/components/Others/Notifications/ToasterItem.vue @@ -1,92 +1,101 @@ diff --git a/resources/js/components/Others/Notifications/ToasterWrapper.vue b/resources/js/components/Others/Notifications/ToasterWrapper.vue index a700a7cd..4b4cec62 100644 --- a/resources/js/components/Others/Notifications/ToasterWrapper.vue +++ b/resources/js/components/Others/Notifications/ToasterWrapper.vue @@ -1,24 +1,24 @@ diff --git a/resources/js/components/Others/PageHeader.vue b/resources/js/components/Others/PageHeader.vue index e15546c2..c79295c9 100644 --- a/resources/js/components/Others/PageHeader.vue +++ b/resources/js/components/Others/PageHeader.vue @@ -10,79 +10,74 @@ diff --git a/resources/js/components/Others/PaymentMethod.vue b/resources/js/components/Others/PaymentMethod.vue index 2faaea78..966ae401 100644 --- a/resources/js/components/Others/PaymentMethod.vue +++ b/resources/js/components/Others/PaymentMethod.vue @@ -1,22 +1,19 @@ diff --git a/resources/js/components/Others/PlanPricingTables.vue b/resources/js/components/Others/PlanPricingTables.vue index 1520e2a4..bbd0911a 100644 --- a/resources/js/components/Others/PlanPricingTables.vue +++ b/resources/js/components/Others/PlanPricingTables.vue @@ -7,7 +7,9 @@

    {{ plan.data.attributes.name }}

    -

    {{ plan.data.attributes.description }}

    +

    + {{ plan.data.attributes.description }} +

    {{ plan.data.attributes.capacity_formatted }} @@ -28,191 +30,184 @@ diff --git a/resources/js/components/Others/Popup/ConfirmPopup.vue b/resources/js/components/Others/Popup/ConfirmPopup.vue index b597fd51..4b9c5ce1 100644 --- a/resources/js/components/Others/Popup/ConfirmPopup.vue +++ b/resources/js/components/Others/Popup/ConfirmPopup.vue @@ -1,83 +1,73 @@ diff --git a/resources/js/components/Others/Popup/PopupActions.vue b/resources/js/components/Others/Popup/PopupActions.vue index dc6b8af5..884edb5a 100644 --- a/resources/js/components/Others/Popup/PopupActions.vue +++ b/resources/js/components/Others/Popup/PopupActions.vue @@ -1,11 +1,11 @@ diff --git a/resources/js/components/Others/Popup/PopupContent.vue b/resources/js/components/Others/Popup/PopupContent.vue index 50c21aa9..a9032266 100644 --- a/resources/js/components/Others/Popup/PopupContent.vue +++ b/resources/js/components/Others/Popup/PopupContent.vue @@ -1,17 +1,12 @@ \ No newline at end of file +export default { + name: 'PopupContent', + props: ['type'], +} + diff --git a/resources/js/components/Others/Popup/PopupHeader.vue b/resources/js/components/Others/Popup/PopupHeader.vue index 6506c98a..c64cfa94 100644 --- a/resources/js/components/Others/Popup/PopupHeader.vue +++ b/resources/js/components/Others/Popup/PopupHeader.vue @@ -1,50 +1,48 @@ diff --git a/resources/js/components/Others/Popup/PopupWrapper.vue b/resources/js/components/Others/Popup/PopupWrapper.vue index 9e8d4e2c..3bcedfbd 100644 --- a/resources/js/components/Others/Popup/PopupWrapper.vue +++ b/resources/js/components/Others/Popup/PopupWrapper.vue @@ -1,10 +1,6 @@ diff --git a/resources/js/components/Others/RenameItemPopup.vue b/resources/js/components/Others/RenameItemPopup.vue index 8b54ef48..54f2640e 100644 --- a/resources/js/components/Others/RenameItemPopup.vue +++ b/resources/js/components/Others/RenameItemPopup.vue @@ -1,36 +1,41 @@ diff --git a/resources/js/components/Others/SelectSingleChargeMethodPopup.vue b/resources/js/components/Others/SelectSingleChargeMethodPopup.vue index 55423c97..37d26298 100644 --- a/resources/js/components/Others/SelectSingleChargeMethodPopup.vue +++ b/resources/js/components/Others/SelectSingleChargeMethodPopup.vue @@ -3,61 +3,50 @@ + +
    + +
    + +
    + + {{ $t('Select') }} + +
    - -
    - -
    - -
    - - {{ $t('Select') }} - -
    + +
    +
    - -
    -
    - - - - - - {{ $t('Select') }} - - - + + + + + {{ $t('Select') }} + + +
    - + {{ $t('Cancel Payment') }} @@ -65,117 +54,117 @@ diff --git a/resources/js/components/Others/ShareCreatePopup.vue b/resources/js/components/Others/ShareCreatePopup.vue index 26ea5cf4..7b46e32a 100644 --- a/resources/js/components/Others/ShareCreatePopup.vue +++ b/resources/js/components/Others/ShareCreatePopup.vue @@ -1,72 +1,81 @@ diff --git a/resources/js/components/Others/ShareEditPopup.vue b/resources/js/components/Others/ShareEditPopup.vue index a325cc49..f87bc826 100644 --- a/resources/js/components/Others/ShareEditPopup.vue +++ b/resources/js/components/Others/ShareEditPopup.vue @@ -3,356 +3,339 @@ - -
    - -
    - -
    -
    -
    + +
    + +
    + +
    +
    +
    - - - {{ $t('Show Details') }} - - - {{ $t('shared_form.button_done') }} - - -
    + + + {{ $t('Show Details') }} + + + {{ $t('shared_form.button_done') }} + + +
    - -
    - - - + +
    + + + - - - - - - - - + + + + + + + + - - - {{ $t('Show Details') }} - - - {{ $t('Send') }} - - -
    + + + {{ $t('Show Details') }} + + + {{ $t('Send') }} + + +
    - -
    - - - + +
    + + + - - - - + + + + - + + + + + + + - - - - - - + +
    + + + - -
    - - - + + {{ $t('popup_share_edit.change_pass') }} + - - {{ $t('popup_share_edit.change_pass') }} - + + + + + + +
    - - - - - - -
    + +
    + + + - -
    - - - + + + + +
    + + - - - - -
    -
    -
    - - - - {{ destroyButtonText }} - - - {{ $t('Store Changes') }} - - -
    + + + {{ destroyButtonText }} + + + {{ $t('Store Changes') }} + + +
    diff --git a/resources/js/components/Others/TabOption.vue b/resources/js/components/Others/TabOption.vue index 9b888486..fef0a886 100644 --- a/resources/js/components/Others/TabOption.vue +++ b/resources/js/components/Others/TabOption.vue @@ -5,18 +5,16 @@ - diff --git a/resources/js/components/Others/TabWrapper.vue b/resources/js/components/Others/TabWrapper.vue index ae3089ba..da7490aa 100644 --- a/resources/js/components/Others/TabWrapper.vue +++ b/resources/js/components/Others/TabWrapper.vue @@ -2,125 +2,117 @@
    - - - - - + + + + - {{tab.title}} + {{ tab.title }}
    - diff --git a/resources/js/components/Others/Tables/DatatableCell.vue b/resources/js/components/Others/Tables/DatatableCell.vue index 37398da3..4a5de44c 100644 --- a/resources/js/components/Others/Tables/DatatableCell.vue +++ b/resources/js/components/Others/Tables/DatatableCell.vue @@ -1,58 +1,54 @@ - diff --git a/resources/js/components/Others/ThemeLabel.vue b/resources/js/components/Others/ThemeLabel.vue index b31a46d0..4fa8c539 100644 --- a/resources/js/components/Others/ThemeLabel.vue +++ b/resources/js/components/Others/ThemeLabel.vue @@ -5,20 +5,20 @@ diff --git a/resources/js/components/Others/ThumbnailItem.vue b/resources/js/components/Others/ThumbnailItem.vue index ebdb1ae6..fa085db2 100644 --- a/resources/js/components/Others/ThumbnailItem.vue +++ b/resources/js/components/Others/ThumbnailItem.vue @@ -1,135 +1,118 @@ diff --git a/resources/js/components/Others/TreeMenu.vue b/resources/js/components/Others/TreeMenu.vue index d8c92f64..b02b4c29 100644 --- a/resources/js/components/Others/TreeMenu.vue +++ b/resources/js/components/Others/TreeMenu.vue @@ -1,134 +1,125 @@ diff --git a/resources/js/components/Others/TreeMenuNavigator.vue b/resources/js/components/Others/TreeMenuNavigator.vue index 6c00aa9f..fad5ef4c 100644 --- a/resources/js/components/Others/TreeMenuNavigator.vue +++ b/resources/js/components/Others/TreeMenuNavigator.vue @@ -1,144 +1,146 @@ diff --git a/resources/js/components/Others/TwoFactorQrSetupPopup.vue b/resources/js/components/Others/TwoFactorQrSetupPopup.vue index 9c3b3cd7..96c49f75 100644 --- a/resources/js/components/Others/TwoFactorQrSetupPopup.vue +++ b/resources/js/components/Others/TwoFactorQrSetupPopup.vue @@ -1,24 +1,19 @@ diff --git a/resources/js/components/Others/TwoFactorRecoveryCodesPopup.vue b/resources/js/components/Others/TwoFactorRecoveryCodesPopup.vue index 1959fdae..1a05e734 100644 --- a/resources/js/components/Others/TwoFactorRecoveryCodesPopup.vue +++ b/resources/js/components/Others/TwoFactorRecoveryCodesPopup.vue @@ -3,42 +3,37 @@ +
    + + {{ $t('context_menu.copy') }} + -
    - - {{ $t('context_menu.copy') }} - + + {{ $t('context_menu.download') }} + - - {{ $t('context_menu.download') }} - + + {{ $t('context_menu.codes_regenerate') }} + +
    - - {{ $t('context_menu.codes_regenerate') }} - -
    +
      +
    • {{ code }}
    • +
    -
      -
    • {{ code }}
    • -
    +
    + +
    -
    - -
    + - - - -

    -
    + +

    +
    - + {{ $t('shared_form.button_done') }} @@ -46,159 +41,160 @@ diff --git a/resources/js/components/Others/Vignette.vue b/resources/js/components/Others/Vignette.vue index 144ce1b2..e8a337e9 100644 --- a/resources/js/components/Others/Vignette.vue +++ b/resources/js/components/Others/Vignette.vue @@ -5,81 +5,78 @@ diff --git a/resources/js/components/Sidebar/ContentGroup.vue b/resources/js/components/Sidebar/ContentGroup.vue index c08fa8f3..5793c132 100644 --- a/resources/js/components/Sidebar/ContentGroup.vue +++ b/resources/js/components/Sidebar/ContentGroup.vue @@ -1,55 +1,48 @@ diff --git a/resources/js/components/Sidebar/ContentSidebar.vue b/resources/js/components/Sidebar/ContentSidebar.vue index 0fac785b..a3f97166 100644 --- a/resources/js/components/Sidebar/ContentSidebar.vue +++ b/resources/js/components/Sidebar/ContentSidebar.vue @@ -1,11 +1,11 @@ diff --git a/resources/js/components/Sidebar/SidebarNavigation.vue b/resources/js/components/Sidebar/SidebarNavigation.vue index 188f9e56..b539685c 100644 --- a/resources/js/components/Sidebar/SidebarNavigation.vue +++ b/resources/js/components/Sidebar/SidebarNavigation.vue @@ -1,184 +1,182 @@ diff --git a/resources/js/components/Sidebar/UserHeadline.vue b/resources/js/components/Sidebar/UserHeadline.vue index 2e9e9917..e30437b6 100644 --- a/resources/js/components/Sidebar/UserHeadline.vue +++ b/resources/js/components/Sidebar/UserHeadline.vue @@ -1,34 +1,28 @@ diff --git a/resources/js/components/Spotlight/CategoryName.vue b/resources/js/components/Spotlight/CategoryName.vue index 030fca49..4df947c9 100644 --- a/resources/js/components/Spotlight/CategoryName.vue +++ b/resources/js/components/Spotlight/CategoryName.vue @@ -1,10 +1,10 @@ \ No newline at end of file +export default { + name: 'CategoryName', +} + diff --git a/resources/js/components/Spotlight/FilterSuggestion.vue b/resources/js/components/Spotlight/FilterSuggestion.vue index 35eef5dd..8e0d2d22 100644 --- a/resources/js/components/Spotlight/FilterSuggestion.vue +++ b/resources/js/components/Spotlight/FilterSuggestion.vue @@ -1,19 +1,14 @@ \ No newline at end of file +export default { + name: 'FilterSuggestion', + props: ['keyword', 'description'], +} + diff --git a/resources/js/components/Spotlight/KeyboardHints.vue b/resources/js/components/Spotlight/KeyboardHints.vue index 1fc56656..24aa781b 100644 --- a/resources/js/components/Spotlight/KeyboardHints.vue +++ b/resources/js/components/Spotlight/KeyboardHints.vue @@ -1,40 +1,35 @@ \ No newline at end of file +export default { + name: 'KeyboardHints', + components: { + CornerDownLeftIcon, + ArrowDownIcon, + ArrowUpIcon, + }, +} + diff --git a/resources/js/components/Spotlight/Spotlight.vue b/resources/js/components/Spotlight/Spotlight.vue index 7532986a..c36b2d5c 100644 --- a/resources/js/components/Spotlight/Spotlight.vue +++ b/resources/js/components/Spotlight/Spotlight.vue @@ -1,745 +1,727 @@ diff --git a/resources/js/components/Subscription/FixedTransactionRow.vue b/resources/js/components/Subscription/FixedTransactionRow.vue index e6ea3527..7659f727 100644 --- a/resources/js/components/Subscription/FixedTransactionRow.vue +++ b/resources/js/components/Subscription/FixedTransactionRow.vue @@ -1,93 +1,91 @@ \ No newline at end of file +export default { + name: 'FixedTransactionRow', + components: { + MeteredTransactionDetailRow, + MemberAvatar, + FileTextIcon, + ColorLabel, + EyeIcon, + }, + props: { + row: {}, + user: { + type: Boolean, + default: false, + }, + }, + data() { + return { + showedTransactionDetailById: undefined, + } + }, + methods: { + showTransactionDetail(id) { + if (this.showedTransactionDetailById === id) this.showedTransactionDetailById = undefined + else this.showedTransactionDetailById = id + }, + }, +} + diff --git a/resources/js/components/Subscription/MeteredTransactionDetailRow.vue b/resources/js/components/Subscription/MeteredTransactionDetailRow.vue index 411fb3fc..b9c9cfd6 100644 --- a/resources/js/components/Subscription/MeteredTransactionDetailRow.vue +++ b/resources/js/components/Subscription/MeteredTransactionDetailRow.vue @@ -1,34 +1,36 @@ \ No newline at end of file + diff --git a/resources/js/components/Subscription/MeteredTransactionRow.vue b/resources/js/components/Subscription/MeteredTransactionRow.vue index 472b4b66..abcd3152 100644 --- a/resources/js/components/Subscription/MeteredTransactionRow.vue +++ b/resources/js/components/Subscription/MeteredTransactionRow.vue @@ -1,104 +1,103 @@ \ No newline at end of file +export default { + name: 'MeteredTransactionRow', + components: { + MeteredTransactionDetailRow, + MemberAvatar, + FileTextIcon, + ColorLabel, + EyeIcon, + }, + props: { + row: {}, + user: { + type: Boolean, + default: false, + }, + }, + data() { + return { + showedTransactionDetailById: undefined, + } + }, + methods: { + showTransactionDetail(id) { + if (this.showedTransactionDetailById === id) this.showedTransactionDetailById = undefined + else this.showedTransactionDetailById = id + }, + }, +} + diff --git a/resources/js/components/Subscription/PaymentCard.vue b/resources/js/components/Subscription/PaymentCard.vue index dbf2dd95..9a1e14fd 100644 --- a/resources/js/components/Subscription/PaymentCard.vue +++ b/resources/js/components/Subscription/PaymentCard.vue @@ -1,59 +1,57 @@ \ No newline at end of file + events.$emit('toaster', { + type: 'success', + message: this.$t('Your credit card was deleted.'), + }) + }) + .catch(() => this.$isSomethingWrong()) + }) + }, + destroyed() { + events.$off('action:confirmed') + }, +} + diff --git a/resources/js/components/Subscription/PlanDetail.vue b/resources/js/components/Subscription/PlanDetail.vue index 8585dc61..89561265 100644 --- a/resources/js/components/Subscription/PlanDetail.vue +++ b/resources/js/components/Subscription/PlanDetail.vue @@ -1,43 +1,43 @@ diff --git a/resources/js/components/Subscription/SelectPlanSubscriptionPopup.vue b/resources/js/components/Subscription/SelectPlanSubscriptionPopup.vue index 6b08d869..d64fd1ba 100644 --- a/resources/js/components/Subscription/SelectPlanSubscriptionPopup.vue +++ b/resources/js/components/Subscription/SelectPlanSubscriptionPopup.vue @@ -1,290 +1,257 @@ - diff --git a/resources/js/components/Subscription/UserBalance.vue b/resources/js/components/Subscription/UserBalance.vue index 06b0ccde..c4e90362 100644 --- a/resources/js/components/Subscription/UserBalance.vue +++ b/resources/js/components/Subscription/UserBalance.vue @@ -1,74 +1,73 @@ \ No newline at end of file + diff --git a/resources/js/components/Subscription/UserBillingAlerts.vue b/resources/js/components/Subscription/UserBillingAlerts.vue index 13d0c36a..6f7af884 100644 --- a/resources/js/components/Subscription/UserBillingAlerts.vue +++ b/resources/js/components/Subscription/UserBillingAlerts.vue @@ -1,191 +1,195 @@ \ No newline at end of file + diff --git a/resources/js/components/Subscription/UserEditSubscription.vue b/resources/js/components/Subscription/UserEditSubscription.vue index 46e3201e..ad801c06 100644 --- a/resources/js/components/Subscription/UserEditSubscription.vue +++ b/resources/js/components/Subscription/UserEditSubscription.vue @@ -1,101 +1,103 @@ \ No newline at end of file + events.$emit('toaster', { + type: 'success', + message: this.$t('popup_subscription_cancel.title'), + }) + }) + .catch(() => { + events.$emit('toaster', { + type: 'danger', + message: this.$t('popup_error.title'), + }) + }) + .finally(() => { + this.isCancelling = false + }) + } + }) + }, + destroyed() { + events.$off('action:confirmed') + }, +} + diff --git a/resources/js/components/Subscription/UserEmptySubscription.vue b/resources/js/components/Subscription/UserEmptySubscription.vue index a6fc67ce..0dc06094 100644 --- a/resources/js/components/Subscription/UserEmptySubscription.vue +++ b/resources/js/components/Subscription/UserEmptySubscription.vue @@ -1,39 +1,39 @@ \ No newline at end of file +export default { + name: 'UserEmptySubscription', + components: { + ButtonBase, + FormLabel, + InfoBox, + }, + computed: { + hasSubscription() { + return this.$store.getters.user.data.relationships.subscription + }, + }, +} + diff --git a/resources/js/components/Subscription/UserFailedPayments.vue b/resources/js/components/Subscription/UserFailedPayments.vue index ccc15c7c..baf7d18a 100644 --- a/resources/js/components/Subscription/UserFailedPayments.vue +++ b/resources/js/components/Subscription/UserFailedPayments.vue @@ -1,62 +1,58 @@ \ No newline at end of file + diff --git a/resources/js/components/Subscription/UserFixedSubscriptionDetail.vue b/resources/js/components/Subscription/UserFixedSubscriptionDetail.vue index cb041049..99380afd 100644 --- a/resources/js/components/Subscription/UserFixedSubscriptionDetail.vue +++ b/resources/js/components/Subscription/UserFixedSubscriptionDetail.vue @@ -1,94 +1,90 @@ \ No newline at end of file + return limitations + }, + status() { + return { + active: `Active until ${this.subscription.data.attributes.renews_at}`, + cancelled: `Ends at ${this.subscription.data.attributes.ends_at}`, + }[this.subscription.data.attributes.status] + }, + price() { + return { + month: `${this.subscription.data.relationships.plan.data.attributes.price} Per Month`, + year: `${this.subscription.data.relationships.plan.data.attributes.price} Per Year`, + }[this.subscription.data.relationships.plan.data.attributes.interval] + }, + }, +} + diff --git a/resources/js/components/Subscription/UserStoredPaymentMethods.vue b/resources/js/components/Subscription/UserStoredPaymentMethods.vue index 757ebc4d..f1b6d928 100644 --- a/resources/js/components/Subscription/UserStoredPaymentMethods.vue +++ b/resources/js/components/Subscription/UserStoredPaymentMethods.vue @@ -1,186 +1,190 @@ \ No newline at end of file + this.stripe.isInitialization = false + }, + showStoreCreditCardForm() { + this.isCreditCardForm = !this.isCreditCardForm + this.stripeInit() + }, + }, +} + diff --git a/resources/js/components/Subscription/UserTransactionsForFixedBilling.vue b/resources/js/components/Subscription/UserTransactionsForFixedBilling.vue index b69f9a2a..6ff96cf8 100644 --- a/resources/js/components/Subscription/UserTransactionsForFixedBilling.vue +++ b/resources/js/components/Subscription/UserTransactionsForFixedBilling.vue @@ -1,48 +1,43 @@ \ No newline at end of file + diff --git a/resources/js/components/Subscription/UserTransactionsForMeteredBilling.vue b/resources/js/components/Subscription/UserTransactionsForMeteredBilling.vue index 29a82300..67a79ac8 100644 --- a/resources/js/components/Subscription/UserTransactionsForMeteredBilling.vue +++ b/resources/js/components/Subscription/UserTransactionsForMeteredBilling.vue @@ -1,74 +1,65 @@ \ No newline at end of file +export default { + name: 'UserTransactionsForMeteredBilling', + components: { + MeteredTransactionDetailRow, + MeteredTransactionRow, + DatatableWrapper, + ColorLabel, + FormLabel, + InfoBox, + FileTextIcon, + EyeIcon, + }, + computed: { + ...mapGetters(['user']), + columns() { + return this.$store.getters.transactionColumns.filter((column) => column.field !== 'user_id') + }, + }, + data() { + return { + showedTransactionDetailById: undefined, + } + }, + methods: { + showTransactionDetail(id) { + if (this.showedTransactionDetailById === id) this.showedTransactionDetailById = undefined + else this.showedTransactionDetailById = id + }, + }, +} + diff --git a/resources/js/components/Subscription/UserUpdatePaymentMethodsExternally.vue b/resources/js/components/Subscription/UserUpdatePaymentMethodsExternally.vue index 991a693e..439bef56 100644 --- a/resources/js/components/Subscription/UserUpdatePaymentMethodsExternally.vue +++ b/resources/js/components/Subscription/UserUpdatePaymentMethodsExternally.vue @@ -1,69 +1,67 @@ \ No newline at end of file + this.isGeneratedUpdateLink = false + }) + }, + }, +} + diff --git a/resources/js/components/Subscription/UserUsageEstimates.vue b/resources/js/components/Subscription/UserUsageEstimates.vue index 615de77b..c90f81c7 100644 --- a/resources/js/components/Subscription/UserUsageEstimates.vue +++ b/resources/js/components/Subscription/UserUsageEstimates.vue @@ -1,56 +1,59 @@ \ No newline at end of file + diff --git a/resources/js/components/Teams/Components/PermissionToggleButton.vue b/resources/js/components/Teams/Components/PermissionToggleButton.vue index b596efaa..5544bf9e 100644 --- a/resources/js/components/Teams/Components/PermissionToggleButton.vue +++ b/resources/js/components/Teams/Components/PermissionToggleButton.vue @@ -1,80 +1,75 @@ \ No newline at end of file +.dark { + .permission-toggle .privilege { + color: $dark_mode_text_secondary; + } +} + diff --git a/resources/js/components/Teams/Components/TeamFolderPreview.vue b/resources/js/components/Teams/Components/TeamFolderPreview.vue index 21a515ba..ffa76729 100644 --- a/resources/js/components/Teams/Components/TeamFolderPreview.vue +++ b/resources/js/components/Teams/Components/TeamFolderPreview.vue @@ -1,49 +1,44 @@ \ No newline at end of file +.dark { + .team-folder-preview { + border-color: $dark_mode_border_color; + } +} + diff --git a/resources/js/components/Teams/Components/TeamList.vue b/resources/js/components/Teams/Components/TeamList.vue index f7262348..c2fe1cbb 100644 --- a/resources/js/components/Teams/Components/TeamList.vue +++ b/resources/js/components/Teams/Components/TeamList.vue @@ -1,100 +1,84 @@ \ No newline at end of file + this.emitMembers() + }, + emitMembers() { + this.$emit('input', this.members) + }, + }, + created() { + this.members = this.value + }, +} + diff --git a/resources/js/components/Teams/Components/TeamMembersButton.vue b/resources/js/components/Teams/Components/TeamMembersButton.vue index 27ace06d..896f9ec3 100644 --- a/resources/js/components/Teams/Components/TeamMembersButton.vue +++ b/resources/js/components/Teams/Components/TeamMembersButton.vue @@ -1,36 +1,29 @@ \ No newline at end of file +export default { + name: 'TeamMembersButton', + components: { + TeamMembersPreview, + }, + props: ['size'], + computed: { + ...mapGetters(['currentTeamFolder', 'clipboard']), + teamFolder() { + return this.currentTeamFolder ? this.currentTeamFolder : this.clipboard[0] + }, + }, +} + diff --git a/resources/js/components/Teams/Components/TeamMembersPreview.vue b/resources/js/components/Teams/Components/TeamMembersPreview.vue index 891c2ee6..974b1798 100644 --- a/resources/js/components/Teams/Components/TeamMembersPreview.vue +++ b/resources/js/components/Teams/Components/TeamMembersPreview.vue @@ -1,96 +1,88 @@ \ No newline at end of file + .members .member { + border-color: $dark_mode_foreground; + } + } +} + diff --git a/resources/js/components/Teams/CreateTeamFolderPopup.vue b/resources/js/components/Teams/CreateTeamFolderPopup.vue index fc9ba1ec..6a5441f8 100644 --- a/resources/js/components/Teams/CreateTeamFolderPopup.vue +++ b/resources/js/components/Teams/CreateTeamFolderPopup.vue @@ -1,261 +1,254 @@ diff --git a/resources/js/components/Teams/EditTeamFolderPopup.vue b/resources/js/components/Teams/EditTeamFolderPopup.vue index cd280698..cb8ec4aa 100644 --- a/resources/js/components/Teams/EditTeamFolderPopup.vue +++ b/resources/js/components/Teams/EditTeamFolderPopup.vue @@ -1,236 +1,231 @@ diff --git a/resources/js/components/UI/Bar.vue b/resources/js/components/UI/Bar.vue index 70c690ee..f656a4b8 100644 --- a/resources/js/components/UI/Bar.vue +++ b/resources/js/components/UI/Bar.vue @@ -1,40 +1,30 @@ \ No newline at end of file +export default { + name: 'Bar', + props: ['bar'], + data() { + return { + isVisible: false, + } + }, +} + diff --git a/resources/js/components/UI/BarChart.vue b/resources/js/components/UI/BarChart.vue index b96d0cbd..ddde80ad 100644 --- a/resources/js/components/UI/BarChart.vue +++ b/resources/js/components/UI/BarChart.vue @@ -1,38 +1,32 @@ \ No newline at end of file +export default { + name: 'BarChart', + props: ['color', 'data'], + components: { + Bar, + }, + computed: { + ghostLength() { + return 45 - this.data.length + }, + }, +} + diff --git a/resources/js/helpers/AlertHelpers.js b/resources/js/helpers/AlertHelpers.js index ec7e11a5..9ba85a4a 100644 --- a/resources/js/helpers/AlertHelpers.js +++ b/resources/js/helpers/AlertHelpers.js @@ -1,54 +1,52 @@ import store from '../store/index' -import {events} from "../bus" -import i18n from "../i18n" +import { events } from '../bus' +import i18n from '../i18n' const AlertHelpers = { - install(Vue) { + install(Vue) { + Vue.prototype.$temporarilyDisabledUpload = function () { + let messages = { + metered: { + title: i18n.t('Upload is temporarily disabled'), + message: i18n.t('Please review your billing settings.'), + }, + fixed: { + title: i18n.t('Upload is temporarily disabled'), + message: i18n.t('Please review your billing settings.'), + }, + none: { + title: i18n.t('You exceeded your upload limit'), + message: i18n.t('Unfortunately, you can not upload your file.'), + }, + } - Vue.prototype.$temporarilyDisabledUpload = function () { + events.$emit('alert:open', { + title: messages[store.getters.config.subscriptionType]['title'], + message: messages[store.getters.config.subscriptionType]['message'], + }) + } - let messages = { - metered: { - title: i18n.t('Upload is temporarily disabled'), - message: i18n.t('Please review your billing settings.') - }, - fixed: { - title: i18n.t('Upload is temporarily disabled'), - message: i18n.t('Please review your billing settings.') - }, - none: { - title: i18n.t('You exceeded your upload limit'), - message: i18n.t('Unfortunately, you can not upload your file.') - }, - } + Vue.prototype.$temporarilyDisabledFolderCreate = function () { + events.$emit('alert:open', { + title: i18n.t('Folder creation is temporarily disabled'), + message: i18n.t('Please review your billing settings.'), + }) + } - events.$emit('alert:open', { - title: messages[store.getters.config.subscriptionType]['title'], - message: messages[store.getters.config.subscriptionType]['message'] - }) - } + Vue.prototype.$temporarilyDisabledDownload = function () { + events.$emit('alert:open', { + title: i18n.t('File download is temporarily disabled'), + message: i18n.t('Please review your billing settings.'), + }) + } - Vue.prototype.$temporarilyDisabledFolderCreate = function () { - events.$emit('alert:open', { - title: i18n.t('Folder creation is temporarily disabled'), - message: i18n.t('Please review your billing settings.') - }) - } - - Vue.prototype.$temporarilyDisabledDownload = function () { - events.$emit('alert:open', { - title: i18n.t('File download is temporarily disabled'), - message: i18n.t('Please review your billing settings.') - }) - } - - Vue.prototype.$isSomethingWrong = function () { - events.$emit('alert:open', { - title: i18n.t('popup_error.title'), - message: i18n.t('popup_error.message') - }) - } - } + Vue.prototype.$isSomethingWrong = function () { + events.$emit('alert:open', { + title: i18n.t('popup_error.title'), + message: i18n.t('popup_error.message'), + }) + } + }, } -export default AlertHelpers \ No newline at end of file +export default AlertHelpers diff --git a/resources/js/helpers/SubscriptionHelpers.js b/resources/js/helpers/SubscriptionHelpers.js index f0a8ba0b..8aeea885 100644 --- a/resources/js/helpers/SubscriptionHelpers.js +++ b/resources/js/helpers/SubscriptionHelpers.js @@ -1,19 +1,17 @@ import store from '../store/index' const ValidatorHelpers = { - install(Vue) { + install(Vue) { + Vue.prototype.$generatePaystackReference = function () { + let text = '' - Vue.prototype.$generatePaystackReference = function () { - let text = ""; + let possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789' - let possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + for (let i = 0; i < 10; i++) text += possible.charAt(Math.floor(Math.random() * possible.length)) - for (let i = 0; i < 10; i++) - text += possible.charAt(Math.floor(Math.random() * possible.length)); - - return text; - } - } + return text + } + }, } -export default ValidatorHelpers \ No newline at end of file +export default ValidatorHelpers diff --git a/resources/js/helpers/ValidatorHelpers.js b/resources/js/helpers/ValidatorHelpers.js index bd8f4003..b753540f 100644 --- a/resources/js/helpers/ValidatorHelpers.js +++ b/resources/js/helpers/ValidatorHelpers.js @@ -1,41 +1,38 @@ import store from '../store/index' const ValidatorHelpers = { - install(Vue) { + install(Vue) { + Vue.prototype.$cantInviteMember = function (email, invitations) { + if (store.getters.config.subscriptionType === 'metered') { + return false + } - Vue.prototype.$cantInviteMember = function (email, invitations) { + // Get max team members limitations + let limit = store.getters.user.data.meta.limitations.max_team_members - if (store.getters.config.subscriptionType === 'metered') { - return false - } + // Get emails from invitations and currently active members + let newInvitationEmails = invitations.map((item) => item['email']) + let allowedMemberEmails = limit.meta.allowed_emails - // Get max team members limitations - let limit = store.getters.user.data.meta.limitations.max_team_members + // Get unique list of member emails + let totalUniqueEmails = [...new Set(newInvitationEmails.concat(Object.values(allowedMemberEmails)))] - // Get emails from invitations and currently active members - let newInvitationEmails = invitations.map(item => item['email']) - let allowedMemberEmails = limit.meta.allowed_emails + // If there is more unique emails than can be in limit, disable ability to add member + return totalUniqueEmails.length >= limit.total && !totalUniqueEmails.includes(email) + } - // Get unique list of member emails - let totalUniqueEmails = [...new Set(newInvitationEmails.concat(Object.values(allowedMemberEmails)))] + Vue.prototype.$isInvalidEmail = function (email) { + return email.match(/^[^\s@]+@[^\s@]+\.[^\s@]+$/) === null + } - // If there is more unique emails than can be in limit, disable ability to add member - return totalUniqueEmails.length >= limit.total && !totalUniqueEmails.includes(email); - } + Vue.prototype.$reCaptchaToken = async function (action) { + await this.$recaptchaLoaded() - Vue.prototype.$isInvalidEmail = function (email) { - return email.match(/^[^\s@]+@[^\s@]+\.[^\s@]+$/) === null - } + let token = await this.$recaptcha(action) - Vue.prototype.$reCaptchaToken = async function (action) { - - await this.$recaptchaLoaded() - - let token = await this.$recaptcha(action) - - return token - } - } + return token + } + }, } -export default ValidatorHelpers \ No newline at end of file +export default ValidatorHelpers diff --git a/resources/js/helpers/functionHelpers.js b/resources/js/helpers/functionHelpers.js index 5bc46eb6..6053bb27 100644 --- a/resources/js/helpers/functionHelpers.js +++ b/resources/js/helpers/functionHelpers.js @@ -1,18 +1,21 @@ -import {debounce, isArray, orderBy} from "lodash" -import i18n from "../i18n"; -import router from "../router"; +import { debounce, isArray, orderBy } from 'lodash' +import i18n from '../i18n' +import router from '../router' import store from '../store/index' -import {events} from '../bus' +import { events } from '../bus' import axios from 'axios' const FunctionHelpers = { install(Vue) { - Vue.prototype.$updateText = debounce(function (route, name, value, allowEmpty = false) { - if ((value === '' || value === ' ' || typeof value === 'object') && !allowEmpty) return - axios.post(store.getters.api + route, {name, value, _method: 'patch'}) + axios + .post(store.getters.api + route, { + name, + value, + _method: 'patch', + }) .catch(() => { events.$emit('alert:open', { title: this.$t('popup_error.title'), @@ -22,12 +25,12 @@ const FunctionHelpers = { }, 150) Vue.prototype.$updateInput = debounce(function (route, name, value, allowEmpty = false) { - if ((value === '' || value === ' ' || typeof value === 'object') && !allowEmpty) return - axios.post(store.getters.api + route, { + axios + .post(store.getters.api + route, { [name]: value, - _method: 'patch' + _method: 'patch', }) .catch(() => { events.$emit('alert:open', { @@ -38,7 +41,6 @@ const FunctionHelpers = { }, 150) Vue.prototype.$updateImage = function (route, name, image) { - // Create form let formData = new FormData() @@ -47,12 +49,13 @@ const FunctionHelpers = { formData.append(name, image) formData.append('_method', 'PATCH') - axios.post(store.getters.api + route, formData, { - headers: { - 'Content-Type': 'multipart/form-data', - } - }) - .catch(error => { + axios + .post(store.getters.api + route, formData, { + headers: { + 'Content-Type': 'multipart/form-data', + }, + }) + .catch((error) => { events.$emit('alert:open', { title: this.$t('popup_error.title'), message: this.$t('popup_error.message'), @@ -69,17 +72,15 @@ const FunctionHelpers = { } Vue.prototype.$translateSelectOptions = function (options) { - return options.map(role => { - let key, values; + return options.map((role) => { + let key, values if (isArray(role.label)) { - [key, values] = role.label + ;[key, values] = role.label } return { - label: isArray(role.label) - ? i18n.t(key, values) - : i18n.t(role.label), + label: isArray(role.label) ? i18n.t(key, values) : i18n.t(role.label), value: role.value, icon: role.icon ? role.icon : '', } @@ -87,37 +88,36 @@ const FunctionHelpers = { } Vue.prototype.$mapStorageUsage = function (storage) { - let distribution = [ { progress: storage.data.meta.images.percentage, color: 'success', value: storage.data.meta.images.used, - title: 'Images' + title: 'Images', }, { progress: storage.data.meta.videos.percentage, color: 'danger', value: storage.data.meta.videos.used, - title: 'Videos' + title: 'Videos', }, { progress: storage.data.meta.audios.percentage, color: 'warning', value: storage.data.meta.audios.used, - title: 'Audios' + title: 'Audios', }, { progress: storage.data.meta.documents.percentage, color: 'info', value: storage.data.meta.documents.used, - title: 'Documents' + title: 'Documents', }, { progress: storage.data.meta.others.percentage, color: 'purple', value: storage.data.meta.others.used, - title: 'Others' + title: 'Others', }, ] @@ -130,7 +130,7 @@ const FunctionHelpers = { progress: 100 - storage.data.attributes.percentage, color: 'secondary', value: storage.data.meta.others.used, - title: 'Empty' + title: 'Empty', }) } @@ -151,7 +151,7 @@ const FunctionHelpers = { Vue.prototype.$uploadFiles = async function (files) { // Show alert message when upload is disabled - if (! store.getters.user.data.meta.restrictions.canUpload) { + if (!store.getters.user.data.meta.restrictions.canUpload) { Vue.prototype.$temporarilyDisabledUpload() return @@ -159,20 +159,17 @@ const FunctionHelpers = { if (files.length === 0) return - if (!this.$checkFileMimetype(files) || !this.$checkUploadLimit(files)) return - - // Push items to file queue - [...files].map(item => { + if (!this.$checkFileMimetype(files) || !this.$checkUploadLimit(files)) return // Push items to file queue + ;[...files].map((item) => { store.commit('ADD_FILES_TO_QUEUE', { parent_id: store.getters.currentFolder ? store.getters.currentFolder.data.id : '', file: item, - path: '/' + item.webkitRelativePath + path: '/' + item.webkitRelativePath, }) - }); + }) // Start uploading if uploading process isn't running - if (store.getters.filesInQueueTotal == 0) - this.$handleUploading(store.getters.fileQueue[0]) + if (store.getters.filesInQueueTotal == 0) this.$handleUploading(store.getters.fileQueue[0]) // Increase total files in upload bar store.commit('INCREASE_FILES_IN_QUEUES_TOTAL', files.length) @@ -180,33 +177,29 @@ const FunctionHelpers = { Vue.prototype.$uploadDraggedFiles = async function (event, parent_id) { // Show alert message when upload is disabled - if (! store.getters.user.data.meta.restrictions.canUpload) { + if (!store.getters.user.data.meta.restrictions.canUpload) { Vue.prototype.$temporarilyDisabledUpload() return } // Prevent submit empty files - if (event.dataTransfer.items.length === 0) return - - // Push items to file queue - [...event.dataTransfer.items].map(item => { + if (event.dataTransfer.items.length === 0) return // Push items to file queue + ;[...event.dataTransfer.items].map((item) => { store.commit('ADD_FILES_TO_QUEUE', { parent_id: parent_id ? parent_id : '', file: item.getAsFile(), }) - }); + }) // Start uploading if uploading process isn't running - if (store.getters.filesInQueueTotal == 0) - this.$handleUploading(store.getters.fileQueue[0]) + if (store.getters.filesInQueueTotal == 0) this.$handleUploading(store.getters.fileQueue[0]) // Increase total files in upload bar store.commit('INCREASE_FILES_IN_QUEUES_TOTAL', [...event.dataTransfer.items].length) } Vue.prototype.$handleUploading = async function (item) { - // Create ceil let size = store.getters.config.chunkSize, chunksCeil = Math.ceil(item.file.size / size), @@ -214,24 +207,23 @@ const FunctionHelpers = { // Create chunks for (let i = 0; i < chunksCeil; i++) { - chunks.push(item.file.slice( - i * size, Math.min(i * size + size, item.file.size), item.file.type - )); + chunks.push(item.file.slice(i * size, Math.min(i * size + size, item.file.size), item.file.type)) } // Set Data let formData = new FormData(), uploadedSize = 0, - isNotGeneralError = true, - striped_spaces = item.file.name.replace(/\s/g, '-'), striped_to_safe_characters = striped_spaces.match(/^[A-Za-z0-9._~()'!*:@,;+?-\W]*$/g), - - source_name = Array(16) - .fill(0) - .map(x => Math.random().toString(36).charAt(2)) - .join('') + '-' + striped_to_safe_characters + '.part' + source_name = + Array(16) + .fill(0) + .map((x) => Math.random().toString(36).charAt(2)) + .join('') + + '-' + + striped_to_safe_characters + + '.part' do { let isLast = chunks.length === 1, @@ -247,34 +239,35 @@ const FunctionHelpers = { // Upload chunks do { - await store.dispatch('uploadFiles', { - form: formData, - fileSize: item.file.size, - totalUploadedSize: uploadedSize - }).then(() => { - uploadedSize = uploadedSize + chunk.size - }).catch(error => { + await store + .dispatch('uploadFiles', { + form: formData, + fileSize: item.file.size, + totalUploadedSize: uploadedSize, + }) + .then(() => { + uploadedSize = uploadedSize + chunk.size + }) + .catch((error) => { + // Count attempts + attempts++ - // Count attempts - attempts++ + // Show Error + //if (attempts === 3) - // Show Error - //if (attempts === 3) - - // Break uploading process - if ([500, 422].includes(error.response.status)) { - isNotGeneralError = false - this.$isSomethingWrong() - } - }) + // Break uploading process + if ([500, 422].includes(error.response.status)) { + isNotGeneralError = false + this.$isSomethingWrong() + } + }) } while (isNotGeneralError && attempts !== 0 && attempts !== 3) - } while (isNotGeneralError && chunks.length !== 0) } Vue.prototype.$downloadFile = function (url, filename) { // Show alert message when download is disabled - if (! store.getters.user.data.meta.restrictions.canDownload) { + if (!store.getters.user.data.meta.restrictions.canDownload) { Vue.prototype.$temporarilyDisabledDownload() return @@ -296,109 +289,108 @@ const FunctionHelpers = { return store.getters.currentFolder.data.attributes.name } else { return { - 'RecentUploads': this.$t('Recent Uploads'), - 'MySharedItems': this.$t('sidebar.my_shared'), - 'Trash': this.$t('Trash'), - 'Public': this.$t('Files'), - 'Files': this.$t('sidebar.home'), - 'TeamFolders': this.$t('Team Folders'), - 'SharedWithMe': this.$t('Shared With Me'), + RecentUploads: this.$t('Recent Uploads'), + MySharedItems: this.$t('sidebar.my_shared'), + Trash: this.$t('Trash'), + Public: this.$t('Files'), + Files: this.$t('sidebar.home'), + TeamFolders: this.$t('Team Folders'), + SharedWithMe: this.$t('Shared With Me'), }[this.$route.name] } } Vue.prototype.$getCurrentSectionName = function () { return { - 'RecentUploads': this.$t('Recent Uploads'), - 'MySharedItems': this.$t('sidebar.my_shared'), - 'Trash': this.$t('Trash'), - 'Public': this.$t('Files'), - 'Files': this.$t('sidebar.home'), - 'TeamFolders': this.$t('Team Folders'), - 'SharedWithMe': this.$t('Shared With Me'), + RecentUploads: this.$t('Recent Uploads'), + MySharedItems: this.$t('sidebar.my_shared'), + Trash: this.$t('Trash'), + Public: this.$t('Files'), + Files: this.$t('sidebar.home'), + TeamFolders: this.$t('Team Folders'), + SharedWithMe: this.$t('Shared With Me'), }[this.$route.name] } Vue.prototype.$getCurrentSectionIcon = function () { - return { - 'RecentUploads': 'upload-cloud', - 'MySharedItems': 'share', - 'Trash': 'trash2', - 'Public': 'hard-drive', - 'Files': 'hard-drive', - 'TeamFolders': 'users', - 'SharedWithMe': 'user-check', + RecentUploads: 'upload-cloud', + MySharedItems: 'share', + Trash: 'trash2', + Public: 'hard-drive', + Files: 'hard-drive', + TeamFolders: 'users', + SharedWithMe: 'user-check', }[this.$router.currentRoute.name] } Vue.prototype.$getDataByLocation = function () { - let routes = { - 'Files': ['getFolder', router.currentRoute.params.id || undefined], - 'RecentUploads': ['getRecentUploads'], - 'MySharedItems': ['getMySharedItems'], - 'Trash': ['getTrash', router.currentRoute.params.id || undefined], - 'TeamFolders': ['getTeamFolder', router.currentRoute.params.id || undefined], - 'SharedWithMe': ['getSharedWithMeFolder', router.currentRoute.params.id || undefined], + Files: ['getFolder', router.currentRoute.params.id || undefined], + RecentUploads: ['getRecentUploads'], + MySharedItems: ['getMySharedItems'], + Trash: ['getTrash', router.currentRoute.params.id || undefined], + TeamFolders: ['getTeamFolder', router.currentRoute.params.id || undefined], + SharedWithMe: ['getSharedWithMeFolder', router.currentRoute.params.id || undefined], } store.dispatch(...routes[router.currentRoute.name]) } Vue.prototype.$getPaymentLogo = function (driver) { - return { - 'paypal': store.getters.isDarkMode ? '/assets/payments/paypal-dark.svg' : '/assets/payments/paypal.svg', - 'paystack': store.getters.isDarkMode ? '/assets/payments/paystack-dark.svg' : '/assets/payments/paystack.svg', - 'stripe': '/assets/payments/stripe.svg', - 'system': this.$getImage(store.getters.config.app_logo_horizontal), - }[driver] || this.$getImage(store.getters.config.app_logo_horizontal) + return ( + { + paypal: store.getters.isDarkMode ? '/assets/payments/paypal-dark.svg' : '/assets/payments/paypal.svg', + paystack: store.getters.isDarkMode ? '/assets/payments/paystack-dark.svg' : '/assets/payments/paystack.svg', + stripe: '/assets/payments/stripe.svg', + system: this.$getImage(store.getters.config.app_logo_horizontal), + }[driver] || this.$getImage(store.getters.config.app_logo_horizontal) + ) } Vue.prototype.$getSocialLogo = function (driver) { return { - 'google': '/assets/socials/google.svg', - 'facebook': '/assets/socials/facebook.svg', - 'github': store.getters.isDarkMode ? '/assets/socials/github-dark.svg' : '/assets/socials/github.svg', + google: '/assets/socials/google.svg', + facebook: '/assets/socials/facebook.svg', + github: store.getters.isDarkMode ? '/assets/socials/github-dark.svg' : '/assets/socials/github.svg', }[driver] } Vue.prototype.$getSubscriptionStatusColor = function (status) { - return { - 'active': 'green', - 'cancelled': 'yellow', - 'completed': 'purple', + active: 'green', + cancelled: 'yellow', + completed: 'purple', }[status] } Vue.prototype.$getTransactionStatusColor = function (status) { return { - 'completed': 'green', - 'cancelled': 'yellow', - 'error': 'red', + completed: 'green', + cancelled: 'yellow', + error: 'red', }[status] } Vue.prototype.$getTransactionTypeColor = function (type) { return { - 'credit': 'green', - 'charge': 'purple', - 'withdrawal': 'red', + credit: 'green', + charge: 'purple', + withdrawal: 'red', }[type] } Vue.prototype.$getTransactionStatusColor = function (type) { return { - 'completed': 'green', - 'error': 'red', + completed: 'green', + error: 'red', }[type] } Vue.prototype.$getPlanStatusColor = function (type) { return { - 'active': 'green', - 'archived': 'red', + active: 'green', + archived: 'red', }[type] } @@ -410,51 +402,48 @@ const FunctionHelpers = { } Vue.prototype.$getTransactionTypeTextColor = function (type) { - return { - 'withdrawal': 'text-red', - 'credit': 'text-green', - 'charge': '', + withdrawal: 'text-red', + credit: 'text-green', + charge: '', }[type] } Vue.prototype.$getTransactionMark = function (type) { - return { - 'withdrawal': '-', - 'credit': '+', - 'charge': '', + withdrawal: '-', + credit: '+', + charge: '', }[type] } Vue.prototype.$goToFileView = function (id) { - let locations = { - 'Public': {name: 'Public', params: {token: this.$route.params.token, id: id}}, - 'TeamFolders': {name: 'TeamFolders', params: {id: id}}, - 'SharedWithMe': {name: 'SharedWithMe', params: {id: id}}, - 'MySharedItems': {name: 'Files', params: {id: id}}, - 'Trash': {name: 'Trash', params: {id: id}}, - 'Files': {name: 'Files', params: {id: id}}, + Public: { + name: 'Public', + params: { token: this.$route.params.token, id: id }, + }, + TeamFolders: { name: 'TeamFolders', params: { id: id } }, + SharedWithMe: { name: 'SharedWithMe', params: { id: id } }, + MySharedItems: { name: 'Files', params: { id: id } }, + Trash: { name: 'Trash', params: { id: id } }, + Files: { name: 'Files', params: { id: id } }, } this.$router.push(locations[this.$router.currentRoute.name]) } Vue.prototype.$isThisRoute = function (route, locations) { - return locations.includes(route.name) } // TODO: not working correctly in share page Vue.prototype.$checkPermission = function (type) { - let currentPermission = store.getters.permission // Check if type is object if (typeof type === 'Object' || type instanceof Object) { return type.includes(currentPermission) - } else { return currentPermission === type } @@ -477,7 +466,9 @@ const FunctionHelpers = { events.$emit('alert:open', { emoji: '😬😬😬', title: i18n.t('popup_mimetypes_blacklist.title'), - message: i18n.t('popup_mimetypes_blacklist.message', {mimetype: fileType[1]}) + message: i18n.t('popup_mimetypes_blacklist.message', { + mimetype: fileType[1], + }), }) } } @@ -494,7 +485,9 @@ const FunctionHelpers = { events.$emit('alert:open', { emoji: '😟😟😟', title: i18n.t('popup_upload_limit.title'), - message: i18n.t('popup_upload_limit.message', {uploadLimit: store.getters.config.uploadLimitFormatted}), + message: i18n.t('popup_upload_limit.message', { + uploadLimit: store.getters.config.uploadLimitFormatted, + }), }) break } @@ -509,33 +502,17 @@ const FunctionHelpers = { // Check if device is Apple Vue.prototype.$isApple = function () { + const toMatch = [/iPhone/i, /iPad/i, /iPod/i, /iOS/i, /macOS/i, /Macintosh/i] - const toMatch = [ - /iPhone/i, - /iPad/i, - /iPod/i, - /iOS/i, - /macOS/i, - /Macintosh/i - ] - - return toMatch.some(toMatchItem => { + return toMatch.some((toMatchItem) => { return navigator.userAgent.match(toMatchItem) }) } Vue.prototype.$isMobile = function () { - const toMatch = [ - /Android/i, - /webOS/i, - /iPhone/i, - /iPad/i, - /iPod/i, - /BlackBerry/i, - /Windows Phone/i - ] + const toMatch = [/Android/i, /webOS/i, /iPhone/i, /iPad/i, /iPod/i, /BlackBerry/i, /Windows Phone/i] - return toMatch.some(toMatchItem => { + return toMatch.some((toMatchItem) => { return navigator.userAgent.match(toMatchItem) }) } @@ -548,8 +525,8 @@ const FunctionHelpers = { name: entry.name, email: entry.email, color: entry.color, - } - } + }, + }, } } @@ -579,9 +556,9 @@ const FunctionHelpers = { } Vue.prototype.$openUpgradeOptions = function () { - events.$emit('popup:open', {name: 'select-plan-subscription'}) + events.$emit('popup:open', { name: 'select-plan-subscription' }) } - } + }, } export default FunctionHelpers diff --git a/resources/js/helpers/itemHelpers.js b/resources/js/helpers/itemHelpers.js index d57526e1..e8ee3da4 100644 --- a/resources/js/helpers/itemHelpers.js +++ b/resources/js/helpers/itemHelpers.js @@ -1,145 +1,144 @@ -import i18n from "../i18n"; +import i18n from '../i18n' import store from '../store/index' -import {events} from '../bus' +import { events } from '../bus' const itemHelpers = { - install(Vue) { - Vue.prototype.$emptyTrash = function () { - store.dispatch('emptyTrash') - } - Vue.prototype.$emptyTrashQuietly = function () { - store.dispatch('emptyTrashQuietly') - } + install(Vue) { + Vue.prototype.$emptyTrash = function () { + store.dispatch('emptyTrash') + } + Vue.prototype.$emptyTrashQuietly = function () { + store.dispatch('emptyTrashQuietly') + } - Vue.prototype.$shareCancel = function () { - store.dispatch('shareCancel') - } + Vue.prototype.$shareCancel = function () { + store.dispatch('shareCancel') + } - Vue.prototype.$renameFileOrFolder = function (entry) { - events.$emit('popup:open', {name: 'rename-item', item: entry}) - } + Vue.prototype.$renameFileOrFolder = function (entry) { + events.$emit('popup:open', { name: 'rename-item', item: entry }) + } - Vue.prototype.$moveFileOrFolder = function (entry) { - events.$emit('popup:open', {name: 'move', item: [entry]}) - } + Vue.prototype.$moveFileOrFolder = function (entry) { + events.$emit('popup:open', { name: 'move', item: [entry] }) + } - Vue.prototype.$createFolder = function () { - // Show alert message when create folder is disabled - if (! store.getters.user.data.meta.restrictions.canCreateFolder) { - Vue.prototype.$temporarilyDisabledFolderCreate() + Vue.prototype.$createFolder = function () { + // Show alert message when create folder is disabled + if (!store.getters.user.data.meta.restrictions.canCreateFolder) { + Vue.prototype.$temporarilyDisabledFolderCreate() - return - } + return + } - store.dispatch('createFolder', { - name: i18n.t('popup_create_folder.folder_default_name') - }) - } + store.dispatch('createFolder', { + name: i18n.t('popup_create_folder.folder_default_name'), + }) + } - Vue.prototype.$downloadSelection = function (item = undefined) { - // Show alert message when download is disabled - if (! store.getters.user.data.meta.restrictions.canDownload) { - Vue.prototype.$temporarilyDisabledDownload() + Vue.prototype.$downloadSelection = function (item = undefined) { + // Show alert message when download is disabled + if (!store.getters.user.data.meta.restrictions.canDownload) { + Vue.prototype.$temporarilyDisabledDownload() - return - } + return + } - // Download folder zip - if (item && item.data.type === 'folder') { - store.dispatch('downloadZip', item) + // Download folder zip + if (item && item.data.type === 'folder') { + store.dispatch('downloadZip', item) - return - } + return + } - // Download single item - if (item && item.data.type !== 'folder') { - Vue.prototype.$downloadFile(item.data.attributes.file_url, item.data.attributes.name + '.' + item.data.attributes.mimetype) + // Download single item + if (item && item.data.type !== 'folder') { + Vue.prototype.$downloadFile(item.data.attributes.file_url, item.data.attributes.name + '.' + item.data.attributes.mimetype) - return - } + return + } - // Download selection - let clipboard = store.getters.clipboard + // Download selection + let clipboard = store.getters.clipboard - if (clipboard.length > 1 || (clipboard.length === 1 && clipboard[0].data.type === 'folder')) { - store.dispatch('downloadZip') - } - } + if (clipboard.length > 1 || (clipboard.length === 1 && clipboard[0].data.type === 'folder')) { + store.dispatch('downloadZip') + } + } + ;(Vue.prototype.$dissolveTeamFolder = function (folder) { + events.$emit('confirm:open', { + title: i18n.t('Are you sure you want to dissolve this team?'), + message: i18n.t('All team members will lose access to your files and existing folder will be moved into your "Files" section.'), + action: { + id: folder.data.id, + operation: 'dissolve-team-folder', + }, + }) + }), + (Vue.prototype.$detachMeFromTeamFolder = function (folder) { + events.$emit('confirm:open', { + title: i18n.t('Are you sure you want to leave this team folder?'), + message: i18n.t("You will don't have access to the files and all your previously uploaded content will be part of this Team Folder you are leaving."), + action: { + id: folder.data.id, + operation: 'leave-team-folder', + }, + }) + }), + (Vue.prototype.$createTeamFolder = function () { + // Show alert message when create folder is disabled + if (!store.getters.user.data.meta.restrictions.canCreateTeamFolder) { + Vue.prototype.$temporarilyDisabledFolderCreate() - Vue.prototype.$dissolveTeamFolder = function (folder) { - events.$emit('confirm:open', { - title: i18n.t('Are you sure you want to dissolve this team?'), - message: i18n.t('All team members will lose access to your files and existing folder will be moved into your "Files" section.'), - action: { - id: folder.data.id, - operation: 'dissolve-team-folder', - } - }) - }, + return + } - Vue.prototype.$detachMeFromTeamFolder = function (folder) { - events.$emit('confirm:open', { - title: i18n.t('Are you sure you want to leave this team folder?'), - message: i18n.t("You will don't have access to the files and all your previously uploaded content will be part of this Team Folder you are leaving."), - action: { - id: folder.data.id, - operation: 'leave-team-folder', - } - }) - }, + events.$emit('popup:open', { name: 'create-team-folder' }) + }) - Vue.prototype.$createTeamFolder = function () { - // Show alert message when create folder is disabled - if (! store.getters.user.data.meta.restrictions.canCreateTeamFolder) { - Vue.prototype.$temporarilyDisabledFolderCreate() + Vue.prototype.$convertAsTeamFolder = function (entry) { + events.$emit('popup:open', { + name: 'create-team-folder', + item: entry, + }) + } - return - } + Vue.prototype.$updateTeamFolder = function (entry) { + events.$emit('popup:open', { + name: 'update-team-folder', + item: entry, + }) + } - events.$emit('popup:open', {name: 'create-team-folder'}) - } + Vue.prototype.$removeFavourite = function (folder) { + store.dispatch('removeFromFavourites', folder) + } - Vue.prototype.$convertAsTeamFolder = function (entry) { - events.$emit('popup:open', {name: 'create-team-folder', item: entry}) - } + Vue.prototype.$deleteFileOrFolder = function (entry) { + if (!store.getters.clipboard.includes(entry)) { + store.dispatch('deleteItem', entry) + } - Vue.prototype.$updateTeamFolder = function (entry) { - events.$emit('popup:open', {name: 'update-team-folder', item: entry}) - } + if (store.getters.clipboard.includes(entry)) { + store.dispatch('deleteItem') + } + } - Vue.prototype.$removeFavourite = function (folder) { - store.dispatch('removeFromFavourites', folder) - } + Vue.prototype.$restoreFileOrFolder = function (entry) { + if (!store.getters.clipboard.includes(entry)) store.dispatch('restoreItem', entry) - Vue.prototype.$deleteFileOrFolder = function (entry) { - if (!store.getters.clipboard.includes(entry)) { - store.dispatch('deleteItem', entry) - } + if (store.getters.clipboard.includes(entry)) store.dispatch('restoreItem', null) + } - if (store.getters.clipboard.includes(entry)) { - store.dispatch('deleteItem') - } - } + Vue.prototype.$shareFileOrFolder = function (entry) { + let event = entry.data.relationships.shared ? 'share-edit' : 'share-create' - Vue.prototype.$restoreFileOrFolder = function (entry) { - if (!store.getters.clipboard.includes(entry)) - store.dispatch('restoreItem', entry) - - if (store.getters.clipboard.includes(entry)) - store.dispatch('restoreItem', null) - } - - Vue.prototype.$shareFileOrFolder = function (entry) { - let event = entry.data.relationships.shared - ? 'share-edit' - : 'share-create' - - events.$emit('popup:open', { - name: event, - item: entry - }) - } - } + events.$emit('popup:open', { + name: event, + item: entry, + }) + } + }, } -export default itemHelpers \ No newline at end of file +export default itemHelpers diff --git a/resources/js/i18n/index.js b/resources/js/i18n/index.js index 516859a2..e1e8c7cd 100644 --- a/resources/js/i18n/index.js +++ b/resources/js/i18n/index.js @@ -1,11 +1,11 @@ -import Vue from 'vue'; -import VueI18n from 'vue-i18n'; +import Vue from 'vue' +import VueI18n from 'vue-i18n' -Vue.use(VueI18n); +Vue.use(VueI18n) const i18n = new VueI18n({ locale: config.locale, silentTranslationWarn: true, -}); +}) -export default i18n; +export default i18n diff --git a/resources/js/main.js b/resources/js/main.js index 6819c376..5b6d2730 100644 --- a/resources/js/main.js +++ b/resources/js/main.js @@ -1,55 +1,61 @@ -require("./bootstrap"); -import Vue from "vue"; -import i18n from "./i18n"; -import VueRouter from "vue-router"; -import router from "./router"; -import App from "./App.vue"; -import store from "./store"; -import {events} from "./bus"; +require('./bootstrap') +import Vue from 'vue' +import i18n from './i18n' +import VueRouter from 'vue-router' +import router from './router' +import App from './App.vue' +import store from './store' +import { events } from './bus' -import SubscriptionHelpers from "./helpers/SubscriptionHelpers"; -import ValidatorHelpers from "./helpers/ValidatorHelpers"; -import functionHelpers from "./helpers/functionHelpers"; -import AlertHelpers from "./helpers/AlertHelpers"; -import itemHelpers from "./helpers/itemHelpers"; -import { VueReCaptcha } from 'vue-recaptcha-v3'; +import SubscriptionHelpers from './helpers/SubscriptionHelpers' +import ValidatorHelpers from './helpers/ValidatorHelpers' +import functionHelpers from './helpers/functionHelpers' +import AlertHelpers from './helpers/AlertHelpers' +import itemHelpers from './helpers/itemHelpers' +import { VueReCaptcha } from 'vue-recaptcha-v3' -Vue.use(VueRouter); -Vue.use(SubscriptionHelpers); -Vue.use(ValidatorHelpers); -Vue.use(functionHelpers); -Vue.use(AlertHelpers); -Vue.use(itemHelpers); -Vue.use(VueReCaptcha, { siteKey: config.recaptcha_client_id, - loaderOptions: { - autoHideBadge: true - } +Vue.use(VueRouter) +Vue.use(SubscriptionHelpers) +Vue.use(ValidatorHelpers) +Vue.use(functionHelpers) +Vue.use(AlertHelpers) +Vue.use(itemHelpers) +Vue.use(VueReCaptcha, { + siteKey: config.recaptcha_client_id, + loaderOptions: { + autoHideBadge: true, + }, }) -Vue.config.productionTip = false; +Vue.config.productionTip = false // Handle position of Drag & Drop Ghost -document.addEventListener('drag', event => { - let multiSelect = document.getElementById('drag-ui') +document.addEventListener( + 'drag', + (event) => { + let multiSelect = document.getElementById('drag-ui') - multiSelect.style.top = event.clientY + 20 + 'px' - multiSelect.style.left = event.clientX + 'px' + multiSelect.style.top = event.clientY + 20 + 'px' + multiSelect.style.left = event.clientX + 'px' + }, + false +) -},false) - -// Handle for drop -document.addEventListener("dragend", () => { - events.$emit('drop') -}, false); +// Handle for drop +document.addEventListener( + 'dragend', + () => { + events.$emit('drop') + }, + false +) let vueFileManager = new Vue({ - i18n, - store, - router, - data: { - config, - }, - render: (h) => h(App), -}).$mount("#app"); - - + i18n, + store, + router, + data: { + config, + }, + render: (h) => h(App), +}).$mount('#app') diff --git a/resources/js/router.js b/resources/js/router.js index 1ba2500c..29a7eb77 100644 --- a/resources/js/router.js +++ b/resources/js/router.js @@ -15,39 +15,27 @@ Vue.use(Router) const router = new Router({ mode: 'history', - routes: [ - ...routesMaintenance, - ...routesShared, - ...routesOthers, - ...routesAdmin, - ...routesIndex, - ...routesAuth, - ...routesUser, - ...routesFile, - ...routesTeam, - ], + routes: [...routesMaintenance, ...routesShared, ...routesOthers, ...routesAdmin, ...routesIndex, ...routesAuth, ...routesUser, ...routesFile, ...routesTeam], scrollBehavior(to, from, savedPosition) { if (savedPosition) { return savedPosition } else { - return {x: 0, y: 0} + return { x: 0, y: 0 } } }, }) router.beforeEach((to, from, next) => { - if (to.matched.some(record => record.meta.requiresAuth)) { + if (to.matched.some((record) => record.meta.requiresAuth)) { // this route requires auth, check if logged in // if not, redirect to login page. - let isAuthenticated = store.getters.config - ? store.getters.config.isAuthenticated - : config.isAuthenticated; + let isAuthenticated = store.getters.config ? store.getters.config.isAuthenticated : config.isAuthenticated - if ( ! isAuthenticated) { + if (!isAuthenticated) { next({ name: 'SignIn', - query: {redirect: to.fullPath} + query: { redirect: to.fullPath }, }) } else { next() diff --git a/resources/js/routes/routesAdmin.js b/resources/js/routes/routesAdmin.js index d1c4c019..970a80a0 100644 --- a/resources/js/routes/routesAdmin.js +++ b/resources/js/routes/routesAdmin.js @@ -1,365 +1,330 @@ const routesAdmin = [ - { - name: 'Admin', - path: '/admin', - component: () => - import(/* webpackChunkName: "chunks/admin" */ '../views/Admin'), - meta: { - requiresAuth: true, - title: 'Admin' - }, - children: [ - { - name: 'Dashboard', - path: '/admin/dashboard', - component: () => - import(/* webpackChunkName: "chunks/dashboard" */ '../views/Admin/Dashboard'), - meta: { - requiresAuth: true, - title: 'routes_title.dashboard' - }, - }, - { - name: 'Invoices', - path: '/admin/invoices', - component: () => - import(/* webpackChunkName: "chunks/invoices" */ '../views/Admin/Invoices'), - meta: { - requiresAuth: true, - title: 'routes_title.invoices' - }, - }, - { - name: 'Subscriptions', - path: '/admin/subscriptions', - component: () => - import(/* webpackChunkName: "chunks/subscriptions" */ '../views/Admin/Subscriptions'), - meta: { - requiresAuth: true, - title: 'Subscriptions' - }, - }, - { - name: 'Pages', - path: '/admin/pages', - component: () => - import(/* webpackChunkName: "chunks/pages" */ '../views/Admin/Pages'), - meta: { - requiresAuth: true, - title: 'routes_title.pages' - }, - }, - { - name: 'PageEdit', - path: '/admin/pages/:slug', - component: () => - import(/* webpackChunkName: "chunks/page-edit" */ '../views/Admin/Pages/PageEdit'), - meta: { - requiresAuth: true, - title: 'routes_title.page_edit' - }, - }, - { - name: 'Plans', - path: '/admin/plans', - component: () => - import(/* webpackChunkName: "chunks/plans" */ '../views/Admin/Plans'), - meta: { - requiresAuth: true, - title: 'routes_title.pricing_plans' - }, - }, - { - name: 'Users', - path: '/admin/users', - component: () => - import(/* webpackChunkName: "chunks/users" */ '../views/Admin/Users'), - meta: { - requiresAuth: true, - title: 'routes_title.users_list' - }, - }, - { - name: 'UserCreate', - path: '/admin/user/create', - component: () => - import(/* webpackChunkName: "chunks/user-create" */ '../views/Admin/Users/UserCreate'), - meta: { - requiresAuth: true, - title: 'routes_title.user_create' - }, - }, - { - name: 'CreateFixedPlan', - path: '/admin/plan/create/fixed', - component: () => - import(/* webpackChunkName: "chunks/plan-create/fixed" */ '../views/Admin/Plans/Create/CreateFixedPlan'), - meta: { - requiresAuth: true, - title: 'routes_title.plan_create' - }, - }, - { - name: 'CreateMeteredPlan', - path: '/admin/plan/create/metered', - component: () => - import(/* webpackChunkName: "chunks/plan-create/metered" */ '../views/Admin/Plans/Create/CreateMeteredPlan'), - meta: { - requiresAuth: true, - title: 'routes_title.plan_create' - }, - }, - { - path: '/admin/user/:id', - component: () => - import(/* webpackChunkName: "chunks/user" */ '../views/Admin/Users/User'), - meta: { - requiresAuth: true, - title: 'routes_title.users_user' - }, - children: [ - { - name: 'UserDetail', - path: '/admin/user/:id/details', - component: () => - import(/* webpackChunkName: "chunks/user-detail" */ '../views/Admin/Users/UserTabs/UserDetail'), - meta: { - requiresAuth: true, - title: 'routes_title.users_detail' - }, - }, - { - name: 'UserStorage', - path: '/admin/user/:id/storage', - component: () => - import(/* webpackChunkName: "chunks/user-storage" */ '../views/Admin/Users/UserTabs/UserStorage'), - meta: { - requiresAuth: true, - title: 'routes_title.users_storage_usage' - }, - }, - { - name: 'UserSubscription', - path: '/admin/user/:id/subscription', - component: () => - import(/* webpackChunkName: "chunks/user-subscription" */ '../views/Admin/Users/UserTabs/UserSubscription'), - meta: { - requiresAuth: true, - title: 'routes_title.subscription' - }, - }, - { - name: 'UserPassword', - path: '/admin/user/:id/password', - component: () => - import(/* webpackChunkName: "chunks/user-password" */ '../views/Admin/Users/UserTabs/UserPassword'), - meta: { - requiresAuth: true, - title: 'routes_title.users_password' - }, - }, - { - name: 'UserDelete', - path: '/admin/user/:id/delete', - component: () => - import(/* webpackChunkName: "chunks/user-delete" */ '../views/Admin/Users/UserTabs/UserDelete'), - meta: { - requiresAuth: true, - title: 'routes_title.users_delete' - }, - }, - ] - }, - { - name: 'PlanFixed', - path: '/admin/plan/:id', - component: () => - import(/* webpackChunkName: "chunks/plan" */ '../views/Admin/Plans/FixedPlan'), - meta: { - requiresAuth: true, - title: 'routes_title.plan' - }, - children: [ - { - name: 'PlanFixedSubscribers', - path: '/admin/plan/:id/fixed/subscribers', - component: () => - import(/* webpackChunkName: "chunks/plan-subscribers" */ '../views/Admin/Plans/Tabs/PlanSubscribers'), - meta: { - requiresAuth: true, - title: 'routes_title.subscribers' - }, - }, - { - name: 'PlanFixedSettings', - path: '/admin/plan/:id/fixed/settings', - component: () => - import(/* webpackChunkName: "chunks/plan-settings" */ '../views/Admin/Plans/Tabs/PlanFixedSettings'), - meta: { - requiresAuth: true, - title: 'routes_title.plan_settings', - }, - }, - { - name: 'PlanFixedDelete', - path: '/admin/plan/:id/fixed/delete', - component: () => - import(/* webpackChunkName: "chunks/plan-delete" */ '../views/Admin/Plans/Tabs/PlanDelete'), - meta: { - requiresAuth: true, - title: 'routes_title.plan_delete', - }, - }, - ] - }, - { - name: 'PlanMetered', - path: '/admin/plan/:id', - component: () => - import(/* webpackChunkName: "chunks/plan" */ '../views/Admin/Plans/MeteredPlan'), - meta: { - requiresAuth: true, - title: 'routes_title.plan' - }, - children: [ - { - name: 'PlanMeteredSubscribers', - path: '/admin/plan/:id/metered/subscribers', - component: () => - import(/* webpackChunkName: "chunks/plan-subscribers" */ '../views/Admin/Plans/Tabs/PlanSubscribers'), - meta: { - requiresAuth: true, - title: 'routes_title.subscribers' - }, - }, - { - name: 'PlanMeteredSettings', - path: '/admin/plan/:id/metered/settings', - component: () => - import(/* webpackChunkName: "chunks/plan-settings" */ '../views/Admin/Plans/Tabs/PlanMeteredSettings'), - meta: { - requiresAuth: true, - title: 'routes_title.plan_settings', - }, - }, - { - name: 'PlanMeteredDelete', - path: '/admin/plan/:id/metered/delete', - component: () => - import(/* webpackChunkName: "chunks/plan-delete" */ '../views/Admin/Plans/Tabs/PlanDelete'), - meta: { - requiresAuth: true, - title: 'routes_title.plan_delete', - }, - }, - ] - }, - { - name: 'PaymentSettings', - path: '/admin/payments', - component: () => - import(/* webpackChunkName: "chunks/payments" */ '../views/Admin/PaymentSettings/PaymentSettings'), - meta: { - requiresAuth: true, - title: 'Payment Settings' - }, - children: [ - { - name: 'AppBillings', - path: '/admin/payments/billings', - component: () => - import(/* webpackChunkName: "chunks/payments/billings" */ '../views/Admin/PaymentSettings/PaymentSettingsTab/Billings'), - meta: { - requiresAuth: true, - title: 'routes_title.billings' - }, - }, - { - name: 'AppPayments', - path: '/admin/payments/payments', - component: () => - import(/* webpackChunkName: "chunks/payments/settings" */ '../views/Admin/PaymentSettings/PaymentSettingsTab/Payments'), - meta: { - requiresAuth: true, - title: 'routes_title.payments' - }, - }, - ] - }, - { - name: 'AppSettings', - path: '/admin/settings', - component: () => - import(/* webpackChunkName: "chunks/app-settings" */ '../views/Admin/AppSettings/AppSettings'), - meta: { - requiresAuth: true, - title: 'routes_title.settings' - }, - children: [ - { - name: 'AppAppearance', - path: '/admin/settings/appearance', - component: () => - import(/* webpackChunkName: "chunks/app-appearance" */ '../views/Admin/AppSettings/AppSettingsTabs/Appearance'), - meta: { - requiresAuth: true, - title: 'routes_title.appearance' - }, - }, - { - name: 'AppIndex', - path: '/admin/settings/index', - component: () => - import(/* webpackChunkName: "chunks/app-index" */ '../views/Admin/AppSettings/AppSettingsTabs/Index'), - meta: { - requiresAuth: true, - title: 'Index' - }, - }, - { - name: 'AppEmail', - path: '/admin/settings/email', - component: () => - import(/* webpackChunkName: "chunks/app-email" */ '../views/Admin/AppSettings/AppSettingsTabs/Email'), - meta: { - requiresAuth: true, - title: 'routes_title.email' - }, - }, - { - name: 'AppOthers', - path: '/admin/settings/others', - component: () => - import(/* webpackChunkName: "chunks/app-others" */ '../views/Admin/AppSettings/AppSettingsTabs/Others'), - meta: { - requiresAuth: true, - title: 'routes_title.others' - }, - }, - { - name: 'AppSignInUp', - path: '/admin/settings/sign-in', - component: () => - import(/* webpackChunkName: "chunks/app-sign-in-out" */ '../views/Admin/AppSettings/AppSettingsTabs/SignInUp'), - meta: { - requiresAuth: true, - title: 'Sign In/Up' - }, - }, - ] - }, - { - name: 'Language', - path: '/admin/language', - component: () => - import(/* webpackChunkName: "chunks/app-language" */ '../views/Admin/Languages/Language'), - meta: { - requiresAuth: true, - title: 'Language Editor' - }, - } - ] - }, + { + name: 'Admin', + path: '/admin', + component: () => import(/* webpackChunkName: "chunks/admin" */ '../views/Admin'), + meta: { + requiresAuth: true, + title: 'Admin', + }, + children: [ + { + name: 'Dashboard', + path: '/admin/dashboard', + component: () => import(/* webpackChunkName: "chunks/dashboard" */ '../views/Admin/Dashboard'), + meta: { + requiresAuth: true, + title: 'routes_title.dashboard', + }, + }, + { + name: 'Invoices', + path: '/admin/invoices', + component: () => import(/* webpackChunkName: "chunks/invoices" */ '../views/Admin/Invoices'), + meta: { + requiresAuth: true, + title: 'routes_title.invoices', + }, + }, + { + name: 'Subscriptions', + path: '/admin/subscriptions', + component: () => import(/* webpackChunkName: "chunks/subscriptions" */ '../views/Admin/Subscriptions'), + meta: { + requiresAuth: true, + title: 'Subscriptions', + }, + }, + { + name: 'Pages', + path: '/admin/pages', + component: () => import(/* webpackChunkName: "chunks/pages" */ '../views/Admin/Pages'), + meta: { + requiresAuth: true, + title: 'routes_title.pages', + }, + }, + { + name: 'PageEdit', + path: '/admin/pages/:slug', + component: () => import(/* webpackChunkName: "chunks/page-edit" */ '../views/Admin/Pages/PageEdit'), + meta: { + requiresAuth: true, + title: 'routes_title.page_edit', + }, + }, + { + name: 'Plans', + path: '/admin/plans', + component: () => import(/* webpackChunkName: "chunks/plans" */ '../views/Admin/Plans'), + meta: { + requiresAuth: true, + title: 'routes_title.pricing_plans', + }, + }, + { + name: 'Users', + path: '/admin/users', + component: () => import(/* webpackChunkName: "chunks/users" */ '../views/Admin/Users'), + meta: { + requiresAuth: true, + title: 'routes_title.users_list', + }, + }, + { + name: 'UserCreate', + path: '/admin/user/create', + component: () => import(/* webpackChunkName: "chunks/user-create" */ '../views/Admin/Users/UserCreate'), + meta: { + requiresAuth: true, + title: 'routes_title.user_create', + }, + }, + { + name: 'CreateFixedPlan', + path: '/admin/plan/create/fixed', + component: () => import(/* webpackChunkName: "chunks/plan-create/fixed" */ '../views/Admin/Plans/Create/CreateFixedPlan'), + meta: { + requiresAuth: true, + title: 'routes_title.plan_create', + }, + }, + { + name: 'CreateMeteredPlan', + path: '/admin/plan/create/metered', + component: () => import(/* webpackChunkName: "chunks/plan-create/metered" */ '../views/Admin/Plans/Create/CreateMeteredPlan'), + meta: { + requiresAuth: true, + title: 'routes_title.plan_create', + }, + }, + { + path: '/admin/user/:id', + component: () => import(/* webpackChunkName: "chunks/user" */ '../views/Admin/Users/User'), + meta: { + requiresAuth: true, + title: 'routes_title.users_user', + }, + children: [ + { + name: 'UserDetail', + path: '/admin/user/:id/details', + component: () => import(/* webpackChunkName: "chunks/user-detail" */ '../views/Admin/Users/UserTabs/UserDetail'), + meta: { + requiresAuth: true, + title: 'routes_title.users_detail', + }, + }, + { + name: 'UserStorage', + path: '/admin/user/:id/storage', + component: () => import(/* webpackChunkName: "chunks/user-storage" */ '../views/Admin/Users/UserTabs/UserStorage'), + meta: { + requiresAuth: true, + title: 'routes_title.users_storage_usage', + }, + }, + { + name: 'UserSubscription', + path: '/admin/user/:id/subscription', + component: () => import(/* webpackChunkName: "chunks/user-subscription" */ '../views/Admin/Users/UserTabs/UserSubscription'), + meta: { + requiresAuth: true, + title: 'routes_title.subscription', + }, + }, + { + name: 'UserPassword', + path: '/admin/user/:id/password', + component: () => import(/* webpackChunkName: "chunks/user-password" */ '../views/Admin/Users/UserTabs/UserPassword'), + meta: { + requiresAuth: true, + title: 'routes_title.users_password', + }, + }, + { + name: 'UserDelete', + path: '/admin/user/:id/delete', + component: () => import(/* webpackChunkName: "chunks/user-delete" */ '../views/Admin/Users/UserTabs/UserDelete'), + meta: { + requiresAuth: true, + title: 'routes_title.users_delete', + }, + }, + ], + }, + { + name: 'PlanFixed', + path: '/admin/plan/:id', + component: () => import(/* webpackChunkName: "chunks/plan" */ '../views/Admin/Plans/FixedPlan'), + meta: { + requiresAuth: true, + title: 'routes_title.plan', + }, + children: [ + { + name: 'PlanFixedSubscribers', + path: '/admin/plan/:id/fixed/subscribers', + component: () => import(/* webpackChunkName: "chunks/plan-subscribers" */ '../views/Admin/Plans/Tabs/PlanSubscribers'), + meta: { + requiresAuth: true, + title: 'routes_title.subscribers', + }, + }, + { + name: 'PlanFixedSettings', + path: '/admin/plan/:id/fixed/settings', + component: () => import(/* webpackChunkName: "chunks/plan-settings" */ '../views/Admin/Plans/Tabs/PlanFixedSettings'), + meta: { + requiresAuth: true, + title: 'routes_title.plan_settings', + }, + }, + { + name: 'PlanFixedDelete', + path: '/admin/plan/:id/fixed/delete', + component: () => import(/* webpackChunkName: "chunks/plan-delete" */ '../views/Admin/Plans/Tabs/PlanDelete'), + meta: { + requiresAuth: true, + title: 'routes_title.plan_delete', + }, + }, + ], + }, + { + name: 'PlanMetered', + path: '/admin/plan/:id', + component: () => import(/* webpackChunkName: "chunks/plan" */ '../views/Admin/Plans/MeteredPlan'), + meta: { + requiresAuth: true, + title: 'routes_title.plan', + }, + children: [ + { + name: 'PlanMeteredSubscribers', + path: '/admin/plan/:id/metered/subscribers', + component: () => import(/* webpackChunkName: "chunks/plan-subscribers" */ '../views/Admin/Plans/Tabs/PlanSubscribers'), + meta: { + requiresAuth: true, + title: 'routes_title.subscribers', + }, + }, + { + name: 'PlanMeteredSettings', + path: '/admin/plan/:id/metered/settings', + component: () => import(/* webpackChunkName: "chunks/plan-settings" */ '../views/Admin/Plans/Tabs/PlanMeteredSettings'), + meta: { + requiresAuth: true, + title: 'routes_title.plan_settings', + }, + }, + { + name: 'PlanMeteredDelete', + path: '/admin/plan/:id/metered/delete', + component: () => import(/* webpackChunkName: "chunks/plan-delete" */ '../views/Admin/Plans/Tabs/PlanDelete'), + meta: { + requiresAuth: true, + title: 'routes_title.plan_delete', + }, + }, + ], + }, + { + name: 'PaymentSettings', + path: '/admin/payments', + component: () => import(/* webpackChunkName: "chunks/payments" */ '../views/Admin/PaymentSettings/PaymentSettings'), + meta: { + requiresAuth: true, + title: 'Payment Settings', + }, + children: [ + { + name: 'AppBillings', + path: '/admin/payments/billings', + component: () => import(/* webpackChunkName: "chunks/payments/billings" */ '../views/Admin/PaymentSettings/PaymentSettingsTab/Billings'), + meta: { + requiresAuth: true, + title: 'routes_title.billings', + }, + }, + { + name: 'AppPayments', + path: '/admin/payments/payments', + component: () => import(/* webpackChunkName: "chunks/payments/settings" */ '../views/Admin/PaymentSettings/PaymentSettingsTab/Payments'), + meta: { + requiresAuth: true, + title: 'routes_title.payments', + }, + }, + ], + }, + { + name: 'AppSettings', + path: '/admin/settings', + component: () => import(/* webpackChunkName: "chunks/app-settings" */ '../views/Admin/AppSettings/AppSettings'), + meta: { + requiresAuth: true, + title: 'routes_title.settings', + }, + children: [ + { + name: 'AppAppearance', + path: '/admin/settings/appearance', + component: () => import(/* webpackChunkName: "chunks/app-appearance" */ '../views/Admin/AppSettings/AppSettingsTabs/Appearance'), + meta: { + requiresAuth: true, + title: 'routes_title.appearance', + }, + }, + { + name: 'AppIndex', + path: '/admin/settings/index', + component: () => import(/* webpackChunkName: "chunks/app-index" */ '../views/Admin/AppSettings/AppSettingsTabs/Index'), + meta: { + requiresAuth: true, + title: 'Index', + }, + }, + { + name: 'AppEmail', + path: '/admin/settings/email', + component: () => import(/* webpackChunkName: "chunks/app-email" */ '../views/Admin/AppSettings/AppSettingsTabs/Email'), + meta: { + requiresAuth: true, + title: 'routes_title.email', + }, + }, + { + name: 'AppOthers', + path: '/admin/settings/others', + component: () => import(/* webpackChunkName: "chunks/app-others" */ '../views/Admin/AppSettings/AppSettingsTabs/Others'), + meta: { + requiresAuth: true, + title: 'routes_title.others', + }, + }, + { + name: 'AppSignInUp', + path: '/admin/settings/sign-in', + component: () => import(/* webpackChunkName: "chunks/app-sign-in-out" */ '../views/Admin/AppSettings/AppSettingsTabs/SignInUp'), + meta: { + requiresAuth: true, + title: 'Sign In/Up', + }, + }, + ], + }, + { + name: 'Language', + path: '/admin/language', + component: () => import(/* webpackChunkName: "chunks/app-language" */ '../views/Admin/Languages/Language'), + meta: { + requiresAuth: true, + title: 'Language Editor', + }, + }, + ], + }, ] -export default routesAdmin \ No newline at end of file +export default routesAdmin diff --git a/resources/js/routes/routesAuth.js b/resources/js/routes/routesAuth.js index 43fbfa9b..f88d1d33 100644 --- a/resources/js/routes/routesAuth.js +++ b/resources/js/routes/routesAuth.js @@ -1,67 +1,60 @@ const routesAuth = [ - { - name: 'SocialiteCallback', - path: '/socialite/:provider/callback', - component: () => - import(/* webpackChunkName: "chunks/email-verified" */ '../views/Auth/SocialiteCallback'), - meta: { - requiresAuth: false - }, - }, - { - name: 'SuccessfullyVerified', - path: '/successfully-verified', - component: () => - import(/* webpackChunkName: "chunks/email-verified" */ '../views/Auth/SuccessfullyEmailVerified'), - meta: { - requiresAuth: false - }, - }, - { - name: 'SuccessfullySend', - path: '/successfully-send', - component: () => - import(/* webpackChunkName: "chunks/email-verified" */ '../views/Auth/SuccessfullySendEmail'), - meta: { - requiresAuth: false - }, - }, - { - name: 'SignIn', - path: '/sign-in', - component: () => - import(/* webpackChunkName: "chunks/sign-in" */ '../views/Auth/SignIn'), - meta: { - requiresAuth: false - }, - }, - { - name: 'SignUp', - path: '/sign-up', - component: () => - import(/* webpackChunkName: "chunks/sign-up" */ '../views/Auth/SignUp'), - meta: { - requiresAuth: false - }, - }, - { - name: 'ForgottenPassword', - path: '/forgotten-password', - component: () => - import(/* webpackChunkName: "chunks/forgotten-password" */ '../views/Auth/ForgottenPassword'), - meta: { - requiresAuth: false - }, - }, - { - name: 'CreateNewPassword', - path: '/create-new-password', - component: () => - import(/* webpackChunkName: "chunks/create-new-password" */ '../views/Auth/CreateNewPassword'), - meta: { - requiresAuth: false - }, - }, + { + name: 'SocialiteCallback', + path: '/socialite/:provider/callback', + component: () => import(/* webpackChunkName: "chunks/email-verified" */ '../views/Auth/SocialiteCallback'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'SuccessfullyVerified', + path: '/successfully-verified', + component: () => import(/* webpackChunkName: "chunks/email-verified" */ '../views/Auth/SuccessfullyEmailVerified'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'SuccessfullySend', + path: '/successfully-send', + component: () => import(/* webpackChunkName: "chunks/email-verified" */ '../views/Auth/SuccessfullySendEmail'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'SignIn', + path: '/sign-in', + component: () => import(/* webpackChunkName: "chunks/sign-in" */ '../views/Auth/SignIn'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'SignUp', + path: '/sign-up', + component: () => import(/* webpackChunkName: "chunks/sign-up" */ '../views/Auth/SignUp'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'ForgottenPassword', + path: '/forgotten-password', + component: () => import(/* webpackChunkName: "chunks/forgotten-password" */ '../views/Auth/ForgottenPassword'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'CreateNewPassword', + path: '/create-new-password', + component: () => import(/* webpackChunkName: "chunks/create-new-password" */ '../views/Auth/CreateNewPassword'), + meta: { + requiresAuth: false, + }, + }, ] -export default routesAuth \ No newline at end of file +export default routesAuth diff --git a/resources/js/routes/routesFile.js b/resources/js/routes/routesFile.js index 40d2f5aa..e9c518c5 100644 --- a/resources/js/routes/routesFile.js +++ b/resources/js/routes/routesFile.js @@ -1,66 +1,59 @@ const routesFile = [ - { - name: 'Platform', - path: '/platform', - component: () => - import(/* webpackChunkName: "chunks/platform" */ '../views/Platform'), - children: [ - { - name: 'Files', - path: '/platform/files/:id?', - component: () => - import(/* webpackChunkName: "chunks/files" */ '../views/FileView/Files'), - meta: { - requiresAuth: true - }, - }, - { - name: 'RecentUploads', - path: '/platform/recent-uploads', - component: () => - import(/* webpackChunkName: "chunks/recent-uploads" */ '../views/FileView/RecentUploads'), - meta: { - requiresAuth: true - }, - }, - { - name: 'MySharedItems', - path: '/platform/my-shared-items', - component: () => - import(/* webpackChunkName: "chunks/my-shared-items" */ '../views/FileView/MySharedItems'), - meta: { - requiresAuth: true - }, - }, - { - name: 'Trash', - path: '/platform/trash/:id?', - component: () => - import(/* webpackChunkName: "chunks/trash" */ '../views/FileView/Trash'), - meta: { - requiresAuth: true - }, - }, - { - name: 'TeamFolders', - path: '/platform/team-folders/:id?', - component: () => - import(/* webpackChunkName: "chunks/team-folders" */ '../views/FileView/TeamFolders'), - meta: { - requiresAuth: true - }, - }, - { - name: 'SharedWithMe', - path: '/platform/shared-with-me/:id?', - component: () => - import(/* webpackChunkName: "chunks/shared-with-me" */ '../views/FileView/SharedWithMe'), - meta: { - requiresAuth: true - }, - }, - ] - } + { + name: 'Platform', + path: '/platform', + component: () => import(/* webpackChunkName: "chunks/platform" */ '../views/Platform'), + children: [ + { + name: 'Files', + path: '/platform/files/:id?', + component: () => import(/* webpackChunkName: "chunks/files" */ '../views/FileView/Files'), + meta: { + requiresAuth: true, + }, + }, + { + name: 'RecentUploads', + path: '/platform/recent-uploads', + component: () => import(/* webpackChunkName: "chunks/recent-uploads" */ '../views/FileView/RecentUploads'), + meta: { + requiresAuth: true, + }, + }, + { + name: 'MySharedItems', + path: '/platform/my-shared-items', + component: () => import(/* webpackChunkName: "chunks/my-shared-items" */ '../views/FileView/MySharedItems'), + meta: { + requiresAuth: true, + }, + }, + { + name: 'Trash', + path: '/platform/trash/:id?', + component: () => import(/* webpackChunkName: "chunks/trash" */ '../views/FileView/Trash'), + meta: { + requiresAuth: true, + }, + }, + { + name: 'TeamFolders', + path: '/platform/team-folders/:id?', + component: () => import(/* webpackChunkName: "chunks/team-folders" */ '../views/FileView/TeamFolders'), + meta: { + requiresAuth: true, + }, + }, + { + name: 'SharedWithMe', + path: '/platform/shared-with-me/:id?', + component: () => import(/* webpackChunkName: "chunks/shared-with-me" */ '../views/FileView/SharedWithMe'), + meta: { + requiresAuth: true, + }, + }, + ], + }, ] -export default routesFile \ No newline at end of file +export default routesFile diff --git a/resources/js/routes/routesIndex.js b/resources/js/routes/routesIndex.js index 6b0ce51f..c9222d6b 100644 --- a/resources/js/routes/routesIndex.js +++ b/resources/js/routes/routesIndex.js @@ -1,31 +1,28 @@ const routesIndex = [ - { - name: 'Homepage', - path: '/', - component: () => - import(/* webpackChunkName: "chunks/homepage" */ '../views/Frontpage/Homepage'), - meta: { - requiresAuth: false - }, - }, - { - name: 'DynamicPage', - path: '/page/:slug', - component: () => - import(/* webpackChunkName: "chunks/dynamic-page" */ '../views/Frontpage/DynamicPage'), - meta: { - requiresAuth: false - }, - }, - { - name: 'ContactUs', - path: '/contact-us', - component: () => - import(/* webpackChunkName: "chunks/contact-us" */ '../views/Frontpage/ContactUs'), - meta: { - requiresAuth: false - }, - }, + { + name: 'Homepage', + path: '/', + component: () => import(/* webpackChunkName: "chunks/homepage" */ '../views/Frontpage/Homepage'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'DynamicPage', + path: '/page/:slug', + component: () => import(/* webpackChunkName: "chunks/dynamic-page" */ '../views/Frontpage/DynamicPage'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'ContactUs', + path: '/contact-us', + component: () => import(/* webpackChunkName: "chunks/contact-us" */ '../views/Frontpage/ContactUs'), + meta: { + requiresAuth: false, + }, + }, ] -export default routesIndex \ No newline at end of file +export default routesIndex diff --git a/resources/js/routes/routesMaintenance.js b/resources/js/routes/routesMaintenance.js index 57f69911..83ac7474 100644 --- a/resources/js/routes/routesMaintenance.js +++ b/resources/js/routes/routesMaintenance.js @@ -1,114 +1,102 @@ const routesMaintenance = [ - { - name: 'SetupWizard', - path: '/install', - component: () => - import(/* webpackChunkName: "chunks/setup-wizard" */ '../views/SetupWizard'), - meta: { - requiresAuth: false - }, - children: [ - { - name: 'StatusCheck', - path: '/setup-wizard/status-check', - component: () => - import(/* webpackChunkName: "chunks/status-check" */ '../views/SetupWizard/StatusCheck'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'PurchaseCode', - path: '/setup-wizard/purchase-code', - component: () => - import(/* webpackChunkName: "chunks/purchase-code" */ '../views/SetupWizard/PurchaseCode'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'Database', - path: '/setup-wizard/database', - component: () => - import(/* webpackChunkName: "chunks/database" */ '../views/SetupWizard/Database'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'InstallationDisclaimer', - path: '/setup-wizard/installation-disclaimer', - component: () => - import(/* webpackChunkName: "chunks/installation-disclaimer" */ '../views/SetupWizard/InstallationDisclaimer'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'SubscriptionService', - path: '/setup-wizard/subscription-service', - component: () => - import(/* webpackChunkName: "chunks/subscription-service" */ '../views/SetupWizard/SubscriptionService'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'StripeCredentials', - path: '/setup-wizard/stripe-credentials', - component: () => - import(/* webpackChunkName: "chunks/stripe-credentials" */ '../views/SetupWizard/StripeCredentials'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'BillingsDetail', - path: '/setup-wizard/stripe-billings', - component: () => - import(/* webpackChunkName: "chunks/billings-detail" */ '../views/SetupWizard/BillingsDetail'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'SubscriptionPlans', - path: '/setup-wizard/stripe-plans', - component: () => - import(/* webpackChunkName: "chunks/subscription-plans" */ '../views/SetupWizard/SubscriptionPlans'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'EnvironmentSetup', - path: '/setup-wizard/environment-setup', - component: () => - import(/* webpackChunkName: "chunks/environment-setup" */ '../views/SetupWizard/EnvironmentSetup'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'AppSetup', - path: '/setup-wizard/app-setup', - component: () => - import(/* webpackChunkName: "chunks/app-setup" */ '../views/SetupWizard/AppSetup'), - meta: { - requiresAuth: false, - }, - }, - { - name: 'AdminAccount', - path: '/setup-wizard/admin-setup', - component: () => - import(/* webpackChunkName: "chunks/admin-account" */ '../views/SetupWizard/AdminAccount'), - meta: { - requiresAuth: false, - }, - }, - ] - }, + { + name: 'SetupWizard', + path: '/install', + component: () => import(/* webpackChunkName: "chunks/setup-wizard" */ '../views/SetupWizard'), + meta: { + requiresAuth: false, + }, + children: [ + { + name: 'StatusCheck', + path: '/setup-wizard/status-check', + component: () => import(/* webpackChunkName: "chunks/status-check" */ '../views/SetupWizard/StatusCheck'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'PurchaseCode', + path: '/setup-wizard/purchase-code', + component: () => import(/* webpackChunkName: "chunks/purchase-code" */ '../views/SetupWizard/PurchaseCode'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'Database', + path: '/setup-wizard/database', + component: () => import(/* webpackChunkName: "chunks/database" */ '../views/SetupWizard/Database'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'InstallationDisclaimer', + path: '/setup-wizard/installation-disclaimer', + component: () => import(/* webpackChunkName: "chunks/installation-disclaimer" */ '../views/SetupWizard/InstallationDisclaimer'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'SubscriptionService', + path: '/setup-wizard/subscription-service', + component: () => import(/* webpackChunkName: "chunks/subscription-service" */ '../views/SetupWizard/SubscriptionService'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'StripeCredentials', + path: '/setup-wizard/stripe-credentials', + component: () => import(/* webpackChunkName: "chunks/stripe-credentials" */ '../views/SetupWizard/StripeCredentials'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'BillingsDetail', + path: '/setup-wizard/stripe-billings', + component: () => import(/* webpackChunkName: "chunks/billings-detail" */ '../views/SetupWizard/BillingsDetail'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'SubscriptionPlans', + path: '/setup-wizard/stripe-plans', + component: () => import(/* webpackChunkName: "chunks/subscription-plans" */ '../views/SetupWizard/SubscriptionPlans'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'EnvironmentSetup', + path: '/setup-wizard/environment-setup', + component: () => import(/* webpackChunkName: "chunks/environment-setup" */ '../views/SetupWizard/EnvironmentSetup'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'AppSetup', + path: '/setup-wizard/app-setup', + component: () => import(/* webpackChunkName: "chunks/app-setup" */ '../views/SetupWizard/AppSetup'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'AdminAccount', + path: '/setup-wizard/admin-setup', + component: () => import(/* webpackChunkName: "chunks/admin-account" */ '../views/SetupWizard/AdminAccount'), + meta: { + requiresAuth: false, + }, + }, + ], + }, ] -export default routesMaintenance \ No newline at end of file +export default routesMaintenance diff --git a/resources/js/routes/routesOthers.js b/resources/js/routes/routesOthers.js index 76f79694..edb126d0 100644 --- a/resources/js/routes/routesOthers.js +++ b/resources/js/routes/routesOthers.js @@ -1,22 +1,20 @@ const routesOthers = [ - { - name: 'NotFound', - path: '*', - component: () => - import(/* webpackChunkName: "chunks/not-found" */ '../views/NotFound'), - meta: { - requiresAuth: false - }, - }, - { - name: 'TemporaryUnavailable', - path: '/temporary-unavailable', - component: () => - import(/* webpackChunkName: "chunks/temporary-unavailable" */ '../views/TemporaryUnavailable'), - meta: { - requiresAuth: false - }, - }, + { + name: 'NotFound', + path: '*', + component: () => import(/* webpackChunkName: "chunks/not-found" */ '../views/NotFound'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'TemporaryUnavailable', + path: '/temporary-unavailable', + component: () => import(/* webpackChunkName: "chunks/temporary-unavailable" */ '../views/TemporaryUnavailable'), + meta: { + requiresAuth: false, + }, + }, ] -export default routesOthers \ No newline at end of file +export default routesOthers diff --git a/resources/js/routes/routesShared.js b/resources/js/routes/routesShared.js index 11efee6b..e847bf52 100644 --- a/resources/js/routes/routesShared.js +++ b/resources/js/routes/routesShared.js @@ -1,42 +1,38 @@ const routesShared = [ - { - name: 'Shared', - path: '/share/:token', - component: () => - import(/* webpackChunkName: "chunks/shared" */ '../views/Shared'), - meta: { - requiresAuth: false - }, - children: [ - { - name: 'Public', - path: '/share/:token/files/:id?', - component: () => - import(/* webpackChunkName: "chunks/shared/files" */ '../views/FileView/Public'), - meta: { - requiresAuth: false - }, - }, - { - name: 'SharedSingleFile', - path: '/share/:token/file', - component: () => - import(/* webpackChunkName: "chunks/shared/single-file" */ '../views/Shared/SharedSingleFile'), - meta: { - requiresAuth: false - }, - }, - { - name: 'SharedAuthentication', - path: '/share/:token/authenticate', - component: () => - import(/* webpackChunkName: "chunks/shared/authenticate" */ '../views/Shared/SharedAuthentication'), - meta: { - requiresAuth: false - }, - }, - ] - }, + { + name: 'Shared', + path: '/share/:token', + component: () => import(/* webpackChunkName: "chunks/shared" */ '../views/Shared'), + meta: { + requiresAuth: false, + }, + children: [ + { + name: 'Public', + path: '/share/:token/files/:id?', + component: () => import(/* webpackChunkName: "chunks/shared/files" */ '../views/FileView/Public'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'SharedSingleFile', + path: '/share/:token/file', + component: () => import(/* webpackChunkName: "chunks/shared/single-file" */ '../views/Shared/SharedSingleFile'), + meta: { + requiresAuth: false, + }, + }, + { + name: 'SharedAuthentication', + path: '/share/:token/authenticate', + component: () => import(/* webpackChunkName: "chunks/shared/authenticate" */ '../views/Shared/SharedAuthentication'), + meta: { + requiresAuth: false, + }, + }, + ], + }, ] -export default routesShared \ No newline at end of file +export default routesShared diff --git a/resources/js/routes/routesTeam.js b/resources/js/routes/routesTeam.js index 5248a86f..fce466c1 100644 --- a/resources/js/routes/routesTeam.js +++ b/resources/js/routes/routesTeam.js @@ -1,13 +1,12 @@ const routesTeam = [ - { - name: 'Invitation', - path: '/team-folder-invitation/:id', - component: () => - import(/* webpackChunkName: "chunks/invitation" */ '../views/Teams/Invitation'), - meta: { - requiresAuth: false - }, - }, + { + name: 'Invitation', + path: '/team-folder-invitation/:id', + component: () => import(/* webpackChunkName: "chunks/invitation" */ '../views/Teams/Invitation'), + meta: { + requiresAuth: false, + }, + }, ] -export default routesTeam \ No newline at end of file +export default routesTeam diff --git a/resources/js/routes/routesUser.js b/resources/js/routes/routesUser.js index 51d063b4..119f4129 100644 --- a/resources/js/routes/routesUser.js +++ b/resources/js/routes/routesUser.js @@ -1,55 +1,50 @@ const routesUser = [ - { - name: 'User', - path: '/user', - component: () => - import(/* webpackChunkName: "chunks/settings" */ '../views/Profile'), - meta: { - requiresAuth: true - }, - children: [ - { - name: 'Profile', - path: '/user/profile', - component: () => - import(/* webpackChunkName: "chunks/profile" */ '../views/User/Settings'), - meta: { - requiresAuth: true, - title: 'routes_title.profile' - }, - }, - { - name: 'Password', - path: '/user/settings/password', - component: () => - import(/* webpackChunkName: "chunks/settings-password" */ '../views/User/Password'), - meta: { - requiresAuth: true, - title: 'routes_title.settings_password' - }, - }, - { - name: 'Storage', - path: '/user/settings/storage', - component: () => - import(/* webpackChunkName: "chunks/settings-storage" */ '../views/User/Storage'), - meta: { - requiresAuth: true, - title: 'routes_title.settings_storage' - }, - }, - { - name: 'Billing', - path: '/user/settings/billing', - component: () => - import(/* webpackChunkName: "chunks/billing" */ '../views/User/Billing'), - meta: { - requiresAuth: true, - title: 'routes_title.subscription' - }, - }, - ] - }, + { + name: 'User', + path: '/user', + component: () => import(/* webpackChunkName: "chunks/settings" */ '../views/Profile'), + meta: { + requiresAuth: true, + }, + children: [ + { + name: 'Profile', + path: '/user/profile', + component: () => import(/* webpackChunkName: "chunks/profile" */ '../views/User/Settings'), + meta: { + requiresAuth: true, + title: 'routes_title.profile', + }, + }, + { + name: 'Password', + path: '/user/settings/password', + component: () => import(/* webpackChunkName: "chunks/settings-password" */ '../views/User/Password'), + meta: { + requiresAuth: true, + title: 'routes_title.settings_password', + }, + }, + { + name: 'Storage', + path: '/user/settings/storage', + component: () => import(/* webpackChunkName: "chunks/settings-storage" */ '../views/User/Storage'), + meta: { + requiresAuth: true, + title: 'routes_title.settings_storage', + }, + }, + { + name: 'Billing', + path: '/user/settings/billing', + component: () => import(/* webpackChunkName: "chunks/billing" */ '../views/User/Billing'), + meta: { + requiresAuth: true, + title: 'routes_title.subscription', + }, + }, + ], + }, ] -export default routesUser \ No newline at end of file +export default routesUser diff --git a/resources/js/store/index.js b/resources/js/store/index.js index 0f0a7506..4100d61d 100644 --- a/resources/js/store/index.js +++ b/resources/js/store/index.js @@ -22,5 +22,5 @@ export default new Vuex.Store({ lists, teams, app, - } -}) \ No newline at end of file + }, +}) diff --git a/resources/js/store/modules/app.js b/resources/js/store/modules/app.js index 8e069892..f4ac7827 100644 --- a/resources/js/store/modules/app.js +++ b/resources/js/store/modules/app.js @@ -1,6 +1,6 @@ -import i18n from "../../i18n" -import axios from "axios" -import Vue from "vue" +import i18n from '../../i18n' +import axios from 'axios' +import Vue from 'vue' const defaultState = { isVisibleNavigationBars: localStorage.getItem('is_navigation_bars') !== 'false', @@ -17,10 +17,10 @@ const defaultState = { }, } const actions = { - toggleThemeMode: ({commit}, mode = undefined) => { - const app = document.getElementsByTagName("html")[0]; + toggleThemeMode: ({ commit }, mode = undefined) => { + const app = document.getElementsByTagName('html')[0] - if (! mode) { + if (!mode) { mode = app.classList.contains('dark') ? 'light' : 'dark' } @@ -32,17 +32,16 @@ const actions = { // Update user settings Vue.prototype.$updateText('/user/settings', 'theme_mode', mode) }, - toggleNavigationBars: ({commit, state}) => { - + toggleNavigationBars: ({ commit, state }) => { // Store dark mode into localStorage - localStorage.setItem('is_navigation_bars', ! state.isVisibleNavigationBars) + localStorage.setItem('is_navigation_bars', !state.isVisibleNavigationBars) // Change preview commit('TOGGLE_NAVIGATION_BARS') }, - togglePreviewType: ({commit, state}, preview) => { + togglePreviewType: ({ commit, state }, preview) => { // Get preview type - let previewType = preview ? preview : state.itemViewType === 'list' ? 'grid' : 'list'; + let previewType = preview ? preview : state.itemViewType === 'list' ? 'grid' : 'list' // Store preview type to localStorage localStorage.setItem('preview_type', previewType) @@ -50,8 +49,7 @@ const actions = { // Change preview commit('CHANGE_PREVIEW', previewType) }, - toggleEmojiType: ({commit, getters}, type = undefined) => { - + toggleEmojiType: ({ commit, getters }, type = undefined) => { let newType = type ? type : getters.config.defaultEmoji === 'twemoji' ? 'applemoji' : 'twemoji' // Update config @@ -74,17 +72,14 @@ const actions = { context.commit('FILE_INFO_TOGGLE', visibility) } }, - getLanguageTranslations: ({commit, state}, lang) => { + getLanguageTranslations: ({ commit, state }, lang) => { return new Promise((resolve, reject) => { + axios.get(`/translations/${lang}`).then((response) => { + i18n.setLocaleMessage(lang, response.data) + i18n.locale = lang - axios.get(`/translations/${lang}`) - .then(response => { - - i18n.setLocaleMessage(lang, response.data) - i18n.locale = lang - - resolve(response) - }) + resolve(response) + }) }) }, } @@ -118,12 +113,12 @@ const mutations = { state.itemViewType = type }, TOGGLE_NAVIGATION_BARS(state) { - state.isVisibleNavigationBars = ! state.isVisibleNavigationBars + state.isVisibleNavigationBars = !state.isVisibleNavigationBars }, STORE_REQUESTED_PLAN(state, plan) { state.requestedPlan = plan }, - REPLACE_CONFIG_VALUE(state, {key, value}) { + REPLACE_CONFIG_VALUE(state, { key, value }) { state.config[key] = value }, SET_SOCIAL_LOGIN_CONFIGURED(state, service) { @@ -165,17 +160,20 @@ const mutations = { } const getters = { - isVisibleNavigationBars: state => state.isVisibleNavigationBars, - isVisibleSidebar: state => state.isVisibleSidebar, - itemViewType: state => state.itemViewType, - requestedPlan: state => state.requestedPlan, - api: state => state.config.api, - config: state => state.config, - emojis: state => state.emojis, - index: state => state.index, - isDarkMode: state => state.isDarkMode, + isVisibleNavigationBars: (state) => state.isVisibleNavigationBars, + isVisibleSidebar: (state) => state.isVisibleSidebar, + itemViewType: (state) => state.itemViewType, + requestedPlan: (state) => state.requestedPlan, + api: (state) => state.config.api, + config: (state) => state.config, + emojis: (state) => state.emojis, + index: (state) => state.index, + isDarkMode: (state) => state.isDarkMode, sorting: (state) => { - return {sorting: state.sorting, URI: '?sort=' + state.sorting.field + '&direction=' + state.sorting.sort} + return { + sorting: state.sorting, + URI: '?sort=' + state.sorting.field + '&direction=' + state.sorting.sort, + } }, } @@ -183,5 +181,5 @@ export default { state: defaultState, getters, actions, - mutations + mutations, } diff --git a/resources/js/store/modules/fileBrowser.js b/resources/js/store/modules/fileBrowser.js index f4887aa8..702500a3 100644 --- a/resources/js/store/modules/fileBrowser.js +++ b/resources/js/store/modules/fileBrowser.js @@ -1,8 +1,8 @@ -import Vue from "vue" +import Vue from 'vue' import axios from 'axios' -import {events} from "../../bus" +import { events } from '../../bus' import router from '../../router' -import i18n from "../../i18n"; +import i18n from '../../i18n' const defaultState = { currentFolder: undefined, @@ -15,30 +15,29 @@ const defaultState = { } const actions = { - getFolder: ({commit, getters}, id) => { - commit('LOADING_STATE', {loading: true, data: []}) + getFolder: ({ commit, getters }, id) => { + commit('LOADING_STATE', { loading: true, data: [] }) axios .get(`${getters.api}/browse/folders/${id}/${getters.sorting.URI}`) - .then(response => { + .then((response) => { let folders = response.data.folders.data let files = response.data.files.data - commit('LOADING_STATE', {loading: false, data: folders.concat(files)}) + commit('LOADING_STATE', { + loading: false, + data: folders.concat(files), + }) commit('SET_CURRENT_FOLDER', response.data.root) events.$emit('scrollTop') }) - .catch(error => { - + .catch((error) => { // Redirect if unauthenticated if ([401, 403].includes(error.response.status)) { - commit('SET_AUTHORIZED', false) - router.push({name: 'SignIn'}) - + router.push({ name: 'SignIn' }) } else { - // Show error message events.$emit('alert:open', { title: i18n.t('popup_error.title'), @@ -47,56 +46,62 @@ const actions = { } }) }, - getRecentUploads: ({commit, getters}) => { - commit('LOADING_STATE', {loading: true, data: []}) + getRecentUploads: ({ commit, getters }) => { + commit('LOADING_STATE', { loading: true, data: [] }) axios .get(getters.api + '/browse/latest') - .then(response => { - commit('LOADING_STATE', {loading: false, data: response.data.files.data}) + .then((response) => { + commit('LOADING_STATE', { + loading: false, + data: response.data.files.data, + }) commit('SET_CURRENT_FOLDER', undefined) events.$emit('scrollTop') }) .catch(() => Vue.prototype.$isSomethingWrong()) }, - getMySharedItems: ({commit, getters}) => { - commit('LOADING_STATE', {loading: true, data: []}) + getMySharedItems: ({ commit, getters }) => { + commit('LOADING_STATE', { loading: true, data: [] }) axios .get(getters.api + '/browse/share' + getters.sorting.URI) - .then(response => { - + .then((response) => { let folders = response.data.folders.data let files = response.data.files.data - commit('LOADING_STATE', {loading: false, data: folders.concat(files)}) + commit('LOADING_STATE', { + loading: false, + data: folders.concat(files), + }) commit('SET_CURRENT_FOLDER', undefined) events.$emit('scrollTop') }) .catch(() => Vue.prototype.$isSomethingWrong()) }, - getTrash: ({commit, getters}, id) => { - commit('LOADING_STATE', {loading: true, data: []}) + getTrash: ({ commit, getters }, id) => { + commit('LOADING_STATE', { loading: true, data: [] }) axios .get(`${getters.api}/browse/trash/${id}/${getters.sorting.URI}`) - .then(response => { - + .then((response) => { let folders = response.data.folders.data let files = response.data.files.data - commit('LOADING_STATE', {loading: false, data: folders.concat(files)}) + commit('LOADING_STATE', { + loading: false, + data: folders.concat(files), + }) commit('SET_CURRENT_FOLDER', response.data.root) events.$emit('scrollTop') }) .catch(() => Vue.prototype.$isSomethingWrong()) }, - getFolderTree: ({commit, getters}) => { + getFolderTree: ({ commit, getters }) => { return new Promise((resolve, reject) => { - // Get route let route = undefined @@ -108,7 +113,7 @@ const actions = { axios .get(route + getters.sorting.URI) - .then(response => { + .then((response) => { resolve(response) commit('UPDATE_FOLDER_TREE', response.data) @@ -134,12 +139,12 @@ const mutations = { state.navigation = tree }, FLUSH_SHARED(state, id) { - state.entries.find(item => { + state.entries.find((item) => { if (item.data.id === id) item.data.relationships.shared = undefined }) }, CHANGE_ITEM_NAME(state, updatedFile) { - state.entries.find(item => { + state.entries.find((item) => { if (item.data.id === updatedFile.data.id) { item.data.attributes.name = updatedFile.data.attributes.name item.data.attributes.color = updatedFile.data.attributes.color ? updatedFile.data.attributes.color : null @@ -148,14 +153,14 @@ const mutations = { }) }, UPDATE_SHARED_ITEM(state, data) { - state.entries.find(item => { + state.entries.find((item) => { if (item.data.id === data.data.attributes.item_id) { item.data.relationships.shared = data } }) }, UPDATE_ITEM(state, data) { - state.entries.find(item => { + state.entries.find((item) => { if (item.data.id === data.data.id) item.data = data.data }) }, @@ -166,21 +171,21 @@ const mutations = { state.entries = state.entries.concat(items) }, REMOVE_ITEM(state, id) { - state.entries = state.entries.filter(el => el.data.id !== id) + state.entries = state.entries.filter((el) => el.data.id !== id) }, INCREASE_FOLDER_ITEM(state, id) { - state.entries.map(el => { + state.entries.map((el) => { if (el.data.id && el.data.id === id) el.data.attributes.items++ }) }, REMOVE_ITEM_FROM_CLIPBOARD(state, item) { - state.clipboard = state.clipboard.filter(element => element.data.id !== item.data.id) + state.clipboard = state.clipboard.filter((element) => element.data.id !== item.data.id) }, ADD_ALL_ITEMS_TO_CLIPBOARD(state) { state.clipboard = state.entries }, ADD_ITEM_TO_CLIPBOARD(state, item) { - let selectedItem = state.entries.find(el => el.data.id === item.data.id) + let selectedItem = state.entries.find((el) => el.data.id === item.data.id) if (state.clipboard.includes(selectedItem)) return @@ -197,7 +202,7 @@ const mutations = { }, TOGGLE_MULTISELECT_MODE(state) { state.clipboard = [] - state.isMultiSelectMode = ! state.isMultiSelectMode + state.isMultiSelectMode = !state.isMultiSelectMode }, DISABLE_MULTISELECT_MODE(state) { state.clipboard = [] @@ -206,18 +211,18 @@ const mutations = { } const getters = { - isMultiSelectMode: state => state.isMultiSelectMode, - currentFolder: state => state.currentFolder, - fastPreview: state => state.fastPreview, - navigation: state => state.navigation, - clipboard: state => state.clipboard, - isLoading: state => state.isLoading, - entries: state => state.entries, + isMultiSelectMode: (state) => state.isMultiSelectMode, + currentFolder: (state) => state.currentFolder, + fastPreview: (state) => state.fastPreview, + navigation: (state) => state.navigation, + clipboard: (state) => state.clipboard, + isLoading: (state) => state.isLoading, + entries: (state) => state.entries, } export default { state: defaultState, getters, actions, - mutations + mutations, } diff --git a/resources/js/store/modules/fileFunctions.js b/resources/js/store/modules/fileFunctions.js index 5f726ec2..6a75fbba 100644 --- a/resources/js/store/modules/fileFunctions.js +++ b/resources/js/store/modules/fileFunctions.js @@ -1,6 +1,6 @@ -import i18n from "../../i18n"; -import router from "../../router" -import {events} from "../../bus"; +import i18n from '../../i18n' +import router from '../../router' +import { events } from '../../bus' import axios from 'axios' import Vue from 'vue' @@ -14,7 +14,7 @@ const defaultState = { } const actions = { - downloadZip: ({getters}, item = undefined) => { + downloadZip: ({ getters }, item = undefined) => { let files = [] // Get if from retrieved item @@ -23,11 +23,9 @@ const actions = { } // Get ids of selected files - if (! item) { - getters.clipboard.forEach(file => { - let type = file.data.type === 'folder' - ? 'folder' - : 'file' + if (!item) { + getters.clipboard.forEach((file) => { + let type = file.data.type === 'folder' ? 'folder' : 'file' files.push(file.data.id + '|' + type) }) @@ -41,102 +39,87 @@ const actions = { // Download zip Vue.prototype.$downloadFile(route, 'files.zip') }, - moveItem: ({commit, getters, dispatch}, {to_item, noSelectedItem}) => { - + moveItem: ({ commit, getters, dispatch }, { to_item, noSelectedItem }) => { let itemsToMove = [] let items = [noSelectedItem] // If coming no selected item dont get items to move from clipboard - if (!noSelectedItem) - items = getters.clipboard + if (!noSelectedItem) items = getters.clipboard - items.forEach(data => itemsToMove.push({ - 'id': data.data.id, - 'type': data.data.type - })) + items.forEach((data) => + itemsToMove.push({ + id: data.data.id, + type: data.data.type, + }) + ) // Remove file preview - if (!noSelectedItem) - commit('CLIPBOARD_CLEAR') + if (!noSelectedItem) commit('CLIPBOARD_CLEAR') // Get route - let route = getters.sharedDetail - ? `/api/editor/move/${router.currentRoute.params.token}` - : '/api/move' + let route = getters.sharedDetail ? `/api/editor/move/${router.currentRoute.params.token}` : '/api/move' let moveToId = null - if (to_item.data) - moveToId = to_item.data.id - else if (to_item.id) - moveToId = to_item.id + if (to_item.data) moveToId = to_item.data.id + else if (to_item.id) moveToId = to_item.id axios .post(route, { to_id: moveToId, - items: itemsToMove + items: itemsToMove, }) .then(() => { - itemsToMove.forEach(item => { + itemsToMove.forEach((item) => { commit('REMOVE_ITEM', item.id) commit('INCREASE_FOLDER_ITEM', moveToId) - if (item.type === 'folder') - dispatch('getAppData') + if (item.type === 'folder') dispatch('getAppData') - if (Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) - dispatch('getFolderTree') + if (Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) dispatch('getFolderTree') }) }) .catch(() => Vue.prototype.$isSomethingWrong()) }, - createFolder: ({commit, getters, dispatch}, folder) => { - + createFolder: ({ commit, getters, dispatch }, folder) => { // Get route let route = getters.sharedDetail ? `/api/editor/create-folder/${router.currentRoute.params.token}` : '/api/create-folder' - let parent_id = getters.currentFolder - ? getters.currentFolder.data.id - : undefined + let parent_id = getters.currentFolder ? getters.currentFolder.data.id : undefined axios .post(route, { parent_id: parent_id, name: folder.name, - emoji: folder.emoji + emoji: folder.emoji, }) - .then(response => { + .then((response) => { commit('ADD_NEW_FOLDER', response.data) events.$emit('scrollTop') // Set focus on new folder name setTimeout(() => { - if (! Vue.prototype.$isMobile()) { + if (!Vue.prototype.$isMobile()) { events.$emit('newFolder:focus', response.data.data.id) } }, 10) - if (Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) - dispatch('getFolderTree') - else - dispatch('getAppData') - + if (Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) dispatch('getFolderTree') + else dispatch('getAppData') }) - .catch(error => { + .catch((error) => { events.$emit('alert:open', { title: error.response.data.message, - message: i18n.t('popup_error.message') + message: i18n.t('popup_error.message'), }) }) }, - renameItem: ({commit, getters, dispatch}, data) => { - + renameItem: ({ commit, getters, dispatch }, data) => { // Updated name in favourites panel - if (getters.permission === 'master' && data.type === 'folder') - commit('UPDATE_NAME_IN_FAVOURITES', data) + if (getters.permission === 'master' && data.type === 'folder') commit('UPDATE_NAME_IN_FAVOURITES', data) // Get route let route = getters.sharedDetail @@ -146,25 +129,22 @@ const actions = { axios .post(route, { ...data, - _method: 'patch' + _method: 'patch', }) - .then(response => { + .then((response) => { commit('CHANGE_ITEM_NAME', response.data) - if (data.type === 'folder' && ! Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) + if (data.type === 'folder' && !Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) dispatch('getAppData') if (data.type === 'folder' && Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) dispatch('getFolderTree') }) .catch(() => Vue.prototype.$isSomethingWrong()) }, - uploadFiles: ({commit, getters, dispatch}, {form, fileSize, totalUploadedSize}) => { + uploadFiles: ({ commit, getters, dispatch }, { form, fileSize, totalUploadedSize }) => { return new Promise((resolve, reject) => { - // Get route - let route = getters.sharedDetail - ? `/api/editor/upload/${router.currentRoute.params.token}` - : '/api/upload' + let route = getters.sharedDetail ? `/api/editor/upload/${router.currentRoute.params.token}` : '/api/upload' // Create cancel token for axios cancellation const CancelToken = axios.CancelToken, @@ -174,32 +154,33 @@ const actions = { .post(route, form, { cancelToken: source.token, headers: { - 'Content-Type': 'application/octet-stream' + 'Content-Type': 'application/octet-stream', }, - onUploadProgress: event => { - let percentCompleted = Math.floor(((totalUploadedSize + event.loaded) / fileSize) * 100); + onUploadProgress: (event) => { + let percentCompleted = Math.floor(((totalUploadedSize + event.loaded) / fileSize) * 100) commit('UPLOADING_FILE_PROGRESS', percentCompleted >= 100 ? 100 : percentCompleted) // Set processing file - if (percentCompleted >= 100) - commit('PROCESSING_FILE', true) - } + if (percentCompleted >= 100) commit('PROCESSING_FILE', true) + }, }) - .then(response => { + .then((response) => { resolve(response) // Proceed if was returned database record if (response.data.data.id) { - commit('PROCESSING_FILE', false) // Remove first file from file queue commit('SHIFT_FROM_FILE_QUEUE') // Check if user is in uploading folder, if yes, than show new file - if ((! getters.currentFolder && !response.data.data.attributes.parent_id) || (getters.currentFolder && response.data.data.attributes.parent_id === getters.currentFolder.data.id)) { - + if ( + (!getters.currentFolder && !response.data.data.attributes.parent_id) || + (getters.currentFolder && + response.data.data.attributes.parent_id === getters.currentFolder.data.id) + ) { // Add uploaded item into view commit('ADD_NEW_ITEMS', response.data) } @@ -227,25 +208,25 @@ const actions = { } } }) - .catch(error => { + .catch((error) => { reject(error) - console.log(error); + console.log(error) let messages = { - '423': { + 423: { title: i18n.t('popup_exceed_limit.title'), - message: i18n.t('popup_exceed_limit.message') + message: i18n.t('popup_exceed_limit.message'), }, - '422': { + 422: { title: i18n.t('popup_mimetypes_blacklist.title'), - message: i18n.t('popup_mimetypes_blacklist.message') + message: i18n.t('popup_mimetypes_blacklist.message'), }, - '413': { + 413: { title: i18n.t('popup_paylod_error.title'), - message: i18n.t('popup_paylod_error.message') + message: i18n.t('popup_paylod_error.message'), }, - '401': { + 401: { //title: error.response.data.message, }, } @@ -253,7 +234,7 @@ const actions = { events.$emit('alert:open', { emoji: '😬😬😬', title: messages[error.response.status]['title'], - message: messages[error.response.status]['message'] || null + message: messages[error.response.status]['message'] || null, }) commit('PROCESSING_FILE', false) @@ -270,20 +251,20 @@ const actions = { }) }) }, - restoreItem: ({commit, getters}, item) => { - + restoreItem: ({ commit, getters }, item) => { let itemToRestore = [] let items = [item] let restoreToHome = Vue.prototype.$isThisRoute(router.currentRoute, ['Trash']) // If coming no selected item dont get items to restore from clipboard - if (!item) - items = getters.clipboard + if (!item) items = getters.clipboard - items.forEach(data => itemToRestore.push({ - type: data.data.type, - id: data.data.id - })) + items.forEach((data) => + itemToRestore.push({ + type: data.data.type, + id: data.data.id, + }) + ) // Remove file preview commit('CLIPBOARD_CLEAR') @@ -291,37 +272,31 @@ const actions = { axios .post(getters.api + '/trash/restore', { to_home: restoreToHome, - items: itemToRestore + items: itemToRestore, }) - .then( - items.forEach(item => commit('REMOVE_ITEM', item.data.id)) - ) + .then(items.forEach((item) => commit('REMOVE_ITEM', item.data.id))) .catch(() => Vue.prototype.$isSomethingWrong()) }, - deleteItem: ({commit, getters, dispatch}, noSelectedItem) => { - + deleteItem: ({ commit, getters, dispatch }, noSelectedItem) => { let itemsToDelete = [] let items = [noSelectedItem] // If coming no selected item dont get items to move from clipboard - if (!noSelectedItem) - items = getters.clipboard + if (!noSelectedItem) items = getters.clipboard - items.forEach(data => { - itemsToDelete.push({ - force_delete: !!data.data.attributes.deleted_at, - type: data.data.type, - id: data.data.id - }) + items.forEach((data) => { + itemsToDelete.push({ + force_delete: !!data.data.attributes.deleted_at, + type: data.data.type, + id: data.data.id, + }) // Remove file commit('REMOVE_ITEM', data.data.id) // Remove item from sidebar if (getters.permission === 'master') { - - if (data.data.type === 'folder') - commit('REMOVE_ITEM_FROM_FAVOURITES', data) + if (data.data.type === 'folder') commit('REMOVE_ITEM_FROM_FAVOURITES', data) } // Remove file @@ -329,9 +304,7 @@ const actions = { // Remove item from sidebar if (getters.permission === 'master') { - - if (data.data.type === 'folder') - commit('REMOVE_ITEM_FROM_FAVOURITES', data) + if (data.data.type === 'folder') commit('REMOVE_ITEM_FROM_FAVOURITES', data) } }) @@ -341,22 +314,17 @@ const actions = { } // Get route - let route = getters.sharedDetail - ? `/api/editor/remove/${router.currentRoute.params.token}` - : '/api/remove' + let route = getters.sharedDetail ? `/api/editor/remove/${router.currentRoute.params.token}` : '/api/remove' axios .post(route, { - items: itemsToDelete + items: itemsToDelete, }) .then(() => { - itemsToDelete.forEach(data => { - + itemsToDelete.forEach((data) => { // If is folder, update app data if (data.type === 'folder') { - if (data.id === getters.currentFolder.data.id) { - if (Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) { dispatch('browseShared') } else { @@ -366,40 +334,35 @@ const actions = { } }) - if (Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) - dispatch('getFolderTree') - else - dispatch('getAppData') - + if (Vue.prototype.$isThisRoute(router.currentRoute, ['Public'])) dispatch('getFolderTree') + else dispatch('getAppData') }) - //.catch(() => Vue.prototype.$isSomethingWrong()) + //.catch(() => Vue.prototype.$isSomethingWrong()) }, - emptyTrash: ({commit, getters}) => { - + emptyTrash: ({ commit, getters }) => { // Clear file browser - commit('LOADING_STATE', {loading: true, data: []}) + commit('LOADING_STATE', { loading: true, data: [] }) axios .post(getters.api + '/trash/dump', { - _method: 'delete' + _method: 'delete', }) .then(() => { - commit('LOADING_STATE', {loading: false, data: []}) + commit('LOADING_STATE', { loading: false, data: [] }) events.$emit('scrollTop') commit('CLIPBOARD_CLEAR') }) .catch(() => Vue.prototype.$isSomethingWrong()) }, - emptyTrashQuietly: ({commit, getters}) => { + emptyTrashQuietly: ({ commit, getters }) => { axios .post(getters.api + '/trash/dump', { - _method: 'delete' + _method: 'delete', }) .then(() => { - if (router.currentRoute.name === 'Trash') { - commit('LOADING_STATE', {loading: false, data: []}) + commit('LOADING_STATE', { loading: false, data: [] }) } events.$emit('toaster', { @@ -408,7 +371,7 @@ const actions = { }) }) .catch(() => Vue.prototype.$isSomethingWrong()) - } + }, } const mutations = { @@ -437,21 +400,21 @@ const mutations = { state.filesInQueueUploaded = 0 state.filesInQueueTotal = 0 state.fileQueue = [] - } + }, } const getters = { - filesInQueueUploaded: state => state.filesInQueueUploaded, - filesInQueueTotal: state => state.filesInQueueTotal, - uploadingProgress: state => state.uploadingProgress, - isProcessingFile: state => state.isProcessingFile, - processingPopup: state => state.processingPopup, - fileQueue: state => state.fileQueue + filesInQueueUploaded: (state) => state.filesInQueueUploaded, + filesInQueueTotal: (state) => state.filesInQueueTotal, + uploadingProgress: (state) => state.uploadingProgress, + isProcessingFile: (state) => state.isProcessingFile, + processingPopup: (state) => state.processingPopup, + fileQueue: (state) => state.fileQueue, } export default { state: defaultState, mutations, actions, - getters + getters, } diff --git a/resources/js/store/modules/lists.js b/resources/js/store/modules/lists.js index 889ff8c2..f6be80c5 100644 --- a/resources/js/store/modules/lists.js +++ b/resources/js/store/modules/lists.js @@ -1,1040 +1,1040 @@ import i18n from '../../i18n' const defaultState = { - transactionColumns: [ - { - label: i18n.t('Note'), - field: 'note', - sortable: true - }, - { - label: i18n.t('user'), - field: 'user_id', - sortable: true - }, - { - label: i18n.t('Status'), - field: 'status', - sortable: true - }, - { - label: i18n.t('Type'), - field: 'type', - sortable: true - }, - { - label: i18n.t('Total'), - field: 'amount', - sortable: true - }, - { - label: i18n.t('Payed At'), - field: 'created_at', - sortable: true - }, - { - label: i18n.t('Service'), - field: 'driver', - sortable: true - }, - { - label: i18n.t('Actions'), - field: 'actions', - sortable: false - }, - ], - roles: [ - { - label: 'roles.admin', - value: 'admin', - }, - { - label: 'roles.user', - value: 'user', - }, - ], - subscriptionTypes: [ - { - label: 'Metered', - value: 'metered', - }, - { - label: 'Fixed', - value: 'fixed', - }, - ], - teamPermissions: { - 'can-edit': 'Can Edit', - 'can-view': 'Can View', - }, - countries: [ - {label: 'Czech Republic', value: 'CZ'}, - {label: 'Slovakia', value: 'SK'}, - {label: 'Afghanistan', value: 'AF'}, - {label: 'Åland Islands', value: 'AX'}, - {label: 'Albania', value: 'AL'}, - {label: 'Algeria', value: 'DZ'}, - {label: 'American Samoa', value: 'AS'}, - {label: 'AndorrA', value: 'AD'}, - {label: 'Angola', value: 'AO'}, - {label: 'Anguilla', value: 'AI'}, - {label: 'Antarctica', value: 'AQ'}, - {label: 'Antigua and Barbuda', value: 'AG'}, - {label: 'Argentina', value: 'AR'}, - {label: 'Armenia', value: 'AM'}, - {label: 'Aruba', value: 'AW'}, - {label: 'Australia', value: 'AU'}, - {label: 'Austria', value: 'AT'}, - {label: 'Azerbaijan', value: 'AZ'}, - {label: 'Bahamas', value: 'BS'}, - {label: 'Bahrain', value: 'BH'}, - {label: 'Bangladesh', value: 'BD'}, - {label: 'Barbados', value: 'BB'}, - {label: 'Belarus', value: 'BY'}, - {label: 'Belgium', value: 'BE'}, - {label: 'Belize', value: 'BZ'}, - {label: 'Benin', value: 'BJ'}, - {label: 'Bermuda', value: 'BM'}, - {label: 'Bhutan', value: 'BT'}, - {label: 'Bolivia', value: 'BO'}, - {label: 'Bosnia and Herzegovina', value: 'BA'}, - {label: 'Botswana', value: 'BW'}, - {label: 'Bouvet Island', value: 'BV'}, - {label: 'Brazil', value: 'BR'}, - {label: 'British Indian Ocean Territory', value: 'IO'}, - {label: 'Brunei Darussalam', value: 'BN'}, - {label: 'Bulgaria', value: 'BG'}, - {label: 'Burkina Faso', value: 'BF'}, - {label: 'Burundi', value: 'BI'}, - {label: 'Cambodia', value: 'KH'}, - {label: 'Cameroon', value: 'CM'}, - {label: 'Canada', value: 'CA'}, - {label: 'Cape Verde', value: 'CV'}, - {label: 'Cayman Islands', value: 'KY'}, - {label: 'Central African Republic', value: 'CF'}, - {label: 'Chad', value: 'TD'}, - {label: 'Chile', value: 'CL'}, - {label: 'China', value: 'CN'}, - {label: 'Christmas Island', value: 'CX'}, - {label: 'Cocos (Keeling) Islands', value: 'CC'}, - {label: 'Colombia', value: 'CO'}, - {label: 'Comoros', value: 'KM'}, - {label: 'Congo', value: 'CG'}, - {label: 'Congo, The Democratic Republic of the', value: 'CD'}, - {label: 'Cook Islands', value: 'CK'}, - {label: 'Costa Rica', value: 'CR'}, - {label: 'Cote D\'Ivoire', value: 'CI'}, - {label: 'Croatia', value: 'HR'}, - {label: 'Cuba', value: 'CU'}, - {label: 'Cyprus', value: 'CY'}, - {label: 'Denmark', value: 'DK'}, - {label: 'Djibouti', value: 'DJ'}, - {label: 'Dominica', value: 'DM'}, - {label: 'Dominican Republic', value: 'DO'}, - {label: 'Ecuador', value: 'EC'}, - {label: 'Egypt', value: 'EG'}, - {label: 'El Salvador', value: 'SV'}, - {label: 'Equatorial Guinea', value: 'GQ'}, - {label: 'Eritrea', value: 'ER'}, - {label: 'Estonia', value: 'EE'}, - {label: 'Ethiopia', value: 'ET'}, - {label: 'Falkland Islands (Malvinas)', value: 'FK'}, - {label: 'Faroe Islands', value: 'FO'}, - {label: 'Fiji', value: 'FJ'}, - {label: 'Finland', value: 'FI'}, - {label: 'France', value: 'FR'}, - {label: 'French Guiana', value: 'GF'}, - {label: 'French Polynesia', value: 'PF'}, - {label: 'French Southern Territories', value: 'TF'}, - {label: 'Gabon', value: 'GA'}, - {label: 'Gambia', value: 'GM'}, - {label: 'Georgia', value: 'GE'}, - {label: 'Germany', value: 'DE'}, - {label: 'Ghana', value: 'GH'}, - {label: 'Gibraltar', value: 'GI'}, - {label: 'Greece', value: 'GR'}, - {label: 'Greenland', value: 'GL'}, - {label: 'Grenada', value: 'GD'}, - {label: 'Guadeloupe', value: 'GP'}, - {label: 'Guam', value: 'GU'}, - {label: 'Guatemala', value: 'GT'}, - {label: 'Guernsey', value: 'GG'}, - {label: 'Guinea', value: 'GN'}, - {label: 'Guinea-Bissau', value: 'GW'}, - {label: 'Guyana', value: 'GY'}, - {label: 'Haiti', value: 'HT'}, - {label: 'Heard Island and Mcdonald Islands', value: 'HM'}, - {label: 'Holy See (Vatican City State)', value: 'VA'}, - {label: 'Honduras', value: 'HN'}, - {label: 'Hong Kong', value: 'HK'}, - {label: 'Hungary', value: 'HU'}, - {label: 'Iceland', value: 'IS'}, - {label: 'India', value: 'IN'}, - {label: 'Indonesia', value: 'ID'}, - {label: 'Iran, Islamic Republic Of', value: 'IR'}, - {label: 'Iraq', value: 'IQ'}, - {label: 'Ireland', value: 'IE'}, - {label: 'Isle of Man', value: 'IM'}, - {label: 'Israel', value: 'IL'}, - {label: 'Italy', value: 'IT'}, - {label: 'Jamaica', value: 'JM'}, - {label: 'Japan', value: 'JP'}, - {label: 'Jersey', value: 'JE'}, - {label: 'Jordan', value: 'JO'}, - {label: 'Kazakhstan', value: 'KZ'}, - {label: 'Kenya', value: 'KE'}, - {label: 'Kiribati', value: 'KI'}, - {label: 'Korea, Democratic People\'S Republic of', value: 'KP'}, - {label: 'Korea, Republic of', value: 'KR'}, - {label: 'Kuwait', value: 'KW'}, - {label: 'Kyrgyzstan', value: 'KG'}, - {label: 'Lao People\'S Democratic Republic', value: 'LA'}, - {label: 'Latvia', value: 'LV'}, - {label: 'Lebanon', value: 'LB'}, - {label: 'Lesotho', value: 'LS'}, - {label: 'Liberia', value: 'LR'}, - {label: 'Libyan Arab Jamahiriya', value: 'LY'}, - {label: 'Liechtenstein', value: 'LI'}, - {label: 'Lithuania', value: 'LT'}, - {label: 'Luxembourg', value: 'LU'}, - {label: 'Macao', value: 'MO'}, - {label: 'Macedonia, The Former Yugoslav Republic of', value: 'MK'}, - {label: 'Madagascar', value: 'MG'}, - {label: 'Malawi', value: 'MW'}, - {label: 'Malaysia', value: 'MY'}, - {label: 'Maldives', value: 'MV'}, - {label: 'Mali', value: 'ML'}, - {label: 'Malta', value: 'MT'}, - {label: 'Marshall Islands', value: 'MH'}, - {label: 'Martinique', value: 'MQ'}, - {label: 'Mauritania', value: 'MR'}, - {label: 'Mauritius', value: 'MU'}, - {label: 'Mayotte', value: 'YT'}, - {label: 'Mexico', value: 'MX'}, - {label: 'Micronesia, Federated States of', value: 'FM'}, - {label: 'Moldova, Republic of', value: 'MD'}, - {label: 'Monaco', value: 'MC'}, - {label: 'Mongolia', value: 'MN'}, - {label: 'Montserrat', value: 'MS'}, - {label: 'Morocco', value: 'MA'}, - {label: 'Mozambique', value: 'MZ'}, - {label: 'Myanmar', value: 'MM'}, - {label: 'Namibia', value: 'NA'}, - {label: 'Nauru', value: 'NR'}, - {label: 'Nepal', value: 'NP'}, - {label: 'Netherlands', value: 'NL'}, - {label: 'Netherlands Antilles', value: 'AN'}, - {label: 'New Caledonia', value: 'NC'}, - {label: 'New Zealand', value: 'NZ'}, - {label: 'Nicaragua', value: 'NI'}, - {label: 'Niger', value: 'NE'}, - {label: 'Nigeria', value: 'NG'}, - {label: 'Niue', value: 'NU'}, - {label: 'Norfolk Island', value: 'NF'}, - {label: 'Northern Mariana Islands', value: 'MP'}, - {label: 'Norway', value: 'NO'}, - {label: 'Oman', value: 'OM'}, - {label: 'Pakistan', value: 'PK'}, - {label: 'Palau', value: 'PW'}, - {label: 'Palestinian Territory, Occupied', value: 'PS'}, - {label: 'Panama', value: 'PA'}, - {label: 'Papua New Guinea', value: 'PG'}, - {label: 'Paraguay', value: 'PY'}, - {label: 'Peru', value: 'PE'}, - {label: 'Philippines', value: 'PH'}, - {label: 'Pitcairn', value: 'PN'}, - {label: 'Poland', value: 'PL'}, - {label: 'Portugal', value: 'PT'}, - {label: 'Puerto Rico', value: 'PR'}, - {label: 'Qatar', value: 'QA'}, - {label: 'Reunion', value: 'RE'}, - {label: 'Romania', value: 'RO'}, - {label: 'Russian Federation', value: 'RU'}, - {label: 'RWANDA', value: 'RW'}, - {label: 'Saint Helena', value: 'SH'}, - {label: 'Saint Kitts and Nevis', value: 'KN'}, - {label: 'Saint Lucia', value: 'LC'}, - {label: 'Saint Pierre and Miquelon', value: 'PM'}, - {label: 'Saint Vincent and the Grenadines', value: 'VC'}, - {label: 'Samoa', value: 'WS'}, - {label: 'San Marino', value: 'SM'}, - {label: 'Sao Tome and Principe', value: 'ST'}, - {label: 'Saudi Arabia', value: 'SA'}, - {label: 'Senegal', value: 'SN'}, - {label: 'Serbia and Montenegro', value: 'CS'}, - {label: 'Seychelles', value: 'SC'}, - {label: 'Sierra Leone', value: 'SL'}, - {label: 'Singapore', value: 'SG'}, - {label: 'Slovenia', value: 'SI'}, - {label: 'Solomon Islands', value: 'SB'}, - {label: 'Somalia', value: 'SO'}, - {label: 'South Africa', value: 'ZA'}, - {label: 'South Georgia and the South Sandwich Islands', value: 'GS'}, - {label: 'Spain', value: 'ES'}, - {label: 'Sri Lanka', value: 'LK'}, - {label: 'Sudan', value: 'SD'}, - {label: 'Suriname', value: 'SR'}, - {label: 'Svalbard and Jan Mayen', value: 'SJ'}, - {label: 'Swaziland', value: 'SZ'}, - {label: 'Sweden', value: 'SE'}, - {label: 'Switzerland', value: 'CH'}, - {label: 'Syrian Arab Republic', value: 'SY'}, - {label: 'Taiwan, Province of China', value: 'TW'}, - {label: 'Tajikistan', value: 'TJ'}, - {label: 'Tanzania, United Republic of', value: 'TZ'}, - {label: 'Thailand', value: 'TH'}, - {label: 'Timor-Leste', value: 'TL'}, - {label: 'Togo', value: 'TG'}, - {label: 'Tokelau', value: 'TK'}, - {label: 'Tonga', value: 'TO'}, - {label: 'Trinidad and Tobago', value: 'TT'}, - {label: 'Tunisia', value: 'TN'}, - {label: 'Turkey', value: 'TR'}, - {label: 'Turkmenistan', value: 'TM'}, - {label: 'Turks and Caicos Islands', value: 'TC'}, - {label: 'Tuvalu', value: 'TV'}, - {label: 'Uganda', value: 'UG'}, - {label: 'Ukraine', value: 'UA'}, - {label: 'United Arab Emirates', value: 'AE'}, - {label: 'United Kingdom', value: 'GB'}, - {label: 'United States', value: 'US'}, - {label: 'United States Minor Outlying Islands', value: 'UM'}, - {label: 'Uruguay', value: 'UY'}, - {label: 'Uzbekistan', value: 'UZ'}, - {label: 'Vanuatu', value: 'VU'}, - {label: 'Venezuela', value: 'VE'}, - {label: 'Viet Nam', value: 'VN'}, - {label: 'Virgin Islands, British', value: 'VG'}, - {label: 'Virgin Islands, U.S.', value: 'VI'}, - {label: 'Wallis and Futuna', value: 'WF'}, - {label: 'Western Sahara', value: 'EH'}, - {label: 'Yemen', value: 'YE'}, - {label: 'Zambia', value: 'ZM'}, - {label: 'Zimbabwe', value: 'ZW'} - ], - expirationList: [ - { - label: ['shared_form.expiration_hour', {value: 1}], - value: 1, - }, - { - label: ['shared_form.expiration_hour', {value: 2}], - value: 2, - }, - { - label: ['shared_form.expiration_hour', {value: 6}], - value: 6, - }, - { - label: ['shared_form.expiration_hour', {value: 12}], - value: 12, - }, - { - label: ['shared_form.expiration_day', {value: 1}], - value: 24, - }, - { - label: ['shared_form.expiration_day', {value: 2}], - value: 48, - }, - { - label: ['shared_form.expiration_day', {value: 7}], - value: 168, - }, - ], - intervalList: [ - { - label: 'Monthly', - value: 'month', - }, - { - label: 'Annually', - value: 'year', - }, - ], - currencyList: [ - { - label: 'USD - United States Dollar', - value: 'USD', - }, - { - label: 'EUR - Euro', - value: 'EUR', - }, - { - label: 'GBP - British Pound', - value: 'GBP', - }, - { - label: 'AFN - Afghan Afghani', - value: 'AFN', - }, - { - label: 'ALL - Albanian Lek', - value: 'ALL', - }, - { - label: 'DZD - Algerian Dinar', - value: 'DZD', - }, - { - label: 'AOA - Angolan Kwanza', - value: 'AOA', - }, - { - label: 'ARS - Argentine Peso', - value: 'ARS', - }, - { - label: 'AMD - Armenian Dram', - value: 'AMD', - }, - { - label: 'AWG - Aruban Florin', - value: 'AWG', - }, - { - label: 'AUD - Australian Dollar', - value: 'AUD', - }, - { - label: 'AZN - Azerbaijani Manat', - value: 'AZN', - }, - { - label: 'BDT - Bangladeshi Taka', - value: 'BDT', - }, - { - label: 'BBD - Barbadian Dollar', - value: 'BBD', - }, - { - label: 'BZD - Belize Dollar', - value: 'BZD', - }, - { - label: 'BMD - Bermudian Dollar', - value: 'BMD', - }, - { - label: 'BOB - Bolivian Boliviano', - value: 'BOB', - }, - { - label: 'BAM - Bosnia & Herzegovina Convertible Mark', - value: 'BAM', - }, - { - label: 'BWP - Botswana Pula', - value: 'BWP', - }, - { - label: 'BRL - Brazilian Real', - value: 'BRL', - }, - { - label: 'BND - Brunei Dollar', - value: 'BND', - }, - { - label: 'BGN - Bulgarian Lev', - value: 'BGN', - }, - { - label: 'BIF - Burundian Franc', - value: 'BIF', - }, - { - label: 'KHR - Cambodian Riel', - value: 'KHR', - }, - { - label: 'CAD - Canadian Dollar', - value: 'CAD', - }, - { - label: 'CVE - Cape Verdean Escudo', - value: 'CVE', - }, - { - label: 'KYD - Cayman Islands Dollar', - value: 'KYD', - }, - { - label: 'XAF - Central African Cfa Franc', - value: 'XAF', - }, - { - label: 'XPF - Cfp Franc', - value: 'XPF', - }, - { - label: 'CLP - Chilean Peso', - value: 'CLP', - }, - { - label: 'CNY - Chinese Renminbi Yuan', - value: 'CNY', - }, - { - label: 'COP - Colombian Peso', - value: 'COP', - }, - { - label: 'KMF - Comorian Franc', - value: 'KMF', - }, - { - label: 'CDF - Congolese Franc', - value: 'CDF', - }, - { - label: 'CRC - Costa Rican Colón', - value: 'CRC', - }, - { - label: 'HRK - Croatian Kuna', - value: 'HRK', - }, - { - label: 'CZK - Czech Koruna', - value: 'CZK', - }, - { - label: 'DKK - Danish Krone', - value: 'DKK', - }, - { - label: 'DJF - Djiboutian Franc', - value: 'DJF', - }, - { - label: 'DOP - Dominican Peso', - value: 'DOP', - }, - { - label: 'XCD - East Caribbean Dollar', - value: 'XCD', - }, - { - label: 'EGP - Egyptian Pound', - value: 'EGP', - }, - { - label: 'ETB - Ethiopian Birr', - value: 'ETB', - }, - { - label: 'FKP - Falkland Islands Pound', - value: 'FKP', - }, - { - label: 'FJD - Fijian Dollar', - value: 'FJD', - }, - { - label: 'GMD - Gambian Dalasi', - value: 'GMD', - }, - { - label: 'GEL - Georgian Lari', - value: 'GEL', - }, - { - label: 'GIP - Gibraltar Pound', - value: 'GIP', - }, - { - label: 'GTQ - Guatemalan Quetzal', - value: 'GTQ', - }, - { - label: 'GNF - Guinean Franc', - value: 'GNF', - }, - { - label: 'GYD - Guyanese Dollar', - value: 'GYD', - }, - { - label: 'HTG - Haitian Gourde', - value: 'HTG', - }, - { - label: 'HNL - Honduran Lempira', - value: 'HNL', - }, - { - label: 'HKD - Hong Kong Dollar', - value: 'HKD', - }, - { - label: 'HUF - Hungarian Forint', - value: 'HUF', - }, - { - label: 'ISK - Icelandic Króna', - value: 'ISK', - }, - { - label: 'INR - Indian Rupee', - value: 'INR', - }, - { - label: 'IDR - Indonesian Rupiah', - value: 'IDR', - }, - { - label: 'ILS - Israeli New Sheqel', - value: 'ILS', - }, - { - label: 'JMD - Jamaican Dollar', - value: 'JMD', - }, - { - label: 'JPY - Japanese Yen', - value: 'JPY', - }, - { - label: 'KZT - Kazakhstani Tenge', - value: 'KZT', - }, - { - label: 'KES - Kenyan Shilling', - value: 'KES', - }, - { - label: 'KGS - Kyrgyzstani Som', - value: 'KGS', - }, - { - label: 'LAK - Lao Kip', - value: 'LAK', - }, - { - label: 'LBP - Lebanese Pound', - value: 'LBP', - }, - { - label: 'LSL - Lesotho Loti', - value: 'LSL', - }, - { - label: 'LRD - Liberian Dollar', - value: 'LRD', - }, - { - label: 'MOP - Macanese Pataca', - value: 'MOP', - }, - { - label: 'MKD - Macedonian Denar', - value: 'MKD', - }, - { - label: 'MGA - Malagasy Ariary', - value: 'MGA', - }, - { - label: 'MWK - Malawian Kwacha', - value: 'MWK', - }, - { - label: 'MYR - Malaysian Ringgit', - value: 'MYR', - }, - { - label: 'MVR - Maldivian Rufiyaa', - value: 'MVR', - }, - { - label: 'MRO - Mauritanian Ouguiya', - value: 'MRO', - }, - { - label: 'MUR - Mauritian Rupee', - value: 'MUR', - }, - { - label: 'MXN - Mexican Peso', - value: 'MXN', - }, - { - label: 'MDL - Moldovan Leu', - value: 'MDL', - }, - { - label: 'MNT - Mongolian Tögrög', - value: 'MNT', - }, - { - label: 'MAD - Moroccan Dirham', - value: 'MAD', - }, - { - label: 'MZN - Mozambican Metical', - value: 'MZN', - }, - { - label: 'MMK - Myanmar Kyat', - value: 'MMK', - }, - { - label: 'NAD - Namibian Dollar', - value: 'NAD', - }, - { - label: 'NPR - Nepalese Rupee', - value: 'NPR', - }, - { - label: 'ANG - Netherlands Antillean Gulden', - value: 'ANG', - }, - { - label: 'TWD - New Taiwan Dollar', - value: 'TWD', - }, - { - label: 'NZD - New Zealand Dollar', - value: 'NZD', - }, - { - label: 'NIO - Nicaraguan Córdoba', - value: 'NIO', - }, - { - label: 'NGN - Nigerian Naira', - value: 'NGN', - }, - { - label: 'NOK - Norwegian Krone', - value: 'NOK', - }, - { - label: 'PKR - Pakistani Rupee', - value: 'PKR', - }, - { - label: 'PAB - Panamanian Balboa', - value: 'PAB', - }, - { - label: 'PGK - Papua New Guinean Kina', - value: 'PGK', - }, - { - label: 'PYG - Paraguayan Guaraní', - value: 'PYG', - }, - { - label: 'PEN - Peruvian Nuevo Sol', - value: 'PEN', - }, - { - label: 'PHP - Philippine Peso', - value: 'PHP', - }, - { - label: 'PLN - Polish Złoty', - value: 'PLN', - }, - { - label: 'QAR - Qatari Riyal', - value: 'QAR', - }, - { - label: 'RON - Romanian Leu', - value: 'RON', - }, - { - label: 'RUB - Russian Ruble', - value: 'RUB', - }, - { - label: 'RWF - Rwandan Franc', - value: 'RWF', - }, - { - label: 'STD - São Tomé and Príncipe Dobra', - value: 'STD', - }, - { - label: 'SHP - Saint Helenian Pound', - value: 'SHP', - }, - { - label: 'SVC - Salvadoran Colón', - value: 'SVC', - }, - { - label: 'WST - Samoan Tala', - value: 'WST', - }, - { - label: 'SAR - Saudi Riyal', - value: 'SAR', - }, - { - label: 'RSD - Serbian Dinar', - value: 'RSD', - }, - { - label: 'SCR - Seychellois Rupee', - value: 'SCR', - }, - { - label: 'SLL - Sierra Leonean Leone', - value: 'SLL', - }, - { - label: 'SGD - Singapore Dollar', - value: 'SGD', - }, - { - label: 'SBD - Solomon Islands Dollar', - value: 'SBD', - }, - { - label: 'SOS - Somali Shilling', - value: 'SOS', - }, - { - label: 'ZAR - South African Rand', - value: 'ZAR', - }, - { - label: 'KRW - South Korean Won', - value: 'KRW', - }, - { - label: 'LKR - Sri Lankan Rupee', - value: 'LKR', - }, - { - label: 'SRD - Surinamese Dollar', - value: 'SRD', - }, - { - label: 'SZL - Swazi Lilangeni', - value: 'SZL', - }, - { - label: 'SEK - Swedish Krona', - value: 'SEK', - }, - { - label: 'CHF - Swiss Franc', - value: 'CHF', - }, - { - label: 'TJS - Tajikistani Somoni', - value: 'TJS', - }, - { - label: 'TZS - Tanzanian Shilling', - value: 'TZS', - }, - { - label: 'THB - Thai Baht', - value: 'THB', - }, - { - label: 'TOP - Tongan Paʻanga', - value: 'TOP', - }, - { - label: 'TTD - Trinidad and Tobago Dollar', - value: 'TTD', - }, - { - label: 'TRY - Turkish Lira', - value: 'TRY', - }, - { - label: 'UGX - Ugandan Shilling', - value: 'UGX', - }, - { - label: 'UAH - Ukrainian Hryvnia', - value: 'UAH', - }, - { - label: 'AED - United Arab Emirates Dirham', - value: 'AED', - }, - { - label: 'UYU - Uruguayan Peso', - value: 'UYU', - }, - { - label: 'UZS - Uzbekistani Som', - value: 'UZS', - }, - { - label: 'VUV - Vanuatu Vatu', - value: 'VUV', - }, - { - label: 'VND - Vietnamese Đồng', - value: 'VND', - }, - { - label: 'XOF - West African Cfa Franc', - value: 'XOF', - }, - { - label: 'YER - Yemeni Rial', - value: 'YER', - }, - { - label: 'ZMW - Zambian Kwacha', - value: 'ZMW', - }, - ], - timezones: [ - { - value: "-12.0", - label: "(GMT -12:00) Eniwetok, Kwajalein" - }, - { - value: "-11.0", - label: "(GMT -11:00) Midway Island, Samoa" - }, - { - value: "-10.0", - label: "(GMT -10:00) Hawaii" - }, - { - value: "-9.0", - label: "(GMT -9:00) Alaska" - }, - { - value: "-8.0", - label: "(GMT -8:00) Pacific Time (US & Canada)" - }, - { - value: "-7.0", - label: "(GMT -7:00) Mountain Time (US & Canada)" - }, - { - value: "-6.0", - label: "(GMT -6:00) Central Time (US & Canada), Mexico City" - }, - { - value: "-5.0", - label: "(GMT -5:00) Eastern Time (US & Canada), Bogota, Lima" - }, - { - value: "-4.0", - label: "(GMT -4:00) Atlantic Time (Canada), Caracas, La Paz" - }, - { - value: "-3.5", - label: "(GMT -3:30) Newfoundland" - }, - { - value: "-3.0", - label: "(GMT -3:00) Brazil, Buenos Aires, Georgetown" - }, - { - value: "-2.0", - label: "(GMT -2:00) Mid-Atlantic" - }, - { - value: "-1.0", - label: "(GMT -1:00) Azores, Cape Verde Islands" - }, - { - value: "0.0", - label: "(GMT) Western Europe Time, London, Lisbon, Casablanca" - }, - { - value: "1.0", - label: "(GMT +1:00) Brussels, Copenhagen, Madrid, Paris" - }, - { - value: "2.0", - label: "(GMT +2:00) Kaliningrad, South Africa" - }, - { - value: "3.0", - label: "(GMT +3:00) Baghdad, Riyadh, Moscow, St. Petersburg" - }, - { - value: "3.5", - label: "(GMT +3:30) Tehran" - }, - { - value: "4.0", - label: "(GMT +4:00) Abu Dhabi, Muscat, Baku, Tbilisi" - }, - { - value: "4.5", - label: "(GMT +4:30) Kabul" - }, - { - value: "5.0", - label: "(GMT +5:00) Ekaterinburg, Islamabad, Karachi, Tashkent" - }, - { - value: "5.5", - label: "(GMT +5:30) Bombay, Calcutta, Madras, New Delhi" - }, - { - value: "5.75", - label: "(GMT +5:45) Kathmandu" - }, - { - value: "6.0", - label: "(GMT +6:00) Almaty, Dhaka, Colombo" - }, - { - value: "7.0", - label: "(GMT +7:00) Bangkok, Hanoi, Jakarta" - }, - { - value: "8.0", - label: "(GMT +8:00) Beijing, Perth, Singapore, Hong Kong" - }, - { - value: "9.0", - label: "(GMT +9:00) Tokyo, Seoul, Osaka, Sapporo, Yakutsk" - }, - { - value: "9.5", - label: "(GMT +9:30) Adelaide, Darwin" - }, - { - value: "10.0", - label: "(GMT +10:00) Eastern Australia, Guam, Vladivostok" - }, - { - value: "11.0", - label: "(GMT +11:00) Magadan, Solomon Islands, New Caledonia" - }, - { - value: "12.0", - label: "(GMT +12:00) Auckland, Wellington, Fiji, Kamchatka" - } - ] + transactionColumns: [ + { + label: i18n.t('Note'), + field: 'note', + sortable: true, + }, + { + label: i18n.t('user'), + field: 'user_id', + sortable: true, + }, + { + label: i18n.t('Status'), + field: 'status', + sortable: true, + }, + { + label: i18n.t('Type'), + field: 'type', + sortable: true, + }, + { + label: i18n.t('Total'), + field: 'amount', + sortable: true, + }, + { + label: i18n.t('Payed At'), + field: 'created_at', + sortable: true, + }, + { + label: i18n.t('Service'), + field: 'driver', + sortable: true, + }, + { + label: i18n.t('Actions'), + field: 'actions', + sortable: false, + }, + ], + roles: [ + { + label: 'roles.admin', + value: 'admin', + }, + { + label: 'roles.user', + value: 'user', + }, + ], + subscriptionTypes: [ + { + label: 'Metered', + value: 'metered', + }, + { + label: 'Fixed', + value: 'fixed', + }, + ], + teamPermissions: { + 'can-edit': 'Can Edit', + 'can-view': 'Can View', + }, + countries: [ + { label: 'Czech Republic', value: 'CZ' }, + { label: 'Slovakia', value: 'SK' }, + { label: 'Afghanistan', value: 'AF' }, + { label: 'Åland Islands', value: 'AX' }, + { label: 'Albania', value: 'AL' }, + { label: 'Algeria', value: 'DZ' }, + { label: 'American Samoa', value: 'AS' }, + { label: 'AndorrA', value: 'AD' }, + { label: 'Angola', value: 'AO' }, + { label: 'Anguilla', value: 'AI' }, + { label: 'Antarctica', value: 'AQ' }, + { label: 'Antigua and Barbuda', value: 'AG' }, + { label: 'Argentina', value: 'AR' }, + { label: 'Armenia', value: 'AM' }, + { label: 'Aruba', value: 'AW' }, + { label: 'Australia', value: 'AU' }, + { label: 'Austria', value: 'AT' }, + { label: 'Azerbaijan', value: 'AZ' }, + { label: 'Bahamas', value: 'BS' }, + { label: 'Bahrain', value: 'BH' }, + { label: 'Bangladesh', value: 'BD' }, + { label: 'Barbados', value: 'BB' }, + { label: 'Belarus', value: 'BY' }, + { label: 'Belgium', value: 'BE' }, + { label: 'Belize', value: 'BZ' }, + { label: 'Benin', value: 'BJ' }, + { label: 'Bermuda', value: 'BM' }, + { label: 'Bhutan', value: 'BT' }, + { label: 'Bolivia', value: 'BO' }, + { label: 'Bosnia and Herzegovina', value: 'BA' }, + { label: 'Botswana', value: 'BW' }, + { label: 'Bouvet Island', value: 'BV' }, + { label: 'Brazil', value: 'BR' }, + { label: 'British Indian Ocean Territory', value: 'IO' }, + { label: 'Brunei Darussalam', value: 'BN' }, + { label: 'Bulgaria', value: 'BG' }, + { label: 'Burkina Faso', value: 'BF' }, + { label: 'Burundi', value: 'BI' }, + { label: 'Cambodia', value: 'KH' }, + { label: 'Cameroon', value: 'CM' }, + { label: 'Canada', value: 'CA' }, + { label: 'Cape Verde', value: 'CV' }, + { label: 'Cayman Islands', value: 'KY' }, + { label: 'Central African Republic', value: 'CF' }, + { label: 'Chad', value: 'TD' }, + { label: 'Chile', value: 'CL' }, + { label: 'China', value: 'CN' }, + { label: 'Christmas Island', value: 'CX' }, + { label: 'Cocos (Keeling) Islands', value: 'CC' }, + { label: 'Colombia', value: 'CO' }, + { label: 'Comoros', value: 'KM' }, + { label: 'Congo', value: 'CG' }, + { label: 'Congo, The Democratic Republic of the', value: 'CD' }, + { label: 'Cook Islands', value: 'CK' }, + { label: 'Costa Rica', value: 'CR' }, + { label: "Cote D'Ivoire", value: 'CI' }, + { label: 'Croatia', value: 'HR' }, + { label: 'Cuba', value: 'CU' }, + { label: 'Cyprus', value: 'CY' }, + { label: 'Denmark', value: 'DK' }, + { label: 'Djibouti', value: 'DJ' }, + { label: 'Dominica', value: 'DM' }, + { label: 'Dominican Republic', value: 'DO' }, + { label: 'Ecuador', value: 'EC' }, + { label: 'Egypt', value: 'EG' }, + { label: 'El Salvador', value: 'SV' }, + { label: 'Equatorial Guinea', value: 'GQ' }, + { label: 'Eritrea', value: 'ER' }, + { label: 'Estonia', value: 'EE' }, + { label: 'Ethiopia', value: 'ET' }, + { label: 'Falkland Islands (Malvinas)', value: 'FK' }, + { label: 'Faroe Islands', value: 'FO' }, + { label: 'Fiji', value: 'FJ' }, + { label: 'Finland', value: 'FI' }, + { label: 'France', value: 'FR' }, + { label: 'French Guiana', value: 'GF' }, + { label: 'French Polynesia', value: 'PF' }, + { label: 'French Southern Territories', value: 'TF' }, + { label: 'Gabon', value: 'GA' }, + { label: 'Gambia', value: 'GM' }, + { label: 'Georgia', value: 'GE' }, + { label: 'Germany', value: 'DE' }, + { label: 'Ghana', value: 'GH' }, + { label: 'Gibraltar', value: 'GI' }, + { label: 'Greece', value: 'GR' }, + { label: 'Greenland', value: 'GL' }, + { label: 'Grenada', value: 'GD' }, + { label: 'Guadeloupe', value: 'GP' }, + { label: 'Guam', value: 'GU' }, + { label: 'Guatemala', value: 'GT' }, + { label: 'Guernsey', value: 'GG' }, + { label: 'Guinea', value: 'GN' }, + { label: 'Guinea-Bissau', value: 'GW' }, + { label: 'Guyana', value: 'GY' }, + { label: 'Haiti', value: 'HT' }, + { label: 'Heard Island and Mcdonald Islands', value: 'HM' }, + { label: 'Holy See (Vatican City State)', value: 'VA' }, + { label: 'Honduras', value: 'HN' }, + { label: 'Hong Kong', value: 'HK' }, + { label: 'Hungary', value: 'HU' }, + { label: 'Iceland', value: 'IS' }, + { label: 'India', value: 'IN' }, + { label: 'Indonesia', value: 'ID' }, + { label: 'Iran, Islamic Republic Of', value: 'IR' }, + { label: 'Iraq', value: 'IQ' }, + { label: 'Ireland', value: 'IE' }, + { label: 'Isle of Man', value: 'IM' }, + { label: 'Israel', value: 'IL' }, + { label: 'Italy', value: 'IT' }, + { label: 'Jamaica', value: 'JM' }, + { label: 'Japan', value: 'JP' }, + { label: 'Jersey', value: 'JE' }, + { label: 'Jordan', value: 'JO' }, + { label: 'Kazakhstan', value: 'KZ' }, + { label: 'Kenya', value: 'KE' }, + { label: 'Kiribati', value: 'KI' }, + { label: "Korea, Democratic People'S Republic of", value: 'KP' }, + { label: 'Korea, Republic of', value: 'KR' }, + { label: 'Kuwait', value: 'KW' }, + { label: 'Kyrgyzstan', value: 'KG' }, + { label: "Lao People'S Democratic Republic", value: 'LA' }, + { label: 'Latvia', value: 'LV' }, + { label: 'Lebanon', value: 'LB' }, + { label: 'Lesotho', value: 'LS' }, + { label: 'Liberia', value: 'LR' }, + { label: 'Libyan Arab Jamahiriya', value: 'LY' }, + { label: 'Liechtenstein', value: 'LI' }, + { label: 'Lithuania', value: 'LT' }, + { label: 'Luxembourg', value: 'LU' }, + { label: 'Macao', value: 'MO' }, + { label: 'Macedonia, The Former Yugoslav Republic of', value: 'MK' }, + { label: 'Madagascar', value: 'MG' }, + { label: 'Malawi', value: 'MW' }, + { label: 'Malaysia', value: 'MY' }, + { label: 'Maldives', value: 'MV' }, + { label: 'Mali', value: 'ML' }, + { label: 'Malta', value: 'MT' }, + { label: 'Marshall Islands', value: 'MH' }, + { label: 'Martinique', value: 'MQ' }, + { label: 'Mauritania', value: 'MR' }, + { label: 'Mauritius', value: 'MU' }, + { label: 'Mayotte', value: 'YT' }, + { label: 'Mexico', value: 'MX' }, + { label: 'Micronesia, Federated States of', value: 'FM' }, + { label: 'Moldova, Republic of', value: 'MD' }, + { label: 'Monaco', value: 'MC' }, + { label: 'Mongolia', value: 'MN' }, + { label: 'Montserrat', value: 'MS' }, + { label: 'Morocco', value: 'MA' }, + { label: 'Mozambique', value: 'MZ' }, + { label: 'Myanmar', value: 'MM' }, + { label: 'Namibia', value: 'NA' }, + { label: 'Nauru', value: 'NR' }, + { label: 'Nepal', value: 'NP' }, + { label: 'Netherlands', value: 'NL' }, + { label: 'Netherlands Antilles', value: 'AN' }, + { label: 'New Caledonia', value: 'NC' }, + { label: 'New Zealand', value: 'NZ' }, + { label: 'Nicaragua', value: 'NI' }, + { label: 'Niger', value: 'NE' }, + { label: 'Nigeria', value: 'NG' }, + { label: 'Niue', value: 'NU' }, + { label: 'Norfolk Island', value: 'NF' }, + { label: 'Northern Mariana Islands', value: 'MP' }, + { label: 'Norway', value: 'NO' }, + { label: 'Oman', value: 'OM' }, + { label: 'Pakistan', value: 'PK' }, + { label: 'Palau', value: 'PW' }, + { label: 'Palestinian Territory, Occupied', value: 'PS' }, + { label: 'Panama', value: 'PA' }, + { label: 'Papua New Guinea', value: 'PG' }, + { label: 'Paraguay', value: 'PY' }, + { label: 'Peru', value: 'PE' }, + { label: 'Philippines', value: 'PH' }, + { label: 'Pitcairn', value: 'PN' }, + { label: 'Poland', value: 'PL' }, + { label: 'Portugal', value: 'PT' }, + { label: 'Puerto Rico', value: 'PR' }, + { label: 'Qatar', value: 'QA' }, + { label: 'Reunion', value: 'RE' }, + { label: 'Romania', value: 'RO' }, + { label: 'Russian Federation', value: 'RU' }, + { label: 'RWANDA', value: 'RW' }, + { label: 'Saint Helena', value: 'SH' }, + { label: 'Saint Kitts and Nevis', value: 'KN' }, + { label: 'Saint Lucia', value: 'LC' }, + { label: 'Saint Pierre and Miquelon', value: 'PM' }, + { label: 'Saint Vincent and the Grenadines', value: 'VC' }, + { label: 'Samoa', value: 'WS' }, + { label: 'San Marino', value: 'SM' }, + { label: 'Sao Tome and Principe', value: 'ST' }, + { label: 'Saudi Arabia', value: 'SA' }, + { label: 'Senegal', value: 'SN' }, + { label: 'Serbia and Montenegro', value: 'CS' }, + { label: 'Seychelles', value: 'SC' }, + { label: 'Sierra Leone', value: 'SL' }, + { label: 'Singapore', value: 'SG' }, + { label: 'Slovenia', value: 'SI' }, + { label: 'Solomon Islands', value: 'SB' }, + { label: 'Somalia', value: 'SO' }, + { label: 'South Africa', value: 'ZA' }, + { label: 'South Georgia and the South Sandwich Islands', value: 'GS' }, + { label: 'Spain', value: 'ES' }, + { label: 'Sri Lanka', value: 'LK' }, + { label: 'Sudan', value: 'SD' }, + { label: 'Suriname', value: 'SR' }, + { label: 'Svalbard and Jan Mayen', value: 'SJ' }, + { label: 'Swaziland', value: 'SZ' }, + { label: 'Sweden', value: 'SE' }, + { label: 'Switzerland', value: 'CH' }, + { label: 'Syrian Arab Republic', value: 'SY' }, + { label: 'Taiwan, Province of China', value: 'TW' }, + { label: 'Tajikistan', value: 'TJ' }, + { label: 'Tanzania, United Republic of', value: 'TZ' }, + { label: 'Thailand', value: 'TH' }, + { label: 'Timor-Leste', value: 'TL' }, + { label: 'Togo', value: 'TG' }, + { label: 'Tokelau', value: 'TK' }, + { label: 'Tonga', value: 'TO' }, + { label: 'Trinidad and Tobago', value: 'TT' }, + { label: 'Tunisia', value: 'TN' }, + { label: 'Turkey', value: 'TR' }, + { label: 'Turkmenistan', value: 'TM' }, + { label: 'Turks and Caicos Islands', value: 'TC' }, + { label: 'Tuvalu', value: 'TV' }, + { label: 'Uganda', value: 'UG' }, + { label: 'Ukraine', value: 'UA' }, + { label: 'United Arab Emirates', value: 'AE' }, + { label: 'United Kingdom', value: 'GB' }, + { label: 'United States', value: 'US' }, + { label: 'United States Minor Outlying Islands', value: 'UM' }, + { label: 'Uruguay', value: 'UY' }, + { label: 'Uzbekistan', value: 'UZ' }, + { label: 'Vanuatu', value: 'VU' }, + { label: 'Venezuela', value: 'VE' }, + { label: 'Viet Nam', value: 'VN' }, + { label: 'Virgin Islands, British', value: 'VG' }, + { label: 'Virgin Islands, U.S.', value: 'VI' }, + { label: 'Wallis and Futuna', value: 'WF' }, + { label: 'Western Sahara', value: 'EH' }, + { label: 'Yemen', value: 'YE' }, + { label: 'Zambia', value: 'ZM' }, + { label: 'Zimbabwe', value: 'ZW' }, + ], + expirationList: [ + { + label: ['shared_form.expiration_hour', { value: 1 }], + value: 1, + }, + { + label: ['shared_form.expiration_hour', { value: 2 }], + value: 2, + }, + { + label: ['shared_form.expiration_hour', { value: 6 }], + value: 6, + }, + { + label: ['shared_form.expiration_hour', { value: 12 }], + value: 12, + }, + { + label: ['shared_form.expiration_day', { value: 1 }], + value: 24, + }, + { + label: ['shared_form.expiration_day', { value: 2 }], + value: 48, + }, + { + label: ['shared_form.expiration_day', { value: 7 }], + value: 168, + }, + ], + intervalList: [ + { + label: 'Monthly', + value: 'month', + }, + { + label: 'Annually', + value: 'year', + }, + ], + currencyList: [ + { + label: 'USD - United States Dollar', + value: 'USD', + }, + { + label: 'EUR - Euro', + value: 'EUR', + }, + { + label: 'GBP - British Pound', + value: 'GBP', + }, + { + label: 'AFN - Afghan Afghani', + value: 'AFN', + }, + { + label: 'ALL - Albanian Lek', + value: 'ALL', + }, + { + label: 'DZD - Algerian Dinar', + value: 'DZD', + }, + { + label: 'AOA - Angolan Kwanza', + value: 'AOA', + }, + { + label: 'ARS - Argentine Peso', + value: 'ARS', + }, + { + label: 'AMD - Armenian Dram', + value: 'AMD', + }, + { + label: 'AWG - Aruban Florin', + value: 'AWG', + }, + { + label: 'AUD - Australian Dollar', + value: 'AUD', + }, + { + label: 'AZN - Azerbaijani Manat', + value: 'AZN', + }, + { + label: 'BDT - Bangladeshi Taka', + value: 'BDT', + }, + { + label: 'BBD - Barbadian Dollar', + value: 'BBD', + }, + { + label: 'BZD - Belize Dollar', + value: 'BZD', + }, + { + label: 'BMD - Bermudian Dollar', + value: 'BMD', + }, + { + label: 'BOB - Bolivian Boliviano', + value: 'BOB', + }, + { + label: 'BAM - Bosnia & Herzegovina Convertible Mark', + value: 'BAM', + }, + { + label: 'BWP - Botswana Pula', + value: 'BWP', + }, + { + label: 'BRL - Brazilian Real', + value: 'BRL', + }, + { + label: 'BND - Brunei Dollar', + value: 'BND', + }, + { + label: 'BGN - Bulgarian Lev', + value: 'BGN', + }, + { + label: 'BIF - Burundian Franc', + value: 'BIF', + }, + { + label: 'KHR - Cambodian Riel', + value: 'KHR', + }, + { + label: 'CAD - Canadian Dollar', + value: 'CAD', + }, + { + label: 'CVE - Cape Verdean Escudo', + value: 'CVE', + }, + { + label: 'KYD - Cayman Islands Dollar', + value: 'KYD', + }, + { + label: 'XAF - Central African Cfa Franc', + value: 'XAF', + }, + { + label: 'XPF - Cfp Franc', + value: 'XPF', + }, + { + label: 'CLP - Chilean Peso', + value: 'CLP', + }, + { + label: 'CNY - Chinese Renminbi Yuan', + value: 'CNY', + }, + { + label: 'COP - Colombian Peso', + value: 'COP', + }, + { + label: 'KMF - Comorian Franc', + value: 'KMF', + }, + { + label: 'CDF - Congolese Franc', + value: 'CDF', + }, + { + label: 'CRC - Costa Rican Colón', + value: 'CRC', + }, + { + label: 'HRK - Croatian Kuna', + value: 'HRK', + }, + { + label: 'CZK - Czech Koruna', + value: 'CZK', + }, + { + label: 'DKK - Danish Krone', + value: 'DKK', + }, + { + label: 'DJF - Djiboutian Franc', + value: 'DJF', + }, + { + label: 'DOP - Dominican Peso', + value: 'DOP', + }, + { + label: 'XCD - East Caribbean Dollar', + value: 'XCD', + }, + { + label: 'EGP - Egyptian Pound', + value: 'EGP', + }, + { + label: 'ETB - Ethiopian Birr', + value: 'ETB', + }, + { + label: 'FKP - Falkland Islands Pound', + value: 'FKP', + }, + { + label: 'FJD - Fijian Dollar', + value: 'FJD', + }, + { + label: 'GMD - Gambian Dalasi', + value: 'GMD', + }, + { + label: 'GEL - Georgian Lari', + value: 'GEL', + }, + { + label: 'GIP - Gibraltar Pound', + value: 'GIP', + }, + { + label: 'GTQ - Guatemalan Quetzal', + value: 'GTQ', + }, + { + label: 'GNF - Guinean Franc', + value: 'GNF', + }, + { + label: 'GYD - Guyanese Dollar', + value: 'GYD', + }, + { + label: 'HTG - Haitian Gourde', + value: 'HTG', + }, + { + label: 'HNL - Honduran Lempira', + value: 'HNL', + }, + { + label: 'HKD - Hong Kong Dollar', + value: 'HKD', + }, + { + label: 'HUF - Hungarian Forint', + value: 'HUF', + }, + { + label: 'ISK - Icelandic Króna', + value: 'ISK', + }, + { + label: 'INR - Indian Rupee', + value: 'INR', + }, + { + label: 'IDR - Indonesian Rupiah', + value: 'IDR', + }, + { + label: 'ILS - Israeli New Sheqel', + value: 'ILS', + }, + { + label: 'JMD - Jamaican Dollar', + value: 'JMD', + }, + { + label: 'JPY - Japanese Yen', + value: 'JPY', + }, + { + label: 'KZT - Kazakhstani Tenge', + value: 'KZT', + }, + { + label: 'KES - Kenyan Shilling', + value: 'KES', + }, + { + label: 'KGS - Kyrgyzstani Som', + value: 'KGS', + }, + { + label: 'LAK - Lao Kip', + value: 'LAK', + }, + { + label: 'LBP - Lebanese Pound', + value: 'LBP', + }, + { + label: 'LSL - Lesotho Loti', + value: 'LSL', + }, + { + label: 'LRD - Liberian Dollar', + value: 'LRD', + }, + { + label: 'MOP - Macanese Pataca', + value: 'MOP', + }, + { + label: 'MKD - Macedonian Denar', + value: 'MKD', + }, + { + label: 'MGA - Malagasy Ariary', + value: 'MGA', + }, + { + label: 'MWK - Malawian Kwacha', + value: 'MWK', + }, + { + label: 'MYR - Malaysian Ringgit', + value: 'MYR', + }, + { + label: 'MVR - Maldivian Rufiyaa', + value: 'MVR', + }, + { + label: 'MRO - Mauritanian Ouguiya', + value: 'MRO', + }, + { + label: 'MUR - Mauritian Rupee', + value: 'MUR', + }, + { + label: 'MXN - Mexican Peso', + value: 'MXN', + }, + { + label: 'MDL - Moldovan Leu', + value: 'MDL', + }, + { + label: 'MNT - Mongolian Tögrög', + value: 'MNT', + }, + { + label: 'MAD - Moroccan Dirham', + value: 'MAD', + }, + { + label: 'MZN - Mozambican Metical', + value: 'MZN', + }, + { + label: 'MMK - Myanmar Kyat', + value: 'MMK', + }, + { + label: 'NAD - Namibian Dollar', + value: 'NAD', + }, + { + label: 'NPR - Nepalese Rupee', + value: 'NPR', + }, + { + label: 'ANG - Netherlands Antillean Gulden', + value: 'ANG', + }, + { + label: 'TWD - New Taiwan Dollar', + value: 'TWD', + }, + { + label: 'NZD - New Zealand Dollar', + value: 'NZD', + }, + { + label: 'NIO - Nicaraguan Córdoba', + value: 'NIO', + }, + { + label: 'NGN - Nigerian Naira', + value: 'NGN', + }, + { + label: 'NOK - Norwegian Krone', + value: 'NOK', + }, + { + label: 'PKR - Pakistani Rupee', + value: 'PKR', + }, + { + label: 'PAB - Panamanian Balboa', + value: 'PAB', + }, + { + label: 'PGK - Papua New Guinean Kina', + value: 'PGK', + }, + { + label: 'PYG - Paraguayan Guaraní', + value: 'PYG', + }, + { + label: 'PEN - Peruvian Nuevo Sol', + value: 'PEN', + }, + { + label: 'PHP - Philippine Peso', + value: 'PHP', + }, + { + label: 'PLN - Polish Złoty', + value: 'PLN', + }, + { + label: 'QAR - Qatari Riyal', + value: 'QAR', + }, + { + label: 'RON - Romanian Leu', + value: 'RON', + }, + { + label: 'RUB - Russian Ruble', + value: 'RUB', + }, + { + label: 'RWF - Rwandan Franc', + value: 'RWF', + }, + { + label: 'STD - São Tomé and Príncipe Dobra', + value: 'STD', + }, + { + label: 'SHP - Saint Helenian Pound', + value: 'SHP', + }, + { + label: 'SVC - Salvadoran Colón', + value: 'SVC', + }, + { + label: 'WST - Samoan Tala', + value: 'WST', + }, + { + label: 'SAR - Saudi Riyal', + value: 'SAR', + }, + { + label: 'RSD - Serbian Dinar', + value: 'RSD', + }, + { + label: 'SCR - Seychellois Rupee', + value: 'SCR', + }, + { + label: 'SLL - Sierra Leonean Leone', + value: 'SLL', + }, + { + label: 'SGD - Singapore Dollar', + value: 'SGD', + }, + { + label: 'SBD - Solomon Islands Dollar', + value: 'SBD', + }, + { + label: 'SOS - Somali Shilling', + value: 'SOS', + }, + { + label: 'ZAR - South African Rand', + value: 'ZAR', + }, + { + label: 'KRW - South Korean Won', + value: 'KRW', + }, + { + label: 'LKR - Sri Lankan Rupee', + value: 'LKR', + }, + { + label: 'SRD - Surinamese Dollar', + value: 'SRD', + }, + { + label: 'SZL - Swazi Lilangeni', + value: 'SZL', + }, + { + label: 'SEK - Swedish Krona', + value: 'SEK', + }, + { + label: 'CHF - Swiss Franc', + value: 'CHF', + }, + { + label: 'TJS - Tajikistani Somoni', + value: 'TJS', + }, + { + label: 'TZS - Tanzanian Shilling', + value: 'TZS', + }, + { + label: 'THB - Thai Baht', + value: 'THB', + }, + { + label: 'TOP - Tongan Paʻanga', + value: 'TOP', + }, + { + label: 'TTD - Trinidad and Tobago Dollar', + value: 'TTD', + }, + { + label: 'TRY - Turkish Lira', + value: 'TRY', + }, + { + label: 'UGX - Ugandan Shilling', + value: 'UGX', + }, + { + label: 'UAH - Ukrainian Hryvnia', + value: 'UAH', + }, + { + label: 'AED - United Arab Emirates Dirham', + value: 'AED', + }, + { + label: 'UYU - Uruguayan Peso', + value: 'UYU', + }, + { + label: 'UZS - Uzbekistani Som', + value: 'UZS', + }, + { + label: 'VUV - Vanuatu Vatu', + value: 'VUV', + }, + { + label: 'VND - Vietnamese Đồng', + value: 'VND', + }, + { + label: 'XOF - West African Cfa Franc', + value: 'XOF', + }, + { + label: 'YER - Yemeni Rial', + value: 'YER', + }, + { + label: 'ZMW - Zambian Kwacha', + value: 'ZMW', + }, + ], + timezones: [ + { + value: '-12.0', + label: '(GMT -12:00) Eniwetok, Kwajalein', + }, + { + value: '-11.0', + label: '(GMT -11:00) Midway Island, Samoa', + }, + { + value: '-10.0', + label: '(GMT -10:00) Hawaii', + }, + { + value: '-9.0', + label: '(GMT -9:00) Alaska', + }, + { + value: '-8.0', + label: '(GMT -8:00) Pacific Time (US & Canada)', + }, + { + value: '-7.0', + label: '(GMT -7:00) Mountain Time (US & Canada)', + }, + { + value: '-6.0', + label: '(GMT -6:00) Central Time (US & Canada), Mexico City', + }, + { + value: '-5.0', + label: '(GMT -5:00) Eastern Time (US & Canada), Bogota, Lima', + }, + { + value: '-4.0', + label: '(GMT -4:00) Atlantic Time (Canada), Caracas, La Paz', + }, + { + value: '-3.5', + label: '(GMT -3:30) Newfoundland', + }, + { + value: '-3.0', + label: '(GMT -3:00) Brazil, Buenos Aires, Georgetown', + }, + { + value: '-2.0', + label: '(GMT -2:00) Mid-Atlantic', + }, + { + value: '-1.0', + label: '(GMT -1:00) Azores, Cape Verde Islands', + }, + { + value: '0.0', + label: '(GMT) Western Europe Time, London, Lisbon, Casablanca', + }, + { + value: '1.0', + label: '(GMT +1:00) Brussels, Copenhagen, Madrid, Paris', + }, + { + value: '2.0', + label: '(GMT +2:00) Kaliningrad, South Africa', + }, + { + value: '3.0', + label: '(GMT +3:00) Baghdad, Riyadh, Moscow, St. Petersburg', + }, + { + value: '3.5', + label: '(GMT +3:30) Tehran', + }, + { + value: '4.0', + label: '(GMT +4:00) Abu Dhabi, Muscat, Baku, Tbilisi', + }, + { + value: '4.5', + label: '(GMT +4:30) Kabul', + }, + { + value: '5.0', + label: '(GMT +5:00) Ekaterinburg, Islamabad, Karachi, Tashkent', + }, + { + value: '5.5', + label: '(GMT +5:30) Bombay, Calcutta, Madras, New Delhi', + }, + { + value: '5.75', + label: '(GMT +5:45) Kathmandu', + }, + { + value: '6.0', + label: '(GMT +6:00) Almaty, Dhaka, Colombo', + }, + { + value: '7.0', + label: '(GMT +7:00) Bangkok, Hanoi, Jakarta', + }, + { + value: '8.0', + label: '(GMT +8:00) Beijing, Perth, Singapore, Hong Kong', + }, + { + value: '9.0', + label: '(GMT +9:00) Tokyo, Seoul, Osaka, Sapporo, Yakutsk', + }, + { + value: '9.5', + label: '(GMT +9:30) Adelaide, Darwin', + }, + { + value: '10.0', + label: '(GMT +10:00) Eastern Australia, Guam, Vladivostok', + }, + { + value: '11.0', + label: '(GMT +11:00) Magadan, Solomon Islands, New Caledonia', + }, + { + value: '12.0', + label: '(GMT +12:00) Auckland, Wellington, Fiji, Kamchatka', + }, + ], } const getters = { - transactionColumns: state => state.transactionColumns, - subscriptionTypes: state => state.subscriptionTypes, - teamPermissions: state => state.teamPermissions, - expirationList: state => state.expirationList, - currencyList: state => state.currencyList, - intervalList: state => state.intervalList, - timezones: state => state.timezones, - countries: state => state.countries, - roles: state => state.roles, + transactionColumns: (state) => state.transactionColumns, + subscriptionTypes: (state) => state.subscriptionTypes, + teamPermissions: (state) => state.teamPermissions, + expirationList: (state) => state.expirationList, + currencyList: (state) => state.currencyList, + intervalList: (state) => state.intervalList, + timezones: (state) => state.timezones, + countries: (state) => state.countries, + roles: (state) => state.roles, } export default { - state: defaultState, - getters, -} \ No newline at end of file + state: defaultState, + getters, +} diff --git a/resources/js/store/modules/payments.js b/resources/js/store/modules/payments.js index 7d734c33..0c25c4c9 100644 --- a/resources/js/store/modules/payments.js +++ b/resources/js/store/modules/payments.js @@ -1,33 +1,32 @@ -import {events} from "../../bus"; +import { events } from '../../bus' const defaultState = { - singleChargeAmount: undefined, + singleChargeAmount: undefined, } const actions = { - callSingleChargeProcess: ({commit}, amount) => { + callSingleChargeProcess: ({ commit }, amount) => { + // Open popup with payment methods + events.$emit('popup:open', { name: 'select-payment-method' }) - // Open popup with payment methods - events.$emit('popup:open', {name: 'select-payment-method'}) - - // Store charge amount - commit('SET_SINGLE_CHARGE_AMOUNT', amount) - }, + // Store charge amount + commit('SET_SINGLE_CHARGE_AMOUNT', amount) + }, } const mutations = { - SET_SINGLE_CHARGE_AMOUNT(state, amount) { - state.singleChargeAmount = amount - }, + SET_SINGLE_CHARGE_AMOUNT(state, amount) { + state.singleChargeAmount = amount + }, } const getters = { - singleChargeAmount: state => state.singleChargeAmount, + singleChargeAmount: (state) => state.singleChargeAmount, } export default { - state: defaultState, - getters, - actions, - mutations -} \ No newline at end of file + state: defaultState, + getters, + actions, + mutations, +} diff --git a/resources/js/store/modules/sharing.js b/resources/js/store/modules/sharing.js index 99635db8..b1ba1094 100644 --- a/resources/js/store/modules/sharing.js +++ b/resources/js/store/modules/sharing.js @@ -1,7 +1,7 @@ -import {events} from "../../bus"; -import router from "../../router" +import { events } from '../../bus' +import router from '../../router' import axios from 'axios' -import Vue from "vue"; +import Vue from 'vue' const defaultState = { permissionOptions: [ @@ -20,17 +20,20 @@ const defaultState = { sharedFile: undefined, } const actions = { - getSharedFolder: ({commit, getters}, id) => { - commit('LOADING_STATE', {loading: true, data: []}) + getSharedFolder: ({ commit, getters }, id) => { + commit('LOADING_STATE', { loading: true, data: [] }) return new Promise((resolve, reject) => { axios .get(`/api/browse/folders/${id}/${router.currentRoute.params.token}${getters.sorting.URI}`) - .then(response => { + .then((response) => { let folders = response.data.folders.data let files = response.data.files.data - commit('LOADING_STATE', {loading: false, data: folders.concat(files)}) + commit('LOADING_STATE', { + loading: false, + data: folders.concat(files), + }) commit('SET_CURRENT_FOLDER', response.data.root) events.$emit('scrollTop') @@ -44,57 +47,53 @@ const actions = { }) }) }, - getSingleFile: ({commit}) => { - axios.get(`/api/browse/file/${router.currentRoute.params.token}`) - .then(response => { - commit('STORE_SHARED_FILE', response.data) - }) + getSingleFile: ({ commit }) => { + axios.get(`/api/browse/file/${router.currentRoute.params.token}`).then((response) => { + commit('STORE_SHARED_FILE', response.data) + }) }, - getShareDetail: ({commit, state}, token) => { + getShareDetail: ({ commit, state }, token) => { return new Promise((resolve, reject) => { axios .get(`/api/browse/share/${token}`) - .then(response => { + .then((response) => { resolve(response) // Commit shared item options commit('SET_SHARED_DETAIL', response.data) commit('SET_PERMISSION', response.data.data.attributes.permission) }) - .catch(error => { + .catch((error) => { reject(error) if (error.response.status === 404) { - router.push({name: 'NotFound'}) + router.push({ name: 'NotFound' }) } }) }) }, - shareCancel: ({commit, getters}, singleItem) => { + shareCancel: ({ commit, getters }, singleItem) => { return new Promise((resolve, reject) => { - let tokens = [] let items = [singleItem] - if(!singleItem) { + if (!singleItem) { items = getters.clipboard } - items.forEach(item => { + items.forEach((item) => { tokens.push(item.data.relationships.shared.data.attributes.token) }) axios .post('/api/share/revoke', { _method: 'delete', - tokens: tokens + tokens: tokens, }) .then(() => { - - items.forEach(item => { - + items.forEach((item) => { // Remove item from file browser - if ( getters.currentFolder && Vue.prototype.$isThisRoute(router.currentRoute, ['MySharedItems']) ) { + if (getters.currentFolder && Vue.prototype.$isThisRoute(router.currentRoute, ['MySharedItems'])) { commit('REMOVE_ITEM', item.data.id) } @@ -103,7 +102,6 @@ const actions = { commit('CLIPBOARD_CLEAR') }) resolve(true) - }) .catch((error) => { Vue.prototype.$isSomethingWrong() @@ -119,17 +117,17 @@ const mutations = { }, STORE_SHARED_FILE(state, data) { state.sharedFile = data - } + }, } const getters = { - permissionOptions: state => state.permissionOptions, - sharedDetail: state => state.sharedDetail, - sharedFile: state => state.sharedFile, + permissionOptions: (state) => state.permissionOptions, + sharedDetail: (state) => state.sharedDetail, + sharedFile: (state) => state.sharedFile, } export default { state: defaultState, getters, actions, - mutations + mutations, } diff --git a/resources/js/store/modules/teams.js b/resources/js/store/modules/teams.js index 493fcc17..bf823b59 100644 --- a/resources/js/store/modules/teams.js +++ b/resources/js/store/modules/teams.js @@ -1,125 +1,123 @@ -import router from "../../router"; -import {events} from "../../bus"; -import i18n from "../../i18n"; -import axios from "axios"; -import Vue from "vue"; +import router from '../../router' +import { events } from '../../bus' +import i18n from '../../i18n' +import axios from 'axios' +import Vue from 'vue' const defaultState = { - currentTeamFolder: undefined, + currentTeamFolder: undefined, } const actions = { - getTeamFolder: ({commit, getters}, id) => { - commit('LOADING_STATE', {loading: true, data: []}) + getTeamFolder: ({ commit, getters }, id) => { + commit('LOADING_STATE', { loading: true, data: [] }) - if (typeof id === 'undefined') { - commit('SET_CURRENT_TEAM_FOLDER', null) - } + if (typeof id === 'undefined') { + commit('SET_CURRENT_TEAM_FOLDER', null) + } - axios - .get(`${getters.api}/teams/folders/${id}/${getters.sorting.URI}`) - .then(response => { - let folders = response.data.folders.data - let files = response.data.files.data + axios + .get(`${getters.api}/teams/folders/${id}/${getters.sorting.URI}`) + .then((response) => { + let folders = response.data.folders.data + let files = response.data.files.data - commit('LOADING_STATE', {loading: false, data: folders.concat(files)}) - commit('SET_CURRENT_FOLDER', response.data.root) + commit('LOADING_STATE', { + loading: false, + data: folders.concat(files), + }) + commit('SET_CURRENT_FOLDER', response.data.root) - if (! getters.currentTeamFolder || getters.currentTeamFolder.data.id !== response.data.teamFolder.data.id) { - commit('SET_CURRENT_TEAM_FOLDER', response.data.teamFolder) - } + if (!getters.currentTeamFolder || getters.currentTeamFolder.data.id !== response.data.teamFolder.data.id) { + commit('SET_CURRENT_TEAM_FOLDER', response.data.teamFolder) + } - events.$emit('scrollTop') - }) - .catch(error => { + events.$emit('scrollTop') + }) + .catch((error) => { + // Redirect if unauthenticated + if ([401, 403].includes(error.response.status)) { + commit('SET_AUTHORIZED', false) + router.push({ name: 'SignIn' }) + } else { + // Show error message + events.$emit('alert:open', { + title: i18n.t('popup_error.title'), + message: i18n.t('popup_error.message'), + }) + } + }) + }, + getSharedWithMeFolder: ({ commit, getters }, id) => { + commit('LOADING_STATE', { loading: true, data: [] }) - // Redirect if unauthenticated - if ([401, 403].includes(error.response.status)) { + if (typeof id === 'undefined') { + commit('SET_CURRENT_TEAM_FOLDER', null) + } - commit('SET_AUTHORIZED', false) - router.push({name: 'SignIn'}) + axios + .get(`${getters.api}/teams/shared-with-me/${id}/${getters.sorting.URI}`) + .then((response) => { + let folders = response.data.folders.data + let files = response.data.files.data - } else { + commit('LOADING_STATE', { + loading: false, + data: folders.concat(files), + }) + commit('SET_CURRENT_FOLDER', response.data.root) - // Show error message - events.$emit('alert:open', { - title: i18n.t('popup_error.title'), - message: i18n.t('popup_error.message'), - }) - } - }) - }, - getSharedWithMeFolder: ({commit, getters}, id) => { - commit('LOADING_STATE', {loading: true, data: []}) + if (!getters.currentTeamFolder || getters.currentTeamFolder.data.id !== response.data.teamFolder.data.id) { + commit('SET_CURRENT_TEAM_FOLDER', response.data.teamFolder) + } - if (typeof id === 'undefined') { - commit('SET_CURRENT_TEAM_FOLDER', null) - } + events.$emit('scrollTop') + }) + .catch((error) => { + // Redirect if unauthenticated + if ([401, 403].includes(error.response.status)) { + commit('SET_AUTHORIZED', false) + router.push({ name: 'SignIn' }) + } else { + // Show error message + events.$emit('alert:open', { + title: i18n.t('popup_error.title'), + message: i18n.t('popup_error.message'), + }) + } + }) + }, + getTeamFolderTree: ({ commit, getters }) => { + return new Promise((resolve, reject) => { + axios + .get(`/api/teams/folders/${getters.currentTeamFolder.data.id}/tree${getters.sorting.URI}`) + .then((response) => { + resolve(response) - axios - .get(`${getters.api}/teams/shared-with-me/${id}/${getters.sorting.URI}`) - .then(response => { - let folders = response.data.folders.data - let files = response.data.files.data + commit('UPDATE_FOLDER_TREE', response.data) + }) + .catch((error) => { + reject(error) - commit('LOADING_STATE', {loading: false, data: folders.concat(files)}) - commit('SET_CURRENT_FOLDER', response.data.root) - - if (! getters.currentTeamFolder || getters.currentTeamFolder.data.id !== response.data.teamFolder.data.id) { - commit('SET_CURRENT_TEAM_FOLDER', response.data.teamFolder) - } - - events.$emit('scrollTop') - }) - .catch(error => { - - // Redirect if unauthenticated - if ([401, 403].includes(error.response.status)) { - - commit('SET_AUTHORIZED', false) - router.push({name: 'SignIn'}) - - } else { - - // Show error message - events.$emit('alert:open', { - title: i18n.t('popup_error.title'), - message: i18n.t('popup_error.message'), - }) - } - }) - }, - getTeamFolderTree: ({commit, getters}) => { - return new Promise((resolve, reject) => { - axios - .get(`/api/teams/folders/${getters.currentTeamFolder.data.id}/tree${getters.sorting.URI}`) - .then(response => { - resolve(response) - - commit('UPDATE_FOLDER_TREE', response.data) - }) - .catch((error) => { - reject(error) - - Vue.prototype.$isSomethingWrong() - }) - }) - }, + Vue.prototype.$isSomethingWrong() + }) + }) + }, } const mutations = { - SET_CURRENT_TEAM_FOLDER(state, payload) { - state.currentTeamFolder = payload - } + SET_CURRENT_TEAM_FOLDER(state, payload) { + state.currentTeamFolder = payload + }, } const getters = { - currentTeamFolder: state => state.currentTeamFolder, + currentTeamFolder: (state) => state.currentTeamFolder, } export default { - state: defaultState, - getters, - actions, - mutations -} \ No newline at end of file + state: defaultState, + getters, + actions, + mutations, +} diff --git a/resources/js/store/modules/userAuth.js b/resources/js/store/modules/userAuth.js index 6ecd4e5e..8e2da067 100644 --- a/resources/js/store/modules/userAuth.js +++ b/resources/js/store/modules/userAuth.js @@ -1,8 +1,8 @@ import axios from 'axios' -import router from "../../router"; +import router from '../../router' import Vue from 'vue' -import {events} from "../../bus"; -import i18n from "../../i18n"; +import { events } from '../../bus' +import i18n from '../../i18n' const defaultState = { permission: 'master', // master | editor | visitor @@ -10,8 +10,7 @@ const defaultState = { } const actions = { - getAppData: ({commit, getters}) => { - + getAppData: ({ commit, getters }) => { return new Promise((resolve, reject) => { axios .get(getters.api + '/user' + getters.sorting.URI) @@ -19,21 +18,18 @@ const actions = { resolve(response) commit('RETRIEVE_USER', response.data) - - }).catch((error) => { + }) + .catch((error) => { reject(error) // Redirect if unauthenticated if ([401, 403].includes(error.response.status)) { - commit('SET_AUTHORIZED', false) } - } - ) + }) }) }, - logOut: ({commit}) => { - + logOut: ({ commit }) => { let popup = setTimeout(() => { commit('PROCESSING_POPUP', { title: 'Logging Out', @@ -41,20 +37,18 @@ const actions = { }) }, 300) - axios - .post('/logout') - .then(() => { - clearTimeout(popup) - commit('DESTROY_DATA') - commit('SET_AUTHORIZED', false) + axios.post('/logout').then(() => { + clearTimeout(popup) + commit('DESTROY_DATA') + commit('SET_AUTHORIZED', false) - router.push({name: 'Homepage'}) - }) + router.push({ name: 'Homepage' }) + }) }, - socialiteRedirect: ({commit}, provider) => { + socialiteRedirect: ({ commit }, provider) => { axios .get(`/api/socialite/${provider}/redirect`) - .then(response => { + .then((response) => { if (response.data.url) { window.location.href = response.data.url } @@ -66,16 +60,13 @@ const actions = { let items = [folder] // If dont coming single folder get folders to add to favourites from clipboard - if (!folder) - items = context.getters.clipboard - - items.forEach(item => { + if (!folder) items = context.getters.clipboard + items.forEach((item) => { if (item.data.type === 'folder') { + if (context.getters.user.data.relationships.favourites.data.find((folder) => folder.id === item.data.id)) return - if (context.getters.user.data.relationships.favourites.data.find(folder => folder.id === item.data.id)) return - - addFavourites.push({id: item.data.id}) + addFavourites.push({ id: item.data.id }) } }) @@ -87,8 +78,8 @@ const actions = { let pushToFavorites = [] // Check is favorites already don't include some of pushed folders - items.map(item => { - if (!context.getters.user.data.relationships.favourites.data.find(folder => folder.data.id === item.id)) { + items.map((item) => { + if (!context.getters.user.data.relationships.favourites.data.find((folder) => folder.data.id === item.id)) { pushToFavorites.push(item) } }) @@ -98,20 +89,19 @@ const actions = { axios .post(context.getters.api + '/folders/favourites', { - folders: addFavourites + folders: addFavourites, }) .catch(() => { Vue.prototype.$isSomethingWrong() }) }, - removeFromFavourites: ({commit, getters, dispatch}, folder) => { - + removeFromFavourites: ({ commit, getters, dispatch }, folder) => { // Remove from storage commit('REMOVE_ITEM_FROM_FAVOURITES', folder) axios .post(getters.api + '/folders/favourites/' + folder.data.id, { - _method: 'delete' + _method: 'delete', }) .catch(() => { Vue.prototype.$isSomethingWrong() @@ -133,7 +123,7 @@ const mutations = { state.app = undefined }, ADD_TO_FAVOURITES(state, folder) { - folder.forEach(item => { + folder.forEach((item) => { state.user.data.relationships.favourites.data.push(item) }) }, @@ -147,26 +137,26 @@ const mutations = { state.user.data.relationships.settings.data.attributes.avatar.sm = avatar }, REMOVE_ITEM_FROM_FAVOURITES(state, item) { - state.user.data.relationships.favourites.data = state.user.data.relationships.favourites.data.filter(folder => folder.data.id !== item.data.id) + state.user.data.relationships.favourites.data = state.user.data.relationships.favourites.data.filter((folder) => folder.data.id !== item.data.id) }, UPDATE_NAME_IN_FAVOURITES(state, data) { - state.user.data.relationships.favourites.data.find(folder => { + state.user.data.relationships.favourites.data.find((folder) => { if (folder.id === data.id) { folder.name = data.name } }) - } + }, } const getters = { - isLimitedUser: state => state.user && state.user.data.relationships.failedPayments && state.user.data.relationships.failedPayments.data.length === 3, - permission: state => state.permission, - user: state => state.user, + isLimitedUser: (state) => state.user && state.user.data.relationships.failedPayments && state.user.data.relationships.failedPayments.data.length === 3, + permission: (state) => state.permission, + user: (state) => state.user, } export default { state: defaultState, getters, actions, - mutations + mutations, } diff --git a/resources/js/views/Admin.vue b/resources/js/views/Admin.vue index d36cc02f..c5a31099 100644 --- a/resources/js/views/Admin.vue +++ b/resources/js/views/Admin.vue @@ -1,8 +1,8 @@ diff --git a/resources/js/views/Admin/AppSettings/AppSettings.vue b/resources/js/views/Admin/AppSettings/AppSettings.vue index bb09bc3c..3c280890 100644 --- a/resources/js/views/Admin/AppSettings/AppSettings.vue +++ b/resources/js/views/Admin/AppSettings/AppSettings.vue @@ -1,52 +1,51 @@ diff --git a/resources/js/views/Admin/AppSettings/AppSettingsTabs/Appearance.vue b/resources/js/views/Admin/AppSettings/AppSettingsTabs/Appearance.vue index aa233fa8..94aa9d95 100644 --- a/resources/js/views/Admin/AppSettings/AppSettingsTabs/Appearance.vue +++ b/resources/js/views/Admin/AppSettings/AppSettingsTabs/Appearance.vue @@ -1,109 +1,126 @@ diff --git a/resources/js/views/Admin/AppSettings/AppSettingsTabs/Email.vue b/resources/js/views/Admin/AppSettings/AppSettingsTabs/Email.vue index fd9d2521..f8f0b09b 100644 --- a/resources/js/views/Admin/AppSettings/AppSettingsTabs/Email.vue +++ b/resources/js/views/Admin/AppSettings/AppSettingsTabs/Email.vue @@ -7,32 +7,62 @@ - + - + - + - + - + - + @@ -43,93 +73,90 @@ diff --git a/resources/js/views/Admin/AppSettings/AppSettingsTabs/Index.vue b/resources/js/views/Admin/AppSettings/AppSettingsTabs/Index.vue index 3fe9bbd5..6027490d 100644 --- a/resources/js/views/Admin/AppSettings/AppSettingsTabs/Index.vue +++ b/resources/js/views/Admin/AppSettings/AppSettingsTabs/Index.vue @@ -1,31 +1,40 @@ diff --git a/resources/js/views/Admin/AppSettings/AppSettingsTabs/Others.vue b/resources/js/views/Admin/AppSettings/AppSettingsTabs/Others.vue index 2fd33823..050a7d77 100644 --- a/resources/js/views/Admin/AppSettings/AppSettingsTabs/Others.vue +++ b/resources/js/views/Admin/AppSettings/AppSettingsTabs/Others.vue @@ -1,247 +1,291 @@ diff --git a/resources/js/views/Admin/Pages.vue b/resources/js/views/Admin/Pages.vue index 64d0a1b3..7d87b85a 100644 --- a/resources/js/views/Admin/Pages.vue +++ b/resources/js/views/Admin/Pages.vue @@ -1,93 +1,113 @@ diff --git a/resources/js/views/Admin/Pages/PageEdit.vue b/resources/js/views/Admin/Pages/PageEdit.vue index 5bedaf3d..418b5eb6 100644 --- a/resources/js/views/Admin/Pages/PageEdit.vue +++ b/resources/js/views/Admin/Pages/PageEdit.vue @@ -1,29 +1,34 @@ diff --git a/resources/js/views/Admin/PaymentSettings/PaymentSettings.vue b/resources/js/views/Admin/PaymentSettings/PaymentSettings.vue index a5c20e8b..0abfc04c 100644 --- a/resources/js/views/Admin/PaymentSettings/PaymentSettings.vue +++ b/resources/js/views/Admin/PaymentSettings/PaymentSettings.vue @@ -1,39 +1,39 @@ diff --git a/resources/js/views/Admin/PaymentSettings/PaymentSettingsTab/Billings.vue b/resources/js/views/Admin/PaymentSettings/PaymentSettingsTab/Billings.vue index 03d14fae..cde90536 100644 --- a/resources/js/views/Admin/PaymentSettings/PaymentSettingsTab/Billings.vue +++ b/resources/js/views/Admin/PaymentSettings/PaymentSettingsTab/Billings.vue @@ -1,114 +1,161 @@ diff --git a/resources/js/views/Admin/PaymentSettings/PaymentSettingsTab/Payments.vue b/resources/js/views/Admin/PaymentSettings/PaymentSettingsTab/Payments.vue index 128785e9..a7e07cbe 100644 --- a/resources/js/views/Admin/PaymentSettings/PaymentSettingsTab/Payments.vue +++ b/resources/js/views/Admin/PaymentSettings/PaymentSettingsTab/Payments.vue @@ -1,453 +1,562 @@ diff --git a/resources/js/views/Admin/Plans/Create/CreateMeteredPlan.vue b/resources/js/views/Admin/Plans/Create/CreateMeteredPlan.vue index bb67614b..72ebc2ea 100644 --- a/resources/js/views/Admin/Plans/Create/CreateMeteredPlan.vue +++ b/resources/js/views/Admin/Plans/Create/CreateMeteredPlan.vue @@ -1,243 +1,287 @@ diff --git a/resources/js/views/Admin/Plans/FixedPlan.vue b/resources/js/views/Admin/Plans/FixedPlan.vue index bf64cb19..8fb78684 100644 --- a/resources/js/views/Admin/Plans/FixedPlan.vue +++ b/resources/js/views/Admin/Plans/FixedPlan.vue @@ -1,20 +1,20 @@ diff --git a/resources/js/views/Admin/Plans/MeteredPlan.vue b/resources/js/views/Admin/Plans/MeteredPlan.vue index 1b42b5d3..18589bb2 100644 --- a/resources/js/views/Admin/Plans/MeteredPlan.vue +++ b/resources/js/views/Admin/Plans/MeteredPlan.vue @@ -1,21 +1,20 @@ diff --git a/resources/js/views/Admin/Plans/Tabs/PlanDelete.vue b/resources/js/views/Admin/Plans/Tabs/PlanDelete.vue index 316654fe..6be4df74 100644 --- a/resources/js/views/Admin/Plans/Tabs/PlanDelete.vue +++ b/resources/js/views/Admin/Plans/Tabs/PlanDelete.vue @@ -1,86 +1,98 @@ diff --git a/resources/js/views/Admin/Plans/Tabs/PlanFixedSettings.vue b/resources/js/views/Admin/Plans/Tabs/PlanFixedSettings.vue index 2506b5ef..7e8f0385 100644 --- a/resources/js/views/Admin/Plans/Tabs/PlanFixedSettings.vue +++ b/resources/js/views/Admin/Plans/Tabs/PlanFixedSettings.vue @@ -1,75 +1,107 @@ diff --git a/resources/js/views/Admin/Plans/Tabs/PlanMeteredSettings.vue b/resources/js/views/Admin/Plans/Tabs/PlanMeteredSettings.vue index 2e6cee46..1604b84d 100644 --- a/resources/js/views/Admin/Plans/Tabs/PlanMeteredSettings.vue +++ b/resources/js/views/Admin/Plans/Tabs/PlanMeteredSettings.vue @@ -1,91 +1,137 @@ diff --git a/resources/js/views/Admin/Plans/Tabs/PlanSubscribers.vue b/resources/js/views/Admin/Plans/Tabs/PlanSubscribers.vue index c5e0b213..e4b8e67e 100644 --- a/resources/js/views/Admin/Plans/Tabs/PlanSubscribers.vue +++ b/resources/js/views/Admin/Plans/Tabs/PlanSubscribers.vue @@ -1,179 +1,191 @@ diff --git a/resources/js/views/Admin/Subscriptions.vue b/resources/js/views/Admin/Subscriptions.vue index a0ceab38..8908c68c 100644 --- a/resources/js/views/Admin/Subscriptions.vue +++ b/resources/js/views/Admin/Subscriptions.vue @@ -1,130 +1,140 @@ diff --git a/resources/js/views/Admin/Users.vue b/resources/js/views/Admin/Users.vue index 4b792616..75de801f 100644 --- a/resources/js/views/Admin/Users.vue +++ b/resources/js/views/Admin/Users.vue @@ -2,190 +2,221 @@
    - + {{ $t('admin_page_user.create_user.submit') }} - - {{ $t('Search') }} - + + {{ $t('Search') }} +
    - + diff --git a/resources/js/views/Admin/Users/User.vue b/resources/js/views/Admin/Users/User.vue index e40b3061..536d09c5 100644 --- a/resources/js/views/Admin/Users/User.vue +++ b/resources/js/views/Admin/Users/User.vue @@ -1,39 +1,38 @@ diff --git a/resources/js/views/Admin/Users/UserCreate.vue b/resources/js/views/Admin/Users/UserCreate.vue index 085c7631..6633bb53 100644 --- a/resources/js/views/Admin/Users/UserCreate.vue +++ b/resources/js/views/Admin/Users/UserCreate.vue @@ -3,37 +3,61 @@
    {{ $t('admin_page_user.create_user.group_details') }} - - - - + + + + - + - + - + - + - + - +
    - + - +
    @@ -41,17 +65,25 @@
    {{ $t('admin_page_user.create_user.group_settings') }} - + - + - + - +
    @@ -64,139 +96,133 @@ diff --git a/resources/js/views/Admin/Users/UserTabs/UserDelete.vue b/resources/js/views/Admin/Users/UserTabs/UserDelete.vue index cd31c007..9bd5daf0 100644 --- a/resources/js/views/Admin/Users/UserTabs/UserDelete.vue +++ b/resources/js/views/Admin/Users/UserTabs/UserDelete.vue @@ -1,123 +1,125 @@ diff --git a/resources/js/views/Admin/Users/UserTabs/UserDetail.vue b/resources/js/views/Admin/Users/UserTabs/UserDetail.vue index cb09a8de..8fbb83b0 100644 --- a/resources/js/views/Admin/Users/UserTabs/UserDetail.vue +++ b/resources/js/views/Admin/Users/UserTabs/UserDetail.vue @@ -7,193 +7,197 @@ - -
    - - - {{ $t('admin_page_user.save_role') }} - -
    -
    + +
    + + + {{ $t('admin_page_user.save_role') }} + +
    +
    - {{ $t('admin_page_user.label_person_info') }} - + {{ $t('admin_page_user.label_person_info') }} + - -
    - - - - - - -
    + +
    + + + + + + +
    - +
    {{ $t('user_settings.title_billing') }} - + - + - +
    - + - +
    - + - +
    diff --git a/resources/js/views/Admin/Users/UserTabs/UserFixedSubscription.vue b/resources/js/views/Admin/Users/UserTabs/UserFixedSubscription.vue index 90d8019b..d1fc7b29 100644 --- a/resources/js/views/Admin/Users/UserTabs/UserFixedSubscription.vue +++ b/resources/js/views/Admin/Users/UserTabs/UserFixedSubscription.vue @@ -1,91 +1,85 @@ \ No newline at end of file + this.limitations.push({ + message: payload.message[key], + distribution: [ + { + progress: item.percentage, + color: payload.color[key], + title: payload.title[key], + }, + ], + }) + }) + }, +} + diff --git a/resources/js/views/Admin/Users/UserTabs/UserMeteredSubscription.vue b/resources/js/views/Admin/Users/UserTabs/UserMeteredSubscription.vue index d32b7a50..dd523045 100644 --- a/resources/js/views/Admin/Users/UserTabs/UserMeteredSubscription.vue +++ b/resources/js/views/Admin/Users/UserTabs/UserMeteredSubscription.vue @@ -1,150 +1,145 @@ \ No newline at end of file + events.$emit('toaster', { + type: 'success', + message: this.$t('User balance was successfully increased'), + }) + }) + .catch(() => { + events.$emit('toaster', { + type: 'danger', + message: this.$t('popup_error.title'), + }) + }) + .finally(() => { + this.isUpdatingBalanceAmount = false + }) + }, + }, + created() {}, +} + diff --git a/resources/js/views/Admin/Users/UserTabs/UserPassword.vue b/resources/js/views/Admin/Users/UserTabs/UserPassword.vue index 162e3ac3..d4f45726 100644 --- a/resources/js/views/Admin/Users/UserTabs/UserPassword.vue +++ b/resources/js/views/Admin/Users/UserTabs/UserPassword.vue @@ -1,77 +1,74 @@ diff --git a/resources/js/views/Admin/Users/UserTabs/UserStorage.vue b/resources/js/views/Admin/Users/UserTabs/UserStorage.vue index cfc9f79f..e8e3abe9 100644 --- a/resources/js/views/Admin/Users/UserTabs/UserStorage.vue +++ b/resources/js/views/Admin/Users/UserTabs/UserStorage.vue @@ -1,79 +1,80 @@ diff --git a/resources/js/views/Admin/Users/UserTabs/UserSubscription.vue b/resources/js/views/Admin/Users/UserTabs/UserSubscription.vue index 901325b2..635eb26f 100644 --- a/resources/js/views/Admin/Users/UserTabs/UserSubscription.vue +++ b/resources/js/views/Admin/Users/UserTabs/UserSubscription.vue @@ -1,136 +1,121 @@ diff --git a/resources/js/views/Auth/CreateNewPassword.vue b/resources/js/views/Auth/CreateNewPassword.vue index 0d8a037c..2fad554c 100644 --- a/resources/js/views/Auth/CreateNewPassword.vue +++ b/resources/js/views/Auth/CreateNewPassword.vue @@ -1,53 +1,66 @@ \ No newline at end of file + // End loading + this.isLoading = false + }) + }, + }, + created() { + // Get token + this.recoverPassword.token = this.$route.query.token + }, +} + diff --git a/resources/js/views/Auth/ForgottenPassword.vue b/resources/js/views/Auth/ForgottenPassword.vue index 5361b9d6..a2b6b313 100644 --- a/resources/js/views/Auth/ForgottenPassword.vue +++ b/resources/js/views/Auth/ForgottenPassword.vue @@ -1,25 +1,39 @@ diff --git a/resources/js/views/Auth/Headline.vue b/resources/js/views/Auth/Headline.vue index 896c2c94..65ae0d98 100644 --- a/resources/js/views/Auth/Headline.vue +++ b/resources/js/views/Auth/Headline.vue @@ -1,42 +1,36 @@ \ No newline at end of file +export default { + name: 'Headline', + props: ['description', 'title'], + computed: { + ...mapGetters(['config']), + }, +} + diff --git a/resources/js/views/Auth/SignIn.vue b/resources/js/views/Auth/SignIn.vue index de92f8e8..2228dcd8 100644 --- a/resources/js/views/Auth/SignIn.vue +++ b/resources/js/views/Auth/SignIn.vue @@ -1,130 +1,137 @@ diff --git a/resources/js/views/Auth/SignUp.vue b/resources/js/views/Auth/SignUp.vue index cf105e41..0d782dcf 100644 --- a/resources/js/views/Auth/SignUp.vue +++ b/resources/js/views/Auth/SignUp.vue @@ -1,72 +1,104 @@ diff --git a/resources/js/views/Auth/SocialiteCallback.vue b/resources/js/views/Auth/SocialiteCallback.vue index 76ee9a7c..4725b528 100644 --- a/resources/js/views/Auth/SocialiteCallback.vue +++ b/resources/js/views/Auth/SocialiteCallback.vue @@ -1,38 +1,37 @@ \ No newline at end of file + diff --git a/resources/js/views/Auth/SuccessfullyEmailVerified.vue b/resources/js/views/Auth/SuccessfullyEmailVerified.vue index 85f5c96a..088da10e 100644 --- a/resources/js/views/Auth/SuccessfullyEmailVerified.vue +++ b/resources/js/views/Auth/SuccessfullyEmailVerified.vue @@ -1,31 +1,28 @@ diff --git a/resources/js/views/Auth/SuccessfullySendEmail.vue b/resources/js/views/Auth/SuccessfullySendEmail.vue index afd17c18..41013f50 100644 --- a/resources/js/views/Auth/SuccessfullySendEmail.vue +++ b/resources/js/views/Auth/SuccessfullySendEmail.vue @@ -1,13 +1,10 @@ diff --git a/resources/js/views/FileView/Components/NavigationSharePanel.vue b/resources/js/views/FileView/Components/NavigationSharePanel.vue index 5f67e88d..3a3aad74 100644 --- a/resources/js/views/FileView/Components/NavigationSharePanel.vue +++ b/resources/js/views/FileView/Components/NavigationSharePanel.vue @@ -1,183 +1,172 @@ \ No newline at end of file +.folder-item-leave-active { + position: absolute; +} + diff --git a/resources/js/views/FileView/Components/PanelNavigationFiles.vue b/resources/js/views/FileView/Components/PanelNavigationFiles.vue index 8f2ec846..0e38b940 100644 --- a/resources/js/views/FileView/Components/PanelNavigationFiles.vue +++ b/resources/js/views/FileView/Components/PanelNavigationFiles.vue @@ -1,211 +1,219 @@ \ No newline at end of file + diff --git a/resources/js/views/FileView/Files.vue b/resources/js/views/FileView/Files.vue index 8075c404..71cf35d7 100644 --- a/resources/js/views/FileView/Files.vue +++ b/resources/js/views/FileView/Files.vue @@ -1,215 +1,238 @@ diff --git a/resources/js/views/FileView/MySharedItems.vue b/resources/js/views/FileView/MySharedItems.vue index 5d2e3305..17025426 100644 --- a/resources/js/views/FileView/MySharedItems.vue +++ b/resources/js/views/FileView/MySharedItems.vue @@ -1,157 +1,170 @@ diff --git a/resources/js/views/FileView/Public.vue b/resources/js/views/FileView/Public.vue index f3fd4136..dfe036fd 100644 --- a/resources/js/views/FileView/Public.vue +++ b/resources/js/views/FileView/Public.vue @@ -1,183 +1,193 @@ diff --git a/resources/js/views/FileView/RecentUploads.vue b/resources/js/views/FileView/RecentUploads.vue index 505ab8ff..a784764c 100644 --- a/resources/js/views/FileView/RecentUploads.vue +++ b/resources/js/views/FileView/RecentUploads.vue @@ -1,131 +1,138 @@ diff --git a/resources/js/views/FileView/SharedWithMe.vue b/resources/js/views/FileView/SharedWithMe.vue index 16bb990f..234f218f 100644 --- a/resources/js/views/FileView/SharedWithMe.vue +++ b/resources/js/views/FileView/SharedWithMe.vue @@ -1,240 +1,244 @@ diff --git a/resources/js/views/FileView/TeamFolders.vue b/resources/js/views/FileView/TeamFolders.vue index 89ffd378..000ccfe2 100644 --- a/resources/js/views/FileView/TeamFolders.vue +++ b/resources/js/views/FileView/TeamFolders.vue @@ -1,265 +1,285 @@ diff --git a/resources/js/views/FileView/Trash.vue b/resources/js/views/FileView/Trash.vue index 5e686a38..22a48c59 100644 --- a/resources/js/views/FileView/Trash.vue +++ b/resources/js/views/FileView/Trash.vue @@ -1,123 +1,127 @@ diff --git a/resources/js/views/Frontpage/ContactUs.vue b/resources/js/views/Frontpage/ContactUs.vue index 72acf0fe..d723f485 100644 --- a/resources/js/views/Frontpage/ContactUs.vue +++ b/resources/js/views/Frontpage/ContactUs.vue @@ -1,40 +1,37 @@ diff --git a/resources/js/views/Frontpage/DynamicPage.vue b/resources/js/views/Frontpage/DynamicPage.vue index cb41ff43..c926a755 100644 --- a/resources/js/views/Frontpage/DynamicPage.vue +++ b/resources/js/views/Frontpage/DynamicPage.vue @@ -1,99 +1,91 @@ diff --git a/resources/js/views/Frontpage/Homepage.vue b/resources/js/views/Frontpage/Homepage.vue index 476debfb..83df792d 100644 --- a/resources/js/views/Frontpage/Homepage.vue +++ b/resources/js/views/Frontpage/Homepage.vue @@ -1,6 +1,6 @@ diff --git a/resources/js/views/MobileNavigationToolbar.vue b/resources/js/views/MobileNavigationToolbar.vue index d5ed461f..53dfd8f2 100644 --- a/resources/js/views/MobileNavigationToolbar.vue +++ b/resources/js/views/MobileNavigationToolbar.vue @@ -1,36 +1,38 @@ diff --git a/resources/js/views/NotFound.vue b/resources/js/views/NotFound.vue index 9118f082..01477926 100644 --- a/resources/js/views/NotFound.vue +++ b/resources/js/views/NotFound.vue @@ -1,12 +1,10 @@ diff --git a/resources/js/views/Platform.vue b/resources/js/views/Platform.vue index 4feea6bc..2d064f04 100644 --- a/resources/js/views/Platform.vue +++ b/resources/js/views/Platform.vue @@ -1,16 +1,15 @@ diff --git a/resources/js/views/Profile.vue b/resources/js/views/Profile.vue index 10aa091a..9564044c 100644 --- a/resources/js/views/Profile.vue +++ b/resources/js/views/Profile.vue @@ -1,62 +1,60 @@ diff --git a/resources/js/views/SetupWizard.vue b/resources/js/views/SetupWizard.vue index 5b5b0fca..193c8dc0 100644 --- a/resources/js/views/SetupWizard.vue +++ b/resources/js/views/SetupWizard.vue @@ -3,18 +3,17 @@ diff --git a/resources/js/views/SetupWizard/AdminAccount.vue b/resources/js/views/SetupWizard/AdminAccount.vue index ff99398a..8c3ad62a 100644 --- a/resources/js/views/SetupWizard/AdminAccount.vue +++ b/resources/js/views/SetupWizard/AdminAccount.vue @@ -1,10 +1,9 @@ diff --git a/resources/js/views/SetupWizard/AppSetup.vue b/resources/js/views/SetupWizard/AppSetup.vue index 719d4b7b..e0e98832 100644 --- a/resources/js/views/SetupWizard/AppSetup.vue +++ b/resources/js/views/SetupWizard/AppSetup.vue @@ -1,24 +1,18 @@ diff --git a/resources/js/views/SetupWizard/BillingsDetail.vue b/resources/js/views/SetupWizard/BillingsDetail.vue index 4429ffb4..972006e1 100644 --- a/resources/js/views/SetupWizard/BillingsDetail.vue +++ b/resources/js/views/SetupWizard/BillingsDetail.vue @@ -1,35 +1,25 @@ diff --git a/resources/js/views/SetupWizard/Database.vue b/resources/js/views/SetupWizard/Database.vue index 5d4e3177..e920acd7 100644 --- a/resources/js/views/SetupWizard/Database.vue +++ b/resources/js/views/SetupWizard/Database.vue @@ -1,20 +1,18 @@ diff --git a/resources/js/views/SetupWizard/EnvironmentSetup.vue b/resources/js/views/SetupWizard/EnvironmentSetup.vue index bd76711f..e4edacf8 100644 --- a/resources/js/views/SetupWizard/EnvironmentSetup.vue +++ b/resources/js/views/SetupWizard/EnvironmentSetup.vue @@ -1,19 +1,16 @@ diff --git a/resources/js/views/SetupWizard/InstallationDisclaimer.vue b/resources/js/views/SetupWizard/InstallationDisclaimer.vue index 35f1e2c9..db401b56 100644 --- a/resources/js/views/SetupWizard/InstallationDisclaimer.vue +++ b/resources/js/views/SetupWizard/InstallationDisclaimer.vue @@ -1,66 +1,43 @@ diff --git a/resources/js/views/SetupWizard/PurchaseCode.vue b/resources/js/views/SetupWizard/PurchaseCode.vue index 4f82a219..5ad2bbe0 100644 --- a/resources/js/views/SetupWizard/PurchaseCode.vue +++ b/resources/js/views/SetupWizard/PurchaseCode.vue @@ -1,139 +1,124 @@ diff --git a/resources/js/views/SetupWizard/StatusCheck.vue b/resources/js/views/SetupWizard/StatusCheck.vue index c9286bfd..8d710511 100644 --- a/resources/js/views/SetupWizard/StatusCheck.vue +++ b/resources/js/views/SetupWizard/StatusCheck.vue @@ -1,95 +1,92 @@ diff --git a/resources/js/views/SetupWizard/StripeCredentials.vue b/resources/js/views/SetupWizard/StripeCredentials.vue index 5d02ae1e..310171c6 100644 --- a/resources/js/views/SetupWizard/StripeCredentials.vue +++ b/resources/js/views/SetupWizard/StripeCredentials.vue @@ -1,20 +1,18 @@ diff --git a/resources/js/views/SetupWizard/SubscriptionPlans.vue b/resources/js/views/SetupWizard/SubscriptionPlans.vue index da726a21..e6c3dc5b 100644 --- a/resources/js/views/SetupWizard/SubscriptionPlans.vue +++ b/resources/js/views/SetupWizard/SubscriptionPlans.vue @@ -1,19 +1,12 @@ diff --git a/resources/js/views/SetupWizard/SubscriptionService.vue b/resources/js/views/SetupWizard/SubscriptionService.vue index c04a0412..c80ea4f9 100644 --- a/resources/js/views/SetupWizard/SubscriptionService.vue +++ b/resources/js/views/SetupWizard/SubscriptionService.vue @@ -1,27 +1,25 @@ diff --git a/resources/js/views/Shared.vue b/resources/js/views/Shared.vue index 1ca7bd03..ddcb0589 100644 --- a/resources/js/views/Shared.vue +++ b/resources/js/views/Shared.vue @@ -1,12 +1,11 @@ diff --git a/resources/js/views/Shared/SharedAuthentication.vue b/resources/js/views/Shared/SharedAuthentication.vue index f61200ba..11bd9b8d 100644 --- a/resources/js/views/Shared/SharedAuthentication.vue +++ b/resources/js/views/Shared/SharedAuthentication.vue @@ -1,90 +1,100 @@ \ No newline at end of file + }, +} + diff --git a/resources/js/views/Shared/SharedSingleFile.vue b/resources/js/views/Shared/SharedSingleFile.vue index 9d83027d..1577f9fc 100644 --- a/resources/js/views/Shared/SharedSingleFile.vue +++ b/resources/js/views/Shared/SharedSingleFile.vue @@ -1,12 +1,7 @@ \ No newline at end of file + }, +} + diff --git a/resources/js/views/Teams/Invitation.vue b/resources/js/views/Teams/Invitation.vue index 0e9d6e3b..7bc80299 100644 --- a/resources/js/views/Teams/Invitation.vue +++ b/resources/js/views/Teams/Invitation.vue @@ -1,173 +1,167 @@ diff --git a/resources/js/views/TemporaryUnavailable.vue b/resources/js/views/TemporaryUnavailable.vue index 5ab14a4c..c216e3dd 100644 --- a/resources/js/views/TemporaryUnavailable.vue +++ b/resources/js/views/TemporaryUnavailable.vue @@ -1,14 +1,11 @@ diff --git a/resources/js/views/User/Billing.vue b/resources/js/views/User/Billing.vue index fd148a2f..2728bf37 100644 --- a/resources/js/views/User/Billing.vue +++ b/resources/js/views/User/Billing.vue @@ -1,26 +1,26 @@ diff --git a/resources/js/views/User/Password.vue b/resources/js/views/User/Password.vue index 5e1b01d6..c539afd1 100644 --- a/resources/js/views/User/Password.vue +++ b/resources/js/views/User/Password.vue @@ -1,291 +1,317 @@ diff --git a/resources/js/views/User/Settings.vue b/resources/js/views/User/Settings.vue index 9e4691bf..b6f42b4b 100644 --- a/resources/js/views/User/Settings.vue +++ b/resources/js/views/User/Settings.vue @@ -2,210 +2,223 @@
    - {{ $t('Account Settings') }} - + {{ $t('Account Settings') }} + -
    - - - - - - -
    +
    + + + + + + +
    - + + @input="$updateText('/user/settings', 'timezone', user.data.relationships.settings.data.attributes.timezone)" + v-model="user.data.relationships.settings.data.attributes.timezone" + :default="user.data.relationships.settings.data.attributes.timezone" + :options="timezones" + :placeholder="$t('user_settings.timezone_plac')" + />
    -
    - - {{ $t('Appearance') }} - +
    + + {{ $t('Appearance') }} + - -
    -
    - -
    -
    + +
    +
    + +
    +
    - -
    -
    - -
    -
    -
    -
    + +
    +
    + +
    +
    +
    +
    {{ $t('user_settings.title_billing') }} - +
    - + - +
    - + - + - +
    diff --git a/resources/js/views/User/Storage.vue b/resources/js/views/User/Storage.vue index 10ab6be5..4baf6a87 100644 --- a/resources/js/views/User/Storage.vue +++ b/resources/js/views/User/Storage.vue @@ -1,91 +1,88 @@